Uptimeify Docs
OrganizationReports

List Report Runs

Returns the organization's report generation/delivery history, optionally filtered to a single report.

GET /api/organization/report-runs

Lists report runs for the organization, newest first. A run is created every time a report is generated — on schedule or via Send Report Now. The organization is derived from your authenticated session or API token. Available to any organization role, including read-only users.

Query Parameters

FieldTypeRequiredNotes
reportIdstring (uuid)noRestrict to runs of one report. If the id does not resolve to a report in your organization, returns [].
limitintegernoDefault 50, capped at 200.
offsetintegernoDefault 0.

Example (cURL)

BASE_URL="https://uptimeify.io"
TOKEN="<your-api-token>"

curl -X GET "$BASE_URL/api/organization/report-runs?reportId=3f1c9c1e-8d2a-4c7e-9b1a-2d5f6a7b8c90&limit=20" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Accept: application/json"

Response

[
  {
    "id": "9a2b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d",
    "reportId": "3f1c9c1e-8d2a-4c7e-9b1a-2d5f6a7b8c90",
    "reportName": "Weekly Ops Digest",
    "periodStart": "2026-05-25T00:00:00.000Z",
    "periodEnd": "2026-06-01T00:00:00.000Z",
    "periodLabel": "May 25 – Jun 1, 2026",
    "status": "sent",
    "trigger": "schedule",
    "sentAt": "2026-06-01T02:00:12.000Z",
    "recipients": ["ops@agency.io"],
    "hasPdf": true,
    "summary": { "sitesIncluded": 42, "incidents": 3 },
    "createdAt": "2026-06-01T02:00:00.000Z"
  }
]

status is one of pending, generating, sent, failed, skipped_empty. trigger is schedule or manual. hasPdf is true only when a PDF was archived for this run — use it to decide whether to call Download Report PDF.

Common errors

  • 401 Unauthorized — not authenticated.
  • 403 Forbidden (forbidden) — you do not have access to this organization.

On this page