Aracılığıyla paylaş


İş Ortağı Merkezi API'lerini kullanarak deneme aboneliğini ücretliye dönüştürme

Not

Bu adımlar Yeni Ticaret Ürünleri için geçerli değildir. Yeni Ticaret denemelerini ücretli aboneliklere dönüştürmek için Yeni ticaret aboneliğine geçiş belgelerine bakın

Deneme aboneliğini ücretliye dönüştürebilirsiniz.

Önkoşullar

  • İş Ortağı Merkezi kimlik doğrulaması'nde açıklandığı gibi kimlik bilgileri. Bu senaryo yalnızca App+User kimlik bilgileriyle kimlik doğrulamayı destekler.

  • Bir müşteri kimliği (customer-tenant-id). Müşterinin kimliğini bilmiyorsanız, Müşteriler çalışma alanını ve ardından müşteri listesinden müşteriyi seçip Hesap İş Ortağı Merkezi arayabilirsiniz. Müşterinin Hesap sayfasında, Müşteri Hesabı Bilgileri bölümünde Microsoft Kimliği bulun. Microsoft kimliği, müşteri kimliğiyle (customer-tenant-id) aynıdır.

  • Etkin bir deneme aboneliği için abonelik kimliği.

  • Mevcut bir çevrim teklifi.

Deneme aboneliğini kod aracılığıyla ücretli aboneliğe dönüştürme

Deneme aboneliğini ücretli aboneliğe dönüştürmek için önce kullanılabilir deneme dönüştürmeleri koleksiyonunu edinmeniz gerekir. Ardından, satın almak istediğiniz dönüştürme teklifini seçmeniz gerekir.

Dönüştürme teklifleri, varsayılan olarak deneme aboneliğiyle aynı sayıda lisansa sahip bir miktar belirtir. Quantity özelliğini satın almak istediğiniz lisans sayısına ayarlayarak bu miktarı değiştirebilirsiniz.

Not

Satın alınan lisans sayısından bağımsız olarak, satın alınan lisanslar için deneme sürümünün abonelik kimliği yeniden kullanılır. Sonuç olarak, geçerli olan deneme sürümü kaybolur ve satın alma işlemiyle değiştirilir.

Deneme aboneliğini kod aracılığıyla dönüştürmek için aşağıdaki adımları kullanın:

  1. Kullanılabilir abonelik işlemleriyle ilgili bir arabirim edinin. Müşteriyi tanımlamanız ve deneme aboneliğinin abonelik tanımlayıcısını belirtmeniz gerekir.

    var subscriptionOperations = partnerOperations.Customers.ById(customerId).Subscriptions.ById(subscriptionId);
    
  2. Mevcut dönüştürme tekliflerinden bir koleksiyon edinin. Bu yöntemin isteği/yanıtı hakkında daha fazla bilgi ve ayrıntılar için bkz. Deneme dönüştürme tekliflerinin listesini alma.

    var conversions = subscriptionOperations.Conversions.Get();
    
  3. Bir dönüştürme teklifi seçin. Aşağıdaki kod koleksiyondaki ilk dönüştürme teklifini seçer.

    var selectedConversion = conversions.Items.ToList()[0];
    
  4. İsteğe bağlı olarak, satın alınacak lisans sayısını belirtin. Varsayılan değer, deneme aboneliğindeki lisans sayısıdır.

    selectedConversion.Quantity = 10;
    
  5. Deneme aboneliğini ücretliye dönüştürmek için Create veya CreateAsync yöntemini çağırın.

    var convertResult = subscriptionOperations.Conversions.Create(selectedConversion);
    

C# (programlama dili)

Deneme aboneliğini ücretli aboneliğe dönüştürmek için:

  1. Müşteriyi tanımlamak için müşteri kimliğiyle IAggregatePartner.Customers.ByIdyöntemini kullanın.

  2. Deneme aboneliği kimliğiyle Subscriptions.ById yöntemini çağırarak abonelik işlemlerine yönelik bir arabirim alın. Abonelik işlemleri arabirimine bir başvuruyu yerel değişkene kaydedin.

  3. Dönüştürmelerdeki kullanılabilir işlemlere arabirim elde etmek için Dönüştürmeler özelliğini kullanın ve ardından kullanılabilir Dönüştürme tekliflerinden oluşan bir koleksiyonu almak için Getveya GetAsync yönteminiçağırın. Birini seçmelisiniz. Aşağıdaki örnek varsayılan olarak kullanılabilir ilk dönüştürmeyi kullanır.

  4. Yerel değişkene kaydettiğiniz abonelik işlemleri arabirimine ve dönüştürmelerdeki kullanılabilir işlemlere yönelik bir arabirim elde etmek için Dönüştürmeler özelliğine yönelik başvuruyu kullanın.

  5. Seçili dönüştürme teklifi nesnesini Create veya CreateAsync yöntemine geçirerek deneme dönüştürmeyi deneyin.

C# örneği

// IAggregatePartner partnerOperations;
// string customerId;
// string subscriptionId;

// Get subscription operations for the trial subscription.
var subscriptionOperations = partnerOperations.Customers.ById(customerId).Subscriptions.ById(subscriptionId);

// Get the available conversions.
var conversions = subscriptionOperations.Conversions.Get();

// If there are no conversions available, we're done.
// Otherwise, convert the trial to the first available conversion offer.
if (conversions.TotalCount <= 0)
{
    System.Console.WriteLine("This subscription has no conversions");
}
else
{
    // Default to the first conversion.
    var selectedConversion = conversions.Items.ToList()[0];

    // Convert the trial and return the result.
    var convertResult = subscriptionOperations.Conversions.Create(selectedConversion);
}

REST isteği

İstek söz dizimi

Yöntem İstek URI'si
post {baseURL}/v1/customers/{customer-id}/subscriptions/{subscription-id}/conversions HTTP/1.1

URI parametresi

Müşteriyi ve deneme aboneliğini tanımlamak için aşağıdaki yol parametrelerini kullanın.

Ad Tür Gerekli Açıklama
müşteri-id dizgi Evet Müşteriyi tanımlayan GUID biçimli bir dize.
abonelik-kimliği dizgi Evet Deneme aboneliğini tanımlayan GUID biçimli bir dize.

İstek başlıkları

Daha fazla bilgi için bkz. Ortak Merkezi REST üst bilgileri.

İstek gövdesi

Doldurulmuş bir Dönüştürme kaynağı istek gövdesine eklenmelidir.

İstek örneği

POST https://api.partnercenter.microsoft.com/v1/customers/0c39d6d5-c70d-4c55-bc02-f620844f3fd1/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/conversions HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: bd0cde7f-ba87-4010-8a73-1190b641f2a4
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
Content-Type: application/json
Host: api.partnercenter.microsoft.com
Content-Length: 234
Expect: 100-continue

{
    "OfferId": "C0BD2E08-11AC-4836-BDC7-3712E744922F",
    "TargetOfferId": "031C9E47-4802-4248-838E-778FB1D2CC05",
    "OrderId": "D51A052E-043C-4A2A-AA37-2BB938CEF6C1",
    "Quantity": 25,
    "BillingCycle": "monthly",
    "Attributes": {
        "ObjectType": "Conversion"
    }
}

REST yanıtı

Başarılı olursa, yanıt gövdesi bir ConversionResult kaynağı içerir.

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. İş Ortağı Merkezi hata kodları.

Yanıt örneği

HTTP/1.1 200 OK
Content-Length: 211
Content-Type: application/json; charset=utf-8
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: bd0cde7f-ba87-4010-8a73-1190b641f2a4
MS-CV: kW4GzmhvHEqCq1ls.0
MS-ServerId: 030020643
Date: Thu, 15 Jun 2017 23:10:40 GMT

 {
    "subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
    "offerId": "C0BD2E08-11AC-4836-BDC7-3712E744922F",
    "targetOfferId": "031C9E47-4802-4248-838E-778FB1D2CC05",
    "attributes": {
        "objectType": "ConversionResult"
    }
}