Authentication

How to authenticate with the Covala API using API keys.

Authentication

All Covala API requests require an API key passed in the X-API-Key header.

API key format

API keys follow the format sk_cvl_live_ followed by a random string. The cvl identifies the key as a Covala key. Keep your key secret — it grants full access to the API under your account's rate limits.

PrefixEnvironmentTypeUse case
sk_cvl_live_ProductionSecretServer-side, full access
pk_cvl_live_ProductionPublishableClient-side safe
sk_cvl_test_TestSecretDevelopment & testing
pk_cvl_test_TestPublishableClient-side testing

Making authenticated requests

Include your API key in every request:

curl https://api.covala.com/v2/products \
  -H "X-API-Key: sk_cvl_live_your_key_here"

You can also use Bearer token authentication:

curl https://api.covala.com/v2/products \
  -H "Authorization: Bearer sk_cvl_live_your_key_here"

Rate limits

Each API key has rate limits based on your plan:

PlanRequests/minMonthly quotaPrice
Free105,000$0
Starter6050,000$29/mo
Pro300500,000$99/mo
Enterprise1,0005,000,000Custom

Rate limit headers are included in every response:

HeaderDescription
X-RateLimit-LimitRequests allowed per window
X-RateLimit-RemainingRequests remaining in current window
X-RateLimit-ResetUnix timestamp when the window resets
X-MonthlyQuota-LimitMonthly request quota
X-MonthlyQuota-RemainingRequests remaining this month

When you exceed your rate limit, the API returns 429 Too Many Requests.

Security best practices

  • Store your API key in environment variables, never in code
  • Rotate your key immediately if you suspect it has been compromised
  • Use separate keys for development (sk_cvl_test_) and production (sk_cvl_live_)