Report API
Generate immutable reports and inspect availability, cutoff, redaction, and download state.
Reports bind target scope, audience, and collection cutoff. Read report interpretation before using a report for customer or auditor review.
Use the shared API contract for authentication, pagination, request headers, idempotency, and error responses.
Generate a report
/organizations/{organization_id}/reportsGenerates an immutable report. Requires access to every target; broader requests are rejected rather than silently omitting unauthorized assets.
typestringrequiredReport purpose.
asset_idsstring[]optionalRequired for executive, vulnerability, and organization audit reports; 1–200 visible unique target IDs.
incident_idstringoptionalRequired for incident reports; forbidden with asset_ids.
start_attimestamprequiredInclusive occurrence-time range start.
end_attimestamprequiredExclusive range end, after start_at and not in the future.
formatstringoptionalOutput format. csv is supported only for vulnerability finding tables; other type/format combinations return 422.
pdfredactionstringoptionalUnmasked content additionally requires sensitive-data authorization.
maskedReturns report ID and operation. The completed report records data cutoff and missing coverage.
List reports
/organizations/{organization_id}/reportsReturns report state, generation time, scope, cutoff, format, and redaction. Standard limit and cursor apply. Unknown filters return 422.
typestringoptionalFilter report type.
incident_idstringoptionalFilter visible incident.
Returns a data array and pagination.next_cursor. Entries include stable IDs and the resource fields described for this collection.
Read report availability
/organizations/{organization_id}/reports/{report_id}Returns coverage metadata and a short-lived download URL after success. Authorization is rechecked before a URL is issued. New data requires a new report, not mutation of the completed artifact.
Returns data and request_id.
Delete a report
/organizations/{organization_id}/reports/{report_id}Deletes a report. Requires If-Match; holds return 409. Deletion cannot revoke artifacts already downloaded by recipients.
Returns cleanup operation. Source incidents and findings are unaffected.