Obtén más información para enviar algunas solicitudes de presupuesto con límite de inversión a la API de Presupuesto de Facturación de Cloud.
Para obtener una lista completa de métodos, consulta la documentación de referencia de la API de REST.
Antes de comenzar
Debes hacer lo siguiente antes de leer esta guía:
- Consulta Descripción general de la API de presupuesto de Facturación de Cloud.
- Consulta Requisitos previos de la API de presupuesto de Facturación de Cloud.
- Realiza los pasos de configuración.
Identifica el ID de la cuenta de Facturación de Cloud
Para cada llamada a la API de Cloud Billing Budget, necesitas tu ID de cuenta de Facturación de Cloud. Los presupuestos con límite de inversión se restringen a los clientes deGoogle Cloud y a las cuentas de Facturación de Cloud. Las cuentas de facturación de revendedor están fuera del alcance.
- Ve a la página Administrar cuentas de facturación de la consola de Google Cloud .
- En la pestaña Tus cuentas de facturación, verás la lista de cuentas de Facturación de Cloud por ID y nombre. Busca el valor del ID de cuenta de la cuenta en la que administras los presupuestos.

Conceptos y limitaciones clave del presupuesto con límite de inversión
Los presupuestos con límite de inversión usan costos brutos y estimados para activar alertas y aplicar límites de inversión, lo que bloquea el uso y la acumulación de costos hasta que se quite el límite de inversión.
Restricciones del campo de presupuesto con límite de inversión
Cuando se establece spendCap en un presupuesto, se aplican restricciones de campo estrictas al presupuesto. Consulta los comentarios a nivel de campo en
Filters,
BudgetAmount,
ThresholdRule,
NotificationsRule
y
OwnershipScope.
- billing-account-id: Los presupuestos con límite de inversión se restringen a los clientes propios deGoogle Cloud y a las cuentas de Facturación de Cloud. Las cuentas de facturación de revendedor están fuera del alcance.
BudgetFiltersdebe incluir los siguientes parámetros:- Un presupuesto con límite de inversión se restringe a los presupuestos que tienen alcance (filtrados) a un solo proyecto de Google Cloud y un solo servicio apto.
- El período del presupuesto con límite de inversión se restringe a un
CalendarPeriodde unMONTH. - Los cálculos de costos para los límites de inversión se basan en los costos brutos y no
incluyen ahorros ni créditos. Debes configurar
creditTypesTreatmentenEXCLUDE_ALL_CREDITS. - No se admiten otros filtros de presupuesto para los límites de inversión, y deben estar vacíos, incluidos
resourceAncestors,credit_types,subaccountsylabels.
El
BudgetAmountdebe usar unspecifiedAmount. En la entrada,currencyCodees opcional. Si se especifica cuando se crea un presupuesto, el código de moneda debe coincidir con la moneda de la cuenta de Facturación de Cloud. ElcurrencyCodese proporciona en la salida.ThresholdRulesdebe contener exactamente tres reglas con valoresthresholdPercentde0.5,0.8y1.0(50%, 80% y 100%), con unspendBasisestablecido enCURRENT_SPENDoBASIS_UNSPECIFIED(FORECASTED_SPENDno se admite para los límites de inversión).NotificationsRule: Debe establecerenableProjectLevelRecipientsentrue. Todos los demás parámetros deNotificationsRuleno son compatibles.OwnershipScopese debe establecer enOWNERSHIP_SCOPE_UNSPECIFIEDoALL_USERS(BILLING_ACCOUNTno se admite para los límites de inversión).Cuando creas un presupuesto con límite de inversión, el parámetro
inputStatedebe establecerse enCONFIGURED.
Cómo funcionan los presupuestos con límite de inversión para ayudarte a controlar la inversión
Cálculos de inversión más rápidos con costos estimados: Para aplicar con mayor rapidez un importe de límite de inversión, los presupuestos con límite de inversión usan costos brutos estimados para activar alertas y aplicar el límite de inversión. Los costos estimados se calculan en función del precio de lista de los servicios y no incluyen ahorros ni créditos.
Pausa automática del uso y la acumulación de costos cuando se activa el límite de inversión: En el proyecto especificado, cuando los costos de uso brutos y estimados para el servicio específico superen el importe objetivo del presupuesto, se activará y aplicará el límite de inversión durante el resto del período del presupuesto. En el presupuesto, el parámetro
outputStatese establece enENFORCED. Mientras se aplica un límite de inversión, se aplica lo siguiente:- Se detiene todo el uso nuevo del servicio específico en el proyecto indicado, incluido el uso a pedido y de pago por uso, y el uso cubierto por compromisos, como los descuentos por compromiso de uso (CUD).
- Todas las solicitudes en curso del servicio especificado se procesan hasta completarse, y se acumulan los cargos según corresponda.
- Los límites de inversión no detienen el uso fijo y continuo asociado con los recursos persistentes (como los servicios de procesamiento y almacenamiento), que permanecen activos y siguen acumulando cargos.
- Importante: Mientras se encuentre en un estado de aplicación de política, no podrás editar la configuración de un presupuesto con límite de inversión ni borrarlo. Antes de editar o borrar un presupuesto aplicado, primero debes quitar el límite de inversión de forma manual.
Quita un límite de inversión aplicado para restablecer los servicios y la inversión: Cuando se aplica un límite de inversión, se bloquea el uso del servicio específico en el proyecto indicado hasta que se quite el límite. Puedes quitar un límite de inversión de las siguientes maneras:
Quitar automáticamente un límite de inversión: Un límite de inversión aplicado se quita automáticamente al comienzo del siguiente período presupuestario (por lo general, el primer día del mes siguiente). Cuando se quita automáticamente un límite de inversión, el importe de inversión del presupuesto se restablece a cero, el estado del límite de inversión se restablece a
CONFIGUREDy se desbloquean los servicios especificados, lo que restablece el funcionamiento normal de las llamadas a la API.Quita un límite de inversión de forma manual: Si necesitas revertir un bloqueo de uso durante el mismo período de presupuesto en el que se aplica el límite de inversión, puedes editar el presupuesto para quitarlo de forma manual. Quitar un límite de inversión de forma manual tiene los siguientes resultados:
- Si quitas manualmente un límite de inversión, se restablecerá el funcionamiento normal de las llamadas a la API.
- Si quitas el límite de inversión de forma manual estableciendo el
estado del límite de inversión
en
AWAITING_NEXT_PERIOD, el límite de inversión no se volverá a activar durante el resto del período presupuestario, a menos que edites el presupuesto más adelante para aumentar el importe del límite de inversión y establezcas elinputStateenCONFIGURED.
Después de que se quita un límite de inversión, los servicios pueden tardar hasta una hora en volver a funcionar con normalidad.
Restablecimiento automático de los presupuestos con límite de inversión: Al comienzo del siguiente período presupuestario (por lo general, el primer día del mes siguiente), todos los presupuestos con límite de inversión se restablecen automáticamente, lo que establece el importe de inversión bruto estimado en cero y el estado del límite de inversión en
CONFIGURED.
Limitación de cuota: Cada cuenta de Facturación de Cloud individual puede tener varios miles de presupuestos asociados a ella a la vez. Consulta Cuotas y límites para obtener información adicional y los límites actuales.
Llama a la API
En los siguientes ejemplos, se muestra cómo enviar algunas solicitudes a la API de Facturación de Cloud Budget para administrar los presupuestos con límite de inversión.
Cómo crear un presupuesto con límite de inversión
Este método de la API crea un presupuesto con límite de gasto de Facturación de Cloud aplicado a un solo proyecto y servicio apto.
REST
En este ejemplo, se muestra cómo crear un presupuesto con límite de inversión para el uso del servicio de la API de Gemini en un proyecto específico. El presupuesto tiene un alcance (filtrado) para un solo proyecto de Google Cloud que especifiques, un solo servicio apto y se establece para un importe de presupuesto mensual de USD 100.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
projects/budget-scope-project-id: Es el ID del proyecto de Google Cloud que deseas configurar como alcance del presupuesto (budgetFilter).services/eligible-service_id: Uno de los IDs de servicio aptos que deseas configurar como alcance del presupuesto (budgetFilter). En el ejemplo, usamos el ID de servicioAEFD-7695-64FApara el servicio de la API de Gemini.- billing-account-id: Es el ID de cuenta de Facturación de Cloud al que se aplica este presupuesto. Los presupuestos con límite de inversión se restringen a los clientes de Google Cloud propios y a las cuentas de Facturación de Cloud. Las cuentas de facturación de revendedor están fuera del alcance.
- api-user-project-id: Es el proyecto de Google Cloud en el que la API de presupuesto de Facturación de Cloud está habilitada.
Método HTTP y URL:
POST https://billingbudgets.googleapis.com/v1/billingAccounts/billing-account-id/budgets
Cuerpo JSON de la solicitud:
{
"displayName": "My Gemini API Spend Cap",
"budgetFilter": {
"projects": [
"projects/budget-scope-project-id"
],
"services": [
"services/AEFD-7695-64FA"
],
"creditTypesTreatment": "EXCLUDE_ALL_CREDITS",
"calendarPeriod": "MONTH"
},
"amount": {
"specifiedAmount": {
"units": "100",
"nanos": 0
}
},
"thresholdRules": [
{ "thresholdPercent": 0.5 },
{ "thresholdPercent": 0.8 },
{ "thresholdPercent": 1.0 }
],
"notificationsRule": {
"enableProjectLevelRecipients": true
},
"spendCap": {
"inputState": "CONFIGURED"
}
}
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{
"name": "billingAccounts/000000-111111-222222/budgets/33333333-4444-5555-6666-777777777777",
"displayName": "My Gemini API Spend Cap",
"budgetFilter": {
"projects": [
"projects/123456789"
],
"services": [
"services/AEFD-7695-64FA"
],
"creditTypesTreatment": "EXCLUDE_ALL_CREDITS",
"calendarPeriod": "MONTH"
},
"amount": {
"specifiedAmount": {
"currencyCode": "USD",
"units": "100"
}
},
"thresholdRules": [
{
"thresholdPercent": 0.5,
"spendBasis": "CURRENT_SPEND"
},
{
"thresholdPercent": 0.8,
"spendBasis": "CURRENT_SPEND"
},
{
"thresholdPercent": 1,
"spendBasis": "CURRENT_SPEND"
}
],
"notificationsRule": {
"enableProjectLevelRecipients": true
},
"etag": "1790365289674138",
"spendCap": {
"outputState": "CONFIGURED"
}
}
Cómo aumentar un límite de inversión con PATCH
Usa el método de la API PATCH para modificar un
presupuesto con límite de inversión de Facturación de Cloud existente
y quitar manualmente un límite de inversión aplicado.
REST
En este ejemplo, se muestra cómo quitar de forma manual un límite de inversión de ENFORCED en
un presupuesto existente actualizando el parámetro
SpendCap.inputState a AWAITING_NEXT_PERIOD.
Importante:Cuando el spend_cap.output_state es
ENFORCED, primero debes quitar el límite de inversión enviando una
solicitud UpdateBudget para modificar el
spend_cap.input_state, como establecer el
input_state en AWAITING_NEXT_PERIOD, lo que quitará
el límite. Si intentas modificar cualquier otro campo de presupuesto mientras el presupuesto se encuentra en
un estado de aplicación de política, la solicitud de actualización fallará con
FAILED_PRECONDITION.
Para llamar a este método, necesitas el budget-id del presupuesto que deseas actualizar. Puedes obtener el ID de presupuesto del resultado createBudget cuando creas tu presupuesto, o del resultado listBudgets si enumeras todos tus presupuestos.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- billing-account-id: Es el ID de cuenta de Facturación de Cloud al que se aplica este presupuesto. Los presupuestos con límite de inversión se restringen a los clientes de Google Cloud propios y a las cuentas de Facturación de Cloud. Las cuentas de facturación de revendedor están fuera del alcance.
- budget-id: el ID del presupuesto que deseas actualizar.
- api-user-project-id: Es el proyecto de Google Cloud en el que está habilitada la API de Presupuesto de Facturación de Cloud.
Método HTTP y URL:
PATCH https://billingbudgets.googleapis.com/v1/billingAccounts/billing-account-id/budgets/budget-id?updateMask=spendCap.inputState
Cuerpo JSON de la solicitud:
{
"spendCap": {
"inputState": "AWAITING_NEXT_PERIOD"
}
}
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{
"name": "billingAccounts/000000-111111-222222/budgets/33333333-4444-5555-6666-777777777777",
"displayName": "My Gemini API Spend Cap",
"budgetFilter": {
"projects": [
"projects/123456789"
],
"services": [
"services/AEFD-7695-64FA"
],
"creditTypesTreatment": "EXCLUDE_ALL_CREDITS",
"calendarPeriod": "MONTH"
},
"amount": {
"specifiedAmount": {
"currencyCode": "USD",
"units": "100"
}
},
"thresholdRules": [
{
"thresholdPercent": 0.5,
"spendBasis": "CURRENT_SPEND"
},
{
"thresholdPercent": 0.8,
"spendBasis": "CURRENT_SPEND"
},
{
"thresholdPercent": 1,
"spendBasis": "CURRENT_SPEND"
}
],
"notificationsRule": {
"enableProjectLevelRecipients": true
},
"etag": "1790365289674138",
"spendCap": {
"outputState": "AWAITING_NEXT_PERIOD",
"reconciling": true
}
}
Actualiza un presupuesto con límite de inversión con PATCH
Usa este método de la API para modificar un presupuesto con límite de inversión de Facturación de Cloud existente y cambiar el importe del presupuesto y los filtros de presupuesto (alcance del presupuesto).
REST
En este ejemplo, se muestra cómo actualizar un presupuesto con límite de inversión existente para cambiar el
importe del presupuesto. Si el
estado del límite de inversión es AWAITING_NEXT_PERIOD, este ejemplo también
muestra cómo restablecer un límite de inversión que se quitó actualizando el
parámetro
SpendCap.inputState a CONFIGURED.
Para llamar a este método, necesitas el budget-id del presupuesto que deseas actualizar. Puedes obtener el ID de presupuesto del resultado createBudget cuando creas tu presupuesto, o del resultado listBudgets si enumeras todos tus presupuestos.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
projects/budget-scope-project-id: El ID del proyecto de Google Cloud que deseas configurar como alcance del presupuesto (budgetFilter).services/eligible-service_id: Uno de los IDs de servicio aptos que deseas configurar como alcance del presupuesto (budgetFilter). En el ejemplo, usamos el ID de servicioAEFD-7695-64FApara el servicio de la API de Gemini.- billing-account-id: Es el ID de cuenta de Facturación de Cloud al que se aplica este presupuesto. Los presupuestos con límite de inversión se restringen a los clientes de Google Cloud propios y a las cuentas de Facturación de Cloud. Las cuentas de facturación de revendedor están fuera del alcance.
- budget-id: el ID del presupuesto que deseas actualizar.
- api-user-project-id: Es el proyecto de Google Cloud en el que está habilitada la API de Presupuesto de Facturación de Cloud.
Método HTTP y URL:
PATCH https://billingbudgets.googleapis.com/v1/billingAccounts/billing-account-id/budgets/budget-id?updateMask=amount.specifiedAmount,spendCap.inputState
Cuerpo JSON de la solicitud:
{
"displayName": "My Gemini API Spend Cap",
"budgetFilter": {
"projects": [
"projects/budget-scope-project-id"
],
"services": [
"services/AEFD-7695-64FA"
],
"creditTypesTreatment": "EXCLUDE_ALL_CREDITS",
"calendarPeriod": "MONTH"
},
"amount": {
"specifiedAmount": {
"units": "500",
"nanos": 0
}
},
"thresholdRules": [
{ "thresholdPercent": 0.5 },
{ "thresholdPercent": 0.8 },
{ "thresholdPercent": 1.0 }
],
"notificationsRule": {
"enableProjectLevelRecipients": true
},
"spendCap": {
"inputState": "CONFIGURED"
}
}
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{
"name": "billingAccounts/000000-111111-222222/budgets/33333333-4444-5555-6666-777777777777",
"displayName": "My Gemini API Spend Cap",
"budgetFilter": {
"projects": [
"projects/123456789"
],
"services": [
"services/AEFD-7695-64FA"
],
"creditTypesTreatment": "EXCLUDE_ALL_CREDITS",
"calendarPeriod": "MONTH"
},
"amount": {
"specifiedAmount": {
"currencyCode": "USD",
"units": "500"
}
},
"thresholdRules": [
{
"thresholdPercent": 0.5,
"spendBasis": "CURRENT_SPEND"
},
{
"thresholdPercent": 0.8,
"spendBasis": "CURRENT_SPEND"
},
{
"thresholdPercent": 1,
"spendBasis": "CURRENT_SPEND"
}
],
"notificationsRule": {
"enableProjectLevelRecipients": true
},
"etag": "1790365289674138",
"spendCap": {
"outputState": "CONFIGURED"
}
}
Mostrar presupuestos
Este método de API enumera todos los presupuestos disponibles para una cuenta de facturación de Cloud determinada.
REST
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- billing-account-id: Es el ID de la cuenta de Facturación de Cloud al que se aplican los presupuestos. Los presupuestos con límite de inversión se restringen a los clientes de Google Cloud propios y a las cuentas de Facturación de Cloud. Las cuentas de facturación de revendedor están fuera del alcance.
- project-id: Es el proyecto de Google Cloud en el que está habilitada la API de Presupuesto de Facturación de Cloud.
Método HTTP y URL:
GET https://billingbudgets.googleapis.com/v1/billingAccounts/billing-account-id/budgets
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{
"budgets": [
{
"name": "billingAccounts/000000-111111-222222/budgets/33333333-4444-5555-6666-777777777777",
"displayName": "Gemini API Spend Cap in My Project",
"budgetFilter": {
"projects": [
"projects/987654321"
],
"services": [
"services/AEFD-7695-64FA"
],
"creditTypesTreatment": "EXCLUDE_ALL_CREDITS",
"calendarPeriod": "MONTH"
},
"amount": {
"specifiedAmount": {
"currencyCode": "USD",
"units": "500"
}
},
"thresholdRules": [
{
"thresholdPercent": 0.5,
"spendBasis": "CURRENT_SPEND"
},
{
"thresholdPercent": 0.8,
"spendBasis": "CURRENT_SPEND"
},
{
"thresholdPercent": 1,
"spendBasis": "CURRENT_SPEND"
}
],
"notificationsRule": {
"enableProjectLevelRecipients": true
},
"allUpdatesRule": {},
"etag": "17fc365289f74138c",
"spendCap": {
"outputState": "ENFORCED"
}
}
]
}
Obtén el presupuesto
Este método de API obtiene los detalles de un presupuesto determinado.
REST
Para llamar a este método, necesitas el budget-id del presupuesto que deseas actualizar. Puedes obtener el ID de presupuesto del resultado createBudget cuando creas tu presupuesto, o del resultado listBudgets si enumeras todos tus presupuestos.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- billing-account-id: Es el ID de cuenta de Facturación de Cloud al que se aplica este presupuesto. Los presupuestos con límite de inversión se restringen a los clientes de Google Cloud propios y a las cuentas de Facturación de Cloud. Las cuentas de facturación de revendedor están fuera del alcance.
- budget-id: el ID del presupuesto que deseas obtener.
- project-id: Es el proyecto de Google Cloud en el que está habilitada la API de Presupuesto de Facturación de Cloud.
Método HTTP y URL:
GET https://billingbudgets.googleapis.com/v1/billingAccounts/billing-account-id/budgets/budget-id
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{
"name": "billingAccounts/000000-111111-222222/budgets/33333333-4444-5555-6666-777777777777",
"displayName": "Cloud Run Spend Cap in My Project",
"budgetFilter": {
"projects": [
"projects/987654321"
],
"services": [
"services/152E-C115-5142"
],
"creditTypesTreatment": "EXCLUDE_ALL_CREDITS",
"calendarPeriod": "MONTH"
},
"amount": {
"specifiedAmount": {
"currencyCode": "USD",
"units": "450"
}
},
"thresholdRules": [
{
"thresholdPercent": 0.5,
"spendBasis": "CURRENT_SPEND"
},
{
"thresholdPercent": 0.8,
"spendBasis": "CURRENT_SPEND"
},
{
"thresholdPercent": 1,
"spendBasis": "CURRENT_SPEND"
}
],
"notificationsRule": {
"enableProjectLevelRecipients": true
},
"allUpdatesRule": {},
"etag": "c9d6c011f6fa6b5c",
"spendCap": {
"outputState": "CONFIGURED"
}
}
Borra un presupuesto
Usa este método de la API para borrar un presupuesto existente de Facturación de Cloud.
REST
Para llamar a este método, necesitas el budget-id del presupuesto que deseas actualizar. Puedes obtener el ID de presupuesto del resultado createBudget cuando creas tu presupuesto, o del resultado listBudgets si enumeras todos tus presupuestos.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- billing-account-id: Es el ID de cuenta de Facturación de Cloud al que se aplica este presupuesto.
- budget-id: el ID del presupuesto que deseas borrar.
- project-id: Es el proyecto de Google Cloud en el que está habilitada la API de Presupuesto de Facturación de Cloud.
Método HTTP y URL:
DELETE https://billingbudgets.googleapis.com/v1/billingAccounts/billing-account-id/budgets/budget-id
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{}