Convertire una sottoscrizione di valutazione a pagamento usando le API del Centro per i partner

Nota

Questi passaggi non sono applicabili per i nuovi prodotti commerciali. Fare riferimento alla documentazione relativa alla transizione di una nuova sottoscrizione commerciale per convertire le versioni di valutazione di New Commerce in sottoscrizioni a pagamento

È possibile convertire una sottoscrizione di valutazione a pagamento.

Prerequisiti

  • Credenziali descritte in Autenticazione del Centro per i partner. Questo scenario supporta l'autenticazione solo con le credenziali app + utente.

  • ID cliente (customer-tenant-id). Se non si conosce l'ID del cliente, è possibile cercarlo nel Centro per i partner selezionando l'area di lavoro Clienti , quindi il cliente dall'elenco dei clienti, quindi Account. Nella pagina Account del cliente cercare l'ID Microsoft nella sezione Informazioni sull'account del cliente. L'ID Microsoft corrisponde all'ID del cliente (customer-tenant-id).

  • ID sottoscrizione per una sottoscrizione di valutazione attiva.

  • Offerta di conversione disponibile.

Convertire una sottoscrizione di valutazione in una sottoscrizione a pagamento tramite codice

Per convertire una sottoscrizione di valutazione in una sottoscrizione a pagamento, è prima necessario ottenere una raccolta delle conversioni di valutazione disponibili. È quindi necessario scegliere l'offerta di conversione che si vuole acquistare.

Le offerte di conversione specificano una quantità che per impostazione predefinita corrisponde allo stesso numero di licenze della sottoscrizione di valutazione. È possibile modificare questa quantità impostando la proprietà Quantity sul numero di licenze da acquistare.

Nota

Indipendentemente dal numero di licenze acquistate, l'ID sottoscrizione della versione di valutazione viene riutilizzato per le licenze acquistate. Di conseguenza, la versione di valutazione in vigore scompare e viene sostituita dall'acquisto.

Usare la procedura seguente per convertire una sottoscrizione di valutazione tramite codice:

  1. Ottenere un'interfaccia per le operazioni di sottoscrizione disponibili. È necessario identificare il cliente e specificare l'identificatore della sottoscrizione di valutazione.

    var subscriptionOperations = partnerOperations.Customers.ById(customerId).Subscriptions.ById(subscriptionId);
    
  2. Ottenere una raccolta delle offerte di conversione disponibili. Per altre informazioni e dettagli sulla richiesta/risposta per questo metodo, vedere Ottenere un elenco di offerte di conversione di valutazione.

    var conversions = subscriptionOperations.Conversions.Get();
    
  3. Scegliere un'offerta di conversione. Il codice seguente sceglie la prima offerta di conversione nella raccolta.

    var selectedConversion = conversions.Items.ToList()[0];
    
  4. Facoltativamente, specificare il numero di licenze da acquistare. Il valore predefinito è il numero di licenze nella sottoscrizione di valutazione.

    selectedConversion.Quantity = 10;
    
  5. Chiamare il metodo Create o CreateAsync per convertire la sottoscrizione di valutazione a pagamento.

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

C#

Per convertire una sottoscrizione di valutazione in una sottoscrizione a pagamento:

  1. Usare il metodo IAggregatePartner.Customers.ById con l'ID cliente per identificare il cliente.

  2. Ottenere un'interfaccia per le operazioni di sottoscrizione chiamando il metodo Subscriptions.ById con l'ID sottoscrizione di valutazione. Salvare un riferimento all'interfaccia delle operazioni di sottoscrizione in una variabile locale.

  3. Utilizzare la proprietà Conversions per ottenere un'interfaccia per le operazioni disponibili sulle conversioni e quindi chiamare il metodo Get o GetAsync per recuperare una raccolta di offerte di conversione disponibili. È necessario sceglierne uno. Nell'esempio seguente viene predefinito la prima conversione disponibile.

  4. Usare il riferimento all'interfaccia delle operazioni di sottoscrizione salvata in una variabile locale e la proprietà Conversions per ottenere un'interfaccia per le operazioni disponibili sulle conversioni.

  5. Passare l'oggetto offerta di conversione selezionato al metodo Create o CreateAsync per tentare la conversione di prova.

Esempio in C#

// 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);
}

Richiesta REST

Sintassi della richiesta

Method URI della richiesta
POST {baseURL}/v1/customers/{customer-id}/subscriptions/{subscription-id}/conversions HTTP/1.1

Parametro URI

Usare i parametri di percorso seguenti per identificare il cliente e la sottoscrizione di valutazione.

Nome Type Richiesto Descrizione
customer-id string Stringa con formato GUID che identifica il cliente.
subscription-id string Stringa con formattazione GUID che identifica la sottoscrizione di valutazione.

Intestazioni della richiesta

Per altre informazioni, vedi Intestazioni REST del Centro per i partner.

Corpo della richiesta

Una risorsa di conversione popolata deve essere inclusa nel corpo della richiesta.

Esempio di richiesta

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"
    }
}

Risposta REST

In caso di esito positivo, il corpo della risposta contiene una risorsa ConversionResult .

Codici di errore e di esito della risposta

Ogni risposta viene fornita con un codice di stato HTTP che ne indica l'esito e con informazioni di debug aggiuntive. Usa uno strumento di traccia di rete per leggere il codice, il tipo di errore e parametri aggiuntivi. Per l'elenco completo, vedere Codici di errore del Centro per i partner.

Risposta di esempio

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"
    }
}