Base URL
The Kavio API is available at:
Authentication
All API requests require a Bearer token in the Authorization header. You can create API keys (Personal Access Tokens) from the Kavio dashboard or via the POST /api-keys endpoint.
Keep your API key secret. Do not expose it in client-side code or public
repositories. The plain token value is only shown once at creation — store it
immediately.
Workspace scoping
Every API key is bound to a specific workspace at creation time. All requests act on that workspace — you cannot list or modify resources from other workspaces with the same key. To work with multiple workspaces, create one API key per workspace.
The same key works for the REST API and the MCP server.
Rate limiting
API requests are throttled to prevent abuse. When you exceed the limit, the API returns a 429 status code with a Retry-After header indicating how many seconds to wait.
Errors
The API uses conventional HTTP status codes. All error responses include a message field.
Response shape
Resources are returned unwrapped — no data: envelope. A single resource looks like:
A non-paginated collection looks like a plain array:
The only endpoint that wraps in data: is GET /posts, because it’s paginated.
The GET /posts endpoint returns 15 posts per page. The response uses Laravel’s standard pagination envelope:
Use the page query parameter to navigate. Other list endpoints (signatures, labels, social accounts, API keys) return all items without pagination, as a plain array.
Quick reference