Integrations / Provider Guides
Anthropic
Connect Aurora to Anthropic Claude, including the native /v1/messages ingress for the Anthropic SDK.
Browse docs
Use this provider to route to Anthropic's Claude models. Aurora supports both the OpenAI-compatible translation path (/v1/chat/completions → Claude) and the native Anthropic ingress (/v1/messages for the Anthropic SDK).
Activate
ANTHROPIC_API_KEY=sk-ant-...Restart Aurora. The anthropic provider appears at /v1/models with the current Claude catalog.
To use the native Anthropic SDK against Aurora (recommended for Claude-only apps), also enable the ingress:
ENABLE_ANTHROPIC_INGRESS=trueThis exposes /v1/messages and /v1/messages/count_tokens. See Anthropic Messages API.
Default models
Override the catalog with ANTHROPIC_MODELS=claude-sonnet-4-5,claude-haiku-4-5.
Multiple instances
ANTHROPIC_PROD_API_KEY=sk-ant-...
ANTHROPIC_STAGING_API_KEY=sk-ant-...Aurora exposes them as anthropic-prod and anthropic-staging.
Custom base URL
ANTHROPIC_BASE_URL=https://anthropic-proxy.example.com/v1Use this for AWS Bedrock-hosted Claude, GCP Vertex-hosted Claude, or a corporate proxy.
Gotchas
- Prompt caching — Claude's
cache_controlblocks are honored end-to-end. Aurora forwards them and reports cache hit/miss in the response usage. - Reasoning / extended thinking — Claude's
thinkingcontent blocks are preserved. Aurora exposes them as a separate field in the OpenAI-shaped response. - Tool use — full support, including tool-result messages, parallel tool calls, and tool choice. No provider-specific translation needed.
- Max tokens — Claude requires
max_tokensand will error without it. Aurora injects a default if you forget. - System prompt — Claude accepts a top-level
systemfield. Aurora's guardrailsystem_prompt_inject/system_prompt_overridefeatures target this exact field. See Guardrails.
Sample request (OpenAI format)
curl http://localhost:8080/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $AURORA_MASTER_KEY" \
-d '{
"model": "anthropic/claude-sonnet-4-5",
"max_tokens": 1024,
"messages": [{"role": "user", "content": "Hello from Aurora"}]
}'Sample request (native Anthropic SDK)
from anthropic import Anthropic
client = Anthropic(
base_url="http://localhost:8080",
api_key="sk-aurora-...",
)
msg = client.messages.create(
model="anthropic/claude-sonnet-4-5",
max_tokens=1024,
messages=[{"role": "user", "content": "Hello from Aurora"}],
)
print(msg.content[0].text)Related
- Anthropic Messages API —
/v1/messagesand/v1/messages/count_tokens - Anthropic SDK Integration — point the official SDK at Aurora
- Providers Overview