Proxy API overview
The OpenAI-compatible surfaces MarkDB exposes and how to authenticate.
The MarkDB proxy exposes several LLM API surfaces at https://proxy.markdb.cloud.
Each is captured into memory and dispatched natively to the underlying provider.
Authentication
Send your key as a bearer token. Depending on the surface, clients use different headers; all are accepted:
Authorization: Bearer mk_live_...(Chat Completions, Responses)x-api-key: mk_live_...orANTHROPIC_AUTH_TOKEN-> bearer (Messages)
Surfaces
Chat Completions
POST /v1/chat/completionsThe standard OpenAI shape. Used by Cursor, the OpenAI SDK, and most tools. Supports streaming and tool calls.
Responses
POST /v1/responsesThe OpenAI Responses API, used by Codex CLI. MarkDB translates the Responses wire
format (including function_call tool use) to the underlying provider.
Messages
POST /v1/messagesThe Anthropic Messages API, used by Claude Code. MarkDB translates Messages
(including tool_use / tool_result blocks) to the underlying provider.
Embeddings
POST /v1/embeddingsOpenAI-compatible embeddings, dispatched to the provider that owns the model.
Routing
The provider is chosen from the model name:
claude-*-> Anthropicgpt-*,o*-> OpenAIgemini-*-> Gemini
Credentials are resolved per tenant: your configured key for that provider, or a tenant default.
Chat continuity headers
To control how turns group into sessions, optionally send:
X-MarkDB-Chat-Key: <stable id>- the conversation thread id.X-MarkDB-External-Session-ID: <id>- the client's session id.
If omitted, MarkDB derives a stable chat key from the opening messages.