|
Usage and Billing
Tenant-attributed metering and invoice exports.
Attribution dimensions
Every model call, embedding, search, and tool execution records project, environment, tenant, user, agent, installation, session, run, model, and provider. Pre-attribution rows (before your cutover) carry nulls rather than guesses.
Reading usage
GET /v1/usage— summary grouped by tenant, agent, installation, model, and day (90-day window max).GET /v1/usage/events— paginated attributed rows for debugging and support.GET /v1/usage/export?format=csv— invoice-quality export grouped by tenant and agent (5,000-row cap,truncatedflag when hit). Narrow withtenant_id/agent_id.
Budgets and limits
- Rate/concurrency (
EMBEDDED_LIMITS, per tier): run creation returns429withRetry-Afterwhen per-scope rates or concurrent-run caps trip. Bursty tenants are isolated by fair scheduling — one tenant cannot starve the project queue. - Spend budgets: installations (
budget: { max_spend_usd, window_days }) and tenants (metadata.budget) gate run creation and delegation with402 budget_exceeded. Session turns are metered, not gated, to protect p95 latency. - Entitlements:
embeddedAgents,embeddedSkillLibrary,embeddedSkillImport,embeddedRemoteMcp,embeddedBrowserPolicy,embeddedSubagentsare tier flags; count caps (maxTenants,maxSkills, …) are the enforcement mechanism.
Billing your own users
Use rate plans (/v1/rate-plans) and end-user administration (/v1/end-users) plus the usage export to build your own billing UI. Cencori is not the merchant of record for your marketplace. Tiered/volume plans graduate on real month-to-date usage, including in-batch accumulation.

