Iş Ortağı Merkezi API 'Lerini kullanarak ticari Market veya yeni ticaret aboneliğini iptal etme
Uygulama hedefi: Iş Ortağı Merkezi
Bu makalede, müşteri ve abonelik KIMLIĞIYLE eşleşen bir ticari Market veya yeni ticaret abonelik kaynağını iptal etmek Için Iş Ortağı Merkezi API 'sini nasıl kullanabileceğiniz açıklanmaktadır.
Not
Yeni ticaret değişiklikleri şu anda yalnızca M365/D365 yeni ticaret deneyimi teknik önizlemesinin parçası olan iş ortakları tarafından kullanılabilir.
Yeni ticaret abonelikleri, 72 saat içinde satın alma veya yenileme işlemleri için iptal edilebilir. 72 saat sonra, abonelikler artık iptal edilemez ve API bir hata oluşturur.
Önkoşullar
Iş ortağı merkezi kimlik doğrulamasındaaçıklandığı gibi kimlik bilgileri. Bu senaryo, hem tek başına uygulama hem de uygulama + kullanıcı kimlik bilgileriyle kimlik doğrulamayı destekler.
Bir müşteri KIMLIĞI (
customer-tenant-id). Müşterinin KIMLIĞINI bilmiyorsanız Iş Ortağı Merkezi panosundabulabilirsiniz. Iş Ortağı Merkezi menüsünden CSP ' yi ve ardından müşteriler' i seçin. Müşteri listesinden müşteriyi seçin ve ardından Hesap' ı seçin. Müşterinin hesap sayfasında, müşteri hesabı bilgileri bölümünde Microsoft kimliği ' ni arayın. Microsoft KIMLIĞI, müşteri KIMLIĞI () ile aynıdırcustomer-tenant-id.Abonelik KIMLIĞI.
İş Ortağı Merkezi Pano yöntemi
Iş Ortağı Merkezi panosunda bir ticari Market aboneliğini iptal etmek için:
İptal etmek istediğiniz aboneliği seçin.
Aboneliği Iptal et seçeneğini belirleyip Gönder' i seçin.
C#
Bir müşterinin aboneliğini iptal etmek için:
Aboneliğin Status özelliğini değiştirin. Durum kodları hakkında bilgi için bkz. subscriptionstatus numaralandırması.
Değişiklik yapıldıktan sonra,
IAggregatePartner.Customerskoleksiyonunuzu kullanın veIAggregatePartner.Customersyöntemini çağırın.Patch () yöntemini çağırın.
// IAggregatePartner partnerOperations;
// var selectedCustomerId as string;
// Subscription selectedSubscription;
selectedSubscription.Status = SubscriptionStatus.Deleted;
var updatedSubscription = partnerOperations.Customers.ById(selectedCustomerId).Subscriptions.ById(selectedSubscription.Id).Patch(selectedSubscription);
Örnek konsol test uygulaması
Örnek: konsol test uygulaması. Project: partnersdk. featuresample sınıfı: updatesubscription. cs
REST isteği
İstek sözdizimi
| Yöntem | İstek URI'si |
|---|---|
| DÜZELTMESI | {BaseUrl}/v1/Customers/{Customer-Tenant-ID}/Subscriptions/{Subscription-ID} http/1.1 |
URI parametresi
Bu tabloda, aboneliği askıya almak için gerekli sorgu parametresi listelenmektedir.
| Ad | Tür | Gerekli | Açıklama |
|---|---|---|---|
| Müşteri-Kiracı kimliği | guid | Y | Müşteriye karşılık gelen bir GUID. |
| abonelik kimliği | guid | Y | Aboneliğe karşılık gelen bir GUID. |
İstek üst bilgileri
Daha fazla bilgi için bkz. Iş ortağı MERKEZI Rest üstbilgileri.
İstek gövdesi
İstek gövdesinde tam bir abonelik kaynağı gereklidir. Aboneliğinizi iptal etmek için Status özelliğinin değerine güncelleştirildiğinden emin olun .
| Alan | Tür | Gerekli | Açıklama |
|---|---|---|---|
| durum | string | Y | Aboneliklerin durumu. Seçenekler- active , suspended , deleted |
İstek örneği
PATCH https://api.partnercenter.microsoft.com/v1/customers/<customer-tenant-id>/subscriptions/<subscription-id> HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: ca7c39f7-1a80-43bc-90d8-ee7d1cad3831
MS-CorrelationId: ec8f62e5-1d92-47e9-8d5d-1924af105f2c
If-Match: <etag>
Content-Type: application/json
Content-Length: 1029
Expect: 100-continue
Connection: Keep-Alive
{
"id": "6e7aa601-629e-461b-8933-0898c3cc3c7c",
"offerId": "DZH318Z0BXWC:0001:DZH318Z0BMJX",
"offerName": "offer Name",
"friendlyName": "friendly Name",
"quantity": 1,
"unitType": "License(s)",
"hasPurchasableAddons": false,
"creationDate": "2019-01-04T01:00:12.6647304Z",
"effectiveStartDate": "2019-01-09T00:21:45.9263727+00:00",
"commitmentEndDate": "2019-02-08T00:21:45.9263727+00:00",
"status": "deleted",
"autoRenewEnabled": false,
"isTrial": false,
"billingType": "license",
"billingCycle": "monthly",
"termDuration": "P1M",
"refundOptions": [{
"type": "Full",
"expiresAt": "2019-01-10T00:21:45.9263727+00:00"
}],
"isMicrosoftProduct": false,
"partnerId": "",
"contractType": "subscription",
"publisherName": "publisher Name",
"orderId": "ImxjLNL4_fOc-2KoyOxGTZcrlIquzls11",
"attributes": {"objectType": "Subscription"},
}
REST yanıtı
İstek başarılı olursa, bu yöntem yanıt gövdesinde silinen abonelik kaynak özelliklerini döndürür.
Yanıt başarısı ve hata kodları
Her yanıt başarı veya başarısızlık ve ek hata ayıklama bilgilerini gösteren bir HTTP durum kodu ile gelir. Bu kodu, hata türünü ve ek parametreleri okumak için bir ağ izleme aracı kullanın. Tam liste için bkz. hata kodları.
Yanıt örneği
HTTP/1.1 200 OK
Content-Length: 1322
Content-Type: application/json; charset=utf-8
MS-RequestId: ca7c39f7-1a80-43bc-90d8-ee7d1cad3831
MS-CorrelationId: ec8f62e5-1d92-47e9-8d5d-1924af105f2c
X-Locale: en-US
{
"id": "6e7aa601-629e-461b-8933-0898c3cc3c7c",
"offerId": "DZH318Z0BXWC:0001:DZH318Z0BMJX",
"offerName": "offer Name",
"friendlyName": "friendly Name",
"quantity": 1,
"unitType": "License(s)",
"hasPurchasableAddons": false,
"creationDate": "2019-01-04T01:00:12.6647304Z",
"effectiveStartDate": "2019-01-09T00:21:45.9263727+00:00",
"commitmentEndDate": "2019-02-08T00:21:45.9263727+00:00",
"status": "deleted",
"autoRenewEnabled": false,
"isTrial": false,
"billingType": "license",
"billingCycle": "monthly",
"termDuration": "P1M",
"refundOptions": [
{
"type": "Full",
"expiresAt": "2019-01-10T00:21:45.9263727+00:00"
}
],
"isMicrosoftProduct": false,
"partnerId": "",
"contractType": "subscription",
"links": {
"product": {
"uri": "/products/DZH318Z0BXWC?country=US",
"method": "GET",
"headers": []
},
"sku": {
"uri": "/products/DZH318Z0BXWC/skus/0001?country=US",
"method": "GET",
"headers": []
},
"availability": {
"uri": "/products/DZH318Z0BXWC/skus/0001/availabilities/DZH318Z0BMJX?country=US",
"method": "GET",
"headers": []
},
"self": {
"uri": "/customers/5921f00a-32c0-4457-aaa1-e8018c650895/subscriptions/6e7aa601-629e-461b-8933-0898c3cc3c7c",
"method": "GET",
"headers": []
}
},
"publisherName": "publisher Name",
"orderId": "ImxjLNL4_fOc-2KoyOxGTZcrlIquzls11",
"attributes": {
"etag": "",
"objectType": "Subscription"
}
}