ClaudeStore/Docs
⚠ These docs are a work in progress. Some content may be inaccurate or temporarily AI-generated.

Authentication

How to authenticate Claude API requests. Set up your API key, configure headers, and secure your integration.

Key prefix: sk-cs2-*. Anthropic header: x-api-key: sk-cs2-.... OpenAI header: Authorization: Bearer sk-cs2-.... Base URL: https://api2.claudestore.store. Rotation: Anytime from dashboard, no downtime.

API Key Format

ClaudeStore issues two key families:

  • sk-cs2-… — v1 keys, used against https://api2.claudestore.store (Cursor, OpenAI SDK, generic Anthropic SDK).
  • sk-cs2-… — v2 keys, used against https://api2.claudestore.store (Claude Code CLI/extension, billed against the v2 credit pool).

Keep both secret — never expose them in client-side code or public repositories.

Authentication Methods

The gateway supports two authentication shapes, depending on which API format you call:

Anthropic Format

Pass your API key in the x-api-key header along with the required anthropic-version header:

curl https://api2.claudestore.store/v1/messages \
  -H "x-api-key: YOUR_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{"model": "claude-sonnet-4.6", "max_tokens": 1024, "messages": [{"role": "user", "content": "Hello"}]}'

OpenAI-Compatible Format

Pass your API key as a Bearer token in the Authorization header:

curl https://api2.claudestore.store/v1/chat/completions \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "content-type: application/json" \
  -d '{"model": "claude-sonnet-4.6", "messages": [{"role": "user", "content": "Hello"}]}'

Claude Code CLI / Extension

The Claude Code CLI and VS Code extension authenticate via the ANTHROPIC_API_KEY environment variable. Use ANTHROPIC_API_KEY onlyANTHROPIC_AUTH_TOKEN is reserved for Anthropic's OAuth login (Claude Pro/Max) and will not authenticate against this gateway.

Claude Code env varsbash
export ANTHROPIC_BASE_URL="https://api2.claudestore.store"
export ANTHROPIC_API_KEY="YOUR_SK_CS2_KEY"

Per-Key Controls

Each API key can be configured with the following enforced controls in the dashboard:

SettingDescription
Rate limitMax requests per minute for this key
Allowed modelsRestrict key to specific models (e.g. only claude-sonnet-4)
Monthly credit capHard cap on credits this key can spend within a UTC calendar month
RevocationInstantly disable a compromised key without affecting others
Per-key controls are configured in the ClaudeStore dashboard under API Keys → Edit Key. All settings are optional — by default keys have full access (no model restriction, no monthly cap), bounded only by your remaining credit balance.

SDK Configuration

Both the Anthropic and OpenAI SDKs accept the API key directly. See the SDK guides for language-specific examples.

Verify your setup

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/healthz

2. 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.

Ready to start?

Get API access to all Claude models in under 2 minutes.

View Plans