Authentication & Error Codes

Authentication

All API requests require authentication via one of two methods:

API Key Header (Preferred)

curl -H "X-API-Key: ck_live_your_key" \
  "https://claudekit.cc/api/proxy/vidcap/v1/youtube/info?url=..."

Bearer Token

curl -H "Authorization: Bearer ck_live_your_key" \
  "https://claudekit.cc/api/proxy/vidcap/v1/youtube/info?url=..."

Getting an API Key

  1. Log in to ClaudeKit
  2. Go to API Keys Dashboard
  3. Click “Create API Key”
  4. Save the key securely (shown only once)

API keys use the format ck_live_ followed by 32 random characters.

Error Codes

CodeHTTP StatusDescription
MISSING_API_KEY401No API key provided in request headers
INVALID_API_KEY401API key is invalid or expired
KEY_EXPIRED401API key has expired
KEY_REVOKED401API key has been revoked
LICENSE_REQUIRED403Active ClaudeKit license required
RATE_LIMIT_EXCEEDED429Too many requests, retry after cooldown
INVALID_PATH400Invalid proxy path format
UNKNOWN_SERVICE404Requested service not found

Error Response Format

{
  "error": "INVALID_API_KEY",
  "message": "The provided API key is invalid or has expired"
}

Rate Limits

API requests are rate-limited per API key. Limits are communicated via response headers.

Response Headers

HeaderDescription
X-RateLimit-LimitMaximum requests per hour
X-RateLimit-RemainingRequests remaining in current window
X-RateLimit-ResetUnix timestamp when the window resets

Rate Limit Exceeded

When rate limited, you receive a 429 response:

{
  "error": "RATE_LIMIT_EXCEEDED",
  "retryAfter": 120
}

The retryAfter field indicates seconds to wait before retrying.

Default Limits

PlanRequests/Hour
Standard1,000
Premium10,000

Best Practices

  • Cache responses when possible to reduce API calls
  • Implement exponential backoff for retries on rate limit errors
  • Monitor usage via the API Keys Dashboard
  • Use key rotation to cycle keys without downtime

Next Steps