Skip to main content
Every endpoint in this reference follows the rules on this page. Read it once before the endpoint pages, or hand it to an agent with the OpenAPI spec.

Base URL and authentication

All calls go to https://api.mixpeek.com and carry an API key as a bearer token:
Create a key in Studio under Settings > API Keys. A missing, unknown, revoked or expired key returns 401. A key without the permission an operation needs returns 403; see API keys for permissions and scopes.

The X-Namespace header

Buckets, collections, retrievers, taxonomies, clusters and documents live inside a namespace. Calls on them need the namespace id in X-Namespace:
The header takes the id (ns_...) that POST /v1/namespaces returned, not the namespace name. Organization-level calls, such as storage connections, webhooks and API keys, take no X-Namespace. Each endpoint page lists the headers it needs.

Response envelopes

A retriever run that times out or skips a stage still answers 200, with status: "degraded" and an entry in warnings. Check status before you treat a short documents list as “no matches”. A clean run returns status: "completed".

Errors

Every error has the same body:
Branch on error.type, and on error.code where an endpoint sets one, such as namespace_name_taken. message is for people and can change. A 429 carries Retry-After in seconds; see Rate limits and quotas.

Pagination

List endpoints return next_cursor. Send it back as cursor and stop when the response omits it. next_page and previous_page are always null. See Pagination.

Machine-readable docs