200 status. Operations that require more processing time — like enriching large contact lists or running deep research — return a 202 Accepted response with an operation ID you can poll until the work is done. Knowing which pattern to expect helps you design your integration correctly from the start.
Sync operations (200)
These calls complete quickly and return data directly in the response. You don’t need to do anything after the initial request.Async operations (202)
These calls kick off background work and return immediately with a poll URL. You retrieve the result by pollingGET /api/operations/:id until the status reaches succeeded or failed.
- Sync response (200)
- Async accepted (202)
- Polling response (200)
Data is available immediately in the
data field.How to poll
Once you have anoperationId, call GET /api/operations/:id on a schedule until the status is terminal.
Operation status values
Recommended polling strategy
Idempotency
For asyncPOST requests, you can supply an Idempotency-Key header. If you retry the same request with the same key within the idempotency window, the API returns the original response rather than creating a duplicate operation.
This example uses a batch enrichment request, which is always asynchronous.