İş Ortağı Merkezi API'lerini kullanarak ticari marketi veya yeni ticaret aboneliğini iptal etme
Şunun için geçerlidir: İş Ortağı Merkezi
Bu makalede, müşteri ve abonelik kimliğiyle eşleşen bir ticari marketi veya yeni ticari abonelik kaynağını iptal etmek için İş Ortağı Merkezi API'sini nasıl kullanabileceğiniz açıklanmaktadır.
Not
Lisans tabanlı hizmetler için yeni ticaret deneyimleri birçok yeni özellik içerir ve tüm Bulut Çözümü Sağlayıcısı (CSP' ler) tarafından kullanılabilir. Daha fazla bilgi için bkz . Yeni ticaret deneyimlerine genel bakış.
Yeni ticaret abonelikleri, yasaların gerektirdiği durumlar, satın alma veya yenileme dışında 7 gün içinde iptal edilebilir. Bu pencere geçtikten sonra abonelikler artık iptal edilemez ve API bir hata oluşturur.
Önkoşullar
İş Ortağı Merkezi kimlik doğrulamasında açıklandığı gibi kimlik bilgileri. Bu senaryo hem tek başına Uygulama hem de Uygulama+Kullanıcı kimlik bilgileriyle kimlik doğrulamayı destekler.
Müşteri kimliği (
customer-tenant-id
). Müşterinin kimliğini bilmiyorsanız, müşteri çalışma alanında İş Ortağı Merkezi'ndearayabilirsiniz. Müşteri listesinden müşteriyi 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ğiyle (customer-tenant-id
) aynıdır.Abonelik kimliği.
İş Ortağı Merkezi yöntemi
İş Ortağı Merkezi'nde ticari market aboneliğini iptal etmek için:
Bir müşteri seçin.
İptal etmek istediğiniz aboneliği seçin.
Aboneliği iptal et seçeneğini ve ardından Gönder'i seçin.
C#
Müşterinin aboneliğini iptal etmek için:
Kimliğine göre aboneliği alın.
Aboneliğin Durum özelliğini değiştirin. Durum kodları hakkında bilgi için bkz. SubscriptionStatus numaralandırması.
Değişiklik yapıldıktan sonra koleksiyonunuzu
IAggregatePartner.Customers
kullanın ve ById() yöntemini çağırın.Subscriptions özelliğini ve ardından ById() yö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ı. Proje: PartnerSDK.FeatureSample Sınıfı: UpdateSubscription.cs
REST isteği
İstek söz dizimi
Metot | İstek URI'si |
---|---|
PATCH | {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 listelenir.
Adı | Tür | Zorunlu | Açıklama |
---|---|---|---|
customer-tenant-id | Guıd | Y | Müşteriye karşılık gelen GUID. |
subscription-id | Guıd | Y | Aboneliğe karşılık gelen GUID. |
İstek üst bilgileri
Daha fazla bilgi için bkz . İş Ortağı Merkezi REST üst bilgileri.
Request body
İstek gövdesinde tam abonelik kaynağı gereklidir. Aboneliğinizi iptal etmek için Status özelliğinin değerine deleted
güncelleştirildiğinden emin olun.
Alan | Type | Zorunlu | 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 kaynağı özelliklerini döndürür.
Yanıt başarısı ve hata kodları
Her yanıt, başarılı veya başarısız olduğunu belirten bir HTTP durum kodu ve ek hata ayıklama bilgileriyle birlikte 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"
}
}
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin