Skip to main content

Usage & Credits

Looking for the product view?
The Help Center explains this surface as users see it: Credits.

Informer meters platform activity against a tenant-wide credit pool. Metered activity spans AI calls, agent runs, app and job compute, and storage; each resource type is charged at the rate its tenant's plan carries, and a type the rate card prices at zero is metered without drawing credits. Credits are purchased through Subscriptions; this section covers how usage is governed, enforced, and reported.

Core concepts​

Credit pool​

The credit pool is the tenant's balance of spendable credits, synced from the License Manager and cached locally in AiEntitlementCache. The normalized pool exposed in API responses looks like:

{
"included": 50000,
"used": 12340,
"remaining": 37660,
"overageRate": 1.0,
"legacyDollars": 0,
"paygRate": null
}

Resource types​

Every metered activity is attributed to a canonical resource type. Types are defined in code (not editable) and metered in one of two modes:

ModeMeaningExamples
eventAccumulates per occurrence; credits computed at capture time from the synced rate card, or the raw measurement is reported for the License Manager to price when no trusted rate is availableai, agent_run, app_compute, job_compute
gaugePoint-in-time measurement reported directly to the License Manager (cloud only)app_storage, workspace_storage, file_storage, es_index_count

See Usage Reporting → Resource Types for the full registry.

Usage profiles​

A usage profile governs who can use what, and how much:

  • allowedModelTiers — which AI model tiers the profile may use (everyday, advanced, strategic)
  • creditCapPerMonth — a per-actor monthly AI credit ceiling (null = unlimited, 0 = hard stop, positive = capped). Only AI-category usage (ai, agent_run) counts toward it; compute charged to the actor (job_compute, app_compute) does not

Profiles are assigned to teams (and agents). A user's effective profile is resolved from their team memberships — when a user belongs to multiple teams, the profiles are merged into the most permissive result (union of tiers, highest cap). When no team assignment exists, the tenant's default profile applies.

Entity budgets​

An optional entity budget caps monthly credit spend for a specific app or dataset, independent of the per-actor profile cap.

Enforcement flow​

Before a metered AI operation runs, the enforcer evaluates the request in order. The first failing check throws 402 Payment Required with a machine-readable code:

OrderCheckDenial code
1Entitlement present (License Manager JWT cached)NOT_CONFIGURED
2Requested model tier allowed by effective profileTIER_NOT_ALLOWED
3Actor's month-to-date AI usage (ai, agent_run) below creditCapPerMonthCREDIT_LIMIT
4Entity (app/dataset) budget not exhaustedBUDGET_EXHAUSTED
5Credit pool has balance (slush → auto-replenish → grace window → cutoff)HARD_CUTOFF
{
"statusCode": 402,
"error": "Payment Required",
"message": "Monthly credit limit reached",
"code": "CREDIT_LIMIT",
"profileRemaining": 0,
"poolRemaining": 37660
}

BYOK​

When a tenant supplies its own provider API keys (BYOK), AI calls do not draw from the credit pool: the profile cap, entity budget, and pool-balance checks are skipped for ai usage. Tier and entitlement checks still apply, and the other resource types (agent runs, compute, storage) still consume pool credits.

Permissions​

PermissionGrants
tenant.superuserRead usage profiles, resource types, and entity budgets
usage.writeCreate/update/delete profiles; set entity budgets
billing.manageUsage reporting (/api/usage*) and subscription management

In this section​

  • Usage Profiles — define and assign profiles that govern tier access and credit caps
  • Entity Budgets — cap per-app / per-dataset monthly spend
  • Usage Reporting — credit usage summaries, monthly trends, and top consumers