Condividi tramite


Cost Allocation Rules - Create Or Update

Creare/aggiornare una regola per allocare i costi tra risorse diverse all'interno di un account di fatturazione o di una registrazione aziendale.

PUT https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.CostManagement/costAllocationRules/{ruleName}?api-version=2024-08-01

Parametri dell'URI

Nome In Necessario Tipo Descrizione
billingAccountId
path True

string

BillingAccount ID

ruleName
path True

string

Nome della regola di allocazione dei costi. Il nome non può includere spazi o caratteri non alfanumerici diversi da '_' e '-'. La lunghezza massima è di 260 caratteri.

Criterio di espressione regolare: [A-Za-z0-9\-_]+

api-version
query True

string

Versione dell'API da usare per questa operazione.

Corpo della richiesta

Nome Tipo Descrizione
properties

CostAllocationRuleProperties

Proprietà delle regole di allocazione dei costi

Risposte

Nome Tipo Descrizione
200 OK

CostAllocationRuleDefinition

OK. La richiesta di aggiornamento è riuscita.

201 Created

CostAllocationRuleDefinition

Creato. La richiesta ha avuto esito positivo.

Other Status Codes

ErrorResponse

Risposta di errore che descrive il motivo per cui l'operazione non è riuscita.

Sicurezza

azure_auth

Flusso OAuth2 di Azure Active Directory.

Tipo: oauth2
Flow: implicit
URL di autorizzazione: https://login.microsoftonline.com/common/oauth2/authorize

Ambiti

Nome Descrizione
user_impersonation rappresentare l'account utente

Esempio

CostAllocationRulesCreateResourceGroup
CostAllocationRulesCreateTag

CostAllocationRulesCreateResourceGroup

Esempio di richiesta

PUT https://management.azure.com/providers/Microsoft.Billing/billingAccounts/100/providers/Microsoft.CostManagement/costAllocationRules/testRule?api-version=2024-08-01

{
  "properties": {
    "description": "This is a testRule",
    "status": "Active",
    "details": {
      "sourceResources": [
        {
          "resourceType": "Dimension",
          "name": "ResourceGroupName",
          "values": [
            "sampleRG",
            "secondRG"
          ]
        }
      ],
      "targetResources": [
        {
          "resourceType": "Dimension",
          "policyType": "FixedProportion",
          "name": "ResourceGroupName",
          "values": [
            {
              "name": "destinationRG",
              "percentage": 45
            },
            {
              "name": "destinationRG2",
              "percentage": 54
            }
          ]
        }
      ]
    }
  }
}

Risposta di esempio

{
  "id": "providers/Microsoft.Billing/billingAccounts/100/providers/Microsoft.CostManagement/costAllocationRules/testRule",
  "name": "testRule",
  "type": "Microsoft.CostManagement/costAllocationRules",
  "properties": {
    "description": "This is a testRule",
    "createdDate": "2020-06-18T22:21:51.1287144Z",
    "updatedDate": "2020-06-18T22:21:51.1287144Z",
    "status": "Creating",
    "details": {
      "sourceResources": [
        {
          "resourceType": "Dimension",
          "name": "ResourceGroupName",
          "values": [
            "sampleRG"
          ]
        }
      ],
      "targetResources": [
        {
          "resourceType": "Dimension",
          "policyType": "FixedProportion",
          "name": "ResourceGroupName",
          "values": [
            {
              "name": "destinationRG",
              "percentage": 50
            },
            {
              "name": "destinationRG2",
              "percentage": 50
            }
          ]
        }
      ]
    }
  }
}
{
  "id": "providers/Microsoft.Billing/billingAccounts/100/providers/Microsoft.CostManagement/costAllocationRules/testRule",
  "name": "testRule",
  "type": "Microsoft.CostManagement/costAllocationRules",
  "properties": {
    "description": "This is a testRule",
    "createdDate": "2020-06-18T22:21:51.1287144Z",
    "updatedDate": "2020-06-18T22:21:51.1287144Z",
    "status": "Creating",
    "details": {
      "sourceResources": [
        {
          "resourceType": "Dimension",
          "name": "ResourceGroupName",
          "values": [
            "sampleRG"
          ]
        }
      ],
      "targetResources": [
        {
          "resourceType": "Dimension",
          "policyType": "FixedProportion",
          "name": "ResourceGroupName",
          "values": [
            {
              "name": "destinationRG",
              "percentage": 50
            },
            {
              "name": "destinationRG2",
              "percentage": 50
            }
          ]
        }
      ]
    }
  }
}

CostAllocationRulesCreateTag

Esempio di richiesta

PUT https://management.azure.com/providers/Microsoft.Billing/billingAccounts/100/providers/Microsoft.CostManagement/costAllocationRules/testRule?api-version=2024-08-01

{
  "properties": {
    "description": "This is a testRule",
    "status": "Active",
    "details": {
      "sourceResources": [
        {
          "resourceType": "Tag",
          "name": "category",
          "values": [
            "devops"
          ]
        }
      ],
      "targetResources": [
        {
          "resourceType": "Dimension",
          "policyType": "FixedProportion",
          "name": "ResourceGroupName",
          "values": [
            {
              "name": "destinationRG",
              "percentage": 33.33
            },
            {
              "name": "destinationRG2",
              "percentage": 33.33
            },
            {
              "name": "destinationRG3",
              "percentage": 33.34
            }
          ]
        }
      ]
    }
  }
}

Risposta di esempio

{
  "id": "providers/Microsoft.Billing/billingAccounts/100/providers/Microsoft.CostManagement/costAllocationRules/testRule",
  "name": "testRule",
  "type": "Microsoft.CostManagement/costAllocationRules",
  "properties": {
    "description": "This is a testRule",
    "createdDate": "2020-06-18T22:21:51.1287144Z",
    "updatedDate": "2020-06-18T22:21:51.1287144Z",
    "status": "Creating",
    "details": {
      "sourceResources": [
        {
          "resourceType": "Dimension",
          "name": "ResourceGroupName",
          "values": [
            "sampleRG"
          ]
        }
      ],
      "targetResources": [
        {
          "resourceType": "Dimension",
          "policyType": "FixedProportion",
          "name": "ResourceGroupName",
          "values": [
            {
              "name": "destinationRG",
              "percentage": 50
            },
            {
              "name": "destinationRG2",
              "percentage": 50
            }
          ]
        }
      ]
    }
  }
}
{
  "id": "providers/Microsoft.Billing/billingAccounts/100/providers/Microsoft.CostManagement/costAllocationRules/testRule",
  "name": "testRule",
  "type": "Microsoft.CostManagement/costAllocationRules",
  "properties": {
    "description": "This is a testRule",
    "createdDate": "2020-06-18T22:21:51.1287144Z",
    "updatedDate": "2020-06-18T22:21:51.1287144Z",
    "status": "Creating",
    "details": {
      "sourceResources": [
        {
          "resourceType": "Dimension",
          "name": "ResourceGroupName",
          "values": [
            "sampleRG"
          ]
        }
      ],
      "targetResources": [
        {
          "resourceType": "Dimension",
          "policyType": "FixedProportion",
          "name": "ResourceGroupName",
          "values": [
            {
              "name": "destinationRG",
              "percentage": 50
            },
            {
              "name": "destinationRG2",
              "percentage": 50
            }
          ]
        }
      ]
    }
  }
}

Definizioni

Nome Descrizione
CostAllocationPolicyType

Metodo da utilizzare per l'allocazione dei costi. FixedProportion indica che il costo verrà suddiviso in base ai valori percentuali specificati.

CostAllocationProportion

Risorse di destinazione e allocazione

CostAllocationResourceType

Categoria di risorsa da usare per l'allocazione.

CostAllocationRuleDefinition

Definizione del modello di regola di allocazione dei costi

CostAllocationRuleDetails

Dettagli delle risorse della regola di allocazione dei costi

CostAllocationRuleProperties

Proprietà di una regola di allocazione dei costi

ErrorDetails

Dettagli dell'errore.

ErrorResponse

La risposta di errore indica che il servizio non è in grado di elaborare la richiesta in ingresso. Il motivo viene fornito nel messaggio di errore.

Alcune risposte di errore:

  • 429 TooManyRequests - La richiesta è limitata. Riprovare dopo aver aspettato il tempo specificato nell'intestazione "x-ms-ratelimit-microsoft.consumption-retry-after".

  • 503 ServiceUnavailable - Il servizio non è temporaneamente disponibile. Riprovare dopo aver aspettato il tempo specificato nell'intestazione "Retry-After".

RuleStatus

Stato corrente della regola.

SourceCostAllocationResource

Risorse di origine per l'allocazione dei costi

TargetCostAllocationResource

Risorse di destinazione per l'allocazione dei costi.

CostAllocationPolicyType

Metodo da utilizzare per l'allocazione dei costi. FixedProportion indica che il costo verrà suddiviso in base ai valori percentuali specificati.

Nome Tipo Descrizione
FixedProportion

string

CostAllocationProportion

Risorse di destinazione e allocazione

Nome Tipo Descrizione
name

string

Risorsa di destinazione per l'allocazione dei costi

percentage

number

Percentuale del costo di origine da allocare a questa risorsa. Questo valore può essere specificato in due posizioni decimali e la percentuale totale di tutte le risorse in questa regola deve sommare a 100,00.

CostAllocationResourceType

Categoria di risorsa da usare per l'allocazione.

Nome Tipo Descrizione
Dimension

string

Indica che per l'allocazione viene usata una dimensione di Azure, ad esempio un ID sottoscrizione o un nome del gruppo di risorse.

Tag

string

Alloca i costi in base alle coppie chiave tag di Azure.

CostAllocationRuleDefinition

Definizione del modello di regola di allocazione dei costi

Nome Tipo Descrizione
id

string

ID di Azure Resource Manager per la regola. Si tratta di un valore ony di lettura.

name

string

Nome della regola. Si tratta di un valore di sola lettura.

properties

CostAllocationRuleProperties

Proprietà delle regole di allocazione dei costi

type

string

Tipo di risorsa della regola. Si tratta di un valore di sola lettura di Microsoft.CostManagement/CostAllocationRule.

CostAllocationRuleDetails

Dettagli delle risorse della regola di allocazione dei costi

Nome Tipo Descrizione
sourceResources

SourceCostAllocationResource[]

Risorse di origine per l'allocazione dei costi. Al momento, questo elenco può contenere non più di un elemento.

targetResources

TargetCostAllocationResource[]

Risorse di destinazione per l'allocazione dei costi. Al momento, questo elenco può contenere non più di un elemento.

CostAllocationRuleProperties

Proprietà di una regola di allocazione dei costi

Nome Tipo Descrizione
createdDate

string

Ora di creazione della regola. Le regole che modificano il costo per la stessa risorsa vengono applicate in ordine di creazione.

description

string

Descrizione di una regola di allocazione dei costi.

details

CostAllocationRuleDetails

Informazioni sulle risorse per la regola di allocazione dei costi

status

RuleStatus

Stato della regola

updatedDate

string

Ora dell'ultimo aggiornamento della regola.

ErrorDetails

Dettagli dell'errore.

Nome Tipo Descrizione
code

string

Codice di errore.

message

string

Messaggio di errore che indica il motivo per cui l'operazione non è riuscita.

ErrorResponse

La risposta di errore indica che il servizio non è in grado di elaborare la richiesta in ingresso. Il motivo viene fornito nel messaggio di errore.

Alcune risposte di errore:

  • 429 TooManyRequests - La richiesta è limitata. Riprovare dopo aver aspettato il tempo specificato nell'intestazione "x-ms-ratelimit-microsoft.consumption-retry-after".

  • 503 ServiceUnavailable - Il servizio non è temporaneamente disponibile. Riprovare dopo aver aspettato il tempo specificato nell'intestazione "Retry-After".

Nome Tipo Descrizione
error

ErrorDetails

Dettagli dell'errore.

RuleStatus

Stato corrente della regola.

Nome Tipo Descrizione
Active

string

La regola viene salvata e influisce sull'allocazione dei costi.

NotActive

string

La regola viene salvata ma non usata per allocare i costi.

Processing

string

La regola viene salvata e l'allocazione dei costi viene aggiornata. Valore di sola lettura che non può essere inviato in una richiesta put.

SourceCostAllocationResource

Risorse di origine per l'allocazione dei costi

Nome Tipo Descrizione
name

string

Se il tipo di risorsa è dimension, deve essere ResourceGroupName o SubscriptionId. Se il tipo di risorsa è tag, deve essere un tag di Azure valido

resourceType

CostAllocationResourceType

Tipo di risorse contenute in questa regola di allocazione dei costi

values

string[]

Risorse di origine per l'allocazione dei costi. Questo elenco non può contenere più di 25 valori.

TargetCostAllocationResource

Risorse di destinazione per l'allocazione dei costi.

Nome Tipo Descrizione
name

string

Se il tipo di risorsa è dimension, deve essere ResourceGroupName o SubscriptionId. Se il tipo di risorsa è tag, deve essere un tag di Azure valido

policyType

CostAllocationPolicyType

Metodo di allocazione dei costi per la regola

resourceType

CostAllocationResourceType

Tipo di risorse contenute in questa regola di allocazione dei costi

values

CostAllocationProportion[]

Risorse di destinazione per l'allocazione dei costi. Questo elenco non può contenere più di 25 valori.