Condividi tramite


Eseguire la transizione di una nuova sottoscrizione commerciale

Si applica a: Centro per i partner | Centro per i partner gestito da 21Vianet | Centro per i partner per Microsoft Cloud per il governo degli Stati Uniti

Ruoli appropriati

  • Agente amministratore

Questi metodi supportano sottoscrizioni tradizionali e nuove di origine commerciale.

Nota

Le nuove esperienze commerciali per i servizi basati su licenza includono molte nuove funzionalità e sono disponibili per tutti i provider di soluzioni cloud. Per altre informazioni, vedere la panoramica delle nuove esperienze commerciali.

Usato per aggiornare la nuova sottoscrizione commerciale di un cliente a una sottoscrizione di destinazione o convertire una versione di valutazione di NCE in una sottoscrizione a pagamento. Per eseguire la transizione di una sottoscrizione, è necessario effettuare due richieste API. Prima transizione idonea GET per ottenere gli SKU disponibili per l'aggiornamento. Eseguire quindi la transizione POST per eseguire la transizione.

Ottenere le idoneità per la transizione

Restituisce un elenco di transizioni idonee per un determinato cliente, sottoscrizione e tipo richiesto. Restituisce anche l'idoneità per l'aggiornamento della sottoscrizione di destinazione. Le idoneità per la transizione possono includere offerte nello stato EndofSaleWithConversions.

Prerequisiti

  • Credenziali descritte in Autenticazione del Centro per i partner. Questo scenario supporta l'autenticazione con le credenziali app autonome e 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 la sottoscrizione iniziale.

Ruoli GDAP

Sono necessari almeno uno dei ruoli GDAP seguenti:

  • Ruolo con autorizzazioni di lettura della directory
  • Ruolo con autorizzazioni di lettura globali

Nota

Anche se questa API è disponibile per legacy e NCE, GDAP è necessaria solo per la versione legacy.

Richiesta REST

Sintassi della richiesta

metodo URI della richiesta
GET {baseURL}/v1/customers/{customer-tenant-id}/subscriptions/{subscription-id}/transitionEligibilities?eligibilityType={immediate, scheduled} HTTP/1.1

Parametro URI

Usare i parametri di query seguenti per restituire transizioni idonee.

Nome Digita Obbligatorio Descrizione
customer-tenant-id guid Y GUID corrispondente al tenant del cliente.
subscription-id guid Y GUID corrispondente alla sottoscrizione iniziale.
idoneitàType string N Descrive quando la transizione deve essere eseguita; può essere immediato o pianificato. Il valore predefinito è Immediate.

Intestazioni delle richieste

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

Testo della richiesta

None

Esempio di richiesta

GET https://api.partnercenter.microsoft.com/v1/customers/{customer-tenant-id}/subscriptions/{subscription-id}/transitionEligibilities?eligibilityType=immediate HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 18752a69-1aa1-4ef7-8f9d-eb3681b2d70a
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US

Risposta REST

In caso di esito positivo, questo metodo restituisce un elenco delle transizioni idonee per la sottoscrizione specificata nel corpo della risposta.

Codici di errore e di esito della risposta

Ogni risposta viene fornita con un codice di stato HTTP che indica l'esito positivo o negativo e altre informazioni di debug. Usare uno strumento di traccia di rete per leggere questo codice, il tipo di errore e altri parametri. Per l'elenco completo, vedi Codici di errore.

Errori di idoneità

Descrizioni degli errori e significato.

Descrizione errore significato
Non è possibile eseguire la transizione della sottoscrizione. La sottoscrizione di origine non è attiva. Stato secondario originale non attivo
Non è possibile eseguire la transizione della sottoscrizione: non è ancora stato effettuato il provisioning della sottoscrizione di origine. FulfillmentState secondario originale non ha esito positivo
Il tipo di transizione non è compatibile: è necessario il mapping delle sottoscrizioni di AzureAD. Errore LegacyCannotConvertSubscriptionId durante la chiamata a GetSubscriptionUpgradeConflicts
Il tipo di transizione non è compatibile: esistono sottoscrizioni in conflitto per il trasferimento delle licenze. Se un servizio Microsoft Entra ha ID sottoscrizione da una sottoscrizione diversa, aggiungerlo all'elenco dei conflitti (include gli acquisti effettuati con il flusso di acquisto legacy o moderno)

Errori di idoneità della sottoscrizione

Se una sottoscrizione di destinazione non è idonea per l'aggiornamento a, verrà restituito uno dei motivi seguenti.

Gli elenchi vuoti verranno restituiti se la sottoscrizione di origine è una versione di valutazione o se l'idoneitàType viene specificata come pianificata. È possibile eseguire la transizione solo in una sottoscrizione esistente con una transizione immediata (nota anche come "midterm") e non una modifica pianificata.

Descrizione errore Codice errore
La sottoscrizione non è attiva. SubscriptionNotActive = 1
La sottoscrizione si trova all'interno della finestra di annullamento. SubscriptionInDegtionWindow = 2
La durata della sottoscrizione è inferiore alla durata della sottoscrizione di origine. SubscriptionTermDurationShorterThanSourceTermDuration = 3
La data di fine del termine della sottoscrizione è prima della data di fine del termine della sottoscrizione di origine. La data di fine del termine della sottoscrizione è prima della data di fine del termine della sottoscrizione di origine. =4

Risposta di esempio

HTTP/1.1 200 OK
Content-Length: 138
Content-Type: application/json
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 18752a69-1aa1-4ef7-8f9d-eb3681b2d70a
Date: Fri, 26 Feb 2021 20:42:26 GMT

{
  "totalCount": 2,
  "items": [
    {
      "operationId": "1caf8ec7-62cc-4ab5-b35d-572d2a62974c",
      "catalogItemId": "CFQ7TTC0KZCR:0001:CFQ7TTC0K71H",
      "title": "Microsoft 365 E5 Test Sku Title",
      "description": "Microsoft 365 E5 Test Sku Description",
      "quantity": 1,
      "subscriptionEligibilities": [
        {
          "isEligible": false,
          "subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
          "subscriptionFriendlyName": "Microsoft 365 Business Premium",
          "subscriptionTermDuration": "P1M",
          "subscriptionBillingCycle": "monthly",
          "errors": [
            {
              "code": 3,
              "description": "The subscription's term duration is shorter than the source subscription's term duration."
            }
          ]
        },
        {
          "isEligible": true,
          "subscriptionId": "bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f",
          "subscriptionFriendlyName": "Microsoft 365 Business Premium",
          "subscriptionTermDuration": "P1Y",
          "subscriptionBillingCycle": "monthly",
          "errors": []
        }
      ],
      "eligibilities": [
        {
          "isEligible": true,
          "transitionType": "transition_only",
          "errors": []
        },
        {
          "isEligible": false,
          "transitionType": "transition_with_license_transfer",
          "errors": [
            {
              "code": 3,
              "description": "Subscription cannot be transitioned because there are conflicting services."
            }
          ]
        }
      ],
      "attributes": {
        "objectType": "TransitionEligibility"
      }
    },
    {
      "operationId": "1caf8ec7-62cc-4ab5-b35d-572d2a62974c",
      "catalogItemId": "CFQ7TTC0L4M3:0001:CFQ7TTC0K78T",
      "title": "Business Premium Test Sku Title",
      "description": "Business Premium Test Sku Description",
      "quantity": 1,
      "eligibilities": [
        {
          "isEligible": false,
          "transitionType": "transition_with_license_transfer",
          "errors": [
            {
              "code": 3,
              "description": "Subscription cannot be transitioned because there are conflicting services."
            }
          ]
        }
      ],
      "attributes": {
        "objectType": "TransitionEligibility"
      }
    }
  ],
  "attributes": {
    "objectType": "Collection"
  }
}

Post-transizione

Invia una richiesta di transizione per un determinato cliente e sottoscrizione. Restituisce la transizione con lo stato iniziale.

Prerequisiti

  • Credenziali descritte in Autenticazione del Centro per i partner. Questo scenario supporta l'autenticazione con le credenziali app autonome e 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 la sottoscrizione iniziale.

Ruoli GDAP

Sono necessari almeno uno dei ruoli GDAP seguenti:

  • Lettore directory o lettore globale (solo transizione)
  • Writer directory (transizione con trasferimento di licenze)

Nota

Anche se questa API è disponibile per legacy e NCE, GDAP è necessaria solo per la versione legacy.

Richiesta REST

Sintassi della richiesta

metodo URI della richiesta
POST {baseURL}/v1/customers/{customer-tenant-id}/subscriptions/{subscription-id}/transitions HTTP/1.1

Parametro URI

Usare i parametri di query seguenti per eseguire una transizione.

Nome Digita Obbligatorio Descrizione
customer-tenant-id guid Y GUID corrispondente al tenant del cliente.
subscription-id guid Y GUID corrispondente alla sottoscrizione iniziale.

Intestazioni delle richieste

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

Testo della richiesta

Questa tabella descrive le proprietà di transizione nel corpo della richiesta.

Proprietà Type Obbligatorio Descrizione
fromCatalogItemId string No Elemento del catalogo da cui si sta eseguendo la transizione.
fromSubscriptionId string No ID sottoscrizione da cui si sta eseguendo la transizione.
toCatalogItemId string Elemento del catalogo a cui si sta eseguendo la transizione.
toSubscriptionId string No ID sottoscrizione a cui si sta eseguendo la transizione.
quantity integer Numero di licenze da trasferire.
termDuration string No Specifica della durata della sottoscrizione.
billingCycle string No Specifica del ciclo di fatturazione della sottoscrizione.
transitionType string Tipo di transizione. Valori possibili - transition_only, transition_with_license_transfer.

Esempio di richiesta

POST https://api.partnercenter.microsoft.com/v1/customers/{customerId}/subscriptions/{subscriptionId}/transitions HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 18752a69-1aa1-4ef7-8f9d-eb3681b2d70a
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US

{
    "fromCatalogItemId": "CFQ7TTC0LF8Q:0001:CFQ7TTC0K39X",
    "fromSubscriptionId": "e487e8dc-421e-4275-cb42-3c1c8daccf70",
    "toCatalogItemId": "CFQ7TTC0LF8R:0001:CFQ7TTC0KCSV",
    "toSubscriptionId": "0af52192-4a2a-4364-d25b-c8ecab3a5697",
    "quantity": 2,
    "termDuration": "P1M",
    "billingCycle": "Monthly",
    "transitionType": "transition_only"
}

Risposta REST

In caso di esito positivo, questo metodo restituisce una risorsa Transition con lo stato iniziale.

Codici di errore e di esito della risposta

Ogni risposta viene fornita con un codice di stato HTTP che indica l'esito positivo o negativo e altre informazioni di debug. Usare uno strumento di traccia di rete per leggere questo codice, il tipo di errore e altri parametri. Per l'elenco completo, vedi Codici di errore.

Risposta di esempio

HTTP/1.1 200 OK
Content-Length: 138
Content-Type: application/json
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 18752a69-1aa1-4ef7-8f9d-eb3681b2d70a
Date: Fri, 26 Feb 2021 20:42:26 GMT

{
    "fromCatalogItemId": "CFQ7TTC0LF8Q:0001:CFQ7TTC0K39X",
    "fromSubscriptionId": "e487e8dc-421e-4275-cb42-3c1c8daccf70",
    "toCatalogItemId": "CFQ7TTC0LF8R:0001:CFQ7TTC0KCSV",
    "toSubscriptionId": "0af52192-4a2a-4364-d25b-c8ecab3a5697",
    "quantity": 2,
    "termDuration": "P1M",
    "billingCycle": "Monthly",
    "transitionType": "transition_only"
    "Events": [
        {
            "name": "Conversion",
            "status": "Started ",
            "timestamp": "2021-01-08T18:01:14.7488618Z",
            "attributes":
            {
                "objectType": "TransitionEvent"
            }
        }
    ],
    "attributes":
    {
        "objectType": "Transition" 
    }
}