Set Benchmark Preferences
Stores the cohort and funnel-step mapping used to compare this project's metrics with benchmarks. Replaces the previous preferences.
Authorization
Authorization In: header
Path Parameters
ID of the project whose benchmark preferences to store.
Request Body
application/json
Cohort and funnel-step mapping to store for this project.
Cohort the project's metrics are compared against.
Annual contract value band used to pick a benchmark cohort.
How someone becomes a paying customer: opt-in trial, opt-out trial, freemium, or a direct purchase.
Who the product sells to.
Which analytics events stand in for each benchmark funnel step.
Analytics event name that counts as activation.
Analytics event name that counts as a completed order.
Analytics event name that counts as a page view.
Analytics event name that counts as a signup.
Analytics event name that counts as a trial start.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X PUT "https://www.saasco.com/api/v2/projects/string/benchmarks/preferences" \ -H "Content-Type: application/json" \ -d '{ "benchmarkPreferences": { "businessInfo": { "acvLevel": "low", "businessModel": "freeTrialOptIn", "businessType": "b2b" }, "funnelSteps": { "activation": "string", "completedOrder": "string", "pageView": "string", "signup": "string", "startTrial": "string" } } }'{
"businessInfo": {
"acvLevel": "low",
"businessModel": "freeTrialOptIn",
"businessType": "b2b"
},
"funnelSteps": {
"activation": "string",
"completedOrder": "string",
"pageView": "string",
"signup": "string",
"startTrial": "string"
}
}{
"code": "BAD_REQUEST",
"message": "Invalid input data",
"issues": []
}{
"code": "UNAUTHORIZED",
"message": "Authorization not provided",
"issues": []
}{
"code": "FORBIDDEN",
"message": "Insufficient access",
"issues": []
}{
"code": "NOT_FOUND",
"message": "Not found",
"issues": []
}{
"code": "INTERNAL_SERVER_ERROR",
"message": "Internal server error",
"issues": []
}Get Benchmark Preferences
Reads the cohort and funnel-step mapping used to compare this project's metrics with benchmarks. Returns null when nothing has been saved.
List Projects
Lists the projects the caller can reach, each with its app configs. API keys are scoped to a single project, so an API-key caller always gets exactly that one project back. Session and MCP callers omit `take` for every membership they belong to; the dashboard passes `take` for the recent page and `id` to keep the current project. An MCP URL with `?projectId=` is limited to that project.