For AI agents and LLMs: a structured documentation index is available at /llms.txt. Every page has a Markdown sibling — append .md to any URL.

Skip to content
Paddle Docs home

List usage balance units

Returns a paginated list of usage balance units.

Join usage-based billing early access (beta)

Usage-based billing is in early access (beta). Read how it works, then apply to join. We'll reach out if you meet the program requirements.

GET/usage-balance-units

Returns a paginated list of usage balance units. Use the query parameters to page through results.

By default, Paddle returns usage balance units that are active. Use the status query parameter to return usage balance units that are archived.

Requires usage_balance_unit.read permission.

Query parameters

idarray
Return only the IDs specified. Use a comma-separated list to get multiple entities.
afterstring
Return entities after the specified Paddle ID when working with paginated endpoints. Used in the meta.pagination.next URL in responses for list operations.
per_pageinteger
Default: 50

Set how many entities are returned per page. Paddle returns the maximum number of results if a number greater than the maximum is requested. Check meta.pagination.per_page in the response to see how many were returned.

Default: 50; Maximum: 200.

Max: 200
order_bystring
Default: id[DESC]

Order returned entities by the specified field and direction ([ASC] or [DESC]). For example, ?order_by=id[ASC].

Valid fields for ordering: created_at, id, name, status, and updated_at.

statusarray
Default: active
Return entities that match the specified status. Use a comma-separated list to specify multiple status values.
Values
  • active
    Return entities where the status is active. Returned entities can be used in Paddle and are returned when listing entities.
  • archived
    Return entities where the status is archived. Returned entities can't be used for billing and aren't returned when listing entities.

Header parameters

Skip-Countstring
Set to true to skip the count query on list operations. When set, meta.pagination.estimated_total returns -1 instead of an exact count.

Response (200)

dataarrayrequired
idstringrequired
Example: ubu_01kw8ta2j8x5t7q4v9m1kd6phz
Unique Paddle ID for this usage balance unit entity, prefixed with ubu_.
Pattern: ^ubu_[a-z\d]{26}$
namestringrequired
Name of this usage balance unit, like API calls. Typically short and describes what customers hold a balance of.
Length: 1–500
unit_namestringrequired
Plural name of what customers hold a balance of, like calls or credits. Different from a meter's unit_name, which is the singular name of what the meter measures.
Length: 1–500
statusstringrequired
Whether this entity can be used in Paddle.
Values
  • active
    Entity is active and can be used.
  • archived
    Entity is archived, so can't be used.
created_atstring (date-time)required
Example: 2024-10-12T07:20:50.52Z
RFC 3339 datetime string of when this entity was created. Set automatically by Paddle.
updated_atstring (date-time)required
Example: 2024-10-13T07:20:50.52Z
RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle.
metaobjectrequired
Information about this response.
request_idstringrequired
Example: b15ec92e-8688-40d4-a04d-f44cbec93355
Unique ID for the request relating to this response. Provide this when contacting Paddle support about a specific request.
paginationobjectrequired
Keys used for working with paginated results.
per_pageintegerrequired
Number of entities per page for this response. May differ from the number requested if the requested number is greater than the maximum.
nextstring (uri)required
URL containing the query parameters of the original request, along with the after parameter that marks the starting point of the next page. Always returned, even if has_more is false.
has_morebooleanrequired
Whether this response has another page.
estimated_totalinteger
Example: 999

Estimated number of entities for this response.

For datasets with 100,000 or fewer matches, returns the exact count. For datasets with more than 100,000 matches, returns 100001 to indicate that more than 100,000 entities match. Returns -1 when counting is skipped or couldn't be calculated.

Use has_more and next to page through all results rather than relying on estimated_total for an exact count.

Response
{
"data": [
{
"id": "ubu_01kw8ta2j8x5t7q4v9m1kd6phz",
"name": "API calls",
"unit_name": "calls",
"status": "active",
"created_at": "2026-09-01T09:00:00.000Z",
"updated_at": "2026-09-01T09:00:00.000Z"
},
{
"id": "ubu_01kw8tc7p4z8d5s2x6n3lf8rkb",
"name": "AI tokens",
"unit_name": "tokens",
"status": "active",
"created_at": "2026-09-01T09:02:00.000Z",
"updated_at": "2026-09-01T09:02:00.000Z"
}
],
"meta": {
"request_id": "d8f286a6-e049-4a6e-8fa8-a6f145ac3ecf",
"pagination": {
"per_page": 50,
"next": "https://api.paddle.com/usage-balance-units?after=ubu_01kw8tc7p4z8d5s2x6n3lf8rkb",
"has_more": false,
"estimated_total": 2
}
}
}

Was this page helpful?