Skip to main content

Base URL

The TryPost API is available at:
For self-hosted instances, the base URL is your APP_URL followed by /api (e.g., https://trypost.yourdomain.com/api).

Authentication

All API requests require a Bearer token in the Authorization header. You can create API keys (Personal Access Tokens) from Settings → API Keys 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. API keys authenticate the REST API only. The MCP server uses OAuth (mcp:use), not Personal Access Tokens.

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.

Pagination

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