Overview
The inference API serves frontier and open-source models behind one endpoint that speaks the OpenAI Chat Completions protocol, with an Anthropic Messages route for code written against that SDK. Point a client you already use at our base URL and it works.
Base URL#
https://api.ahurasense.com/v1Every request needs an API key in the Authorization header. Keys are created in the dashboard under Inference → API keys and start with ahu_live_. See Authentication.
Endpoints#
| Endpoint | What it does |
|---|---|
POST /v1/chat/completions | OpenAI-compatible chat. Streaming, tool calling, JSON mode. Reference. |
POST /v1/messages | Anthropic-compatible chat for existing Anthropic SDK code. Reference. |
GET /v1/models | The models your key can call, with capabilities and prices. Models. |
GET /v1/key | What the calling key is allowed to do and what it has spent this month. Details. |
GET /v1/health | Unauthenticated liveness check. Returns {"status":"ok"} with the gateway version. |
POST /v1/embeddings | Not available at the moment. Returns 503 embeddings_unavailable until an embeddings provider is configured. |
Quickstart#
- Create an account, then open Inference → API keys and create a key. The full key is shown once.
- Put it in an environment variable and make the request below.
curl https://api.ahurasense.com/v1/chat/completions \
-H "Authorization: Bearer $AHURA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "anthropic/claude-haiku-4.5",
"messages": [
{"role": "user", "content": "In one sentence, what is a GPU?"}
]
}'The response is a standard chat completion object:
{
"id": "chatcmpl-…",
"object": "chat.completion",
"model": "claude-haiku-4-5",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "A GPU is a processor built to run thousands of small calculations in parallel, which makes it fast at graphics and at training and running AI models."
},
"finish_reason": "stop"
}
],
"usage": { "prompt_tokens": 16, "completion_tokens": 34, "total_tokens": 50 }
}Available models#
The public catalog, live. Prices are input / output per million tokens; models marked hosted run on AhuraSense GPU infrastructure. Context windows, capabilities and cached-input rates are on the Models page, and GET /v1/models returns the same list to your code.
Claude Opus 5
anthropic/claude-opus-5$4.00 / $20.00
Claude Opus 4.8
anthropic/claude-opus-4.8$4.00 / $20.00
Claude Opus 4.7
anthropic/claude-opus-4.7$4.00 / $20.00
Claude Opus 4.6
anthropic/claude-opus-4.6$4.00 / $20.00
Claude Sonnet 5
anthropic/claude-sonnet-5$1.60 / $8.00
Claude Sonnet 4.6
anthropic/claude-sonnet-4.6$2.40 / $12.00
Claude Sonnet 4.5
anthropic/claude-sonnet-4.5$2.40 / $12.00
Claude Haiku 4.5
anthropic/claude-haiku-4.5$0.80 / $4.00
Claude Fable 5.1
anthropic/claude-fable-5.1$8.00 / $40.00
Claude Fable 5
anthropic/claude-fable-5$8.00 / $40.00
GPT-6 Astra
openai/gpt-6-astra$8.00 / $40.00
GPT-5.6 Sol
openai/gpt-5.6-sol$3.20 / $16.00
GPT-5.6 Terra
openai/gpt-5.6-terra$1.60 / $9.60
GPT-5.6 Luna
openai/gpt-5.6-luna$0.16 / $0.96
GPT-5.5
openai/gpt-5.5$4.00 / $24.00
GPT-5.4 mini
openai/gpt-5.4-mini$0.60 / $3.60
GPT-5.3 Codex
openai/gpt-5.3-codex$1.40 / $11.20
Grok 4.6
x-ai/grok-4.6$1.60 / $4.80
Grok 4.5
x-ai/grok-4.5$1.60 / $4.80
Grok 4.3
x-ai/grok-4.3$1.00 / $2.00
Kimi K3
moonshotai/kimi-k3$2.40 / $12.00
Kimi K2.7 Code
moonshotai/kimi-k2.7-code$0.76 / $3.20
Kimi K2.6
moonshotai/kimi-k2.6$0.76 / $3.20
GLM-5.3
zhipu/glm-5.3$1.12 / $3.52
Z.AI / GLM 5.3 Uncensoredhosted
zhipu/glm-5.3-uncensored$5.00 / $15.00
Z.AI / GLM 5.3 Flash Deriskedhosted
zhipu/glm-5.3-flash-derisked$5.00 / $5.00
Qwen / Qwen3.8 Flash Next Uncensoredhosted
qwen/qwen3.8-flash-next-uncensored$5.00 / $5.00
GLM-5.2
zhipu/glm-5.2$1.12 / $3.52
GLM-5.1
zhipu/glm-5.1$1.12 / $3.52
DeepSeek V4 Pro
deepseek/deepseek-v4-pro$1.06 / $3.17
DeepSeek V4 Flash
deepseek/deepseek-v4-flash$0.224 / $0.896
Doubao Seed 2.1 Turbo
bytedance/doubao-seed-2.1-turbo$0.344 / $1.73
MiniMax M3
minimax/minimax-m3$0.36 / $1.44
What happens to a request#
Every call passes through the same steps, in this order, at the edge closest to you:
- Authentication. The key is hashed and looked up. Expired keys, keys called from an address outside their IP allowlist, and unknown keys get
401. - Spend cap. If the key or the organization has a monthly hard cap and it is reached, the request stops with
402. - Rate limit. A per-key token bucket. Over the limit is
429withRetry-After. - Validation and routing. The body is checked, the model is resolved (directly or through a preset), and the key’s model allowlist is applied.
- Guardrail. Prompt text is scanned for injection patterns; by default the result is only annotated on the response. Guardrails.
- Cache. Deterministic, non-streaming requests can be answered from the exact-match cache. Caching.
- The model. The request is forwarded to the model’s serving backend and the answer is streamed or returned to you unchanged.
Usage is recorded after the response completes, so metering never adds latency to the call itself. Every response carries X-Ahura-Request-Id; quote it when you contact support and we can find the exact request.
Managed in the dashboard#
Some features are configured in the dashboard rather than through the API, and then apply to your requests automatically:
- API keys: model allowlists, IP allowlists, expiry, rate limits, spend caps, zero data retention.
- Presets: named default models you switch without a deploy.
- Usage and audit: per-key and per-model spend, latency percentiles, a CSV export, and an audit trail of every change to your account.
- Batches, fine-tuning, vector collections, notifications: available from the dashboard today; API access to these is on the roadmap.
Where next
Read Chat completions for every parameter, or SDKs & frameworks if you already have code that talks to OpenAI or Anthropic.
/v1/chat/completionsSomething missing or wrong on this page? Tell us, and quote the page title.