Postman Collection
The curated Postman collection includes pre-wired auth, example payloads for every major operation, and test scripts that validate response shapes.
Import from URL
In Postman:
- Click Import → Link
- Paste:
https://api.curate-me.ai/postman-collection.json - Click Continue → Import
Or download: curate-me-postman-v2.json
Set up environment
After importing, create a Curate-Me environment with these variables:
| Variable | Value | Description |
|---|---|---|
base_url | https://api.curate-me.ai | Production gateway URL |
cm_api_key | cm_sk_your_key | Your gateway API key |
provider | openai | Default provider to use |
model | gpt-4o | Default model |
For local development:
| Variable | Value |
|---|---|
base_url | http://localhost:8002 |
Collection structure
Curate-Me
├── 🔑 Auth
│ ├── Verify API Key (GET /v1/admin/me)
│ └── Verify Gateway Connectivity (GET /health)
├── 🚀 Gateway — First Request
│ ├── OpenAI Chat (POST /v1/openai/chat/completions)
│ ├── Anthropic Messages (POST /v1/anthropic/messages)
│ ├── OpenRouter Chat (POST /v1/openrouter/chat/completions)
│ └── Streaming Response (POST /v1/openai/chat/completions?stream=true)
├── ⚙️ Admin — API Keys
│ ├── List Keys (GET /v1/admin/api-keys)
│ ├── Create Key (POST /v1/admin/api-keys)
│ └── Delete Key (DELETE /v1/admin/api-keys/:id)
├── 🔐 Admin — Provider Secrets
│ ├── Store Secret (POST /v1/admin/secrets)
│ ├── List Secrets (GET /v1/admin/secrets)
│ └── Update Secret (PUT /v1/admin/secrets/:provider)
├── 💰 Admin — Budgets
│ ├── Get Budget Status (GET /v1/admin/budgets)
│ ├── Set Daily Cap (POST /v1/admin/budgets)
│ └── Today's Spend (GET /v1/admin/costs/today)
├── 📊 Admin — Governance
│ ├── Get Rate Limits (GET /v1/admin/rate-limits)
│ ├── Update Model Allowlist (POST /v1/admin/governance/model-allowlist)
│ └── Get Governance Config (GET /v1/admin/governance)
├── 🔍 Admin — Traces
│ ├── List Recent Traces (GET /v1/admin/traces)
│ ├── Get Trace (GET /v1/admin/traces/:id)
│ └── Search Traces (GET /v1/admin/traces?q=...)
└── 🤖 Runners — BYOVM
├── Generate Register Token (POST /gateway/admin/runners/byovm/register-token)
├── List Runners (GET /gateway/admin/runners/byovm)
├── Runner Status (GET /gateway/admin/runners/byovm/:id)
└── Deregister Runner (DELETE /gateway/admin/runners/byovm/:id)Pre-request scripts
The collection’s top-level pre-request script automatically:
- Sets
X-CM-API-Keyfrom thecm_api_keyenvironment variable - Adds
Content-Type: application/jsonto POST/PUT/PATCH requests - Logs the
x-cm-request-idresponse header for debugging
Test scripts
Each request includes a test script that:
- Validates the HTTP status code
- Checks for the
x-cm-request-idresponse header - For the auth check: verifies
org_idis present in the response body
Example test output:
✓ Status: 200 OK
✓ x-cm-request-id header is present
✓ Response time < 500ms
✓ org_id is present in response
✓ plan is one of: free, starter, pro, enterpriseThe Postman collection uses {{base_url}} and {{cm_api_key}} variables everywhere — set them once in your environment and all requests work immediately.
Downloading the raw collection JSON
To use the collection in CI or with Newman:
# Download
curl -o curate-me-postman.json \
https://api.curate-me.ai/postman-collection.json
# Run with Newman
npx newman run curate-me-postman.json \
--env-var "base_url=https://api.curate-me.ai" \
--env-var "cm_api_key=$CM_API_KEY" \
--bail # stop on first failureThe collection file is kept in sync with the OpenAPI spec; the version field in the collection info matches the gateway deploy version.