Polling, retries & idempotency
Build resilient asynchronous workflows without webhooks.
Polling
Account imports and recalculation can take seconds to minutes depending on history. Poll every 2–5 seconds initially, increase the interval for long jobs, and stop on completed, failed, or canceled.
| State | Meaning |
|---|---|
queued | Accepted and waiting for a worker |
in_progress | Currently importing or calculating |
completed | Safe to continue |
failed | Inspect failed_reason and decide whether to retry |
canceled | Start a new operation only when appropriate |
Safe retries
GET requests are safe to retry. Treat user creation and link creation as idempotent by stable reference or input. Avoid blindly repeating account or report creation after a network timeout; read the resource first.
No public webhooks yet
The current integration contract is polling-only. Completion webhooks are on the roadmap.