Limits and versioning
Limits
Section titled “Limits”| Limit | Value |
|---|---|
| Request body | 1 MB. Larger bodies get 413 payload_too_large. |
| Page size | At most 200 items per page. See pagination. |
| Webhook secret | At least 32 characters. |
| Share link lifetime | At most 30 days. |
Rate limits
Section titled “Rate limits”The API contract reserves 429 rate_limited with a Retry-After header, and targets 1,000 events per second per
organization on ingest and 20 requests per second on other routes. These limits are not enforced in the current release.
Write your client as if they were: back off on 429, and batch events instead of sending them one by one.
Versioning
Section titled “Versioning”The API lives under /v1. Within v1 changes are additive: new endpoints, new optional fields and new enum values can
appear, so ignore fields you do not recognize and handle unknown enum values gracefully. Breaking changes ship under a new
path.
The event schema has its own version, ape_version, currently 0.1. See the event schema and the
changelog.
Environments
Section titled “Environments”Test and live data are separate. Test keys (hk_test_...) work only with the sandbox base URL and live keys (hk_live_...) only
with production. See environments.