API reference
Machine-readable spec: /api/v1/openapi.json. MCP server: POST /api/mcp, tool verify_request.
Authentication
Every ingress request needs an API key as a Bearer token (Anthropic clients may also use x-api-key):
Authorization: Bearer llm11_live_...
Keys prefixed llm11_sandbox_ behave identically but are labelled sandbox on every receipt, for testing against real models without touching a production credit balance’s optics.
POST /v1/chat/completions
OpenAI-compatible. Accepts the standard messages, temperature, max_tokens and response_format, plus one addition:
{
"messages": [...],
"context": "optional source text the groundedness check verifies claims against"
}Returns a standard chat completion plus _llm11: the full receipt (model, baseline, verdict, every rung run, cost, savings).
POST /v1/messages
Anthropic Messages-API-compatible. Same engine, same receipt, translated at the edges - point an Anthropic SDK’s base URL here and it works unmodified.
Errors
Structured, with a stable type:
{ "error": { "message": "...", "type": "insufficient_credits" } }401 invalid_request_error- missing or invalid API key402 insufficient_credits- prepaid balance is $0.00502 upstream_error- the model provider failed501 not_implemented- streaming (not yet supported on this deployment)
Rate limits and streaming
No hard per-key rate limit beyond your plan’s monthly verified-request volume today; a request past that volume is billed at your plan’s overage rate rather than rejected. Streaming responses are not yet implemented - a stream: true request receives a clear 501 rather than a silent non-streamed response pretending to be one.