RetentionCohortDetail
Use this when the user asks for the customer-level detail behind a specific retention cohort cell. Requires permissions: subscriptions:read, customers:read.
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 <= lengthRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
curl -X POST "https://example.com/companies/string/data/retentionCohortDetail" \ -H "Content-Type: application/json" \ -d '{ "month": "string", "mrrType": "cmrr" }'[ { "customerId": "string", "customerName": "string", "mrrStart": 0, "mrrEnd": 0 }]CustomerChanges
Use this when the user asks which customers changed (new/upgraded/downgraded/churned) in a period. Requires permissions: subscriptions:read, customers:read.
List search
Free-text search across a company, grouped by entity type. Use it when you know a name but not an id: one call matches customers, vendors, and accounts on name, and transactions on counterparty or description. This backs the command palette, so each category returns at most 5 hits. Categories the caller has no read permission for come back empty rather than 403, which keeps the search box usable on partial-permission grants. When you need a full, filtered, paginated list of one entity type, use that resource's own endpoint.