Base URL
Authentication
All endpoints except/health and /v1/metadata require an API key passed in the x-api-key header. Production keys are prefixed clk_live_; sandbox keys are prefixed clk_test_.
Request format
Send request bodies as JSON and include theContent-Type: application/json header on all POST and PATCH requests.
| Header | Value |
|---|---|
Content-Type | application/json |
x-api-key | Your API key |
Response envelope
Every response is wrapped in adata + meta envelope:
data holds the resource or result payload. meta carries request-level metadata including your current rate limit state.
Pagination
List and search endpoints return cursor-based paginated results. Thedata payload for these endpoints has the following shape:
| Parameter | Type | Default | Max | Description |
|---|---|---|---|---|
count | integer | 20 | 100 | Number of results per page |
cursor | string | — | — | Opaque cursor from the previous response |
cursor value from a response back as a query parameter to retrieve the next page. When hasMore is false, you have reached the last page.
Rate limiting
Rate limits are plan-based. The current window state is returned in every response undermeta, and also in HTTP headers:
| Header | Description |
|---|---|
X-RateLimit-Limit | Total requests allowed in the current window |
X-RateLimit-Remaining | Requests remaining in the current window |
X-RateLimit-Reset | Seconds until the window resets |