Skip to main content

FinOps Budgets

FinOps budgets (read-only).

Access it as client.finops.budgets on a Strongly client, or the same path on AsyncStrongly with await. All methods exist on both with identical signatures.

Quick start​

from strongly import Strongly

client = Strongly()

# List (auto-paginates as you iterate) # filters: search, status, scope_level
for finop in client.finops.budgets.list():
print(finop.id)

# Retrieve one by id
item = client.finops.budgets.retrieve("<id>")

Methods​

Core​

list​

list(*, search: str | None = None, status: str | None = None, scope_level: str | None = None, limit: int | None = None) -> SyncPaginator[Budget]

List the budgets you can read, newest first.

Parameters

  • search (str | None, optional): Case-insensitive match on the budget name.
  • status (str | None, optional): active, paused or exhausted.
  • scope_level (str | None, optional): platform, organization, user, resourceGroup, resourceType, resource or tag.
  • limit (int | None, optional): The most budgets to return; None returns every match.

Returns

  • SyncPaginator[Budget]: The matching budgets, fetched a page at a time.

Raises

  • ValidationError: An unknown status or scope_level.
  • PermissionDeniedError: The key's user does not manage budgets.
  • BadGatewayError: The budget service is not reachable.

retrieve​

retrieve(budget_id: str) -> Budget

Return a budget, with its current usage and status.

Parameters

  • budget_id (str): The budget's id (24 hexadecimal characters).

Returns

  • Budget: The budget.

Raises

  • NotFoundError: No budget has this id, or it belongs to another organization than the one you manage.
  • PermissionDeniedError: The key's user does not manage budgets.
  • BadGatewayError: The budget service is not reachable.