Uptimeify Docs
Organization

Download Data Export

Issues a short-lived download URL for a finished organization data export.

GET /api/organization/data-export/{exportId}/download

Returns a presigned URL for the export ZIP. The URL is valid for 5 minutes; the object key itself is never exposed and the storage bucket is not browsable, so knowing an export id is not access — an authenticated administrator of the owning organization is.

Query parameters

ParameterTypeDescription
redirect1Respond with 302 to the presigned URL instead of returning JSON. Convenient for curl -L and browser links.

Example (cURL)

BASE_URL="https://uptimeify.io"
TOKEN="<your-api-token>"
EXPORT_ID="0f0f2f6a-2b3b-4a2f-9a7c-3e5f8c1d2b44"

# Straight to the file
curl -L -o export.zip \
  "$BASE_URL/api/organization/data-export/$EXPORT_ID/download?redirect=1" \
  -H "Authorization: Bearer $TOKEN"

Response

{
  "url": "https://<bucket>.<region>.your-objectstorage.com/data-exports/org-12/0f0f2f6a-...zip?X-Amz-Signature=...",
  "expiresInSeconds": 300,
  "sizeBytes": 18446721,
  "filename": "uptimeify-export-0f0f2f6a-2b3b-4a2f-9a7c-3e5f8c1d2b44.zip"
}

Each call increments downloadCount and updates lastDownloadedAt on the export record.

Common errors

  • 400 User must belong to an organization when no organization can be derived from the session or token
  • 401 Unauthorized when you are not authenticated
  • 403 Forbidden when your role cannot administer the organization
  • 404 Export not found when the id does not belong to your organization
  • 409 Export is not downloadable (data.code: exportNotReady) while the export is queued, generating or failed
  • 410 Export download window has expired (data.code: exportExpired) after the 7-day window

On this page