Получение позиций в строках счета
Область применения: Центр партнеров | Центр партнеров, управляемый 21Vianet | Центр партнеров для Microsoft Cloud for US Government
Для получения сведений о коллекции для элементов строки счета (также известных как закрытые элементы строки выставления счетов) для указанного счета можно использовать следующие методы.
За исключением исправлений ошибок, этот API больше не обновляется. Мы рекомендуем обновить приложения для вызова однократного API вместо Marketplace. API onetime предлагает дополнительные функциональные возможности и постоянно обновляется.
Для запроса всех элементов линии коммерческого потребления лучше всего использовать однократный API вместо Marketplace.
Этот API также поддерживает типы поставщиков подписок Azure и Office для Microsoft Azure (MS-AZR-0145P) и предложения Office, обеспечивая обратную совместимость.
Спасибо за ваше внимание, и мы надеемся, что эта информация оказывается полезной для вас.
Примечание.
После 21 января 2025 г. вы можете продолжать использовать этот API, но не для каждого периода выставления счетов. Вот как выбрать подходящую версию в зависимости от ваших потребностей:
Цель: получение элементов строки счета для периодов выставления счетов с февраля 2024 по декабрь 2024 года.
Действие. Используйте этот API до 21 января 2025 г., если вы еще не переключились на API версии 2 GA.
Цель: получение элементов строки счета за периоды выставления счетов до февраля 2024 года.
Действие. Используйте этот API исключительно.
Цель: извлечение элементов строки счета за период выставления счетов с февраля 2024 года, но только после 21 января 2025 года.
Действие. Использование только общедоступной версии API версии 2.
Чтобы легко перейти к новому API, выполните следующую ссылку: API выверки счетов выставления счетов версии 2 (GA).
Спасибо за ваше внимание, и мы с нетерпением ждем вашего дальнейшего успеха с нашими API выставления счетов.
Необходимые компоненты
Учетные данные, описанные в статье о проверке подлинности в Центре партнеров. Этот сценарий поддерживает проверку подлинности с помощью автономных учетных данных приложения и приложения и пользователя.
Идентификатор счета для получения элементов строки.
C#
Чтобы получить элементы строки для указанного счета:
Вызовите метод ById, чтобы получить интерфейс для операций с счетом для указанного счета.
Вызовите метод Get или GetAsync, чтобы получить объект счета. Объект счета содержит все сведения для указанного счета.
Используйте свойство InvoiceDetails объекта счета, чтобы получить доступ к коллекции объектов InvoiceDetail, каждая из которых содержит BillingProvider и InvoiceLineItemType. Функция BillingProvider определяет источник сведений о счете (например, Office, Azure, OneTime), а Тип InvoiceLineItemType указывает тип (например, BillingLineItem).
В следующем примере кода для обработки коллекции InvoiceDetails используется цикл foreach. Для каждого экземпляра InvoiceDetail извлекается отдельная коллекция элементов строки.
Чтобы получить коллекцию строковых элементов, соответствующих экземпляру InvoiceDetail :
Передайте параметр BillingProvider и InvoiceLineItemType экземпляра методу By.
Вызовите метод Get или GetAsync, чтобы получить связанные элементы строки.
Создайте перечислитель для обхода коллекции, как показано в следующем примере.
// IAggregatePartner partnerOperations;
// int invoicePageSize;
// string invoiceId;
// Retrieve the invoice.
var invoiceOperations = partnerOperations.Invoices.ById(invoiceId);
var invoice = invoiceOperations.Get();
foreach (var invoiceDetail in invoice.InvoiceDetails)
{
Console.WriteLine(string.Format("Getting invoice line item for product {0} and line item type {1}",
invoiceDetail.BillingProvider,
invoiceDetail.InvoiceLineItemType));
// Is this an unpaged or paged request?
bool isUnPaged = (this.invoicePageSize <= 0);
// If the scenario is unpaged, get all the invoice line items, otherwise get the first page.
var invoiceLineItemsCollection =
(isUnPaged)
? invoiceOperations.By(invoiceDetail.BillingProvider, invoiceDetail.InvoiceLineItemType).Get()
: invoiceOperations.By(invoiceDetail.BillingProvider, invoiceDetail.InvoiceLineItemType).Get(this.invoicePageSize, 0);
// Create an enumerator for traversing the line items collection.
var invoiceLineItemEnumerator =
partnerOperations.Enumerators.InvoiceLineItems.Create(invoiceLineItemsCollection);
while (invoiceLineItemEnumerator.HasValue)
{
// invoiceLineItemEnumerator.Current contains a collection
// of line items.
Console.WriteLine(String.Format("invoiceLineItemEnumerator.Current has {0} line items.",
invoiceLineItemEnumerator.Current.TotalCount));
//
// Insert code here to work with the line items.
//
Console.WriteLine();
Console.Write("Press any key to retrieve the next invoice line items page");
Console.ReadKey();
// Get the next list of invoice line items.
invoiceLineItemEnumerator.Next();
}
}
См. другой пример:
- Пример: тестовое приложение консоли
- Проект: примеры пакета SDK центра партнеров
- Класс: GetInvoiceLineItems.cs
Запрос REST
Синтаксис запроса
Выполните запрос с помощью соответствующего синтаксиса для поставщика выставления счетов в вашем сценарии.
Office
Следующий синтаксис применяется, если поставщик выставления счетов — Office.
Способ | URI запроса |
---|---|
GET | {baseURL}/v1/invoices/{invoice-id}/lineitems?provider=office&invoicelineitemtype=billinglineitems&size={size}&offset={offset} HTTP/1.1 |
Подписка Microsoft Azure (MS-AZR-0145P)
Следующие синтаксисы применяются, если у поставщика выставления счетов есть подписка Microsoft Azure (MS-AZR-0145P).
Способ | URI запроса |
---|---|
GET | {baseURL}/v1/invoices/{invoice-id}/lineitems?provider=azure&invoicelineitemtype=billinglineitems&size={size}&offset={offset} HTTP/1.1 |
GET | {baseURL}/v1/invoices/{invoice-id}/lineitems?provider=azure&invoicelineitemtype=usagelineitems&size={size}&offset={offset} HTTP/1.1 |
OneTime
Используйте эти синтаксисы для поставщиков выставления счетов OneTime . Они охватывают такие расходы, как резервирования Azure, планы экономии Azure, программное обеспечение, планы Azure, коммерческие платформы и продукты Майкрософт/Dynamics 365.
Способ | URI запроса |
---|---|
GET | {baseURL}/v1/invoices/{invoice-id}/lineitems?provider=onetime&invoicelineitemtype=billinglineitems&size={size} HTTP/1.1 |
GET | {baseURL}/v1/invoices/{invoice-id}/lineitems/onetime/billinglineitems&size={size}?seekOperation=Next |
Предыдущие синтаксисы
Мы настоятельно рекомендуем обновить приложения для использования однократного API вместо API Marketplace . API onetime предлагает расширенные функциональные возможности и получает текущие обновления, гарантируя, что ваши приложения остаются текущими.
Для всех элементов линии коммерческого потребления используйте однократный API для запросов. Этот переход не только упрощает процессы, но и обеспечивает более надежные возможности.
Помните, что за исключением основных исправлений ошибок, API Marketplace больше не получает обновления. Теперь это изменение помогает оставаться впереди и воспользоваться новейшими функциями и улучшениями.
Способ | URI запроса | Описание варианта использования синтаксиса |
---|---|---|
GET | {baseURL}/v1/invoices/{invoice-id}/lineitems/{billing-provider}/{invoice-line-item-type} HTTP/1.1 | Этот синтаксис можно использовать для возврата полного списка каждого элемента строки для данного счета. |
GET | {baseURL}/v1/invoices/{invoice-id}/lineitems/{billing-provider}/{invoice-line-item-type}?size={size}&offset={offset} HTTP/1.1 | Чтобы эффективно обрабатывать большие счета, укажите размер и отсчитываемое от нуля смещение, чтобы вернуть список строк. |
GET | {baseURL}/v1/invoices/{invoice-id}/lineitems/OneTime/{invoice-line-item-type}?seekOperation=Next | Этот синтаксис можно использовать для счета со значением поставщика выставления счетов OneTime и задать значение seekOperation next, чтобы получить следующую страницу элементов строки счета. |
Параметры универсального кода ресурса (URI)
При создании запроса используйте следующие параметры URI и запроса.
Имя. | Type | Обязательно | Описание |
---|---|---|---|
invoice-id | строка | Да | Строка, идентифицирующая счет. |
Поставщик выставления счетов | строка | Да | Поставщик выставления счетов: "Office", "Azure", "OneTime" в устаревшей версии у нас есть отдельные модели данных для транзакций Office и Azure. Однако в современном режиме у нас есть одна модель данных во всех продуктах, отфильтрованных по значению OneTime. |
invoice-line-item-type | строка | Да | Тип сведений о счете: "BillingLineItems", "UsageLineItems" |
size | number | No | Максимальное количество возвращаемых элементов. Максимальный размер по умолчанию = 2000 |
offset | number | No | Отсчитываемый от нуля индекс возвращаемого начального элемента строки. |
seekOperation | строка | Нет | Если поставщик выставления счетов равен OneTime, задайте значение seekOperation равно Next , чтобы получить следующую страницу элементов строки счета. |
hasPartnerEarnedCredit | bool | No | Этот параметр возвращает элементы строки с примененным партнером кредитом. Он работает только для типа поставщика выставления счетов OneTime и InvoiceLineItemType = UsageLineItems. |
Заголовки запросов
Дополнительные сведения см. в статье о заголовках REST Центра партнеров.
Текст запроса
Нет.
Ответ REST
При успешном выполнении ответ содержит коллекцию сведений о элементе строки.
Для элемента строки ChargeType значение покупки сопоставляется с New. Возвращаемое значение сопоставляется с Отменой.
Коды успешного выполнения и ошибок в ответе
Каждый ответ содержит код состояния HTTP, указывающий на успешность или сбой, а также другие сведения об отладке. Используйте средство трассировки сети для чтения этого кода, типа ошибки и дополнительных параметров. Полный список ответов есть в статье Коды ошибок REST в Центре партнеров.
Примеры ответа на запросы REST
Пример ответа запроса 1
В этом примере подробные сведения приведены ниже.
- BillingProvider: Office
- InvoiceLineItemType: BillingLineItems
Пример запроса 1
GET https://api.partnercenter.microsoft.com/v1/invoices/1234000000/lineitems?provider=Office&nvoicelineitemtype=BillingLineItems&size=2&offset=0 HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 1eb2ecb8-37af-45f4-a1a1-358de3ca2b9e
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
MS-PartnerCenter-Application: Partner Center .NET SDK Samples
Host: api.partnercenter.microsoft.com
Внимание
По состоянию на июнь 2023 г. последняя версия пакета SDK для .NET для Центра партнеров 3.4.0 теперь архивируется. Вы можете скачать выпуск пакета SDK из GitHub вместе с файлом чтения, содержащим полезные сведения.
Партнерам рекомендуется продолжать использовать REST API Центра партнеров.
Пример ответа 1
HTTP/1.1 200 OK
Content-Length: 2484
Content-Type: application/json; charset=utf-8
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 1eb2ecb8-37af-45f4-a1a1-358de3ca2b9e
MS-CV: bpqyomePDUqrSSYC.0
MS-ServerId: 202010406
Date: Thu, 07 Sep 2017 23:31:09 GMT
{
"totalCount": 2,
"items": [{
"partnerId": "3b33e682-00c3-41ee-9dd2-a548adf56438",
"customerId": "74221236-D09C-4870-AC1D-33E155E9AEBE",
"customerName": "TSTAGIN1CUST190",
"mpnId": 4391507,
"tier2MpnId": -1,
"orderId": "567735045559164136",
"subscriptionId": "4KIKawEAAAAAAAEA",
"syndicationPartnerSubscriptionNumber": "1F58ACD7-FE51-4705-9567-D009C9ADA150",
"offerId": "AAA5B3F0-0EE2-431B-A42F-3F18F3C6D540",
"durableOfferId": "2F707C7C-2433-49A5-A437-9CA7CF40D3EB",
"offerName": "EXCHANGE ONLINE (PLAN 2)",
"domainName": "TStagin1Cust190.onmicrosoft.com",
"billingCycleType": "MONTHLY",
"subscriptionName": "EXCHANGE ONLINE (PLAN 2)",
"subscriptionDescription": "EXCHANGE ONLINE (PLAN 2)",
"subscriptionStartDate": "2017-05-12T00:00:00",
"subscriptionEndDate": "2018-06-10T00:00:00",
"chargeStartDate": "2017-05-12T00:00:00",
"chargeEndDate": "2017-06-09T00:00:00",
"chargeType": "New",
"unitPrice": 0.0,
"quantity": 3,
"amount": 0.0,
"totalOtherDiscount": 0.0,
"subtotal": 0.0,
"tax": 0.0,
"totalForCustomer": 0.0,
"currency": "USD",
"invoiceLineItemType": "billing_line_items",
"billingProvider": "office",
"attributes": {
"objectType": "LicenseBasedLineItem"
}
}, {
"partnerId": "3b33e682-00c3-41ee-9dd2-a548adf56438",
"customerId": "74221236-D09C-4870-AC1D-33E155E9AEBE",
"customerName": "TSTAGIN1CUST190",
"mpnId": 4391507,
"tier2MpnId": -1,
"orderId": "567735045564795186",
"subscriptionId": "Ik4YawEAAAAAAAEA",
"syndicationPartnerSubscriptionNumber": "D8A8F773-9D3E-4244-8797-3182075F09FA",
"offerId": "618B53FE-9B99-428B-9745-F706AEAF3979",
"durableOfferId": "69C67983-CF78-4102-83F6-3E5FD246864F",
"offerName": "SHAREPOINT ONLINE (PLAN 2)",
"domainName": "TStagin1Cust190.onmicrosoft.com",
"billingCycleType": "MONTHLY",
"subscriptionName": "SHAREPOINT ONLINE (PLAN 2)",
"subscriptionDescription": "SHAREPOINT ONLINE (PLAN 2)",
"subscriptionStartDate": "2017-05-13T00:00:00",
"subscriptionEndDate": "2018-06-10T00:00:00",
"chargeStartDate": "2017-05-13T00:00:00",
"chargeEndDate": "2017-06-09T00:00:00",
"chargeType": "New",
"unitPrice": 0.0,
"quantity": 1,
"amount": 0.0,
"totalOtherDiscount": 0.0,
"subtotal": 0.0,
"tax": 0.0,
"totalForCustomer": 0.0,
"currency": "USD",
"invoiceLineItemType": "billing_line_items",
"billingProvider": "office",
"attributes": {
"objectType": "LicenseBasedLineItem"
}
}
],
"links": {
"self": {
"uri": "/invoices/1234000000/lineitems?provider=Office&nvoicelineitemtype=BillingLineItems&size=2&offset=0",
"method": "GET",
"headers": []
},
"next": {
"uri": "/invoices/1234000000/lineitems?provider=Office&nvoicelineitemtype=BillingLineItems&size=2&offset=",
"method": "GET",
"headers": []
}
},
"attributes": {
"objectType": "Collection"
}
}
Пример ответа на запрос 2
В следующем примере подробные сведения приведены ниже.
- BillingProvider: Azure
- InvoiceLineItemType: BillingLineItems
Пример запроса 2
GET https://api.partnercenter.microsoft.com/v1/invoices/1234000000/lineitems?provider=Azure&invoicelineitemtype=BillingLineItems&size=2&offset=0 HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 1eb2ecb8-37af-45f4-a1a1-358de3ca2b9e
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
MS-PartnerCenter-Application: Partner Center .NET SDK Samples
Host: api.partnercenter.microsoft.com
Пример ответа 2
HTTP/1.1 200 OK
Content-Length: 2484
Content-Type: application/json; charset=utf-8
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 1eb2ecb8-37af-45f4-a1a1-358de3ca2b9e
MS-CV: bpqyomePDUqrSSYC.0
MS-ServerId: 202010406
Date: Thu, 07 Sep 2017 23:31:09 GMT
{
"totalCount": 2,
"items": [
{
"detailLineItemId": 1,
"sku": "7UD-00001",
"includedQuantity": 0,
"overageQuantity": 745,
"listPrice": 0.085,
"currency": "USD",
"pretaxCharges": 63.33,
"taxAmount": 6.34,
"postTaxTotal": 69.67,
"pretaxEffectiveRate": 0.08500671,
"postTaxEffectiveRate": 0.09351677,
"chargeType": "Assess usage fee for current cycle",
"invoiceLineItemType": "billing_line_items",
"partnerId": "1F5CCB06-8E36-4A74-A74C-FCAA9E000000",
"partnerName": "TEST_TEST_Big foot consulting",
"partnerBillableAccountId": "1010578050",
"customerId": "65726577-c208-40fd-9735-8c85ac000000",
"domainName": "600test.onmicrosoft.com",
"customerCompanyName": "601 tests",
"mpnId": 4390934,
"tier2MpnId": -1,
"invoiceNumber": "1234000000",
"subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"subscriptionName": "Microsoft Azure",
"subscriptionDescription": "Microsoft Azure",
"billingCycleType": "Monthly",
"orderId": "568297985427000000",
"serviceName": "Azure App Service",
"serviceType": "Standard Plan",
"resourceGuid": "505db374-df8a-44df-9d8c-13c14b61dee1",
"resourceName": "S1",
"region": "",
"consumedQuantity": 745,
"chargeStartDate": "2019-08-02T00:00:00",
"chargeEndDate": "2019-09-01T00:00:00",
"unit": "1 Hour",
"billingProvider": "azure",
"attributes": {
"objectType": "UsageBasedLineItem"
}
},
{
"detailLineItemId": 1,
"sku": "7UD-00001",
"includedQuantity": 0,
"overageQuantity": 0.000882,
"listPrice": 0.0383,
"currency": "USD",
"pretaxCharges": 0,
"taxAmount": 0,
"postTaxTotal": 0,
"pretaxEffectiveRate": 0,
"postTaxEffectiveRate": 0,
"chargeType": "Assess usage fee for current cycle",
"invoiceLineItemType": "billing_line_items",
"partnerId": "1F5CCB06-8E36-4A74-A74C-FCAA9E87E26A",
"partnerName": "TEST_TEST_Big foot consulting",
"partnerBillableAccountId": "1010578050",
"customerId": "65726577-c208-40fd-9735-8c85ac9cac68",
"domainName": "600test.onmicrosoft.com",
"customerCompanyName": "601 tests",
"mpnId": 4390934,
"tier2MpnId": -1,
"invoiceNumber": "1234000000",
"subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"subscriptionName": "Microsoft Azure",
"subscriptionDescription": "Microsoft Azure",
"billingCycleType": "Monthly",
"orderId": "568297985427000000",
"serviceName": "Storage",
"serviceType": "Standard Page Blob",
"resourceGuid": "d23a5753-ff85-4ddf-af28-8cc5cf2d3882",
"resourceName": "LRS Data Stored",
"region": "",
"consumedQuantity": 0.000882,
"chargeStartDate": "2019-08-02T00:00:00",
"chargeEndDate": "2019-09-01T00:00:00",
"unit": "1 GB/Month",
"billingProvider": "azure",
"attributes": {
"objectType": "UsageBasedLineItem"
}
}
],
"links": {
"self": {
"uri": "/invoices/1234000000/lineitems?provider=Azure&invoicelineitemtype=BillingLineItems&size=2&offset=0",
"method": "GET",
"headers": []
},
"next": {
"uri": "/invoices/1234000000/lineitems?provider=Azure&invoicelineitemtype=BillingLineItems&size=2&offset=2",
"method": "GET",
"headers": []
}
},
"attributes": {
"objectType": "Collection"
}
}
Пример ответа на запрос 3
В следующем примере подробные сведения приведены ниже.
- BillingProvider: Azure
- InvoiceLineItemType: UsageLineItems
Пример запроса 3
GET https://api.partnercenter.microsoft.com/v1/invoices/1234000000/lineitems?provider=Azure&invoicelineitemtype=UsageLineItems&size=2&offset=0 HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 1eb2ecb8-37af-45f4-a1a1-358de3ca2b9e
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
MS-PartnerCenter-Application: Partner Center .NET SDK Samples
Host: api.partnercenter.microsoft.com
Пример ответа 3
HTTP/1.1 200 OK
Content-Length: 2484
Content-Type: application/json; charset=utf-8
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 1eb2ecb8-37af-45f4-a1a1-358de3ca2b9e
MS-CV: bpqyomePDUqrSSYC.0
MS-ServerId: 202010406
Date: Thu, 07 Sep 2017 23:31:09 GMT
{
"totalCount": 2,
"items": [
{
"customerBillableAccount": "1439508127",
"usageDate": "2019-08-05T00:00:00",
"invoiceLineItemType": "usage_line_items",
"partnerId": "1F5CCB06-8E36-4A74-A74C-FCAA9E000000",
"partnerName": "TEST_TEST_BIG FOOT CONSULTING",
"partnerBillableAccountId": "1010578050",
"customerId": "9E9B71BA-3442-458B-B519-E1CCF72FBB54",
"domainName": "test600.onmicrosoft.com",
"customerCompanyName": "600 TEST",
"mpnId": 4390934,
"tier2MpnId": -1,
"invoiceNumber": "1234000000",
"subscriptionId": "bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f",
"subscriptionName": "MICROSOFT AZURE",
"subscriptionDescription": "MICROSOFT AZURE",
"billingCycleType": "MONTHLY",
"orderId": "568297985577171353",
"serviceName": "STORAGE",
"serviceType": "STANDARD PAGE BLOB",
"resourceGuid": "9CC63CF8-6593-410A-B0E7-26A4EF71E8B3",
"resourceName": "DISK DELETE OPERATIONS",
"region": "",
"consumedQuantity": 2.9616,
"chargeStartDate": "2019-08-05T00:00:00",
"chargeEndDate": "2019-09-04T00:00:00",
"unit": "10K",
"billingProvider": "azure",
"attributes": {
"objectType": "DailyUsageLineItem"
}
},
{
"customerBillableAccount": "1307536861",
"usageDate": "2019-08-10T00:00:00",
"invoiceLineItemType": "usage_line_items",
"partnerId": "1F5CCB06-8E36-4A74-A74C-FCAA9E000000",
"partnerName": "TEST_TEST_BIG FOOT CONSULTING",
"partnerBillableAccountId": "1010578050",
"customerId": "EB53B7BD-267E-440E-B3C0-8F0B40000000",
"domainName": "brandontest.onmicrosoft.com",
"customerCompanyName": "BRANDON'S TEST",
"mpnId": 4390934,
"tier2MpnId": -1,
"invoiceNumber": "1234000000",
"subscriptionId": "cccc2c2c-dd3d-ee4e-ff5f-aaaaaa6a6a6a",
"subscriptionName": "MICROSOFT AZURE",
"subscriptionDescription": "MICROSOFT AZURE",
"billingCycleType": "MONTHLY",
"orderId": "568297985605838583",
"serviceName": "VIRTUAL MACHINES",
"serviceType": "D/DS SERIES WINDOWS",
"resourceGuid": "62C64B6C-4033-4E20-AB33-9E81271AC12A",
"resourceName": "D1/DS1",
"region": "US WEST",
"consumedQuantity": 24,
"chargeStartDate": "2019-08-05T00:00:00",
"chargeEndDate": "2019-09-04T00:00:00",
"unit": "1 HOUR",
"billingProvider": "azure",
"attributes": {
"objectType": "DailyUsageLineItem"
}
}
],
"links": {
"self": {
"uri": "/invoices/1234000000/lineitems?provider=Azure&invoicelineitemtype=UsageLineItems&size=2&offset=0",
"method": "GET",
"headers": []
},
"next": {
"uri": "/invoices/1234000000/lineitems?provider=Azure&invoicelineitemtype=UsageLineItems&size=2&offset=2",
"method": "GET",
"headers": []
}
},
"attributes": {
"objectType": "Collection"
}
}
Пример ответа запроса 4
В следующем примере подробные сведения приведены ниже.
- BillingProvider: OneTime
- InvoiceLineItemType: BillingLineItems
Пример запроса 4
GET https://api.partnercenter.microsoft.com/v1/invoices/G000024135/lineitems/OneTime/BillingLineItems?size=2&offset=0 HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 1eb2ecb8-37af-45f4-a1a1-358de3ca2b9e
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
MS-PartnerCenter-Application: Partner Center .NET SDK Samples
Host: api.partnercenter.microsoft.com
Пример ответа 4
HTTP/1.1 200 OK
Content-Length: 2484
Content-Type: application/json; charset=utf-8
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 1eb2ecb8-37af-45f4-a1a1-358de3ca2b9e
MS-CV: bpqyomePDUqrSSYC.0
MS-ServerId: 202010406
Date: Thu, 07 Sep 2017 23:31:09 GMT
{
"continuationToken": "d19617b8-fbe5-4684-a5d8-0230972fb0cf,0705c4a9-39f7-4261-ba6d-53e24a9ce47d_a4ayc/80/OGda4BO/1o/V0etpOqiLx1JwB5S3beHW0s=,0d81c700-98b4-4b13-9129-ffd5620f72e7",
{
"totalCount": 3,
"items": [
{
"partnerId": "934f3416-bc2f-47f3-b492-77e517d4e572",
"customerId": "c139c4bf-2e8b-4ab5-8bed-d9f50dcca7a2",
"customerName": "Test_Test_Office R2 Reduce Seats Validation",
"customerDomainName": "testcustomerr2t2reduce.onmicrosoft.com",
"customerCountry": "US",
"invoiceNumber": "G000773581",
"mpnId": "5357564",
"resellerMpnId": "4649221",
"orderId": "94e858b6d855",
"orderDate": "2021-05-20T18:30:06.6045692Z",
"productId": "CFQ7TTC0LH0R",
"skuId": "0002",
"availabilityId": "CFQ7TTC0K5RQ",
"productName": "Microsoft 365 Phone System - Virtual User",
"skuName": "Microsoft 365 Phone System - Virtual User",
"productQualifiers": [
"AddOn",
"Trial"
],
"chargeType": "new",
"unitPrice": "0",
"effectiveUnitPrice": "0",
"unitType": "",
"quantity": "25",
"subtotal": "0",
"taxTotal": "0",
"totalForCustomer": "0",
"currency": "USD",
"publisherName": "Microsoft Corporation",
"publisherId": "",
"subscriptionDescription": "",
"subscriptionId": "dddd3d3d-ee4e-ff5f-aa6a-bbbbbb7b7b7b",
"subscriptionStartDate": "2021-05-20T00:00:00Z",
"subscriptionEndDate": "2021-06-19T00:00:00Z",
"chargeStartDate": "2021-05-20T00:00:00Z",
"chargeEndDate": "2021-06-19T00:00:00Z",
"termAndBillingCycle": "One-Month commitment for trial",
"alternateId": "94e858b6d855",
"referenceId": "0cf1202a-5b7d-4219-966e-93c637113708",
"priceAdjustmentDescription": "",
"discountDetails": "",
"pricingCurrency": "USD",
"pcToBCExchangeRate": "1",
"pcToBCExchangeRateDate": "2021-05-01T00:00:00",
"billableQuantity": "25",
"meterDescription": "",
"billingFrequency": "",
"reservationOrderId": "99f246cf-ed96-41b4-b0cd-0aa43eb1fe91",
"invoiceLineItemType": "billing_line_items",
"billingProvider": "one_time",
"promotionId": "",
"attributes": {
"objectType": "OneTimeInvoiceLineItem"
}
},
{
"partnerId": "934f3416-bc2f-47f3-b492-77e517d4e572",
"customerId": "835a59a7-3172-47b5-bdef-d9cc65f4d0e4",
"customerName": "TEST_TEST Test Promotions 01",
"customerDomainName": "kyletestpromos01.onmicrosoft.com",
"customerCountry": "US",
"invoiceNumber": "G000773581",
"mpnId": "5357564",
"resellerMpnId": "0",
"orderId": "5f9d52bb1408",
"orderDate": "2021-05-20T18:48:30.6168285Z",
"productId": "CFQ7TTC0HL8W",
"skuId": "0001",
"availabilityId": "CFQ7TTC0K59S",
"productName": "Power BI Premium Per User",
"skuName": "Power BI Premium Per User",
"productQualifiers": [],
"chargeType": "new",
"unitPrice": "16",
"effectiveUnitPrice": "14.4",
"unitType": "",
"quantity": "50",
"subtotal": "720",
"taxTotal": "73",
"totalForCustomer": "793",
"currency": "USD",
"publisherName": "Microsoft Corporation",
"publisherId": "",
"subscriptionDescription": "",
"subscriptionId": "eeee4efe-ff5f-aa6a-bb7b-cccccc8c8c8c",
"subscriptionStartDate": "2021-05-20T00:00:00Z",
"subscriptionEndDate": "2022-05-19T00:00:00Z",
"chargeStartDate": "2021-05-20T00:00:00Z",
"chargeEndDate": "2021-06-19T00:00:00Z",
"termAndBillingCycle": "One-Year commitment for monthly/yearly billing",
"alternateId": "5f9d52bb1408",
"referenceId": "28b535e0-68f4-40b5-84f7-8ed9241eb149",
"priceAdjustmentDescription": "[\"Price for given billing period\",\"You are getting a discount due to a pre-determined override.\",\"You are getting a discount for being a partner.\",\"You are getting a price guarantee for your price.\",\"Price for given term\"]",
"discountDetails": "",
"pricingCurrency": "USD",
"pcToBCExchangeRate": "1",
"pcToBCExchangeRateDate": "2021-05-01T00:00:00",
"billableQuantity": "50",
"meterDescription": "",
"billingFrequency": "Monthly",
"reservationOrderId": "8fdebb4a-7110-496e-9570-623e4c992797",
"invoiceLineItemType": "billing_line_items",
"billingProvider": "one_time",
"promotionId": "39NFJQT1X27N:0002:39NFJQT1Q5KL",
"attributes/objectType": "OneTimeInvoiceLineItem",
"attributes": {
"objectType": "OneTimeInvoiceLineItem"
}
},
{
"partnerId": "934f3416-bc2f-47f3-b492-77e517d4e572",
"customerId": "c139c4bf-2e8b-4ab5-8bed-d9f50dcca7a2",
"customerName": "Test_Test_Office R2 Reduce Seats Validation",
"customerDomainName": "testcustomerr2t2reduce.onmicrosoft.com",
"customerCountry": "US",
"invoiceNumber": "T000773581",
"mpnId": "1234567",
"resellerMpnId": 0,
"orderId": "HJVtMZMkgQ2miuCiNv0RSr51zQDans0m1",
"orderDate": "2019-02-04T17:59:52.9460102Z",
"productId": "DZH318Z0BXWC",
"skuId": "0002",
"availabilityId": "DZH318Z0BP8B",
"productName": "Test WAF-as-a-Service",
"skuName": "Test WaaS - Medium Plan",
"chargeType": "New",
"unitPrice": 820,
"effectiveUnitPrice": 820,
"unitType": "",
"quantity": 1,
"subtotal": 820,
"taxTotal": 0,
"totalForCustomer": 0,
"currency": "USD",
"publisherName": "Test Networks, Inc.",
"publisherId": "21223810",
"subscriptionDescription": "",
"subscriptionId": "ffff5f5f-aa6a-bb7b-cc8c-dddddd9d9d9d",
"subscriptionStartDate": "2019-02-01T00:00:00Z",
"subscriptionEndDate": "2020-01-31T00:00:00Z",
"chargeStartDate": "2019-02-04T09:22:40.1767993-08:00",
"chargeEndDate": "2019-03-03T09:22:40.1767993-08:00",
"termAndBillingCycle": "1 Year Subscription",
"alternateId": "123456ad566",
"priceAdjustmentDescription": "[\"15.0% Partner earned credit for services managed\"]",
"discountDetails": "",
"pricingCurrency": "USD",
"pcToBCExchangeRate": 1,
"pcToBCExchangeRateDate": "2019-08-01T00:00:00Z",
"billableQuantity": 3.1618,
"meterDescription": "Bandwidth - Data Transfer In (GB) - Zone 2",
"reservationOrderId": "883d475b-0000-1234-0000-8818752f1234",
"attributes": {
"objectType": "OneTimeInvoiceLineItem"
}
},
{
"partnerId": "6480d686-cfb4-424d-a945-6b9b9f4badc2",
"customerId": "org:9060d13d-c5ed-482e-b059-a15a38cbb28e",
"customerName": "recipientCustomerName",
"customerDomainName": "recipientCustomerDomain",
"customerCountry": "US",
"invoiceNumber": "1234000000",
"mpnId": "4870137",
"resellerMpnId": 0,
"orderId": "VdqkP11Bu4DlcjP5rLeQabcdefg-1234",
"orderDate": "2021-01-29T19:50:13.9869095Z",
"productId": "CFQ7TTC01234",
"skuId": "0001",
"availabilityId": "CFQ7TTC0ABCD",
"productName": "Office 365 E3",
"skuName": "Office 365 E3",
"chargeType": "new",
"unitPrice": 16,
"effectiveUnitPrice": 16,
"unitType": "",
"quantity": 1,
"subtotal": 16,
"taxTotal": 1.61,
"totalForCustomer": 17.61,
"currency": "USD",
"publisherName": "Microsoft Corporation",
"publisherId": "",
"subscriptionDescription": "",
"subscriptionId": "aaaa6a6a-bb7b-cc8c-dd9d-eeeeee0e0e0e",
"chargeStartDate": "2021-01-29T00:00:00Z",
"chargeEndDate": "2021-02-27T00:00:00Z",
"termAndBillingCycle": "One-Year commitment for monthly/yearly billing",
"priceAdjustmentDescription": "[\"1 month billing/",\"You are getting a discount for being a partner.\",\"You are getting a price guarantee for your price.\",\"Yearly Duration\"]",
"discountDetails": "",
"pricingCurrency": "USD",
"pcToBCExchangeRate": 1,
"pcToBCExchangeRateDate": "0001-01-01T00:00:00",
"billableQuantity": 1,
"meterDescription": "",
"billingFrequency": "Monthly",
"reservationOrderId": "e770c049-89c7-4ec1-b366-123456789000",
"invoiceLineItemType": "billing_line_items",
"billingProvider": "one_time" ,
"attributes": {
"objectType": "OneTimeInvoiceLineItem"
}
}
],
"links": {
"self": {
"uri": "/invoices/G000773581/lineitems?provider=OneTime&nvoicelineitemtype=BillingLineItems&size=2",
"method": "GET",
"headers": []
},
"next": {
"uri": "/invoices/G000773581/lineitems?provider=OneTime&nvoicelineitemtype=BillingLineItems&size=2?seekOperation=Next",
"method": "GET",
"headers": [
{
"key": "MS-ContinuationToken",
"value": "d19617b8-fbe5-4684-a5d8-0230972fb0cf,0705c4a9-39f7-4261-ba6d-53e24a9ce47d_a4ayc/80/OGda4BO/1o/V0etpOqiLx1JwB5S3beHW0s=,0d81c700-98b4-4b13-9129-ffd5620f72e7"
}
]
}
},
"attributes": {
"objectType": "Collection"
}
}
Пример ответа на запрос 5
В следующем примере выполняется разбиение по страницам с помощью маркера продолжения. Ниже перечислены этапы.
- BillingProvider: OneTime
- InvoiceLineItemType: BillingLineItems
- SeekOperation: Далее
Пример запроса 5
GET https://api.partnercenter.microsoft.com/v1/invoices/G000024135/lineitems/OneTime/BillingLineItems?seekOperation=Next HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-ContinuationToken: d19617b8-fbe5-4684-a5d8-0230972fb0cf,0705c4a9-39f7-4261-ba6d-53e24a9ce47d_a4ayc/80/OGda4BO/1o/V0etpOqiLx1JwB5S3beHW0s=,0d81c700-98b4-4b13-9129-ffd5620f72e7
MS-RequestId: 1eb2ecb8-37af-45f4-a1a1-358de3ca2b9e
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
MS-PartnerCenter-Application: Partner Center .NET SDK Samples
Host: api.partnercenter.microsoft.com
Пример ответа 5
HTTP/1.1 200 OK
Content-Length: 2484
Content-Type: application/json; charset=utf-8
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 1eb2ecb8-37af-45f4-a1a1-358de3ca2b9e
MS-CV: bpqyomePDUqrSSYC.0
MS-ServerId: 202010406
Date: Thu, 07 Sep 2017 23:31:09 GMT
{
"totalCount": 2,
"items": [
{
"partnerId": "934f3416-bc2f-47f3-b492-77e517d4e572",
"customerId": "c139c4bf-2e8b-4ab5-8bed-d9f50dcca7a2",
"customerName": "Test_Test_Office R2 Reduce Seats Validation",
"customerDomainName": "testcustomerr2t2reduce.onmicrosoft.com",
"customerCountry": "US",
"invoiceNumber": "G000773581",
"mpnId": "5357564",
"resellerMpnId": "4649221",
"orderId": "94e858b6d855",
"orderDate": "2021-05-20T18:30:06.6045692Z",
"productId": "CFQ7TTC0LH0R",
"skuId": "0002",
"availabilityId": "CFQ7TTC0K5RQ",
"productName": "Microsoft 365 Phone System - Virtual User",
"skuName": "Microsoft 365 Phone System - Virtual User",
"productQualifiers": [
"AddOn",
"Trial"
],
"chargeType": "new",
"unitPrice": "0",
"effectiveUnitPrice": "0",
"unitType": "",
"quantity": "25",
"subtotal": "0",
"taxTotal": "0",
"totalForCustomer": "0",
"currency": "USD",
"publisherName": "Microsoft Corporation",
"publisherId": "",
"subscriptionDescription": "",
"subscriptionId": "dddd3d3d-ee4e-ff5f-aa6a-bbbbbb7b7b7b",
"subscriptionStartDate": "2021-05-20T00:00:00Z",
"subscriptionEndDate": "2021-06-19T00:00:00Z",
"chargeStartDate": "2021-05-20T00:00:00Z",
"chargeEndDate": "2021-06-19T00:00:00Z",
"termAndBillingCycle": "One-Month commitment for trial",
"alternateId": "94e858b6d855",
"referenceId": "0cf1202a-5b7d-4219-966e-93c637113708",
"priceAdjustmentDescription": "",
"discountDetails": "",
"pricingCurrency": "USD",
"pcToBCExchangeRate": "1",
"pcToBCExchangeRateDate": "2021-05-01T00:00:00",
"billableQuantity": "25",
"meterDescription": "",
"billingFrequency": "",
"reservationOrderId": "99f246cf-ed96-41b4-b0cd-0aa43eb1fe91",
"invoiceLineItemType": "billing_line_items",
"billingProvider": "one_time",
"promotionId": "",
"attributes": {
"objectType": "OneTimeInvoiceLineItem"
}
},
{
"partnerId": "934f3416-bc2f-47f3-b492-77e517d4e572",
"customerId": "835a59a7-3172-47b5-bdef-d9cc65f4d0e4",
"customerName": "TEST_TEST Test Promotions 01",
"customerDomainName": "kyletestpromos01.onmicrosoft.com",
"customerCountry": "US",
"invoiceNumber": "G000773581",
"mpnId": "5357564",
"resellerMpnId": "0",
"orderId": "5f9d52bb1408",
"orderDate": "2021-05-20T18:48:30.6168285Z",
"productId": "CFQ7TTC0HL8W",
"skuId": "0001",
"availabilityId": "CFQ7TTC0K59S",
"productName": "Power BI Premium Per User",
"skuName": "Power BI Premium Per User",
"productQualifiers": [],
"chargeType": "new",
"unitPrice": "16",
"effectiveUnitPrice": "14.4",
"unitType": "",
"quantity": "50",
"subtotal": "720",
"taxTotal": "73",
"totalForCustomer": "793",
"currency": "USD",
"publisherName": "Microsoft Corporation",
"publisherId": "",
"subscriptionDescription": "",
"subscriptionId": "eeee4efe-ff5f-aa6a-bb7b-cccccc8c8c8c",
"subscriptionStartDate": "2021-05-20T00:00:00Z",
"subscriptionEndDate": "2022-05-19T00:00:00Z",
"chargeStartDate": "2021-05-20T00:00:00Z",
"chargeEndDate": "2021-06-19T00:00:00Z",
"termAndBillingCycle": "One-Year commitment for monthly/yearly billing",
"alternateId": "5f9d52bb1408",
"referenceId": "28b535e0-68f4-40b5-84f7-8ed9241eb149",
"priceAdjustmentDescription": "[\"Price for given billing period\",\"You are getting a discount due to a pre-determined override.\",\"You are getting a discount for being a partner.\",\"You are getting a price guarantee for your price.\",\"Price for given term\"]",
"discountDetails": "",
"pricingCurrency": "USD",
"pcToBCExchangeRate": "1",
"pcToBCExchangeRateDate": "2021-05-01T00:00:00",
"billableQuantity": "50",
"meterDescription": "",
"billingFrequency": "Monthly",
"reservationOrderId": "8fdebb4a-7110-496e-9570-623e4c992797",
"invoiceLineItemType": "billing_line_items",
"billingProvider": "one_time",
"promotionId": "39NFJQT1X27N:0002:39NFJQT1Q5KL",
"attributes/objectType": "OneTimeInvoiceLineItem",
"attributes": {
"objectType": "OneTimeInvoiceLineItem"
}
},
{
"partnerId": "934f3416-bc2f-47f3-b492-77e517d4e572",
"customerId": "c139c4bf-2e8b-4ab5-8bed-d9f50dcca7a2",
"customerName": "Test_Test_Office R2 Reduce Seats Validation",
"customerDomainName": "testcustomerr2t2reduce.onmicrosoft.com",
"customerCountry": "US",
"invoiceNumber": "T000773581",
"mpnId": "1234567",
"resellerMpnId": 0,
"orderId": "HJVtMZMkgQ2miuCiNv0RSr51zQDans0m1",
"orderDate": "2019-02-04T17:59:52.9460102Z",
"productId": "DZH318Z0BXWC",
"skuId": "0002",
"availabilityId": "DZH318Z0BP8B",
"productName": "Test WAF-as-a-Service",
"skuName": "Test WaaS - Medium Plan",
"chargeType": "New",
"unitPrice": 820,
"effectiveUnitPrice": 820,
"unitType": "",
"quantity": 1,
"subtotal": 820,
"taxTotal": 0,
"totalForCustomer": 0,
"currency": "USD",
"publisherName": "Test Networks, Inc.",
"publisherId": "21223810",
"subscriptionDescription": "",
"subscriptionId": "ffff5f5f-aa6a-bb7b-cc8c-dddddd9d9d9d",
"subscriptionStartDate": "2019-02-01T00:00:00Z",
"subscriptionEndDate": "2020-01-31T00:00:00Z",
"chargeStartDate": "2019-02-04T09:22:40.1767993-08:00",
"chargeEndDate": "2019-03-03T09:22:40.1767993-08:00",
"termAndBillingCycle": "1 Year Subscription",
"alternateId": "123456ad566",
"priceAdjustmentDescription": "[\"15.0% Partner earned credit for services managed\"]",
"discountDetails": "",
"pricingCurrency": "USD",
"pcToBCExchangeRate": 1,
"pcToBCExchangeRateDate": "2019-08-01T00:00:00Z",
"billableQuantity": 3.1618,
"meterDescription": "Bandwidth - Data Transfer In (GB) - Zone 2",
"reservationOrderId": "883d475b-0000-1234-0000-8818752f1234",
"attributes": {
"objectType": "OneTimeInvoiceLineItem"
}
},
{
"partnerId": "6480d686-cfb4-424d-a945-6b9b9f4badc2",
"customerId": "org:9060d13d-c5ed-482e-b059-a15a38cbb28e",
"customerName": "recipientCustomerName",
"customerDomainName": "recipientCustomerDomain",
"customerCountry": "US",
"invoiceNumber": "1234000000",
"mpnId": "4870137",
"resellerMpnId": 0,
"orderId": "VdqkP11Bu4DlcjP5rLeQabcdefg-1234",
"orderDate": "2021-01-29T19:50:13.9869095Z",
"productId": "CFQ7TTC01234",
"skuId": "0001",
"availabilityId": "CFQ7TTC0ABCD",
"productName": "Office 365 E3",
"skuName": "Office 365 E3",
"chargeType": "new",
"unitPrice": 16,
"effectiveUnitPrice": 16,
"unitType": "",
"quantity": 1,
"subtotal": 16,
"taxTotal": 1.61,
"totalForCustomer": 17.61,
"currency": "USD",
"publisherName": "Microsoft Corporation",
"publisherId": "",
"subscriptionDescription": "",
"subscriptionId": "aaaa6a6a-bb7b-cc8c-dd9d-eeeeee0e0e0e",
"chargeStartDate": "2021-01-29T00:00:00Z",
"chargeEndDate": "2021-02-27T00:00:00Z",
"termAndBillingCycle": "One-Year commitment for monthly/yearly billing",
"priceAdjustmentDescription": "[\"1 month billing/",\"You are getting a discount for being a partner.\",\"You are getting a price guarantee for your price.\",\"Yearly Duration\"]",
"discountDetails": "",
"pricingCurrency": "USD",
"pcToBCExchangeRate": 1,
"pcToBCExchangeRateDate": "0001-01-01T00:00:00",
"billableQuantity": 1,
"meterDescription": "",
"billingFrequency": "Monthly",
"reservationOrderId": "e770c049-89c7-4ec1-b366-123456789000",
"invoiceLineItemType": "billing_line_items",
"billingProvider": "one_time" ,
"attributes": {
"objectType": "OneTimeInvoiceLineItem"
}
}
],
"links": {
"self": {
"uri": "/invoices/G000773581/lineitems?provider=OneTime&nvoicelineitemtype=BillingLineItems&size=2",
"method": "GET",
"headers": []
}
},
"attributes": {
"objectType": "Collection"
}
}