Passer à un nouvel abonnement commercial
S’applique à : Espace partenaires | Espace partenaires géré par 21Vianet | Espace partenaires pour Microsoft Cloud pour le gouvernement des États-Unis
Rôles appropriés
- Agent administrateur
Ces méthodes prennent en charge les abonnements traditionnels et de nouvelles sources commerciales.
Remarque
Les nouvelles expériences commerciales pour les services basés sur des licences incluent de nombreuses nouvelles fonctionnalités et sont disponibles pour toutes les fournisseur de solutions Cloud (csp). Pour plus d’informations, consultez la Vue d’ensemble des nouvelles expériences commerciales.
Utilisé pour mettre à niveau le nouvel abonnement commercial d’un client vers un abonnement cible ou convertir une version d’évaluation NCE en abonnement payant. Pour effectuer la transition d’un abonnement, deux demandes d’API doivent être effectuées. Tout d’abord , les transitions éligibles GET pour obtenir les références SKU disponibles pour la mise à niveau. Ensuite , la transition POST pour exécuter la transition.
Obtenir les éligibilités de transition
Retourne la liste des transitions éligibles pour un client, un abonnement et un type demandé donnés. Retourne également l’éligibilité à la mise à niveau de l’abonnement de destination. Les éligibilités de transition peuvent inclure des offres qui se trouvent dans l’état EndofSaleWithConversions.
Prérequis
Informations d’identification, comme décrit dans Authentification auprès de l’Espace partenaires. Ce scénario prend en charge l’authentification avec les informations d’identification d’application et d’application+utilisateur autonomes.
ID du client (
customer-tenant-id
). Si vous ne connaissez pas l’ID du client, vous pouvez le rechercher dans l’Espace de partenaires en sélectionnant l’espace de travail Clients, puis le client dans la liste des clients, puis compte. Dans la page Compte du client, recherchez l’ID Microsoft dans la section Informations sur le compte client. L’ID Microsoft est le même que l’ID de client (customer-tenant-id
).ID d’abonnement de l’abonnement initial.
Rôles GDAP
Vous aurez besoin d’au moins l’un des rôles GDAP suivants :
- Lecteur de répertoire
- Lecteur général
Remarque
Bien que cette API soit disponible pour l’héritage et la NCE, GDAP n’est nécessaire que pour l’héritage.
Demande REST
Syntaxe de la requête
Method | URI de demande |
---|---|
GET | {baseURL}/v1/customers/{customer-tenant-id}/subscriptions/{subscription-id}/transitionEligibilities ?eligibilityType={immediate, scheduled} HTTP/1.1 |
Paramètre d’URI
Utilisez les paramètres de requête suivants pour retourner des transitions éligibles.
Nom | Type | Requise | Description |
---|---|---|---|
id-locataire-client | guid | Y | GUID correspondant au locataire du client. |
id-abonnement | guid | Y | GUID correspondant à l’abonnement initial. |
eligibilityType | string | N | Décrit quand la transition doit être exécutée ; peut être immédiat ou planifié. La valeur par défaut est Immediate . |
En-têtes de requête
Pour plus d’informations, consultez En-têtes REST de l’Espace Partenaires.
Corps de demande
Aucune
Exemple de requête
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
Réponse REST
Si elle réussit, cette méthode retourne une liste des transitions éligibles pour l’abonnement donné dans le corps de la réponse.
Codes d’erreur et de réussite de la réponse
Chaque réponse est fournie avec un code d’état HTTP qui indique la réussite ou l’échec et plus d’informations de débogage. Utilisez un outil de suivi réseau pour lire ce code, le type d’erreur et d’autres paramètres. Pour obtenir la liste complète, consultez Codes d’erreur.
Erreurs d’éligibilité
Descriptions et signification des erreurs.
Description de l'erreur | Signification |
---|---|
L’abonnement ne peut pas être transitionné : l’abonnement source n’est pas actif. | Sous-état d’origine non actif |
L’abonnement ne peut pas être transféré : l’abonnement source n’est pas encore provisionné. | L’état de sous-traitement d’origine n’est pas réussi |
Le type de transition n’est pas compatible : le mappage d’abonnement AzureAD est requis. | Erreur LegacyCannotConvertSubscriptionId lors de l’appel de GetSubscriptionUpgradeConflicts |
Le type de transition n’est pas compatible : les abonnements en conflit pour le transfert de licence existent. | Si un service Microsoft Entra possède des ID d’abonnement à partir d’un autre abonnement, ajoutez-le à la liste des conflits (y compris les achats effectués avec un flux d’achat hérité ou moderne) |
Erreurs d’éligibilité de l’abonnement
Si un abonnement de destination n’est pas éligible à la mise à niveau, l’une des raisons suivantes est retournée.
Les listes vides sont retournées si l’abonnement source est un essai ou si l’éligibilitéType est spécifiée comme planifié. Vous ne pouvez passer qu’à un abonnement existant avec une transition immédiate (également appelée « midterm »), pas une modification planifiée.
Description de l'erreur | Code d’erreur |
---|---|
L’abonnement n’est pas actif. | SubscriptionNotActive = 1 |
L’abonnement est dans la fenêtre d’annulation. | SubscriptionInCancellationWindow = 2 |
La durée de l’abonnement est plus courte que la durée de l’abonnement source. | SubscriptionTermDurationShorterThanSourceTermDuration = 3 |
La date de fin de l’abonnement est antérieure à la date de fin de l’abonnement source. | La date de fin de l’abonnement est antérieure à la date de fin de l’abonnement source. = 4 |
Exemple de réponse
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 Transition
Publie une demande de transition pour un client et un abonnement donnés. Retourne la transition avec son état initial.
Prérequis
Informations d’identification, comme décrit dans Authentification auprès de l’Espace partenaires. Ce scénario prend en charge l’authentification avec les informations d’identification d’application et d’application+utilisateur autonomes.
ID du client (
customer-tenant-id
). Si vous ne connaissez pas l’ID du client, vous pouvez le rechercher dans l’Espace de partenaires en sélectionnant l’espace de travail Clients, puis le client dans la liste des clients, puis compte. Dans la page Compte du client, recherchez l’ID Microsoft dans la section Informations sur le compte client. L’ID Microsoft est le même que l’ID de client (customer-tenant-id
).ID d’abonnement de l’abonnement initial.
Rôles GDAP
Vous aurez besoin d’au moins l’un des rôles GDAP suivants :
- Lecteur d’annuaire ou Lecteur global (transition uniquement)
- Enregistreur d’annuaires (transition avec transfert de licence)
Remarque
Bien que cette API soit disponible pour l’héritage et la NCE, GDAP n’est nécessaire que pour l’héritage.
Demande REST
Syntaxe de la requête
Method | URI de demande |
---|---|
POST | {baseURL}/v1/customers/{customer-tenant-id}/subscriptions/{subscription-id}/transitions HTTP/1.1 |
Paramètre d’URI
Utilisez les paramètres de requête suivants pour exécuter une transition.
Nom | Type | Requise | Description |
---|---|---|---|
id-locataire-client | guid | Y | GUID correspondant au locataire du client. |
id-abonnement | guid | Y | GUID correspondant à l’abonnement initial. |
En-têtes de requête
Pour plus d’informations, consultez En-têtes REST de l’Espace Partenaires.
Corps de la demande
Ce tableau décrit les propriétés de transition dans le corps de la requête.
Propriété | Type | Requise | Description |
---|---|---|---|
fromCatalogItemId | string | Non | Élément de catalogue à partir duquel vous effectuez la transition. |
fromSubscriptionId | string | Non | ID d’abonnement à partir duquel vous effectuez la transition. |
toCatalogItemId | string | Oui | Élément de catalogue vers lequel vous effectuez la transition. |
toSubscriptionId | string | Non | ID d’abonnement vers lequel vous effectuez la transition. |
quantité | entier | Oui | Nombre de licences à passer. |
termDuration | string | Non | Spécification de la durée de l’abonnement. |
billingCycle | string | Non | Spécification de la cycle de facturation de l’abonnement. |
transitionType | string | Oui | Type de transition. Valeurs possibles - transition_only , transition_with_license_transfer . |
Exemple de requête
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"
}
Réponse REST
Si elle réussit, cette méthode retourne une ressource transition avec son état initial.
Codes d’erreur et de réussite de la réponse
Chaque réponse est fournie avec un code d’état HTTP qui indique la réussite ou l’échec et plus d’informations de débogage. Utilisez un outil de suivi réseau pour lire ce code, le type d’erreur et d’autres paramètres. Pour obtenir la liste complète, consultez Codes d’erreur.
Exemple de réponse
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"
}
}