Skip to main content
Deprecated

The Reports API and its guides are deprecated and may be removed in a future release. Contact your Otter representative for migration options.

Report without a notification

Poll for report status when you do not use the Report generated (reports.report_generated) webhook.

Before you begin

Steps

Report without Notification Flow

  1. POST /v1/reports/generate with type, an inclusive UTC start/end date range, and filters → a new jobId.
  2. Poll GET /v1/reports/{jobId} until status is terminal.
  3. Status values:
  • IN_PROGRESS — keep polling
  • READY — download from URL in response
  • ERROR — read error details in response
  • EXPIRED — generate a new report; the download URL is no longer available
  1. Download the comma-delimited UTF-8 CSV promptly when READY. Otter returns EXPIRED two days after workflow completion.

Verify

Generate a test report; polling reaches READY and the URL returns a valid file.

Common failures

SymptomLikely causeFix
Stuck IN_PROGRESSLarge range or backlogWiden poll interval; narrow date range
ERRORInvalid filters or typeCheck API reference
EXPIREDReport download window elapsedGenerate a new report

Next