Skip to main content

Documentation by X-Pilot

Authentication

Create a API Key in the developer console. Set XPILOT_API_BASE_URL to the deployment’s Node API root and XPILOT_API_KEY to the secret in your environment. OAuth tokens are bound to MCP. REST uses a scoped API key in the Authorization: Bearer header. MCP OAuth tokens do not authenticate REST requests. Manage keys in the App.

Online playground

Choose an endpoint in the sidebar, select Try it, enter your key and parameters, then send the request. The response panel shows the HTTP status and response body. File endpoints accept multipart uploads. No request runs merely by opening a page. Code samples provide the shared contract defaults; the playground sends the values you enter. Generation and rendering may consume workspace credits. Check credits and capacity first. Give each write operation a stable Idempotency-Key; keep it for an exact retry and use a new key for different input.

Endpoint groups

Video Agent

Renders

Brand kits

Account & capacity

Assets

Voices & audio

Avatars

Status and recovery

Poll GET /v1/video-agents/conversations/{conversation_id}/messages every 5 seconds or subscribe to signed Webhooks. When a message is paused, next_action says what to send: confirm_outline (outline_action=confirm, or revise with a prompt) or reply (answer with a prompt). A disconnect does not mean completion. No SSE in this release. Use conversation_id for ownership and message_id for per-turn status. Lists do not return project_id. Times are Unix seconds. 401: expired/revoked credential. 403: scope/ownership. 402: credits/budget. 400 with param/allowed: invalid field or value. 409: idempotency conflict, conversation busy or avatar not ready. 429: RPM/concurrency; respect Retry-After. After a transport error, retry with the same Idempotency-Key. Download OpenAPI JSON · Download shared REST contract
An application sends a scoped API key to the X-Pilot REST API and receives an HTTP status and JSON response.
REST requests use a scoped API key. Keys, credits and usage are managed in the App console.