Limits
Check the Composer API's limits before you design an integration: delivery, resuming a stream, approvals, billing, key revocation and request sizes.
Read this before you design an integration.
A build's sample is not its data
GET /v1/builds/{id}/sample returns the field schema and sample rows. It is not an export.
After you approve the publish_review gate and the feed is published, download its retained collection files with
Feed data.
Last-Event-ID suppresses, it does not replay
The SSE stream cannot resend frames you missed. A resubscribe gets a fresh full-state snapshot, and the header is used only to drop frames you demonstrably already have. Progress ticks that elapsed during the gap are gone; gate raises and activity items survive only because the snapshot re-carries them. See Streaming.
approve is never inferred
A body that omits approve on a schema_review or publish_review answer is a 400 approve_required — never a
decline. See Gates. This is the limit most
likely to bite a generated client, because many of them serialize an unset boolean as false.
Builds are charged, but not reported here
Each build is paid from the same prepaid balance as your Web Access requests.
- A build is priced by the work that build itself did, plus the web requests it made at your organization's own Web Access rates.
- Time a build spends waiting for you, at a gate or a question, costs nothing.
- There is no estimate before a build starts.
- A build stops and asks you before it goes past $15.
- A build that fails because of a problem on our side is not charged. If a charge looks wrong, flag it from the build.
Balance, spend, build charges and in-flight counts are not available on this API. Take them from your billing records.
There are no webhooks
Nothing calls you back, and no endpoint accepts a callback URL. See Noticing a gate for what to do instead.
Revocation is not instant
Revoking a key takes effect within 60 seconds rather than immediately. Treat those 60 seconds as the exposure window for a leaked key.
Request ceilings
| Limit | Value |
|---|---|
query length | 4000 characters |
| Message text length | 2000 characters |
| Cancel reason length | 1000 characters |
| Request body size | 1 MiB (413 above it) |
page_size on /v1/builds | at most 100, refused above it |