Skip to content

Read current tenant entitlement

Returns the entitlement resolved for the tenant at request time. The endpoint is tenant-scoped and is intended for portal/server integrations; it does not require clients to read Meter’s database tables.

GET /admin/v1/tenants/:tenant_id/entitlements/current

Use a Billing service API key or a tenant-authorized admin key:

Authorization: Bearer <api-key>

The web portal exposes the same response through its authenticated server-side proxy at GET /api/entitlements/current.

{
"tenant_id": "tenant_xxx",
"grant_id": "grant_xxx",
"plan_id": "growth",
"plan_revision": 1,
"status": "active",
"starts_at": 1787654400,
"ends_at": 1790332800,
"monthly_event_limit": 10000000,
"monthly_event_used": 12345,
"retention_days": 180,
"max_development_projects": -1,
"max_release_projects": -1,
"max_subject_routes": 100,
"max_usage_controls": 6,
"ingest_profile": {
"tenant_requests_per_second": 50,
"tenant_request_burst": 100,
"project_requests_per_second": 25,
"project_request_burst": 50
},
"requires_release_project_usage_storage": true,
"release_project_usage_storage_dynamic_partition_start": -732,
"release_project_usage_storage_dynamic_partition_end": 30,
"release_project_usage_storage_create_history_partition": true,
"features": {
"budgets": true
}
}

A successful payment creates an active Grant immediately. Dedicated Doris usage storage is provisioned only when a release project is created, according to the active Grant snapshot; it is not a tenant-level payment fulfillment step. Enterprise and other custom snapshots are issued by an admin/adhoc grant operation rather than Checkout. A tenant with no active grant resolves to the Starter compatibility entitlement. Expired grants are not renewed by a background expiry job; the resolver applies the starts_at <= now < ends_at boundary directly.

All numeric entitlement limits use -1 to mean unlimited; the API does not return null or a separate unlimited marker for these fields.