Dela via


Hämta användningsdata för prenumeration efter mätare

Gäller för: Partnercenter | Partnercenter för Microsoft Cloud for US Government

Du kan använda resurssamlingen MeterUsageRecord för att hämta mätaranvändningsposter för en kund för specifika Azure-tjänster eller resurser under den aktuella faktureringsperioden. Den här resurssamlingen representerar en aggregerad summa för varje mätare för den aktuella faktureringsperioden i hela Azure-planen.

Förutsättningar

  • Autentiseringsuppgifter enligt beskrivningen i Partnercenter-autentisering. Det här scenariot stöder endast autentisering med app+användarautentiseringsuppgifter.

  • Ett kund-ID (customer-tenant-id). Om du inte känner till kundens ID kan du söka efter det i Partnercenter genom att välja arbetsytan Kunder , sedan kunden från kundlistan och sedan Konto. På kundens kontosida letar du upp Microsoft-ID :t i avsnittet Kundkontoinformation . Microsoft-ID:t är samma som kund-ID:t (customer-tenant-id).

  • Ett prenumerations-ID

Den här nya vägen motsvarar subscriptions/{subscription-id}/usagerecords/resources, som fortsätter att fungera endast för Microsoft Azure-prenumerationer (MS-AZR-0145P). Den här nya vägen stöder både Microsoft Azure-prenumerationer (MS-AZR-0145P) och Azure-planer. För att få den här informationen för din Azure-plan måste du växla till den nya vägen. Förutom de egenskaper som anges i följande avsnitt är svaret detsamma som den gamla vägen.

C#

Så här hämtar du mätaranvändningsposter för en kund för en specifik Azure-tjänst eller resurs under den aktuella faktureringsperioden:

  1. Använd din IAggregatePartner.Customers-samling för att anropa metoden ById().

  2. Anropa egenskapen Prenumerationer och UsageRecords och sedan egenskapen Meter . Slutför genom att anropa metoderna Get() eller GetAsync().

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

Ett exempel finns i följande exempel:

  • Exempel: Konsoltestapp
  • Projekt: PartnerSDK.FeatureSamples
  • Klass: GetSubscriptionUsageRecordsByMeter.cs

REST-begäran

Begärandesyntax

Metod URI för förfrågan
GET {baseURL}/v1/customers/{customer-tenant-id}/subscriptions/{subscription-id}/meterusagerecords HTTP/1.1

URI-parametrar

I den här tabellen visas de frågeparametrar som krävs för att hämta kundens klassificerade användningsinformation.

Namn Typ Obligatorisk Beskrivning
customer-tenant-id Guid Y Ett GUID som motsvarar kunden.
prenumerations-ID Guid Y Ett GUID som motsvarar identifieraren för en partnercenterprenumerationsresurs, som representerar en Microsoft Azure-prenumeration (MS-AZR-0145P) eller en Azure-plan. För prenumerationsresurser för Azure-plan anger du plan-id som prenumerations-ID i den här vägen.

Begärandehuvuden

Mer information finns i REST-huvuden för Partnercenter.

Begärandetext

Inga.

Exempel på begäran

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

REST-svar

Om det lyckas returnerar den här metoden en PagedResourceCollection<MeterUsageRecord-resurs> i svarstexten.

Lyckade svar och felkoder

Varje svar levereras med en HTTP-statuskod som anger lyckat eller misslyckat och ytterligare felsökningsinformation. Använd ett verktyg för nätverksspårning för att läsa den här koden, feltypen och ytterligare parametrar. En fullständig lista finns i Felkoder.

Svarsexempel för Microsoft Azure-prenumerationer (MS-AZR-0145P)

I det här exemplet köpte kunden 145P Azure PayG.

För kunder med en Microsoft Azure-prenumeration (MS-AZR-0145P) ändras inte API-svaret.

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

REST-svarsexempel för Azure-plan

I det här exemplet köpte kunden en Azure-plan.

För kunder med Azure-planer finns följande ändringar i API-svaret:

  • currencyLocale ersätts med currencyCode
  • usdTotalCost är ett nytt fält
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"
    }
}