Принятие передачи подписок для клиента с помощью REST API Центра партнеров
В этой статье описывается, как использовать REST API в Центре партнеров для принятия передачи подписок для клиента. В этом примере приведены синтаксис REST, заголовки и ответы REST.
Примечание.
Этот раздел относится только к традиционным службам на основе лицензий, а не к новым коммерческому интерфейсу. Дополнительные сведения о передаче новых подписок на основе лицензий на коммерческую торговлю см. в новой статье о передаче коммерческой торговли.
Соответствующие роли: агент по администрированию
Необходимые компоненты
Учетные данные, описанные в статье о проверке подлинности в Центре партнеров. Этот сценарий поддерживает проверку подлинности с помощью автономных учетных данных приложения и приложения и пользователя.
Идентификатор клиента (
customer-tenant-id
). Если вы не знаете идентификатор клиента, его можно найти в Центре партнеров, выбрав рабочую область "Клиенты" , затем клиент из списка клиентов, а затем учетная запись. На странице учетной записи клиента найдите Идентификатор Майкрософт в разделе Сведения об учетной записи клиента. Идентификатор Майкрософт совпадает с идентификатором клиента (customer-tenant-id
).Идентификатор передачи для существующей передачи.
Запрос REST
Синтаксис запроса
Способ | URI запроса |
---|---|
POST | {baseURL}/v1/customers/{customer-id}/transfer/{transfer-id}/accept HTTP/1.1 |
Параметр универсального кода ресурса
Используйте следующий параметр пути, чтобы определить клиента и указать перенос, который будет принят.
Имя. | Type | Обязательно | Описание |
---|---|---|---|
customer-id | строка | Да | Идентификатор guid, отформатированный идентификатором клиента, идентифицирующий клиента. |
transfer-id | строка | Да | Идентификатор guid, отформатированный идентификатор передачи, определяющий передачу. |
Заголовки запросов
Дополнительные сведения см. в статье о заголовках REST Центра партнеров.
Пример запроса
POST /v1/customers/d6bf25b7-e0a8-4f2d-a31b-97b55cfc774d/transfers/aa2bddb6-9cc8-4949-80fe-a37d5e0a13ba/accept HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 8389053b-731c-4261-9899-1583d7859153
X-Locale: en-US
Content-Type: application/json
Host: api.partnercenter.microsoft.com
Content-Length: 0
Ответ REST
В случае успешного выполнения этот метод возвращает заполненный ресурс TransferSubmitResult в тексте ответа.
Коды успешного выполнения и ошибок в ответе
Каждый ответ сопровождается кодом состояния HTTP, обозначающим успешное или неудачное выполнение, и дополнительными сведениями для отладки. Используйте средство трассировки сети, чтобы просматривать этот код, тип ошибки и дополнительные параметры. См. полный список кодов ошибок.
Пример ответа
HTTP/1.1 200 OK
Content-Length: 3389
Content-Type: application/json; charset=utf-8
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 8389053b-731c-4261-9899-1583d7859153
X-Locale: en-US
Date: Wed, 25 Mar 2020 19:13:06 GMT
{
"orders": [
{
"id": "21b92393-ffce-4bc7-87c5-62cfa897d8f9",
"alternateId": "21b92393-ffce-4bc7-87c5-62cfa897d8f9",
"referenceCustomerId": "b67f0b00-f9e8-4c57-bcb5-0b8b95c6ccf0",
"billingCycle": "annual",
"currencyCode": "USD",
"lineItems": [
{
"lineItemNumber": 0,
"offerId": "5344C201-3099-44E5-B333-C3EB0401EDE0",
"termDuration": "P1Y",
"transactionType": "New",
"friendlyName": "Dynamics 365 Customer Engagement Plan (36 mo)",
"quantity": 1,
"partnerIdOnRecord": "5139005",
"links": {
}
}
],
"creationDate": "2020-03-25T22:24:23.183+00:00",
"status": "completed",
"transactionType": "UserPurchase",
"links": {
"self": {
"uri": "/customers/b67f0b00-f9e8-4c57-bcb5-0b8b95c6ccf0/orders/21b92393-ffce-4bc7-87c5-62cfa897d8f9",
"method": "GET",
"headers": [ ]
},
"patchOperation": {
"uri": "/customers/b67f0b00-f9e8-4c57-bcb5-0b8b95c6ccf0/orders/21b92393-ffce-4bc7-87c5-62cfa897d8f9",
"method": "PATCH",
"headers": [ ]
}
},
"attributes": {
"etag": "eyJpZCI6IjIxYjkyMzkzLWZmY2UtNGJjNy04N2M1LTYyY2ZhODk3ZDhmOSIsInZlcnNpb24iOjF9",
"objectType": "Order"
}
},
{
"id": "7414b8ea-c167-4cc4-bc8e-b43efc177a46",
"alternateId": "7414b8ea-c167-4cc4-bc8e-b43efc177a46",
"referenceCustomerId": "b67f0b00-f9e8-4c57-bcb5-0b8b95c6ccf0",
"billingCycle": "annual",
"currencyCode": "USD",
"lineItems": [
{
"lineItemNumber": 0,
"offerId": "1A90EE13-2CB4-4785-BB0F-542813F00A37",
"termDuration": "P1Y",
"transactionType": "New",
"friendlyName": "Dynamics 365 Business Central Essential",
"quantity": 1,
"partnerIdOnRecord": "5139005",
"links": {
}
}
],
"creationDate": "2020-03-25T22:24:34.59+00:00",
"status": "completed",
"transactionType": "UserPurchase",
"links": {
"self": {
"uri": "/customers/b67f0b00-f9e8-4c57-bcb5-0b8b95c6ccf0/orders/7414b8ea-c167-4cc4-bc8e-b43efc177a46",
"method": "GET",
"headers": [ ]
},
"patchOperation": {
"uri": "/customers/b67f0b00-f9e8-4c57-bcb5-0b8b95c6ccf0/orders/7414b8ea-c167-4cc4-bc8e-b43efc177a46",
"method": "PATCH",
"headers": [ ]
}
},
"attributes": {
"etag": "eyJpZCI6Ijc0MTRiOGVhLWMxNjctNGNjNC1iYzhlLWI0M2VmYzE3N2E0NiIsInZlcnNpb24iOjF9",
"objectType": "Order"
}
}
],
"transferErrors": [
{
"transferGroupId": "1",
"lineItems": [
{
"id": 1,
"subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"entitlementId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"offerId": "A4179D30-CC09-49F0-977E-DC2CB70B874F",
"friendlyName": "Project Online Essentials",
"quantity": 1,
"transferGroupId": "1",
"addonItems": [ ],
"partnerIdOnRecord": "5139005",
"billingCycle": "annual",
"sourceSubscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"
}
],
"code": 900103,
"description": "Subscription SyncState must be SyncComplete for the Subscription to be a source in a Subscription Ownership Transfer. Subscription: aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e, current state: None",
"attributes": {
"objectType": "TransferError"
}
}
],
"attributes": {
"objectType": "TransferSubmitResult"
}
}