Base URL
/v1, for example POST https://api.usewarp.net/v1/checkout/sessions.
Authentication
Authenticate with your project’s secret key in theAuthorization header:
Test and live keys
The network is determined by the key. There is no separate test base URL and no
network parameter.
Errors
Warp uses standard HTTP status codes. Error responses have this shape:
Branch on the HTTP status and
code. The message text can change.
Rate limits
Requests are rate limited per secret key and per IP address; public endpoints are limited per IP. When you exceed a limit, the API returns429 with code: "rate_limited". Responses include the standard RateLimit and RateLimit-Policy headers so you can see your remaining quota. Back off and retry after the window resets.
Idempotency
Write endpoints don’t accept an idempotency key. To avoid duplicate checkout sessions when a request times out, store the sessionid with your order and reuse the existing session if it is still pending instead of creating a new one.
Webhook deliveries can repeat. Deduplicate them by event ID — see Webhooks.
Pagination
List endpoints return{ "object": "list", "data": [...], "has_more": true }. Pass the id of the last item as starting_after to fetch the next page, and set limit (1-100, default 20) to control the page size.
Next steps
Create a checkout session
Start a hosted checkout.
Webhooks
Events, signatures and retries.
Verify a proof
Hosted Groth16 verification with signed receipts.
Quickstart
Take a test payment end to end.