Skip to main content
POST https://api.naga.ac/v1/messages accepts the Anthropic Messages format and serves every chat model in the catalog, not only Claude. Point the Anthropic SDK at https://api.naga.ac, without /v1. The key works as x-api-key, the SDK default, or as Authorization: Bearer.
max_tokens is required, as in the official API. NagaAI accepts mid-conversation system messages with text content only; any other block in them fails with 400. NagaAI errors use Anthropic’s error types by status: authentication_error for 401, billing_error for 402, not_found_error for 404, rate_limit_error for 429. NagaAI ignores the anthropic-version and anthropic-beta headers, so you can leave them out.

Structured output

output_config.format with {"type": "json_schema", "schema": {...}} asks for JSON that matches the schema. The JSON comes back in the first text block. See Structured outputs.

What NagaAI adds

  • routing in the body and the x-naga-routing-strategy header, see Routing.
  • image blocks in the response from models that draw.
  • search_context_size and external_web_access on the web search tool, see Web search.

What NagaAI ignores or refuses

  • cache_control, at the top level and on blocks. There are no explicit cache breakpoints.
  • service_tier, container, mcp_servers, context_management, inference_geo and thinking.display.
  • is_error on tool_result blocks. Say that the tool failed in the result text.
  • Audio blocks fail with 400.
  • POST /v1/messages/count_tokens and the batches API return 404.
More differences are in Differences from OpenAI and Anthropic.