> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vantage.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# vantage_budget (Resource)

> Terraform resource reference for vantage_budget (Resource). Auto-generated from the vantage-sh/terraform-provider-vantage repository.

<Note>
  This page is auto-generated based on the official [Terraform documentation](https://registry.terraform.io/providers/vantage-sh/vantage/latest/docs).
</Note>

## Overview

Use this resource with the [Vantage Terraform provider](/terraform). For installation and authentication, see the [Terraform provider quickstart](/terraform#quickstart). The schema below is generated directly from the provider source.

## Example Usage

```terraform theme={null}
resource "vantage_budget" "demo_budget" {
  name              = "Demo Budget"
  cost_report_token = vantage_cost_report.demo_report.token

  period_cadence = {
    starts_at      = "2024-01-22"
    interval_count = 2
    interval_unit  = "week"
  }

  periods = [
    {
      start_at = "2024-01-22"
      end_at   = "2024-02-04"
      amount   = 100
    }
  ]
}
```

## Schema

### Required

* `name` (String) The name of the Budget.

### Optional

* `child_budget_tokens` (List of String) The tokens of any child Budgets when creating a hierarchical Budget. Child budgets must share the same current period dates.
* `cost_report_token` (String) The CostReport token. Ignored for hierarchical Budgets.
* `period_cadence` (Attributes) The interval cadence for standard Budget periods. Requires the `flexible_budget_periods` feature. Changing a configured cadence replaces the Budget; removing the block stops managing it but does not clear the API cadence. (see [below for nested schema](#nestedatt--period_cadence))
* `periods` (Attributes List) The periods for the Budget. The start\_at and end\_at must be iso8601 formatted e.g. YYYY-MM-DD. Ignored for hierarchical Budgets. (see [below for nested schema](#nestedatt--periods))
* `type` (String) The type of Budget. One of: cost, usage.
* `unit` (String) The usage unit for usage Budgets.
* `workspace_token` (String) The token of the Workspace to add the Budget to.

### Read-Only

* `budget_alert_tokens` (List of String) The tokens of the BudgetAlerts associated with the Budget.
* `created_at` (String) The date and time, in UTC, the Budget was created. ISO 8601 Formatted.
* `created_by_token` (String) The token of the Creator of the Budget.
* `id` (String) The id of the budget
* `performance` (Attributes List) The historical performance of the Budget. (see [below for nested schema](#nestedatt--performance))
* `token` (String) The token of the budget
* `user_token` (String) The token for the User who created this Budget.

<a id="nestedatt--period_cadence" />

### Nested Schema for `period_cadence`

Optional:

* `interval_count` (Number) The number of interval units per budget period.
* `interval_unit` (String) The unit for budget period intervals. One of: day, week, month, year.
* `starts_at` (String) The required anchor date for configured budget period intervals. ISO 8601 date (`YYYY-MM-DD`).

<a id="nestedatt--periods" />

### Nested Schema for `periods`

Required:

* `amount` (Number) The amount of the period.
* `start_at` (String) The start date of the period.

Optional:

* `end_at` (String) The end date of the period.

<a id="nestedatt--performance" />

### Nested Schema for `performance`

Read-Only:

* `actual` (String) The date and time, in UTC, the Budget was created. ISO 8601 Formatted.
* `amount` (String) The amount of the Budget Period as a string to ensure precision.
* `date` (String) The date and time, in UTC, the Budget was created. ISO 8601 Formatted.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.