Skip to main content

Error Envelope

Failed requests return a non-2xx HTTP status and an error envelope.
Use the HTTP status for control flow and message for logs or operator-facing diagnostics.

Retry Policy

Avoid Duplicates

The public API does not accept a generic idempotency-key header. Build idempotency in your integration:
  1. Store the VisaFlo ID returned from every successful create.
  2. Search by a stable field, such as email or case number, before retrying a create.
  3. Use the stored VisaFlo ID for files, tasks, notes, and updates.
  4. Log the source event ID beside the VisaFlo ID so operators can reconcile retries.

Rate Limits

VisaFlo applies rate limiting to workspace API routes. On 429, pause the affected job and retry later. Do not fan out retries across many workers, because that prolongs the limit window.

Safe Logging

Log request IDs, VisaFlo IDs, status codes, and response messages. Do not log API keys or raw immigration documents. Redact emails and personally identifying data where your logging policy requires it.