API Reference Overview
Claude API reference — endpoints, headers, request format. Anthropic-compatible and OpenAI-compatible modes.
LLMsRelay is an independently operated API gateway. It is not affiliated with or endorsed by Anthropic, PBC. Product and model names are used only to describe compatibility.
Base URL: https://api.llmsrelay.com. Anthropic endpoint: POST /v1/messages. OpenAI endpoint: POST /v1/chat/completions. Streaming: SSE on both endpoints. Auth: sk-cs4-* keys.
Base URL
Endpoints
| Method | Path | Description |
|---|---|---|
| POST | /v1/messages | Send a message (Anthropic format) |
| POST | /v1/chat/completions | Send a message (OpenAI format) |
| GET | /v1/models | List available models |
| GET | /health | Health check endpoint |
Required Headers
| Header | Required For | Value |
|---|---|---|
| x-api-key | Anthropic format | Your API key |
| anthropic-version | Anthropic format | 2023-06-01 |
| Authorization | OpenAI format | Bearer YOUR_API_KEY |
| content-type | All POST requests | application/json |
Recommended Model IDs
Use these stable model IDs in your requests:
claude-opus-5,claude-fable-5— newest high-capability modelsclaude-opus-4.8,claude-opus-4.7,claude-opus-4.6claude-sonnet-5,claude-sonnet-4.6claude-haiku-4.5— fast, lower-cost automation
Or use short aliases that always point to the latest version of each tier:
opus→claude-opus-4.8sonnet→claude-sonnet-4.6haiku→claude-haiku-4.5
GET /v1/models to retrieve the current list of available models programmatically. Aliases resolve server-side before model whitelisting and billing.Smoke-test the gateway
Validate gateway access
Before sending real requests, run two cheap checks: a health probe and a models list. They confirm the base URL, your network, and (for /v1/models) your API key — without spending any credits.
1. Liveness probe — /healthz
Public, unauthenticated. Returns 200 and a JSON status payload when the gateway is up. Use it from CI, monitoring, or any shell.
curl -sS -o /dev/null -w "HTTP %{http_code}\n" \
https://api.llmsrelay.com/healthz2. Auth + catalogue — /v1/models
Returns the list of model IDs you can use with the messages API. Requires a valid x-api-key. If this works, your key, base URL, and headers are all correct.
curl -sS https://api.llmsrelay.com/v1/models \
-H "x-api-key: $ANTHROPIC_API_KEY" | jq '.data[].id'What a healthy response looks like
- /healthz → HTTP 200 with {"status":"ok", ...}. Anything else (timeout, 5xx, HTML page) means you hit the wrong host or there is a network/proxy issue.
- /v1/models → HTTP 200 with {"object":"list","data":[...]}. The data array contains the only model IDs accepted by /v1/messages.
Common mistakes
- Wrong base URL. The only correct host is https://api.llmsrelay.com. Do not use api.anthropic.com, api.llmsrelay.com (old) or any other variant.
- Missing /v1 prefix. Endpoints live under /v1/* (e.g. /v1/messages, /v1/models). /healthz is the one exception — it is at the root.
- Wrong auth header. Use x-api-key: sk-cs4-... (Anthropic-style). Do not send Authorization: Bearer ... unless the SDK builds it for you.
- Invalid model ID. Only IDs returned by /v1/models work. The public catalogue includes claude-opus-5, claude-fable-5, claude-opus-4.8, claude-opus-4.7, claude-opus-4.6, claude-sonnet-5, claude-sonnet-4.6, and claude-haiku-4.5, subject to key filtering.
Tip: use /v1/models as the source of truth for model IDs in your scripts and CI — never hard-code a list.