402, not 429; see
Errors. Two surfaces have a quota, per account:
Each status GET counts once against the read quota, including a long-poll request. Long-polls
with
wait can be held open concurrently up to 4 per user. When all four slots are in
use, another request is served immediately as wait=0; it does not receive a rate-limit
error.
The 429 body
retry_after is in seconds. The same value is sent as the Retry-After header.
Handling 429
Waitretry_after seconds, then send the same request again. A 429 is transient: the task,
the file, and the task_id are all still valid, so the retry picks up where it left off.
Use GET /task/{task_id}?wait=50 to wait for a status change instead of making frequent
short polls, or use GET /task/{task_id}/stream for status events.