Compartilhar via


Obter os dados de uso da assinatura por medidor

Aplica-se a: Partner Center | Partner Center para o Microsoft Cloud for US Government

Você pode usar a coleção de recursos MeterUsageRecord para obter registros de uso do medidor de um cliente para serviços ou recursos específicos do Azure durante o período de cobrança atual. Essa coleção de recursos representa um total agregado para cada medidor para o ciclo de cobrança atual, em todo o plano do Azure.

Pré-requisitos

  • Credenciais, conforme descrito em Autenticação do Partner Center. Este cenário dá suporte somente à autenticação com credenciais de aplicativo + de usuário.

  • Uma ID do cliente (customer-tenant-id). Se você não souber a ID do cliente, poderá pesquisá-la no Partner Center selecionando o workspace Clientes , o cliente na lista de clientes e, em seguida, Conta. Na página Conta do cliente, procure a ID da Microsoft na seção Informações da Conta do Cliente. A ID da Microsoft é igual à ID do cliente (customer-tenant-id).

  • Uma ID de assinatura

Essa nova rota é equivalente a subscriptions/{subscription-id}/usagerecords/resources, que continuará funcionando apenas para assinaturas do Microsoft Azure (MS-AZR-0145P). Essa nova rota dará suporte a assinaturas do Microsoft Azure (MS-AZR-0145P) e aos planos do Azure. Para obter essas informações para seu plano do Azure, você precisa alternar para essa nova rota. Além das propriedades mencionadas nas seções a seguir, a resposta é a mesma que a rota antiga.

C#

Para obter registros de uso do medidor de um cliente para um serviço ou recurso específico do Azure durante o período de cobrança atual:

  1. Use sua coleção IAggregatePartner.Customers para chamar o método ById().

  2. Chame a propriedade Subscriptions e UsageRecords e, em seguida, a propriedade Meters . Conclua chamando os métodos Get() ou GetAsync().

    // IAggregatePartner partnerOperations;
    // var selectedCustomerId as string;
    // var selectedSubscriptionId as string;
    
    var usageRecords = partnerOperations.Customers.ById(selectedCustomerId).Subscriptions.ById(selectedSubscriptionId).UsageRecords.Meters.Get();
    

Para obter um exemplo, consulte o seguinte exemplo:

Solicitação REST

Sintaxe da solicitação

Método URI da solicitação
GET {baseURL}/v1/customers/{customer-tenant-id}/subscriptions/{subscription-id}/meterusagerecords HTTP/1.1

Parâmetros do URI

Esta tabela lista os parâmetros de consulta necessários para obter as informações de uso classificadas do cliente.

Nome Type Obrigatório Descrição
customer-tenant-id guid Y Um GUID correspondente ao cliente.
subscription-id guid Y Um GUID correspondente ao identificador de um recurso de assinatura do Partner Center, que representa uma assinatura do Microsoft Azure (MS-AZR-0145P) ou um plano do Azure. Para recursos de assinatura do plano do Azure, forneça a ID do plano como a ID da assinatura nessa rota.

Cabeçalhos de solicitação

Para obter mais informações, confira Cabeçalhos REST do Partner Center.

Corpo da solicitação

Nenhum.

Exemplo de solicitação

GET https://api.partnercenter.microsoft.com/v1/customers/{customer-tenant-id}/subscriptions/{subscription-id}/meterusagerecords HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: e128c8e2-4c33-4940-a3e2-2e59b0abdc67
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd

Resposta REST

Se tiver êxito, este método retornará um recurso PagedResourceCollection<MeterUsageRecord> no corpo da resposta.

Códigos de êxito e de erro de resposta

Cada resposta vem com um código de status HTTP que indica êxito ou falha e informações de depuração adicionais. Use uma ferramenta de rastreamento de rede para ler esse código, o tipo de erro e os parâmetros adicionais. Para obter uma lista completa, consulte Códigos de erro.

Exemplo de resposta para assinaturas do Microsoft Azure (MS-AZR-0145P)

Neste exemplo, o cliente comprou o PayG do Azure 145P.

Para clientes com uma assinatura do Microsoft Azure (MS-AZR-0145P), não haverá nenhuma alteração na resposta da API.

HTTP/1.1 200 OK
Content-Length: 1120
Content-Type: application/json
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: e128c8e2-4c33-4940-a3e2-2e59b0abdc67
Date: Tue, 17 Sep 2019 20:31:45 GMT

{
    "totalCount": 1,
    "items": [
        {
            "status": "active",
            "offerId": "MS-AZR-0145P",
            "resourceId": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
            "id": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
            "resourceName": "Microsoft Azure",
            "name": "Microsoft Azure",
            "totalCost": 22.861172,
            "currencyLocale": "fr-FR",
            "usdTotalCost": 0,
            "lastModifiedDate": "2019-09-01T23:04:41.193+00:00",
            "attributes": {
                "objectType": "SubscriptionMonthlyUsageRecord"
            }
        }
    ],
    "links": {
        "self": {
            "uri": "/customers/{customer-tenant-id}/subscriptions/usagerecords/",
            "method": "GET",
            "headers": []
        }
    },
    "attributes": {
        "objectType": "Collection"
    }
}

Exemplo de resposta REST para o plano do Azure

Neste exemplo, o cliente comprou um plano do Azure.

Para clientes com planos do Azure, há as seguintes alterações na resposta da API:

  • currencyLocale é substituído por currencyCode
  • usdTotalCost é um novo campo
HTTP/1.1 200 OK
Content-Length: 1120
Content-Type: application/json
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: e128c8e2-4c33-4940-a3e2-2e59b0abdc67
Date: Fri, 26 Feb 2016 20:31:45 GMT

{
    "totalCount": 4,
    "items": [
        {
            "subscriptionId": "{subscription-id}",
            "meterId": "DZH318Z0BNVX-005J-Data Transfer In (GB)",
            "meterName": "Data Transfer In",
            "category": "Bandwidth",
            "subcategory": "Bandwidth",
            "quantityUsed": 0.01129,
            "unit": "1 GB",
            "totalCost": 0,
            "currencyCode": "GBP",
            "usdTotalCost": 0,
            "lastModifiedDate": "2019-09-17T21:08:44.2566667+00:00",
            "attributes": {
                "objectType": "MeterUsageRecord"
            }
        },
        {
            "subscriptionId": "{subscription-id}",
            "meterId": "DZH318Z0BNVX-005J-Data Transfer Out (GB)",
            "meterName": "Data Transfer Out",
            "category": "Bandwidth",
            "subcategory": "Bandwidth",
            "quantityUsed": 0.000224,
            "unit": "1 GB",
            "totalCost": 0,
            "currencyCode": "GBP",
            "usdTotalCost": 0,
            "lastModifiedDate": "2019-09-17T21:08:44.2566667+00:00",
            "attributes": {
                "objectType": "MeterUsageRecord"
            }
        },
        {
            "subscriptionId": "{subscription-id}",
            "meterId": "DZH318Z0BNZ5-006G-10K Batch Write Operations",
            "meterName": "Batch Write Operations",
            "category": "Storage",
            "subcategory": "Tables",
            "quantityUsed": 0.2462,
            "unit": "10K",
            "totalCost": 0,
            "currencyCode": "GBP",
            "usdTotalCost": 0,
            "lastModifiedDate": "2019-09-17T21:08:44.2566667+00:00",
            "attributes": {
                "objectType": "MeterUsageRecord"
            }
        },
        {
            "subscriptionId": "{subscription-id}",
            "meterId": "DZH318Z0BNZ5-006G-Data Stored (GB/Month)",
            "meterName": "LRS Data Stored",
            "category": "Storage",
            "subcategory": "Tables",
            "quantityUsed": 0.002632,
            "unit": "1 GB/Month",
            "totalCost": 0,
            "currencyCode": "GBP",
            "usdTotalCost": 0,
            "lastModifiedDate": "2019-09-17T21:08:44.2566667+00:00",
            "attributes": {
                "objectType": "MeterUsageRecord"
            }
        }
    ],
    "links": {
        "self": {
            "uri": "/customers/<customer-tenant-id>/subscriptions/<subscription-id>/meterusagerecords",
            "method": "GET",
            "headers": []
        }
    },
    "attributes": {
        "objectType": "Collection"
    }
}