Get a customer's service costs summary

Applies To

  • Partner Center

Gets a customer's service costs for the specified billing period.

Prerequisites

  • Credentials as described in Partner Center authentication. This scenario supports authentication with App+User credentials.
  • A customer identifier.
  • A billing period indicator (mostrecent).

C#

To retrieve a service costs summary for the specified customer, first call the IAggregatePartner.Customers.ById method with the customer ID to identify the customer. Then use the ServiceCosts property to get an interface to customer service costs collection operations. Next, call the ByBillingPeriod method with a member of the ServiceCostsBillingPeriod enumeration to return an IServiceCostsCollection. Finally, use the IServiceCostsCollection.Summary.Get or GetAsync method to get the customer’s service costs summary.

// IAggregatePartner partnerOperations;
// string selectedCustomerId;

var serviceCostsSummary = partnerOperations.Customers.ById(selectedCustomerId).ServiceCosts.ByBillingPeriod(ServiceCostsBillingPeriod.MostRecent).Summary.Get();

Request

Request syntax

Method Request URI
GET {baseURL}/v1/customers/{customer-id}/servicecosts/{billing-period} HTTP/1.1

URI parameter

Use the following path parameters to identify the customer and the billing period.

Name Type Required Description
customer-id guid Yes A GUID formatted customer-id that identifies the customer.
billing-period string Yes An indicator that represents the billing period. The only supported value is MostRecent. The case of the string does not matter.

Request headers

Request body

None.

Request example

GET https://api.partnercenter.microsoft.com/v1/customers/65726577-c208-40fd-9735-8c85ac9cac68/servicecosts/mostrecent HTTP/1.1
Authorization: Bearer <authorization token>
Accept: application/json
MS-RequestId: e6a3b6b2-230a-4813-999d-57f883b60d38
MS-CorrelationId: a687bc47-8d08-4b78-aff6-5a59aa2055c2
X-Locale: en-US
Host: api.partnercenter.microsoft.com

Response

If successful, the response body contains a ServiceCostsSummary resource that provides information about the service costs.

Response success and error codes

Each response comes with an HTTP status code that indicates success or failure and additional debugging information. Use a network trace tool to read this code, error type, and additional parameters. For the full list, see Partner Center REST error codes.

Response example

HTTP/1.1 200 OK
Content-Length: 766
Content-Type: application/json; charset=utf-8
MS-CorrelationId: a687bc47-8d08-4b78-aff6-5a59aa2055c2
MS-RequestId: e6a3b6b2-230a-4813-999d-57f883b60d38
MS-CV: gPPoyNX1X0asAAcw.0
MS-ServerId: 101112202
Date: Fri, 02 Dec 2016 18: 54: 38 GMT

{
    "billingStartDate": "2015-12-12T00:00:00Z",
    "billingEndDate": "2016-01-11T00:00:00Z",
    "pretaxTotal": 17.22,
    "tax": 0.0,
    "afterTaxTotal": 17.22,
    "currencySymbol": "$",
    "customerId": "ae1d5b32-f9ff-4252-b2bf-40e21937a51a",
    "links": {
        "serviceCostLineItems": {
            "uri": "/customers/ae1d5b32-f9ff-4252-b2bf-40e21937a51a/servicecosts/MostRecent/lineitems",
            "method": "GET",
            "headers": []
        },
        "self": {
            "uri": "/customers/ae1d5b32-f9ff-4252-b2bf-40e21937a51a/servicecosts/MostRecent",
            "method": "GET",
            "headers": []
        }
    },
    "attributes": {
        "objectType": "ServiceCostsSummary"
    }
}