cURL Quickstart
No SDK required. The gateway is a standard HTTP proxy.
Health Check (No Auth)
curl https://api.curate-me.ai/v1/healthChat Completion (OpenAI)
curl https://api.curate-me.ai/v1/openai/chat/completions \
-H "Content-Type: application/json" \
-H "X-CM-API-Key: YOUR_GATEWAY_KEY" \
-H "X-Provider-Key: YOUR_OPENAI_KEY" \
-d '{
"model": "gpt-4o",
"messages": [{"role": "user", "content": "Hello!"}]
}'Anthropic Messages
curl https://api.curate-me.ai/v1/anthropic/messages \
-H "Content-Type: application/json" \
-H "X-CM-API-Key: YOUR_GATEWAY_KEY" \
-H "X-Provider-Key: YOUR_ANTHROPIC_KEY" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-sonnet-4-5-20250929",
"max_tokens": 1024,
"messages": [{"role": "user", "content": "Hello!"}]
}'Streaming
Add "stream": true to the request body:
curl https://api.curate-me.ai/v1/openai/chat/completions \
-H "Content-Type: application/json" \
-H "X-CM-API-Key: YOUR_GATEWAY_KEY" \
-H "X-Provider-Key: YOUR_OPENAI_KEY" \
-N \
-d '{
"model": "gpt-4o",
"stream": true,
"messages": [{"role": "user", "content": "Count to 10 slowly."}]
}'List Models
curl https://api.curate-me.ai/v1/models \
-H "X-CM-API-Key: YOUR_GATEWAY_KEY"Response Headers
Every gateway response includes:
| Header | Description |
|---|---|
X-CM-Request-ID | Unique request tracking ID inside the gateway |
X-CM-Cost | Estimated cost of the request in USD |
X-CM-Daily-Cost | Current daily spend for the org |
X-CM-Daily-Budget | Active daily budget used by governance |
X-RateLimit-Limit | Max requests per minute |
X-RateLimit-Remaining | Requests remaining |
X-RateLimit-Reset | Window reset timestamp |
X-Idempotency-Key | Retry-safe key for the upstream request |
X-Process-Time | Gateway processing time (seconds) |
Error Codes
| Code | Meaning |
|---|---|
| 401 | Invalid or missing gateway API key |
| 403 | Request blocked by governance policy, budget controls, or model access rules |
| 202 | Request is pending human approval |
| 429 | Rate limit exceeded |
| 502 | Upstream provider error |