Cost Allocation Rules - Create Or Update

Crie/atualize uma regra para alocar o custo entre recursos diferentes em uma conta de cobrança ou registro empresarial.

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

Parâmetros de URI

Nome Em Obrigatório Tipo Description
billingAccountId
path True

string

BillingAccount ID

ruleName
path True

string

Nome da regra de alocação de custo. O nome não pode incluir espaços ou caracteres não alfanuméricos diferentes de '_' e '-'. O comprimento máximo é de 260 caracteres.

Padrão Regex: [A-Za-z0-9\-_]+

api-version
query True

string

A versão da API a ser usada para esta operação.

Corpo da solicitação

Nome Tipo Description
properties

CostAllocationRuleProperties

Propriedades da regra de alocação de custo

Respostas

Nome Tipo Description
200 OK

CostAllocationRuleDefinition

OKEY. A solicitação de atualização foi bem-sucedida.

201 Created

CostAllocationRuleDefinition

Criado. A solicitação foi bem-sucedida.

Other Status Codes

ErrorResponse

Resposta de erro que descreve por que a operação falhou.

Segurança

azure_auth

Fluxo OAuth2 do Azure Active Directory.

Tipo: oauth2
Flow: implicit
URL de Autorização: https://login.microsoftonline.com/common/oauth2/authorize

Escopos

Nome Description
user_impersonation representar sua conta de usuário

Exemplos

CostAllocationRulesCreateResourceGroup
CostAllocationRulesCreateTag

CostAllocationRulesCreateResourceGroup

Solicitação de exemplo

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
            }
          ]
        }
      ]
    }
  }
}

Resposta de exemplo

{
  "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

Solicitação de exemplo

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
            }
          ]
        }
      ]
    }
  }
}

Resposta de exemplo

{
  "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
            }
          ]
        }
      ]
    }
  }
}

Definições

Nome Description
CostAllocationPolicyType

Método a ser usado para alocar o custo. FixedProportion indica que o custo será dividido com base nos valores de porcentagem especificados.

CostAllocationProportion

Alocação e recursos de destino

CostAllocationResourceType

Categoria de recurso a ser usada para alocação.

CostAllocationRuleDefinition

A definição do modelo de regra de alocação de custos

CostAllocationRuleDetails

Detalhes do recurso da regra de alocação de custos

CostAllocationRuleProperties

As propriedades de uma regra de alocação de custos

ErrorDetails

Os detalhes do erro.

ErrorResponse

A resposta de erro indica que o serviço não é capaz de processar a solicitação de entrada. O motivo é fornecido na mensagem de erro.

Algumas respostas de erro:

  • 429 TooManyRequests – A solicitação é limitada. Tente novamente depois de aguardar o tempo especificado no cabeçalho "x-ms-ratelimit-microsoft.consumption-retry-after".

  • 503 ServiceUnavailable – O serviço está temporariamente indisponível. Tente novamente depois de aguardar o tempo especificado no cabeçalho "Retry-After".

RuleStatus

Status atual da regra.

SourceCostAllocationResource

Recursos de origem para alocação de custos

TargetCostAllocationResource

Recursos de destino para alocação de custos.

CostAllocationPolicyType

Método a ser usado para alocar o custo. FixedProportion indica que o custo será dividido com base nos valores de porcentagem especificados.

Nome Tipo Description
FixedProportion

string

CostAllocationProportion

Alocação e recursos de destino

Nome Tipo Description
name

string

Recurso de destino para alocação de custos

percentage

number

Percentual do custo de origem a ser alocado para esse recurso. Esse valor pode ser especificado para duas casas decimais e o percentual total de todos os recursos nessa regra deve somar 100,00.

CostAllocationResourceType

Categoria de recurso a ser usada para alocação.

Nome Tipo Description
Dimension

string

Indica que uma dimensão do Azure, como uma ID de assinatura ou um nome de grupo de recursos, está sendo usada para alocação.

Tag

string

Aloca o custo com base em pares de valor de chave da Marca do Azure.

CostAllocationRuleDefinition

A definição do modelo de regra de alocação de custos

Nome Tipo Description
id

string

ID do Azure Resource Manager para a regra. Esse é um valor de leitura ony.

name

string

Nome da regra. Esse é um valor somente leitura.

properties

CostAllocationRuleProperties

Propriedades da regra de alocação de custo

type

string

Tipo de recurso da regra. Esse é um valor somente leitura de Microsoft.CostManagement/CostAllocationRule.

CostAllocationRuleDetails

Detalhes do recurso da regra de alocação de custos

Nome Tipo Description
sourceResources

SourceCostAllocationResource[]

Recursos de origem para alocação de custos. Neste momento, essa lista não pode conter mais de um elemento.

targetResources

TargetCostAllocationResource[]

Recursos de destino para alocação de custos. Neste momento, essa lista não pode conter mais de um elemento.

CostAllocationRuleProperties

As propriedades de uma regra de alocação de custos

Nome Tipo Description
createdDate

string

Hora em que a regra foi criada. As regras que alteram o custo do mesmo recurso são aplicadas na ordem de criação.

description

string

Descrição de uma regra de alocação de custos.

details

CostAllocationRuleDetails

Informações de recurso para a regra de alocação de custos

status

RuleStatus

Status da regra

updatedDate

string

Hora em que a regra foi atualizada pela última vez.

ErrorDetails

Os detalhes do erro.

Nome Tipo Description
code

string

Código de erro.

message

string

Mensagem de erro indicando por que a operação falhou.

ErrorResponse

A resposta de erro indica que o serviço não é capaz de processar a solicitação de entrada. O motivo é fornecido na mensagem de erro.

Algumas respostas de erro:

  • 429 TooManyRequests – A solicitação é limitada. Tente novamente depois de aguardar o tempo especificado no cabeçalho "x-ms-ratelimit-microsoft.consumption-retry-after".

  • 503 ServiceUnavailable – O serviço está temporariamente indisponível. Tente novamente depois de aguardar o tempo especificado no cabeçalho "Retry-After".

Nome Tipo Description
error

ErrorDetails

Os detalhes do erro.

RuleStatus

Status atual da regra.

Nome Tipo Description
Active

string

A regra é salva e afeta a alocação de custos.

NotActive

string

A regra é salva, mas não usada para alocar custos.

Processing

string

A regra é salva e a alocação de custos está sendo atualizada. Valor readonly que não pode ser enviado em uma solicitação put.

SourceCostAllocationResource

Recursos de origem para alocação de custos

Nome Tipo Description
name

string

Se o tipo de recurso for dimensão, ele deverá ser ResourceGroupName ou SubscriptionId. Se o tipo de recurso for marca, essa deverá ser uma marca válida do Azure

resourceType

CostAllocationResourceType

Tipo de recursos contidos nessa regra de alocação de custos

values

string[]

Recursos de origem para alocação de custos. Esta lista não pode conter mais de 25 valores.

TargetCostAllocationResource

Recursos de destino para alocação de custos.

Nome Tipo Description
name

string

Se o tipo de recurso for dimensão, ele deverá ser ResourceGroupName ou SubscriptionId. Se o tipo de recurso for marca, essa deverá ser uma marca válida do Azure

policyType

CostAllocationPolicyType

Método de alocação de custo para a regra

resourceType

CostAllocationResourceType

Tipo de recursos contidos nessa regra de alocação de custos

values

CostAllocationProportion[]

Recursos de destino para alocação de custos. Esta lista não pode conter mais de 25 valores.