Skip to main content

REST API

Use the REST API when your own backend, worker, or script needs to execute a published model. Public consumers should call the Gateway. Do not call internal services directly.

Base URL

Use the Gateway URL for your environment:
For local development, the default Gateway is usually:

Authentication

Server-to-server requests use an API key:
Browser requests made by the signed-in product app use a user access token:
Do not put long-lived API keys in browser JavaScript. Do not send an API key as a bearer token. Authorization: Bearer <access_token> is only for signed-in browser sessions; developer integrations should use X-API-Key.

Execute a model

Request fields

Use params, not parameters. Vector routing fields such as resources, alias, collection, and namespace are managed by the platform and must not be supplied by clients. For vector-backed index and search modes, use the same scope for the data you want to search. For example, if images are indexed with scope: "test", search requests must also use scope: "test". Knowledge Bases displays indexed data by model, collection, and scope. Valid scopes start with a letter or number, may contain letters, numbers, ., _, and -, and are limited to 64 characters.

Upload media for model inputs

Models that accept images, audio, video, or files use media_ref values in input. Upload the file through the public media API first:
Upload the file bytes to the returned upload_url, then complete the upload:
Use the returned media_ref inside POST /api/runs.
  • GET /api/marketplace/models lists published Marketplace models.
  • GET /api/marketplace/models/{slug} loads one Marketplace model detail page.
  • POST /api/media/upload/init starts a developer media upload.
  • POST /api/media/upload/complete returns the media_ref for a completed upload.
  • GET /api/billing/wallet loads the current workspace wallet.
  • GET /api/billing/usage/summary loads usage summary for the current workspace.