1. API Reference
  2. API resources
  3. Reports
Website
  • API overview
  • API quickstart
  • Authentication
  • Project scoping
  • Requests and responses
  • Pagination and filtering
  • Errors
  • GETList supported database engines
  • POSTList projects
  • POSTCreate a project
  • GETGet a project
  • DELETEDelete a project
  • PATCHUpdate a project
  • POSTCreate a source
  • POSTList sources
  • GETGet source details
  • DELETEDelete a source
  • PATCHUpdate a source
  • POSTCreate secret metadata
  • POSTList secret metadata
  • GETGet secret metadata
  • DELETEDelete secret metadata
  • PATCHUpdate secret metadata
  • POSTCreate a schedule
  • POSTList schedules
  • POSTSummarize schedule statuses
  • GETGet a schedule
  • DELETEDelete a schedule
  • PATCHUpdate a schedule
  • DELETERemove a schedule gate
  • POSTActivate or pause a schedule
  • POSTQueue a manual check
  • POSTCreate an immutable report
  • POSTList reports
  • GETGet report details
  • DELETEDelete a report
  • POSTDownload a report
  • POSTGet the API-key scope catalog
  • POSTCreate an API key
  • POSTList API-key metadata
  • GETGet API-key metadata
  • DELETEDelete an API key
  • PATCHUpdate API-key metadata
  • POSTCreate a notification channel
  • POSTList notification channels
  • POSTResolve notification channels by ID
  • GETGet notification channel details
  • DELETEDelete a notification channel
  • PATCHUpdate a notification channel
  • POSTSend a test notification
  • POSTCreate a project worker
  • POSTList project workers
  • GETGet worker details
  • DELETEDelete a worker
  • PATCHUpdate a worker
  • POSTRead live worker agent logs
  • POSTList checks
  • POSTSummarize check statuses
  • GETGet check details
  • POSTGet check log sections
  • POSTDownload a check log
  • POSTDownload check audit evidence
  • POSTList notification messages
  • GETGet notification message details

Reports

Create immutable English-language restore reports and download them as PDF or HTML.

Loading documentation…

Checks< PreviousNotification channelsNext >

Powered by heyo

On this page

Select report contentsWait for the PDFDownload a reportEndpoint reference

Reports capture a point-in-time result set. Their contents are immutable after creation; PDF generation updates their status and download metadata in the background.

Select report contents

Provide a title, ISO 8601 time_range.from and time_range.to (each with an explicit offset or Z; to is exclusive), and one scope:

  • {"type":"all_checks"} for all project checks in the time range
  • {"type":"check_ids","check_ids":[...]} for up to 500 selected project checks
  • {"type":"schedule","schedule_id":"..."} for checks from one project schedule

Reports are generated in English. A client-supplied locale does not change the output language.

All scopes are limited to 500 checks. The time range is inclusive at from and exclusive at to; selection uses finished_at, then started_at, then created_at when the preceding timestamp is absent. Explicit check_ids must also belong to the project and fall within this range, otherwise creation returns 400.

Wait for the PDF

Creation returns 201 with data.id. The new report has status: "pending": its snapshot and HTML are already stored, and the PDF is rendered once in the background. Poll Get report details with bounded backoff until the status is ready or failed. Do not create a new report on every poll.

A ready report exposes pdf_size_bytes, pdf_sha256, and pdf_rendered_at. A failed report can include pdf_error. The renderer retries failed attempts automatically before marking the report failed; downloading it does not trigger another attempt.

Download a report

Call the download action with {"format":"pdf"} or {"format":"html"}. PDF is the default. The response is a file attachment with Cache-Control: no-store, not a JSON envelope.

PDF requests can return 409 with one of these codes:

CodeMeaningClient action
report_pdf_pendingThe PDF is still being generatedWait, poll the report, and retry the download when ready
report_pdf_failedPDF generation exhausted its retriesInspect detail.pdf_error when present; use the stored HTML or investigate before creating a replacement
report_pdf_unavailableNo stored PDF is availableUse HTML or create a new report; older reports are not automatically backfilled

HTML is available immediately after successful creation, including while the PDF is pending or failed. A legacy report can be ready without a stored PDF, so clients must still handle report_pdf_unavailable.

List filters support title, scope_type, status, schedule_id, created_from, and created_to. The two timestamp filters take ISO 8601 values with an explicit offset or Z.

Endpoint reference

  • Create a report
  • List reports
  • Get report details
  • Download a report
  • Delete a report

Required scopes are v1.reports:read, v1.reports:write, and v1.reports:delete.

Related topics

  • Choose checks for a report
  • Handle file responses
  • Handle report errors