{
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/cloud-platform": {
          "description": "View and manage your data across Google Cloud Platform services"
        }
      }
    }
  },
  "basePath": "",
  "baseUrl": "https://billingbudgets.googleapis.com/",
  "batchPath": "batch",
  "canonicalName": "CloudBillingBudget",
  "description": "The Cloud Billing Budget API stores Cloud Billing budgets, which define a budget plan and the rules to execute as spend is tracked against that plan.",
  "discoveryVersion": "v1",
  "documentationLink": "https://cloud.google.com/billing/docs/how-to/budget-api-overview",
  "fullyEncodeReservedExpansion": true,
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "id": "billingbudgets:v1beta1",
  "kind": "discovery#restDescription",
  "mtlsRootUrl": "https://billingbudgets.mtls.googleapis.com/",
  "name": "billingbudgets",
  "ownerDomain": "google.com",
  "ownerName": "Google",
  "parameters": {
    "$.xgafv": {
      "description": "V1 error format.",
      "enum": [
        "1",
        "2"
      ],
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "location": "query",
      "type": "string"
    },
    "access_token": {
      "description": "OAuth access token.",
      "location": "query",
      "type": "string"
    },
    "alt": {
      "default": "json",
      "description": "Data format for response.",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "location": "query",
      "type": "string"
    },
    "callback": {
      "description": "JSONP",
      "location": "query",
      "type": "string"
    },
    "fields": {
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query",
      "type": "string"
    },
    "key": {
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
      "location": "query",
      "type": "string"
    },
    "oauth_token": {
      "description": "OAuth 2.0 token for the current user.",
      "location": "query",
      "type": "string"
    },
    "prettyPrint": {
      "default": "true",
      "description": "Returns response with indentations and line breaks.",
      "location": "query",
      "type": "boolean"
    },
    "quotaUser": {
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "location": "query",
      "type": "string"
    },
    "uploadType": {
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query",
      "type": "string"
    },
    "upload_protocol": {
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query",
      "type": "string"
    }
  },
  "protocol": "rest",
  "resources": {
    "billingAccounts": {
      "resources": {
        "budgets": {
          "methods": {
            "create": {
              "description": "Creates a new budget. See Quotas and limits for more information on the limits of the number of budgets you can create.",
              "flatPath": "v1beta1/billingAccounts/{billingAccountsId}/budgets",
              "httpMethod": "POST",
              "id": "billingbudgets.billingAccounts.budgets.create",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "parent": {
                  "description": "Required. The name of the billing account to create the budget in. Values are of the form `billingAccounts/{billingAccountId}`.",
                  "location": "path",
                  "pattern": "^billingAccounts/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1beta1/{+parent}/budgets",
              "request": {
                "$ref": "GoogleCloudBillingBudgetsV1beta1CreateBudgetRequest"
              },
              "response": {
                "$ref": "GoogleCloudBillingBudgetsV1beta1Budget"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "delete": {
              "description": "Deletes a budget. Returns successfully if already deleted.",
              "flatPath": "v1beta1/billingAccounts/{billingAccountsId}/budgets/{budgetsId}",
              "httpMethod": "DELETE",
              "id": "billingbudgets.billingAccounts.budgets.delete",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. Name of the budget to delete. Values are of the form `billingAccounts/{billingAccountId}/budgets/{budgetId}`.",
                  "location": "path",
                  "pattern": "^billingAccounts/[^/]+/budgets/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1beta1/{+name}",
              "response": {
                "$ref": "GoogleProtobufEmpty"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "get": {
              "description": "Returns a budget. WARNING: There are some fields exposed on the Google Cloud Console that aren't available on this API. When reading from the API, you will not see these fields in the return value, though they may have been set in the Cloud Console.",
              "flatPath": "v1beta1/billingAccounts/{billingAccountsId}/budgets/{budgetsId}",
              "httpMethod": "GET",
              "id": "billingbudgets.billingAccounts.budgets.get",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. Name of budget to get. Values are of the form `billingAccounts/{billingAccountId}/budgets/{budgetId}`.",
                  "location": "path",
                  "pattern": "^billingAccounts/[^/]+/budgets/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1beta1/{+name}",
              "response": {
                "$ref": "GoogleCloudBillingBudgetsV1beta1Budget"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "list": {
              "description": "Returns a list of budgets for a billing account. WARNING: There are some fields exposed on the Google Cloud Console that aren't available on this API. When reading from the API, you will not see these fields in the return value, though they may have been set in the Cloud Console.",
              "flatPath": "v1beta1/billingAccounts/{billingAccountsId}/budgets",
              "httpMethod": "GET",
              "id": "billingbudgets.billingAccounts.budgets.list",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "pageSize": {
                  "description": "Optional. The maximum number of budgets to return per page. The default and maximum value are 100.",
                  "format": "int32",
                  "location": "query",
                  "type": "integer"
                },
                "pageToken": {
                  "description": "Optional. The value returned by the last `ListBudgetsResponse` which indicates that this is a continuation of a prior `ListBudgets` call, and that the system should return the next page of data.",
                  "location": "query",
                  "type": "string"
                },
                "parent": {
                  "description": "Required. Name of billing account to list budgets under. Values are of the form `billingAccounts/{billingAccountId}`.",
                  "location": "path",
                  "pattern": "^billingAccounts/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1beta1/{+parent}/budgets",
              "response": {
                "$ref": "GoogleCloudBillingBudgetsV1beta1ListBudgetsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "patch": {
              "description": "Updates a budget and returns the updated budget. WARNING: There are some fields exposed on the Google Cloud Console that aren't available on this API. Budget fields that are not exposed in this API will not be changed by this method.",
              "flatPath": "v1beta1/billingAccounts/{billingAccountsId}/budgets/{budgetsId}",
              "httpMethod": "PATCH",
              "id": "billingbudgets.billingAccounts.budgets.patch",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Output only. Resource name of the budget. The resource name implies the scope of a budget. Values are of the form `billingAccounts/{billingAccountId}/budgets/{budgetId}`.",
                  "location": "path",
                  "pattern": "^billingAccounts/[^/]+/budgets/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1beta1/{+name}",
              "request": {
                "$ref": "GoogleCloudBillingBudgetsV1beta1UpdateBudgetRequest"
              },
              "response": {
                "$ref": "GoogleCloudBillingBudgetsV1beta1Budget"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            }
          }
        }
      }
    }
  },
  "revision": "20200801",
  "rootUrl": "https://billingbudgets.googleapis.com/",
  "schemas": {
    "GoogleCloudBillingBudgetsV1beta1AllUpdatesRule": {
      "description": "AllUpdatesRule defines notifications that are sent based on budget spend and thresholds.",
      "id": "GoogleCloudBillingBudgetsV1beta1AllUpdatesRule",
      "properties": {
        "monitoringNotificationChannels": {
          "description": "Optional. Targets to send notifications to when a threshold is exceeded. This is in addition to default recipients who have billing account roles. The value is the full REST resource name of a monitoring notification channel with the form `projects/{project_id}/notificationChannels/{channel_id}`. A maximum of 5 channels are allowed. See https://cloud.google.com/billing/docs/how-to/budgets-notification-recipients for more details.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "pubsubTopic": {
          "description": "Optional. The name of the Pub/Sub topic where budget related messages will be published, in the form `projects/{project_id}/topics/{topic_id}`. Updates are sent at regular intervals to the topic. The topic needs to be created before the budget is created; see https://cloud.google.com/billing/docs/how-to/budgets#manage-notifications for more details. Caller is expected to have `pubsub.topics.setIamPolicy` permission on the topic when it's set for a budget, otherwise, the API call will fail with PERMISSION_DENIED. See https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications for more details on Pub/Sub roles and permissions.",
          "type": "string"
        },
        "schemaVersion": {
          "description": "Optional. The schema version of the notification sent to `pubsub_topic`. Only \"1.0\" is accepted. It represents the JSON schema as defined in https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications#notification_format",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudBillingBudgetsV1beta1Budget": {
      "description": "A budget is a plan that describes what you expect to spend on Cloud projects, plus the rules to execute as spend is tracked against that plan, (for example, send an alert when 90% of the target spend is met). Currently all plans are monthly budgets so the usage period(s) tracked are implied (calendar months of usage back-to-back).",
      "id": "GoogleCloudBillingBudgetsV1beta1Budget",
      "properties": {
        "allUpdatesRule": {
          "$ref": "GoogleCloudBillingBudgetsV1beta1AllUpdatesRule",
          "description": "Optional. Rules to apply to notifications sent based on budget spend and thresholds."
        },
        "amount": {
          "$ref": "GoogleCloudBillingBudgetsV1beta1BudgetAmount",
          "description": "Required. Budgeted amount."
        },
        "budgetFilter": {
          "$ref": "GoogleCloudBillingBudgetsV1beta1Filter",
          "description": "Optional. Filters that define which resources are used to compute the actual spend against the budget."
        },
        "displayName": {
          "description": "User data for display name in UI. Validation: \u003c= 60 chars.",
          "type": "string"
        },
        "etag": {
          "description": "Optional. Etag to validate that the object is unchanged for a read-modify-write operation. An empty etag will cause an update to overwrite other changes.",
          "type": "string"
        },
        "name": {
          "description": "Output only. Resource name of the budget. The resource name implies the scope of a budget. Values are of the form `billingAccounts/{billingAccountId}/budgets/{budgetId}`.",
          "readOnly": true,
          "type": "string"
        },
        "thresholdRules": {
          "description": "Optional. Rules that trigger alerts (notifications of thresholds being crossed) when spend exceeds the specified percentages of the budget.",
          "items": {
            "$ref": "GoogleCloudBillingBudgetsV1beta1ThresholdRule"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudBillingBudgetsV1beta1BudgetAmount": {
      "description": "The budgeted amount for each usage period.",
      "id": "GoogleCloudBillingBudgetsV1beta1BudgetAmount",
      "properties": {
        "lastPeriodAmount": {
          "$ref": "GoogleCloudBillingBudgetsV1beta1LastPeriodAmount",
          "description": "Use the last period's actual spend as the budget for the present period."
        },
        "specifiedAmount": {
          "$ref": "GoogleTypeMoney",
          "description": "A specified amount to use as the budget. `currency_code` is optional. If specified, it must match the currency of the billing account. The `currency_code` is provided on output."
        }
      },
      "type": "object"
    },
    "GoogleCloudBillingBudgetsV1beta1CreateBudgetRequest": {
      "description": "Request for CreateBudget",
      "id": "GoogleCloudBillingBudgetsV1beta1CreateBudgetRequest",
      "properties": {
        "budget": {
          "$ref": "GoogleCloudBillingBudgetsV1beta1Budget",
          "description": "Required. Budget to create."
        }
      },
      "type": "object"
    },
    "GoogleCloudBillingBudgetsV1beta1Filter": {
      "description": "A filter for a budget, limiting the scope of the cost to calculate.",
      "id": "GoogleCloudBillingBudgetsV1beta1Filter",
      "properties": {
        "creditTypesTreatment": {
          "description": "Optional. If not set, default behavior is `INCLUDE_ALL_CREDITS`.",
          "enum": [
            "CREDIT_TYPES_TREATMENT_UNSPECIFIED",
            "INCLUDE_ALL_CREDITS",
            "EXCLUDE_ALL_CREDITS"
          ],
          "enumDescriptions": [
            "",
            "All types of credit are subtracted from the gross cost to determine the spend for threshold calculations.",
            "All types of credit are added to the net cost to determine the spend for threshold calculations."
          ],
          "type": "string"
        },
        "labels": {
          "additionalProperties": {
            "items": {
              "type": "any"
            },
            "type": "array"
          },
          "description": "Optional. A single label and value pair specifying that usage from only this set of labeled resources should be included in the budget. Currently, multiple entries or multiple values per entry are not allowed. If omitted, the report will include all labeled and unlabeled usage.",
          "type": "object"
        },
        "projects": {
          "description": "Optional. A set of projects of the form `projects/{project}`, specifying that usage from only this set of projects should be included in the budget. If omitted, the report will include all usage for the billing account, regardless of which project the usage occurred on. Only zero or one project can be specified currently.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "services": {
          "description": "Optional. A set of services of the form `services/{service_id}`, specifying that usage from only this set of services should be included in the budget. If omitted, the report will include usage for all the services. The service names are available through the Catalog API: https://cloud.google.com/billing/v1/how-tos/catalog-api.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "subaccounts": {
          "description": "Optional. A set of subaccounts of the form `billingAccounts/{account_id}`, specifying that usage from only this set of subaccounts should be included in the budget. If a subaccount is set to the name of the parent account, usage from the parent account will be included. If omitted, the report will include usage from the parent account and all subaccounts, if they exist.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudBillingBudgetsV1beta1LastPeriodAmount": {
      "description": "Describes a budget amount targeted to last period's spend. At this time, the amount is automatically 100% of last period's spend; that is, there are no other options yet. Future configuration will be described here (for example, configuring a percentage of last period's spend).",
      "id": "GoogleCloudBillingBudgetsV1beta1LastPeriodAmount",
      "properties": {},
      "type": "object"
    },
    "GoogleCloudBillingBudgetsV1beta1ListBudgetsResponse": {
      "description": "Response for ListBudgets",
      "id": "GoogleCloudBillingBudgetsV1beta1ListBudgetsResponse",
      "properties": {
        "budgets": {
          "description": "List of the budgets owned by the requested billing account.",
          "items": {
            "$ref": "GoogleCloudBillingBudgetsV1beta1Budget"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "If not empty, indicates that there may be more budgets that match the request; this value should be passed in a new `ListBudgetsRequest`.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudBillingBudgetsV1beta1ThresholdRule": {
      "description": "ThresholdRule contains a definition of a threshold which triggers an alert (a notification of a threshold being crossed) to be sent when spend goes above the specified amount. Alerts are automatically e-mailed to users with the Billing Account Administrator role or the Billing Account User role. The thresholds here have no effect on notifications sent to anything configured under `Budget.all_updates_rule`.",
      "id": "GoogleCloudBillingBudgetsV1beta1ThresholdRule",
      "properties": {
        "spendBasis": {
          "description": "Optional. The type of basis used to determine if spend has passed the threshold. Behavior defaults to CURRENT_SPEND if not set.",
          "enum": [
            "BASIS_UNSPECIFIED",
            "CURRENT_SPEND",
            "FORECASTED_SPEND"
          ],
          "enumDescriptions": [
            "Unspecified threshold basis.",
            "Use current spend as the basis for comparison against the threshold.",
            "Use forecasted spend for the period as the basis for comparison against the threshold."
          ],
          "type": "string"
        },
        "thresholdPercent": {
          "description": "Required. Send an alert when this threshold is exceeded. This is a 1.0-based percentage, so 0.5 = 50%. Validation: non-negative number.",
          "format": "double",
          "type": "number"
        }
      },
      "type": "object"
    },
    "GoogleCloudBillingBudgetsV1beta1UpdateBudgetRequest": {
      "description": "Request for UpdateBudget",
      "id": "GoogleCloudBillingBudgetsV1beta1UpdateBudgetRequest",
      "properties": {
        "budget": {
          "$ref": "GoogleCloudBillingBudgetsV1beta1Budget",
          "description": "Required. The updated budget object. The budget to update is specified by the budget name in the budget."
        },
        "updateMask": {
          "description": "Optional. Indicates which fields in the provided budget to update. Read-only fields (such as `name`) cannot be changed. If this is not provided, then only fields with non-default values from the request are updated. See https://developers.google.com/protocol-buffers/docs/proto3#default for more details about default values.",
          "format": "google-fieldmask",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleProtobufEmpty": {
      "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The JSON representation for `Empty` is empty JSON object `{}`.",
      "id": "GoogleProtobufEmpty",
      "properties": {},
      "type": "object"
    },
    "GoogleTypeMoney": {
      "description": "Represents an amount of money with its currency type.",
      "id": "GoogleTypeMoney",
      "properties": {
        "currencyCode": {
          "description": "The 3-letter currency code defined in ISO 4217.",
          "type": "string"
        },
        "nanos": {
          "description": "Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.",
          "format": "int32",
          "type": "integer"
        },
        "units": {
          "description": "The whole units of the amount. For example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    }
  },
  "servicePath": "",
  "title": "Cloud Billing Budget API",
  "version": "v1beta1",
  "version_module": true
}