API Reference Overview
Claude API reference — endpoints, headers, request format. Anthropic-compatible and OpenAI-compatible modes.
Base URL: https://api2.claudestore.store. Anthropic endpoint: POST /v1/messages. OpenAI endpoint: POST /v1/chat/completions. Streaming: SSE on both endpoints. Auth: sk-cs2-* 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 | /v1/models/info | Detailed model information with pricing |
| 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-4.6— flagship, 1M token context (beta)claude-opus-4.6claude-sonnet-4.6claude-haiku-4.5
Or use short aliases that always point to the latest version of each tier:
opus→claude-opus-4.6sonnet→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://api2.claudestore.store/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://api2.claudestore.store/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://api2.claudestore.store. Do not use api.anthropic.com, api.claudestore.store (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-cs2-... (Anthropic-style). Do not send Authorization: Bearer ... unless the SDK builds it for you.
- Invalid model ID. Only IDs returned by /v1/models work. As of today: claude-sonnet-4.6, claude-haiku-4.5, claude-opus-4.6.
Tip: use /v1/models as the source of truth for model IDs in your scripts and CI — never hard-code a list.