Skip to content
Ona Docs

GetCumulativeCreditUsage

billing.get_cumulative_credit_usage(BillingGetCumulativeCreditUsageParams**kwargs) -> BillingGetCumulativeCreditUsageResponse
POST/gitpod.v1.BillingService/GetCumulativeCreditUsage

Returns cumulative credit usage for an organization and its teams.

Use this method to:

  • Get the total cumulative credit consumption as of a point in time
  • Get per-team cumulative usage with credit allocation (budget) comparison
  • Display team credit summaries on the usage page and team detail page
  • Display user budget utilization when user budgets are enabled

Examples

  • Get current cumulative usage:

    organizationId: "b0e12f6c-4c67-429d-a4a6-d9838b5da047"
  • Get cumulative usage as of a specific date:

    organizationId: "b0e12f6c-4c67-429d-a4a6-d9838b5da047"
    asOf: "2026-03-31T23:59:59Z"

Authorization

Requires billing:read_usage permission on the organization.

ParametersExpand Collapse
organization_id: str

organization_id is the ID of the organization to get cumulative usage for.

formatuuid
as_of: Optional[Union[str, datetime, null]]

as_of is the point in time to compute cumulative usage up to. Defaults to now if not set.

formatdate-time
ReturnsExpand Collapse
class BillingGetCumulativeCreditUsageResponse:
org_usage: Optional[CumulativeCreditUsage]

Org-wide cumulative usage, broken down by type and total.

total_credits: Optional[float]

Total credits consumed.

formatdouble
usage_by_type: Optional[List[CreditsByType]]

Credits consumed broken down by usage type.

credits: Optional[float]
formatdouble
usage_type: Optional[UsageType]

UsageType identifies the category of usage.

One of the following:
"USAGE_TYPE_UNSPECIFIED"
"USAGE_TYPE_ENVIRONMENT"
"USAGE_TYPE_AGENTIC"
period_start: Optional[datetime]

Start of the cumulative calculation period. Cumulative totals are computed from this date forward.

formatdate-time
team_usage: Optional[List[TeamCumulativeCreditUsage]]

Per-team cumulative usage with credit allocation comparison. Returns all teams (no top-N limit).

credit_budget: Optional[str]

The team’s credit allocation (budget) in whole credits, if set. Not set means no allocation has been configured for this team.

display_name: Optional[str]
team_id: Optional[str]
usage: Optional[CumulativeCreditUsage]

Cumulative credit usage for this team.

total_credits: Optional[float]

Total credits consumed.

formatdouble
usage_by_type: Optional[List[CreditsByType]]

Credits consumed broken down by usage type.

credits: Optional[float]
formatdouble
usage_type: Optional[UsageType]

UsageType identifies the category of usage.

One of the following:
"USAGE_TYPE_UNSPECIFIED"
"USAGE_TYPE_ENVIRONMENT"
"USAGE_TYPE_AGENTIC"
unteamed_usage: Optional[CumulativeCreditUsage]

Usage by members not assigned to any team.

total_credits: Optional[float]

Total credits consumed.

formatdouble
usage_by_type: Optional[List[CreditsByType]]

Credits consumed broken down by usage type.

credits: Optional[float]
formatdouble
usage_type: Optional[UsageType]

UsageType identifies the category of usage.

One of the following:
"USAGE_TYPE_UNSPECIFIED"
"USAGE_TYPE_ENVIRONMENT"
"USAGE_TYPE_AGENTIC"
user_usage: Optional[List[UserCreditBudgetUsage]]

Per-user month-to-date usage for every user with usage in the period. The budget fields on each entry are populated only when a monthly budget applies to that user. This list is not paginated or capped; for large organizations prefer ListEnterpriseUserCreditUsage.

budget_source: Optional[EnterpriseAIUserBudgetPolicySource]
One of the following:
"ENTERPRISE_AI_USER_BUDGET_POLICY_SOURCE_UNSPECIFIED"
"ENTERPRISE_AI_USER_BUDGET_POLICY_SOURCE_NONE"
"ENTERPRISE_AI_USER_BUDGET_POLICY_SOURCE_ORGANIZATION"
"ENTERPRISE_AI_USER_BUDGET_POLICY_SOURCE_USER"
credit_budget: Optional[str]
display_name: Optional[str]
is_service_account: Optional[bool]

True when user_id refers to a service account rather than a human user. The dashboard uses this to mark non-human accounts in admin tables.

month_to_date_usage: Optional[CumulativeCreditUsage]

CumulativeCreditUsage contains cumulative credit consumption totals.

total_credits: Optional[float]

Total credits consumed.

formatdouble
usage_by_type: Optional[List[CreditsByType]]

Credits consumed broken down by usage type.

credits: Optional[float]
formatdouble
usage_type: Optional[UsageType]

UsageType identifies the category of usage.

One of the following:
"USAGE_TYPE_UNSPECIFIED"
"USAGE_TYPE_ENVIRONMENT"
"USAGE_TYPE_AGENTIC"
no_cap: Optional[bool]
over_budget: Optional[bool]
usage_by_model: Optional[List[EnterpriseAIUsageByModel]]

Month-to-date intelligence usage broken down by model.

model: Optional[str]
unpriced_usage: Optional[EnterpriseAIUsage]

Usage excluded from spend because no matching BYOK rate was configured.

cost_microunits: Optional[str]
credits: Optional[float]
formatdouble
currency: Optional[BillingCurrency]
One of the following:
"BILLING_CURRENCY_UNSPECIFIED"
"BILLING_CURRENCY_USD"
"BILLING_CURRENCY_EUR"
"BILLING_CURRENCY_GBP"
tokens: Optional[EnterpriseAITokenUsage]
cache_tokens: Optional[str]
input_tokens: Optional[str]
output_tokens: Optional[str]
total_tokens: Optional[str]
unpriced_usage_by_token_type: Optional[List[EnterpriseAIUsageByTokenType]]
token_type: Optional[ByokRateCardTokenType]
One of the following:
"BYOK_RATE_CARD_TOKEN_TYPE_UNSPECIFIED"
"BYOK_RATE_CARD_TOKEN_TYPE_INPUT"
"BYOK_RATE_CARD_TOKEN_TYPE_OUTPUT"
"BYOK_RATE_CARD_TOKEN_TYPE_CACHE_READ"
"BYOK_RATE_CARD_TOKEN_TYPE_CACHE_WRITE"
usage: Optional[EnterpriseAIUsage]
cost_microunits: Optional[str]
credits: Optional[float]
formatdouble
currency: Optional[BillingCurrency]
One of the following:
"BILLING_CURRENCY_UNSPECIFIED"
"BILLING_CURRENCY_USD"
"BILLING_CURRENCY_EUR"
"BILLING_CURRENCY_GBP"
tokens: Optional[EnterpriseAITokenUsage]
cache_tokens: Optional[str]
input_tokens: Optional[str]
output_tokens: Optional[str]
total_tokens: Optional[str]
usage: Optional[EnterpriseAIUsage]
cost_microunits: Optional[str]
credits: Optional[float]
formatdouble
currency: Optional[BillingCurrency]
One of the following:
"BILLING_CURRENCY_UNSPECIFIED"
"BILLING_CURRENCY_USD"
"BILLING_CURRENCY_EUR"
"BILLING_CURRENCY_GBP"
tokens: Optional[EnterpriseAITokenUsage]
cache_tokens: Optional[str]
input_tokens: Optional[str]
output_tokens: Optional[str]
total_tokens: Optional[str]
usage_by_token_type: Optional[List[EnterpriseAIUsageByTokenType]]
token_type: Optional[ByokRateCardTokenType]
One of the following:
"BYOK_RATE_CARD_TOKEN_TYPE_UNSPECIFIED"
"BYOK_RATE_CARD_TOKEN_TYPE_INPUT"
"BYOK_RATE_CARD_TOKEN_TYPE_OUTPUT"
"BYOK_RATE_CARD_TOKEN_TYPE_CACHE_READ"
"BYOK_RATE_CARD_TOKEN_TYPE_CACHE_WRITE"
usage: Optional[EnterpriseAIUsage]
cost_microunits: Optional[str]
credits: Optional[float]
formatdouble
currency: Optional[BillingCurrency]
One of the following:
"BILLING_CURRENCY_UNSPECIFIED"
"BILLING_CURRENCY_USD"
"BILLING_CURRENCY_EUR"
"BILLING_CURRENCY_GBP"
tokens: Optional[EnterpriseAITokenUsage]
cache_tokens: Optional[str]
input_tokens: Optional[str]
output_tokens: Optional[str]
total_tokens: Optional[str]
user_id: Optional[str]
utilization_percent: Optional[float]
formatdouble

GetCumulativeCreditUsage

import os
from datetime import datetime
from gitpod import Gitpod

client = Gitpod(
    bearer_token=os.environ.get("GITPOD_API_KEY"),  # This is the default and can be omitted
)
response = client.billing.get_cumulative_credit_usage(
    organization_id="b0e12f6c-4c67-429d-a4a6-d9838b5da047",
    as_of=datetime.fromisoformat("2026-03-31T23:59:59"),
)
print(response.org_usage)
{
  "orgUsage": {
    "totalCredits": 0,
    "usageByType": [
      {
        "credits": 0,
        "usageType": "USAGE_TYPE_UNSPECIFIED"
      }
    ]
  },
  "periodStart": "2019-12-27T18:11:19.117Z",
  "teamUsage": [
    {
      "creditBudget": "creditBudget",
      "displayName": "displayName",
      "teamId": "teamId",
      "usage": {
        "totalCredits": 0,
        "usageByType": [
          {
            "credits": 0,
            "usageType": "USAGE_TYPE_UNSPECIFIED"
          }
        ]
      }
    }
  ],
  "unteamedUsage": {
    "totalCredits": 0,
    "usageByType": [
      {
        "credits": 0,
        "usageType": "USAGE_TYPE_UNSPECIFIED"
      }
    ]
  },
  "userUsage": [
    {
      "budgetSource": "ENTERPRISE_AI_USER_BUDGET_POLICY_SOURCE_UNSPECIFIED",
      "creditBudget": "creditBudget",
      "displayName": "displayName",
      "isServiceAccount": true,
      "monthToDateUsage": {
        "totalCredits": 0,
        "usageByType": [
          {
            "credits": 0,
            "usageType": "USAGE_TYPE_UNSPECIFIED"
          }
        ]
      },
      "noCap": true,
      "overBudget": true,
      "usageByModel": [
        {
          "model": "model",
          "unpricedUsage": {
            "costMicrounits": "costMicrounits",
            "credits": 0,
            "currency": "BILLING_CURRENCY_UNSPECIFIED",
            "tokens": {
              "cacheTokens": "cacheTokens",
              "inputTokens": "inputTokens",
              "outputTokens": "outputTokens",
              "totalTokens": "totalTokens"
            }
          },
          "unpricedUsageByTokenType": [
            {
              "tokenType": "BYOK_RATE_CARD_TOKEN_TYPE_UNSPECIFIED",
              "usage": {
                "costMicrounits": "costMicrounits",
                "credits": 0,
                "currency": "BILLING_CURRENCY_UNSPECIFIED",
                "tokens": {
                  "cacheTokens": "cacheTokens",
                  "inputTokens": "inputTokens",
                  "outputTokens": "outputTokens",
                  "totalTokens": "totalTokens"
                }
              }
            }
          ],
          "usage": {
            "costMicrounits": "costMicrounits",
            "credits": 0,
            "currency": "BILLING_CURRENCY_UNSPECIFIED",
            "tokens": {
              "cacheTokens": "cacheTokens",
              "inputTokens": "inputTokens",
              "outputTokens": "outputTokens",
              "totalTokens": "totalTokens"
            }
          },
          "usageByTokenType": [
            {
              "tokenType": "BYOK_RATE_CARD_TOKEN_TYPE_UNSPECIFIED",
              "usage": {
                "costMicrounits": "costMicrounits",
                "credits": 0,
                "currency": "BILLING_CURRENCY_UNSPECIFIED",
                "tokens": {
                  "cacheTokens": "cacheTokens",
                  "inputTokens": "inputTokens",
                  "outputTokens": "outputTokens",
                  "totalTokens": "totalTokens"
                }
              }
            }
          ]
        }
      ],
      "userId": "userId",
      "utilizationPercent": 0
    }
  ]
}
Returns Examples
{
  "orgUsage": {
    "totalCredits": 0,
    "usageByType": [
      {
        "credits": 0,
        "usageType": "USAGE_TYPE_UNSPECIFIED"
      }
    ]
  },
  "periodStart": "2019-12-27T18:11:19.117Z",
  "teamUsage": [
    {
      "creditBudget": "creditBudget",
      "displayName": "displayName",
      "teamId": "teamId",
      "usage": {
        "totalCredits": 0,
        "usageByType": [
          {
            "credits": 0,
            "usageType": "USAGE_TYPE_UNSPECIFIED"
          }
        ]
      }
    }
  ],
  "unteamedUsage": {
    "totalCredits": 0,
    "usageByType": [
      {
        "credits": 0,
        "usageType": "USAGE_TYPE_UNSPECIFIED"
      }
    ]
  },
  "userUsage": [
    {
      "budgetSource": "ENTERPRISE_AI_USER_BUDGET_POLICY_SOURCE_UNSPECIFIED",
      "creditBudget": "creditBudget",
      "displayName": "displayName",
      "isServiceAccount": true,
      "monthToDateUsage": {
        "totalCredits": 0,
        "usageByType": [
          {
            "credits": 0,
            "usageType": "USAGE_TYPE_UNSPECIFIED"
          }
        ]
      },
      "noCap": true,
      "overBudget": true,
      "usageByModel": [
        {
          "model": "model",
          "unpricedUsage": {
            "costMicrounits": "costMicrounits",
            "credits": 0,
            "currency": "BILLING_CURRENCY_UNSPECIFIED",
            "tokens": {
              "cacheTokens": "cacheTokens",
              "inputTokens": "inputTokens",
              "outputTokens": "outputTokens",
              "totalTokens": "totalTokens"
            }
          },
          "unpricedUsageByTokenType": [
            {
              "tokenType": "BYOK_RATE_CARD_TOKEN_TYPE_UNSPECIFIED",
              "usage": {
                "costMicrounits": "costMicrounits",
                "credits": 0,
                "currency": "BILLING_CURRENCY_UNSPECIFIED",
                "tokens": {
                  "cacheTokens": "cacheTokens",
                  "inputTokens": "inputTokens",
                  "outputTokens": "outputTokens",
                  "totalTokens": "totalTokens"
                }
              }
            }
          ],
          "usage": {
            "costMicrounits": "costMicrounits",
            "credits": 0,
            "currency": "BILLING_CURRENCY_UNSPECIFIED",
            "tokens": {
              "cacheTokens": "cacheTokens",
              "inputTokens": "inputTokens",
              "outputTokens": "outputTokens",
              "totalTokens": "totalTokens"
            }
          },
          "usageByTokenType": [
            {
              "tokenType": "BYOK_RATE_CARD_TOKEN_TYPE_UNSPECIFIED",
              "usage": {
                "costMicrounits": "costMicrounits",
                "credits": 0,
                "currency": "BILLING_CURRENCY_UNSPECIFIED",
                "tokens": {
                  "cacheTokens": "cacheTokens",
                  "inputTokens": "inputTokens",
                  "outputTokens": "outputTokens",
                  "totalTokens": "totalTokens"
                }
              }
            }
          ]
        }
      ],
      "userId": "userId",
      "utilizationPercent": 0
    }
  ]
}