List reports
List a company's performance reports, newest first. The rendered document is left out here to keep the list light, so read a single report to get it. Reports are generated per month by an agent and a row appears as soon as generation starts, which means `status` can still be pending when you list.
Authentication
sf_… API key in the bearerAuth field below.A SaaSFlow API key (format sf_…) or an OAuth bearer token. Paste only the key — the proxy adds the Bearer prefix. Create an API key in Settings → Company settings → API keys — see API keys.
In: header
Path Parameters
1 <= lengthResponse Body
application/json
curl -X GET "https://example.com/companies/string/reports"[ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "companyId": "8bb73d03-06b4-47c7-80c7-59301f770eda", "definitionId": "string", "reportMonth": "string", "status": "generating", "runId": "78c33d18-170c-44d3-a227-b3194f134f73", "title": "string", "summary": "string", "error": "string", "createdTime": "2019-08-24T14:15:22Z", "createdUserId": "string", "lastUpdatedTime": "2019-08-24T14:15:22Z", "lastUpdatedUserId": "string" }]Delete ai consent
Revoke this company's consent for one AI provider. Agent runs already in flight are allowed to finish; new runs that need the provider are blocked from here on. Returns 404 when there was no active consent to revoke.
Create report
Start generating a performance report for one month. This returns as soon as the agent run is queued, giving back a `reportId` to poll and a `runId` for following the agent, so the document is not ready yet. Because an AI agent reads company data to write it, a company that has not consented to the agent's AI provider gets a 403 carrying `code: "aiConsentRequired"` and the `providerKey` to request consent for. Only one report generates per company at a time (409), and there is a per-company rate limit (429, with `retryAt` when it can be retried).