CayøLargo
← Back to siteAPI ReferencePricingChangelog
v1.0Swagger ↗

Getting Started

Error Codes

All errors return JSON with a detail field describing the issue.

StatusMeaning
200OK: results returned. An empty results array is still a 200, see below.
400Bad request: invalid parameter value, e.g. option_type not 'call'/'put', or an unsupported coin.
401Unauthorized: missing or invalid X-API-Key.
403Forbidden: API key is disabled.
404Not found: unknown path, or a recipe that has no data for the requested coin in the current cycle.
429Too Many Requests: you hit either the daily request quota (resets at midnight UTC) or the per-minute burst limit. Both apply on every tier.
500Internal Server Error: something went wrong on our side. Includes a query cancelled by the 28-second statement timeout. Retry once; if it persists, contact us.
504Gateway Timeout: the request exceeded the 29-second gateway limit. Narrow the time window or lower limit, then retry.

An empty result is not an error

A request that matches no rows returns 200 with count: 0 and an emptyresults array. Treat count as the check, not the status code. The usual causes are a time window that predates your tier's history floor, a window shorter than your tier's sampling interval, or a filter combination no option matches.

When your requested range is older than your tier allows, the window is clamped rather than refused, and the response says so via window_start and history_clamped. See Response Format.