Приостановка подписки
Область применения: Центр партнеров | Центр партнеров, управляемый 21Vianet | Центр партнеров для Microsoft Cloud for US Government
Приостанавливает ресурс подписки, соответствующий идентификатору клиента и подписки из-за мошенничества или неплатежности.
В Центре партнеров эта операция может выполняться путем первого выбора клиента. Затем выберите подписку под вопросом, которую вы хотите переименовать. Чтобы завершить работу, нажмите кнопку "Приостановлено ", а затем нажмите кнопку "Отправить".
Необходимые компоненты
Учетные данные, описанные в статье о проверке подлинности в Центре партнеров. Этот сценарий поддерживает проверку подлинности с помощью автономных учетных данных приложения и приложения и пользователя.
Идентификатор клиента (
customer-tenant-id
). Если вы не знаете идентификатор клиента, его можно найти в Центре партнеров, выбрав рабочую область "Клиенты" , затем клиент из списка клиентов, а затем учетная запись. На странице учетной записи клиента найдите Идентификатор Майкрософт в разделе Сведения об учетной записи клиента. Идентификатор Майкрософт совпадает с идентификатором клиента (customer-tenant-id
).Идентификатор подписки.
C#
Чтобы приостановить подписку клиента, сначала получите подписку, а затем измените свойство состояния подписки. Дополнительные сведения о кодах состояния см. в статье [SubscriptionStatus enumeration/dotnet/api/microsoft.store.partnercenter.models.subscriptions.subscriptionstatus). После внесения изменений используйте коллекцию IAggregatePartner.Customers и вызовите метод ById(). Затем вызовите свойство Subscriptions , за которым следует метод ById( ). Затем выполните вызов метода Patch( ).
// IAggregatePartner partnerOperations;
// var selectedCustomerId as string;
// Subscription selectedSubscription;
updatedSubscription = partnerOperations.Customers.ById(selectedCustomerId).Subscriptions.ById(selectedSubscription.Id).Patch(
new Subscription()
{
Status = SubscriptionStatus.Suspended
});
Пример: тестовое приложение консоли. Проект: класс PartnerSDK.FeatureSample: UpdateSubscription.cs
Запрос REST
Синтаксис запроса
Способ | URI запроса |
---|---|
PATCH | {baseURL}/v1/customers/{customer-tenant-id}/subscriptions/{id-for-subscription} HTTP/1.1 |
Параметр универсального кода ресурса
В этой таблице перечислены необходимые параметры запроса для приостановки подписки.
Имя. | Type | Обязательно | Описание |
---|---|---|---|
customer-tenant-id | guid | Y | GUID, соответствующий клиенту. |
id-for-subscription | guid | Y | GUID, соответствующий подписке. |
Заголовки запросов
Дополнительные сведения см. в статье о заголовках REST Центра партнеров.
Текст запроса
В тексте запроса нужно указать полный ресурс Subscription. Убедитесь, что свойство Status было обновлено.
Пример запроса
PATCH https://api.partnercenter.microsoft.com/v1/customers/<customer-tenant-id>/subscriptions/<id-for-subscription> HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: ca7c39f7-1a80-43bc-90d8-ee7d1cad3831
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
If-Match: <etag>
Content-Type: application/json
Content-Length: 1029
Expect: 100-continue
Connection: Keep-Alive
{
"Id": "83ef9d05-4169-4ef9-9657-0e86b1eab1de",
"FriendlyName": "nickname",
"Quantity": 2,
"UnitType": "none",
"ParentSubscriptionId": null,
"CreationDate": "2015-11-25T06:41:12Z",
"EffectiveStartDate": "2015-11-24T08:00:00Z",
"CommitmentEndDate": "2016-12-12T08:00:00Z",
"Status": "suspended",
"AutoRenewEnabled": false,
"BillingType": "none",
"PartnerId": null,
"ContractType": "subscription",
"OrderId": "6183db3d-6318-4e52-877e-25806e4971be",
"Attributes": {
"Etag": "<etag>",
"ObjectType": "Subscription"
}
}
Ответ REST
В случае успешного выполнения этот метод возвращает обновленные свойства ресурса подписки в тексте ответа.
Коды успешного выполнения и ошибок в ответе
Каждый ответ сопровождается кодом состояния HTTP, обозначающим успешное или неудачное выполнение, и дополнительными сведениями для отладки. Используйте средство трассировки сети, чтобы просматривать этот код, тип ошибки и дополнительные параметры. См. полный список кодов ошибок.
Пример ответа
PATCH https://api.partnercenter.microsoft.com/v1/customers/<customer-tenant-id>/subscriptions/<subscriptionID> HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-Contract-Version: v1
MS-RequestId: ca7c39f7-1a80-43bc-90d8-ee7d1cad3831
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
Content-Type: application/json
Content-Length: 1029
Expect: 100-continue
Connection: Keep-Alive
{
"Id": "83ef9d05-4169-4ef9-9657-0e86b1eab1de",
"FriendlyName": "nickname",
"Quantity": 2,
"UnitType": "none",
"ParentSubscriptionId": null,
"CreationDate": "2015-11-25T06:41:12Z",
"EffectiveStartDate": "2015-11-24T08:00:00Z",
"CommitmentEndDate": "2016-12-12T08:00:00Z",
"Status": "suspended",
"AutoRenewEnabled": false,
"BillingType": "none",
"PartnerId": null,
"ContractType": "subscription",
"Links": {
"Offer": {
"Uri": "/v1/offers/0CCA44D6-68E9-4762-94EE-31ECE98783B9",
"Method": "GET",
"Headers": []
},
"Entitlement": {
"Uri": "/entitlements?key=<key>",
"Method": "GET",
"Headers": []
},
"Self": {
"Uri": "/subscriptions?key=<key>",
"Method": "GET",
"Headers": []
}
},
"OrderId": "6183db3d-6318-4e52-877e-25806e4971be",
"Attributes": {
"Etag": "<etag>",
"ObjectType": "Subscription"
}
}
Пример новой коммерции
Запросить
PATCH https://api.partnercenter.microsoft.com/v1/customers/<customer-tenant-id>/subscriptions/<id-for-subscription> HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 35163960-06c5-4677-9200-7e3b0cc1bb6e
MS-CorrelationId: bbbb1111-cc22-3333-44dd-555555eeeeee
Content-Type: application/json
Content-Length: 1029
Expect: 100-continue
Connection: Keep-Alive
{
"id": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"offerId": "CFQ7TTC0LH18:0001:CFQ7TTC0P0WS",
"offerName": "Microsoft 365 Business Basic",
"friendlyName": "Microsoft 365 Business Basic",
"productType": {
"id": "OnlineServicesNCE",
"displayName": "OnlineServicesNCE"
},
"quantity": 2,
"unitType": "Licenses",
"hasPurchasableAddons": false,
"creationDate": "2024-06-05T19:26:38.3667635Z",
"effectiveStartDate": "2024-06-05T00:00:00Z",
"commitmentEndDate": "2024-07-04T00:00:00Z",
"commitmentEndDateTime": "2024-07-04T23:59:59Z",
"cancellationAllowedUntilDate": "2024-06-12T19:27:03.440527Z",
"billingCycleEndDate": "2024-07-04T00:00:00Z",
"billingCycleEndDateTime": "2024-07-04T23:59:59Z",
"status": "suspended", // original value = “active”
"autoRenewEnabled": true,
"isTrial": false,
"billingType": "license",
"billingCycle": "monthly",
"termDuration": "P1M",
"renewalTermDuration": "",
"isMicrosoftProduct": true,
"partnerId": "",
"attentionNeeded": false,
"actionTaken": false,
"contractType": "subscription",
"links": {
"product": {
"uri": "/products/CFQ7TTC0LH18?country=US",
"method": "GET",
"headers": []
},
"sku": {
"uri": "/products/CFQ7TTC0LH18/skus/0001?country=US",
"method": "GET",
"headers": []
},
"availability": {
"uri": "/products/CFQ7TTC0LH18/skus/0001/availabilities/CFQ7TTC0P0WS?country=US",
"method": "GET",
"headers": []
},
"self": {
"uri": "/customers/a2ce50db-e1d9-4b3b-aa75-6de2bfcdd752/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"method": "GET",
"headers": []
}
},
"publisherName": "Microsoft Corporation",
"refundableQuantity": {
"totalQuantity": 1,
"details": [
{
"quantity": 1,
"allowedUntilDateTime": "2024-06-14T17:41:13.4675407Z"
}
]
},
"orderId": "79d9f5e2f43a",
"attributes": {
"objectType": "Subscription"
}
}
Отклик
PATCH https://api.partnercenter.microsoft.com/v1/customers/<customer-tenant-id>/subscriptions/<id-for-subscription> HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 35163960-06c5-4677-9200-7e3b0cc1bb6e
MS-CorrelationId: bbbb1111-cc22-3333-44dd-555555eeeeee
Content-Type: application/json
Content-Length: 1029
Expect: 100-continue
Connection: Keep-Alive
{
"id": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"offerId": "CFQ7TTC0LH18:0001:CFQ7TTC0P0WS",
"offerName": "Microsoft 365 Business Basic",
"friendlyName": "Microsoft 365 Business Basic",
"productType": {
"id": "OnlineServicesNCE",
"displayName": "OnlineServicesNCE"
},
"quantity": 2,
"unitType": "Licenses",
"hasPurchasableAddons": false,
"creationDate": "2024-06-05T19:26:38.3667635Z",
"effectiveStartDate": "2024-06-05T00:00:00Z",
"commitmentEndDate": "2024-07-04T00:00:00Z",
"commitmentEndDateTime": "2024-07-04T23:59:59Z",
"cancellationAllowedUntilDate": "2024-06-12T19:27:03.440527Z",
"billingCycleEndDate": "2024-07-04T00:00:00Z",
"billingCycleEndDateTime": "2024-07-04T23:59:59Z",
"status": "suspended",
"autoRenewEnabled": false, // autorenew is turned off when the subscription is suspended
"isTrial": false,
"billingType": "license",
"billingCycle": "monthly",
"termDuration": "P1M",
"renewalTermDuration": "",
"isMicrosoftProduct": true,
"partnerId": "",
"attentionNeeded": false,
"actionTaken": false,
"contractType": "subscription",
"links": {
"product": {
"uri": "/products/CFQ7TTC0LH18?country=US",
"method": "GET",
"headers": []
},
"sku": {
"uri": "/products/CFQ7TTC0LH18/skus/0001?country=US",
"method": "GET",
"headers": []
},
"availability": {
"uri": "/products/CFQ7TTC0LH18/skus/0001/availabilities/CFQ7TTC0P0WS?country=US",
"method": "GET",
"headers": []
},
"self": {
"uri": "/customers/a2ce50db-e1d9-4b3b-aa75-6de2bfcdd752/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"method": "GET",
"headers": []
}
},
"publisherName": "Microsoft Corporation",
"refundableQuantity": null, // seat reduction is not supported in suspended state
"orderId": "79d9f5e2f43a",
"attributes": {
"objectType": "Subscription"
}
}