Report Endpoints
Manage financial reports, projections, and actuals.
Reports are the core financial artifacts in Sureshake, representing specific snapshots of entity performance.
List Reports
Retrieve a paginated list of reports.
/v2/reportscurl -H "Authorization: Bearer $TOKEN" https://api.sureshake.com/v2/reports
const response = await fetch('https://api.sureshake.com/v2/reports', {
headers: { 'Authorization': `Bearer ${token}` }
});
const { data, meta } = await response.json();{
"data": [
{
"id": "8f2349ef-22ab-46ae-a129-2eb4c2570001",
"title": "Annual Audit 2023",
"report_type": "annual_report",
"status": "verified",
"is_public": false,
"owner_id": "user_123",
"created_at": "2024-01-10T10:00:00Z",
"updated_at": "2024-01-10T10:00:00Z"
}
],
"meta": {
"total": 1,
"limit": 20,
"offset": 0,
"hasMore": false
}
}Create Report
Create a new report for an entity.
/v2/reportscurl -X POST \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"title": "Q1 2024 Projection", "report_type": "projection", "data": {}}' \
https://api.sureshake.com/v2/reportsGet Report
Retrieve a single report by its ID.
/v2/reports/:idcurl -H "Authorization: Bearer $TOKEN" https://api.sureshake.com/v2/reports/8f2349ef...
A successful report response includes view_delivery. When its status is
ready, acknowledge the server-issued receipt only after meaningful report
content has rendered. Do not invent source, share, collection, or version
lineage; the server binds those fields to the receipt.
/v2/reports/:id/viewscurl -X POST \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"deliveryReceiptId":"8f2349ef-22ab-46ae-a129-2eb4c2570004"}' \
https://api.sureshake.com/v2/reports/8f2349ef-22ab-46ae-a129-2eb4c2570001/viewsRetries use the same receipt and return outcome: "replayed". The report
document endpoint also returns its own view_delivery receipt. A browser must
acknowledge that document-specific receipt only after the document frame loads;
a failed document fetch or frame load must not be recorded. Owner, blocked,
non-external, revoked, and private-attribution rules are resolved by the server;
private browsing may produce an anonymous aggregate view. If receipt issuance
or acknowledgment is unavailable, content and tracking state remain explicitly
separate—clients must not claim the view was recorded.
Update Report
Update report metadata or status.
/v2/reports/:idcurl -X PATCH \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"status": "verified"}' \
https://api.sureshake.com/v2/reports/8f2349ef...Delete Report
Permanently remove a report.
/v2/reports/:idcurl -X DELETE -H "Authorization: Bearer $TOKEN" https://api.sureshake.com/v2/reports/8f2349ef...