The Platform API

Reports

Manage your videos, ask questions, and build applications with the Platform API. Explore the operations below for request details, responses, and examples.

Reports

Written reports with evidence frames: an incident report for one alert, or a period report over a time range or a video. Reports are generated in the background and can be printed or shared by link.

GET/api/v1/projects/:projectId/reportsList reports

List reports

Newest first. Query params: alert_id, limit (default 50, max 200).

POST/api/v1/projects/:projectId/reportsGenerate a report

Generate a report

type is incident (default, needs alert_id) or period (needs from / to or video_id). Returns 202 with the report in status queued; poll it until ready or failed. Generating a report spends the project's tokens; 402 means the project's budget is stopped.

curl -X POST https://platform.endlessai.com/api/v1/projects/PROJECT_ID/reports \
    -H "X-Api-Key: YOUR_KEY" \
    -H "Content-Type: application/json" \
    -d '{ "type": "incident", "alert_id": "ALERT_ID" }'
GET/api/v1/projects/:projectId/reports/:reportIdGet a report

Get a report

{
    "id": "REPORT_ID",
    "type": "incident",
    "status": "ready",
    "alert_id": "ALERT_ID",
    "video_id": "VIDEO_ID",
    "title": "Unattended bag near the main entrance",
    "content": { "...": "the report's sections" },
    "created_at": "2026-10-01T09:14:03.000Z"
  }
GET/api/v1/projects/:projectId/reports/:reportId/viewView a report as a printable page

View a report as a printable page

Returns an HTML page. Answers 409 while the report is not ready yet.

POST/api/v1/projects/:projectId/reports/:reportId/shareCreate a share link for a report

Create a share link for a report

Anyone with the link can open the report without signing in. Optional ttl_days (1–365, default 30; null = never expires). The token is shown only in this response.

{
    "id": "SHARE_ID",
    "token": "SHARE_TOKEN",
    "url": "https://platform.endlessai.com/share/SHARE_TOKEN",
    "expires_at": "2026-10-31T09:20:00.000Z",
    "resource_type": "report",
    "resource_id": "REPORT_ID"
  }
DELETE/api/v1/projects/:projectId/reports/:reportIdDelete a report

Delete a report

Send the request to https://platform.endlessai.com/api/v1/projects/:projectId/reports/:reportId using your project key or user token.