# The BudgetConfiguration object

## Attributes

- `budget_configuration_id` (string, Public Preview)
  <Databricks> budget configuration ID.
- `account_id` (string, Public Preview)
  <Databricks> account ID.
  **AWS:** <Databricks> account ID of any type. For non-E2 account types, get your account ID from the [Accounts Console](https://docs.databricks.com/administration-guide/account-settings/usage.html).
- `create_time` (int64, Public Preview)
  Creation time of this budget configuration.
- `update_time` (int64, Public Preview)
  Update time of this budget configuration.
- `alert_configurations` (array of object, Public Preview)
  Alerts to configure when this budget is in a triggered state. Budgets must have exactly one alert configuration.
  - `alert_configuration_id` (string, Public Preview)
    <Databricks> alert configuration ID.
  - `time_period` (string, Public Preview)
    The time window of usage data for the budget.
    Possible values: `MONTH`
  - `trigger_type` (string, Public Preview)
    The evaluation method to determine when this budget alert is in a triggered state.
    Possible values: `CUMULATIVE_SPENDING_EXCEEDED`
  - `quantity_type` (string, Public Preview)
    The way to calculate cost for this budget alert. This is what `quantity_threshold` is measured in.
    Possible values: `LIST_PRICE_DOLLARS_USD`
  - `quantity_threshold` (string, Public Preview)
    The threshold for the budget alert to determine if it is in a triggered state. The number is evaluated based on `quantity_type`.
  - `action_configurations` (array of object, Public Preview)
    Configured actions for this alert. These define what happens when an alert enters a triggered state.
    - `action_configuration_id` (string, Public Preview)
      <Databricks> action configuration ID.
    - `action_type` (string, Public Preview)
      The type of the action.
      Possible values: `EMAIL_NOTIFICATION`, `BLOCK_USAGE`
    - `target` (string, Public Preview)
      Target for the action. For example, an email address.
  - `scope_type` (string, Beta)
    How the alert threshold is evaluated. Determines whether spend is tracked in aggregate or per individual user.
    Possible values: `ALERT_CONFIGURATION_SCOPE_TYPE_SHARED`, `ALERT_CONFIGURATION_SCOPE_TYPE_PER_USER`
  - `principal_overrides` (array of object, Beta)
    Per-principal threshold overrides for this alert. Only applies to per-user alerts (`scope_type` = `ALERT_CONFIGURATION_SCOPE_TYPE_PER_USER`); ignored for shared alerts.
    - `principal_id` (int64, Beta)
      Account-level principal id (user, group, or service principal).
    - `override_threshold` (string, Beta)
      Dollar amount that overrides the parent alert's quantity_threshold for this principal.
- `filter` (object, Public Preview)
  Configured filters for this budget. These are applied to your account's usage to limit the scope of what is considered for this budget.
   Leave empty to include all usage for this account. All provided filters must be matched for usage to be included.
  - `workspace_id` (object, Public Preview)
    If provided, usage must match with the provided <Databricks> workspace IDs.
    - `operator` (string, Public Preview)
      Possible values: `IN`
    - `values` (array of int64, Public Preview)
  - `tags` (array of object, Public Preview)
    A list of tag keys and values that will limit the budget to usage that includes those specific custom tags.
     Tags are case-sensitive and should be entered exactly as they appear in your usage data.
    - `key` (string, Public Preview)
    - `value` (object, Public Preview)
      - `operator` (string, Public Preview)
        Possible values: `IN`
      - `values` (array of string, Public Preview)
- `display_name` (string, Public Preview)
  Human-readable name of budget configuration. Max Length: 128
- `resource_type` (string, Beta)
  The resource scope for this budget. Determines whether the budget tracks all resources or a specific resource.
  Possible values: `BUDGET_RESOURCE_TYPE_ALL_RESOURCES`, `BUDGET_RESOURCE_TYPE_UNITY_AI_GATEWAY`

## Example

```json
{
  "budget_configuration_id": "string",
  "account_id": "string",
  "create_time": 0,
  "update_time": 0,
  "alert_configurations": [
    {
      "alert_configuration_id": "string",
      "time_period": "string",
      "trigger_type": "string",
      "quantity_type": "string",
      "quantity_threshold": "string",
      "action_configurations": [
        {}
      ],
      "scope_type": "string",
      "principal_overrides": [
        {}
      ]
    }
  ],
  "filter": {
    "workspace_id": {},
    "tags": [
      {}
    ]
  },
  "display_name": "string",
  "resource_type": "string"
}
```


