Skip to content

Authentication

API Key Authentication

All requests to the 50c API must include your API key in the Authorization header:

Terminal window
curl -X POST https://api.50c.ai/tools/genius \
-H "Authorization: Bearer cv_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"problem": "Your question"}'

Key Types

PrefixTypeDescription
cv_ProductionMain API key for production use
cv_sub_Sub-keyEnterprise delegable keys with limits
cv_test_SandboxTesting without charges
cv_agent_AgentDeveloper-registered agent keys
titan_vip_VIPElite plan only

x402 Payment Authentication

For autonomous agents, use x402 payments instead of API keys:

Terminal window
# First call returns 402 with payment instructions
curl -X POST https://api.50c.ai/tools/genius \
-H "Content-Type: application/json" \
-d '{"problem": "Your question"}'
# Response includes payment headers:
# X-Payment-Required: true
# X-Payment-Amount: 50
# X-Payment-Currency: USDC
# X-Payment-Network: base
# Retry with payment token
curl -X POST https://api.50c.ai/tools/genius \
-H "X-Payment: <signed_payment_token>" \
-H "Content-Type: application/json" \
-d '{"problem": "Your question"}'

See x402 Payments for details.

Cloudflare tools (cf_*)

For Cloudflare suite tools, the 50c API key authorizes the call; your Cloudflare permission is a separate token.

  • Prefer header: X-Cloudflare-Token: <cloudflare_api_token>
  • Alternatively, JSON body field: cloudflare_token (e.g. MCP tools/call when headers are not available)

50c does not persist Cloudflare tokens. Create tokens in the Cloudflare dashboard with least privilege for the zones you automate.

Errors

StatusErrorSolution
401invalid_api_keyCheck your key format
401key_not_foundKey doesn’t exist or was revoked
402insufficient_creditsTop up at 50c.ai/subscribe
403rate_limitedWait and retry