Budgets - Create Or Update

Opération de création ou de mise à jour d’un budget. Vous pouvez éventuellement fournir un eTag si vous le souhaitez en tant que forme de contrôle d’accès concurrentiel. Pour obtenir le dernier eTag d’un budget donné, effectuez une opération d’obtention avant votre opération de mise en place.

PUT https://management.azure.com/{scope}/providers/Microsoft.Consumption/budgets/{budgetName}?api-version=2024-08-01

Paramètres URI

Nom Dans Obligatoire Type Description
budgetName
path True

string

Nom du budget.

scope
path True

string

Identificateur Azure Resource Manager complet de la ressource.

api-version
query True

string

minLength: 1

Version de l’API à utiliser pour cette opération.

Corps de la demande

Nom Obligatoire Type Description
properties.amount True

number (decimal)

Montant total du coût à suivre avec le budget

properties.category True

CategoryType

Catégorie du budget, que le budget effectue le suivi du coût ou de l’utilisation.

properties.timeGrain True

TimeGrainType

Temps couvert par un budget. Le suivi de la quantité sera réinitialisé en fonction du grain de temps. BillingMonth, BillingQuarter et BillingAnnual ne sont pris en charge que par les clients WD

properties.timePeriod True

BudgetTimePeriod

A la date de début et de fin du budget. La date de début doit être la première du mois et doit être inférieure à la date de fin. La date de début du budget doit être le 1er juin 2017 ou le 1er juin 2017. La date de début future ne doit pas dépasser douze mois. La date de début passée doit être sélectionnée au cours de la période de temps. Il n’existe aucune restriction à la date de fin.

eTag

string

eTag de la ressource. Pour gérer le scénario de mise à jour simultanée, ce champ sera utilisé pour déterminer si l’utilisateur met à jour la dernière version ou non.

properties.filter

BudgetFilter

Peut être utilisé pour filtrer les budgets par dimensions et/ou balises spécifiées par l’utilisateur.

properties.notifications

<string,  Notification>

Dictionnaire de notifications associées au budget. Le budget peut avoir jusqu’à cinq notifications.

Réponses

Nom Type Description
200 OK

Budget

Réussite de l’opération de mise à jour de la ressource 'Budget'

201 Created

Budget

Ressource 'Budget' création de l’opération réussie

Other Status Codes

ErrorResponse

Réponse d’erreur inattendue.

Sécurité

azure_auth

Flux OAuth2 Azure Active Directory.

Type: oauth2
Flux: implicit
URL d’autorisation: https://login.microsoftonline.com/common/oauth2/authorize

Étendues

Nom Description
user_impersonation emprunter l’identité de votre compte d’utilisateur

Exemples

CreateOrUpdateBudget

Exemple de requête

PUT https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/budgets/TestBudget?api-version=2024-08-01

{
  "eTag": "\"1d34d016a593709\"",
  "properties": {
    "amount": 100.65,
    "category": "Cost",
    "filter": {
      "and": [
        {
          "dimensions": {
            "name": "ResourceId",
            "operator": "In",
            "values": [
              "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2",
              "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1"
            ]
          }
        },
        {
          "tags": {
            "name": "category",
            "operator": "In",
            "values": [
              "Dev",
              "Prod"
            ]
          }
        },
        {
          "tags": {
            "name": "department",
            "operator": "In",
            "values": [
              "engineering",
              "sales"
            ]
          }
        }
      ]
    },
    "notifications": {
      "Actual_GreaterThan_80_Percent": {
        "contactEmails": [
          "johndoe@contoso.com",
          "janesmith@contoso.com"
        ],
        "contactGroups": [
          "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup"
        ],
        "contactRoles": [
          "Contributor",
          "Reader"
        ],
        "enabled": true,
        "locale": "en-us",
        "operator": "GreaterThan",
        "threshold": 80,
        "thresholdType": "Actual"
      }
    },
    "timeGrain": "Monthly",
    "timePeriod": {
      "endDate": "2018-10-31T00:00:00Z",
      "startDate": "2017-10-01T00:00:00Z"
    }
  }
}

Exemple de réponse

{
  "name": "TestBudget",
  "type": "Microsoft.Consumption/budgets",
  "eTag": "\"1d34d012214157f\"",
  "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/budgets/TestBudget",
  "properties": {
    "amount": 100.65,
    "category": "Cost",
    "currentSpend": {
      "amount": 80.89,
      "unit": "USD"
    },
    "filter": {
      "and": [
        {
          "dimensions": {
            "name": "ResourceId",
            "operator": "In",
            "values": [
              "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2",
              "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1"
            ]
          }
        },
        {
          "tags": {
            "name": "category",
            "operator": "In",
            "values": [
              "Dev",
              "Prod"
            ]
          }
        },
        {
          "tags": {
            "name": "department",
            "operator": "In",
            "values": [
              "engineering",
              "sales"
            ]
          }
        }
      ]
    },
    "notifications": {
      "Actual_GreaterThan_80_Percent": {
        "contactEmails": [
          "johndoe@contoso.com",
          "janesmith@contoso.com"
        ],
        "contactGroups": [
          "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup"
        ],
        "contactRoles": [
          "Contributor",
          "Reader"
        ],
        "enabled": true,
        "locale": "en-us",
        "operator": "GreaterThan",
        "threshold": 80,
        "thresholdType": "Actual"
      }
    },
    "timeGrain": "Monthly",
    "timePeriod": {
      "endDate": "2018-10-31T00:00:00Z",
      "startDate": "2017-10-01T00:00:00Z"
    }
  }
}
{
  "name": "TestBudget",
  "type": "Microsoft.Consumption/budgets",
  "eTag": "\"1d34d012214157f\"",
  "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Consumption/budgets/TestBudget",
  "properties": {
    "amount": 100.65,
    "category": "Cost",
    "currentSpend": {
      "amount": 80.89,
      "unit": "USD"
    },
    "filter": {
      "and": [
        {
          "dimensions": {
            "name": "ResourceId",
            "operator": "In",
            "values": [
              "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2",
              "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1"
            ]
          }
        },
        {
          "tags": {
            "name": "category",
            "operator": "In",
            "values": [
              "Dev",
              "Prod"
            ]
          }
        },
        {
          "tags": {
            "name": "department",
            "operator": "In",
            "values": [
              "engineering",
              "sales"
            ]
          }
        }
      ]
    },
    "notifications": {
      "Actual_GreaterThan_80_Percent": {
        "contactEmails": [
          "johndoe@contoso.com",
          "janesmith@contoso.com"
        ],
        "contactGroups": [
          "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup"
        ],
        "contactRoles": [
          "Contributor",
          "Reader"
        ],
        "enabled": true,
        "locale": "en-us",
        "operator": "GreaterThan",
        "threshold": 80,
        "thresholdType": "Actual"
      }
    },
    "timeGrain": "Monthly",
    "timePeriod": {
      "endDate": "2018-10-31T00:00:00Z",
      "startDate": "2017-10-01T00:00:00Z"
    }
  }
}

Définitions

Nom Description
Budget

Ressource budgétaire.

BudgetComparisonExpression

Expression de comparaison à utiliser dans les budgets.

BudgetFilter

Peut être utilisé pour filtrer les budgets par groupe de ressources, ressource ou compteur.

BudgetFilterProperties

Dimensions ou balises par lesquelles filtrer un budget.

BudgetOperatorType

Opérateur à utiliser pour la comparaison.

BudgetTimePeriod

Date de début et de fin d’un budget.

CategoryType

Catégorie du budget, que le budget effectue le suivi du coût ou de l’utilisation.

createdByType

Type d’identité qui a créé la ressource.

CultureCode

Langue dans laquelle le destinataire recevra la notification

CurrentSpend

Montant actuel du coût suivi d’un budget.

ErrorAdditionalInfo

Informations supplémentaires sur l’erreur de gestion des ressources.

ErrorDetail

Détail de l’erreur.

ErrorResponse

Réponse d’erreur

ForecastSpend

Coût prévu qui est suivi pour un budget.

Notification

Notification associée à un budget.

OperatorType

Opérateur de comparaison.

systemData

Métadonnées relatives à la création et à la dernière modification de la ressource.

ThresholdType

Type de seuil

TimeGrainType

Temps couvert par un budget. Le suivi de la quantité sera réinitialisé en fonction du grain de temps. BillingMonth, BillingQuarter et BillingAnnual ne sont pris en charge que par les clients WD

Budget

Ressource budgétaire.

Nom Type Description
eTag

string

eTag de la ressource. Pour gérer le scénario de mise à jour simultanée, ce champ sera utilisé pour déterminer si l’utilisateur met à jour la dernière version ou non.

id

string

ID de ressource complet pour la ressource. ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

Nom de la ressource

properties.amount

number (decimal)

Montant total du coût à suivre avec le budget

properties.category

CategoryType

Catégorie du budget, que le budget effectue le suivi du coût ou de l’utilisation.

properties.currentSpend

CurrentSpend

Montant actuel du coût suivi d’un budget.

properties.filter

BudgetFilter

Peut être utilisé pour filtrer les budgets par dimensions et/ou balises spécifiées par l’utilisateur.

properties.forecastSpend

ForecastSpend

Coût prévu qui est suivi pour un budget.

properties.notifications

<string,  Notification>

Dictionnaire de notifications associées au budget. Le budget peut avoir jusqu’à cinq notifications.

properties.timeGrain

TimeGrainType

Temps couvert par un budget. Le suivi de la quantité sera réinitialisé en fonction du grain de temps. BillingMonth, BillingQuarter et BillingAnnual ne sont pris en charge que par les clients WD

properties.timePeriod

BudgetTimePeriod

A la date de début et de fin du budget. La date de début doit être la première du mois et doit être inférieure à la date de fin. La date de début du budget doit être le 1er juin 2017 ou le 1er juin 2017. La date de début future ne doit pas dépasser douze mois. La date de début passée doit être sélectionnée au cours de la période de temps. Il n’existe aucune restriction à la date de fin.

systemData

systemData

Métadonnées Azure Resource Manager contenant les informations createdBy et modifiedBy.

type

string

Type de la ressource. Par exemple, « Microsoft.Compute/virtualMachines » ou « Microsoft.Storage/storageAccounts »

BudgetComparisonExpression

Expression de comparaison à utiliser dans les budgets.

Nom Type Description
name

string

Nom de la colonne à utiliser en comparaison.

operator

BudgetOperatorType

Opérateur à utiliser pour la comparaison.

values

string[]

Tableau de valeurs à utiliser pour la comparaison

BudgetFilter

Peut être utilisé pour filtrer les budgets par groupe de ressources, ressource ou compteur.

Nom Type Description
and

BudgetFilterProperties[]

Expression logique « AND ». Doit avoir au moins 2 éléments.

dimensions

BudgetComparisonExpression

A une expression de comparaison pour une dimension

tags

BudgetComparisonExpression

A une expression de comparaison pour une balise

BudgetFilterProperties

Dimensions ou balises par lesquelles filtrer un budget.

Nom Type Description
dimensions

BudgetComparisonExpression

A une expression de comparaison pour une dimension

tags

BudgetComparisonExpression

A une expression de comparaison pour une balise

BudgetOperatorType

Opérateur à utiliser pour la comparaison.

Valeur Description
In

BudgetTimePeriod

Date de début et de fin d’un budget.

Nom Type Description
endDate

string (date-time)

Date de fin du budget. S’il n’est pas fourni, nous définissons cette valeur par défaut sur 10 ans à partir de la date de début.

startDate

string (date-time)

Date de début du budget.

CategoryType

Catégorie du budget, que le budget effectue le suivi du coût ou de l’utilisation.

Valeur Description
Cost

createdByType

Type d’identité qui a créé la ressource.

Valeur Description
User
Application
ManagedIdentity
Key

CultureCode

Langue dans laquelle le destinataire recevra la notification

Valeur Description
en-us
ja-jp
zh-cn
de-de
es-es
fr-fr
it-it
ko-kr
pt-br
ru-ru
zh-tw
cs-cz
pl-pl
tr-tr
da-dk
en-gb
hu-hu
nb-no
nl-nl
pt-pt
sv-se

CurrentSpend

Montant actuel du coût suivi d’un budget.

Nom Type Description
amount

number (decimal)

Montant total du coût suivi par le budget.

unit

string

Unité de mesure pour le montant budgétaire.

ErrorAdditionalInfo

Informations supplémentaires sur l’erreur de gestion des ressources.

Nom Type Description
info

object

Informations supplémentaires.

type

string

Type d’informations supplémentaire.

ErrorDetail

Détail de l’erreur.

Nom Type Description
additionalInfo

ErrorAdditionalInfo[]

Informations supplémentaires sur l’erreur.

code

string

Code d’erreur.

details

ErrorDetail[]

Détails de l’erreur.

message

string

Message d’erreur.

target

string

Cible d’erreur.

ErrorResponse

Réponse d’erreur

Nom Type Description
error

ErrorDetail

Objet d’erreur.

ForecastSpend

Coût prévu qui est suivi pour un budget.

Nom Type Description
amount

number (decimal)

Coût prévu pour la période totale suivie par le budget. Cette valeur est fournie uniquement si le budget contient un type d’alerte de prévision.

unit

string

Unité de mesure pour le montant budgétaire.

Notification

Notification associée à un budget.

Nom Type Valeur par défaut Description
contactEmails

string[]

Adresses e-mail à laquelle envoyer la notification budgétaire lorsque le seuil est dépassé. Doit avoir au moins un e-mail de contact ou un groupe de contacts spécifié dans les étendues Abonnement ou Groupe de ressources. Toutes les autres étendues doivent avoir au moins un e-mail de contact spécifié.

contactGroups

string[]

Groupes d’actions auxquels envoyer la notification budgétaire lorsque le seuil est dépassé. Doit être fourni en tant qu’ID de ressource Azure complet. Uniquement pris en charge dans les étendues d’abonnement ou de groupe de ressources.

contactRoles

string[]

Contactez les rôles pour envoyer la notification budgétaire au moment où le seuil est dépassé.

enabled

boolean

La notification est activée ou non.

locale

CultureCode

Langue dans laquelle le destinataire recevra la notification

operator

OperatorType

Opérateur de comparaison.

threshold

number (decimal)

Valeur de seuil associée à une notification. La notification est envoyée lorsque le coût a dépassé le seuil. Il est toujours pourcentage et doit être compris entre 0 et 1000.

thresholdType

ThresholdType

Actual

Type de seuil

OperatorType

Opérateur de comparaison.

Valeur Description
EqualTo

L’alerte est déclenchée si le coût évalué est identique à la valeur de seuil. Remarque : il n’est pas recommandé d’utiliser ce OperatorType, car il existe peu de chances que le coût soit exactement le même que la valeur de seuil, ce qui entraîne l’absence de votre alerte. Ce OperatorType sera déconseillé à l’avenir.

GreaterThan

L’alerte est déclenchée si le coût évalué est supérieur à la valeur de seuil. Remarque : Il s’agit de l’OperatorType recommandé lors de la configuration de l’alerte budgétaire.

GreaterThanOrEqualTo

L’alerte est déclenchée si le coût évalué est supérieur ou égal à la valeur de seuil.

systemData

Métadonnées relatives à la création et à la dernière modification de la ressource.

Nom Type Description
createdAt

string (date-time)

Horodatage de la création de ressources (UTC).

createdBy

string

Identité qui a créé la ressource.

createdByType

createdByType

Type d’identité qui a créé la ressource.

lastModifiedAt

string (date-time)

Horodatage de la dernière modification de ressource (UTC)

lastModifiedBy

string

Identité qui a modifié la ressource pour la dernière fois.

lastModifiedByType

createdByType

Type d’identité qui a modifié la ressource pour la dernière fois.

ThresholdType

Type de seuil

Valeur Description
Actual

Les alertes de budget des coûts réels avertissent lorsque le coût réel cumulé dépasse le budget alloué.

Forecasted

Les alertes de budget des coûts prévus fournissent une notification avancée indiquant que vos tendances de dépense sont susceptibles de dépasser votre budget alloué, car elle s’appuie sur des prédictions de coûts prévues.

TimeGrainType

Temps couvert par un budget. Le suivi de la quantité sera réinitialisé en fonction du grain de temps. BillingMonth, BillingQuarter et BillingAnnual ne sont pris en charge que par les clients WD

Valeur Description
Monthly
Quarterly
Annually
BillingMonth
BillingQuarter
BillingAnnual