Umstellung eines Abonnements im neuen E-Commerce-Verfahren

Gilt für: Partner Center | Partner Center betrieben von 21Vianet | Partner Center for Microsoft Cloud for US Government

Geeignete Rollen

  • Globaler Administrator
  • Administrator-Agent

Diese Methoden unterstützen sowohl herkömmliche als auch neue Commerce-Quellabonnements.

Hinweis

Die neuen Commerce-Erfahrungen für lizenzbasierte Dienste umfassen viele neue Funktionen und sind für alle Cloud Solution Provider (CSPs) verfügbar. Weitere Informationen finden Sie in der Übersicht über neue Commerce-Erfahrungen.

Wird verwendet, um das neue Commerce-Abonnement eines Kunden auf ein Zielabonnement zu aktualisieren oder eine NCE-Testversion in ein kostenpflichtiges Abonnement zu konvertieren. Um ein Abonnement zu übertragen, müssen zwei API-Anforderungen gestellt werden. First GET eligible transitions to get the SKUs available for upgrade. Dann POST-Übergang , um den Übergang auszuführen.

Abrufen von Übergangsberechtigungen

Gibt eine Liste berechtigter Übergänge für einen bestimmten Kunden, ein Abonnement und einen angeforderten Typ zurück. Gibt auch die Berechtigung zum Upgrade des Zielabonnements zurück. Die Berechtigungsberechtigungen für Die Umstellung können Angebote enthalten, die sich im Status "EndofSaleWithConversions" befinden.

Voraussetzungen

  • Anmeldeinformationen, wie unter Partner Center-Authentifizierung beschrieben. Dieses Szenario unterstützt die Authentifizierung mit eigenständigen App- und App+Benutzeranmeldeinformationen.

  • Eine Kunden-ID (customer-tenant-id). Wenn Sie die KUNDEN-ID nicht kennen, können Sie sie im Partner Center nachschlagen, indem Sie den Arbeitsbereich "Kunden " und dann den Kunden aus der Kundenliste und dann "Konto" auswählen. Suchen Sie auf der Seite "Konto" des Kunden im Abschnitt "Kundenkontoinformationen" nach der Microsoft-ID. Die Microsoft-ID entspricht der Kunden-ID (customer-tenant-id).

  • Eine Abonnement-ID für das anfängliche Abonnement.

GDAP-Rollen

Sie benötigen mindestens eine der folgenden GDAP-Rollen:

  • Verzeichnis lesen
  • Globaler Leser

Hinweis

Obwohl diese API für Legacy und NCE verfügbar ist, ist GDAP nur für legacy erforderlich.

REST-Anforderung

Anforderungssyntax

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

URI-Parameter

Verwenden Sie die folgenden Abfrageparameter, um berechtigte Übergänge zurückzugeben.

Name Type Erforderlich Beschreibung
customer-tenant-id guid J Eine GUID, die dem Mandanten des Kunden entspricht.
Abonnement-ID guid J Eine GUID, die dem ursprünglichen Abonnement entspricht.
eligibilityType string N Beschreibt, wann der Übergang ausgeführt werden soll; kann sofort oder geplant sein. Der Standardwert ist Immediate.

Anforderungsheader

Weitere Informationen finden Sie unter Partner Center-REST-Header.

Anforderungstext

Keine

Beispiel für eine Anfrage

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: 81b08ffe-4cf8-49cd-82db-5c2fb0a8e132
X-Locale: en-US

REST-Antwort

Bei erfolgreicher Ausführung gibt die Methode eine Liste der berechtigten Übergänge für das angegebene Abonnement im Antworttext zurück.

Erfolgs- und Fehlercodes der Antwort

Jede Antwort enthält einen HTTP-Statuscode, der Erfolg oder Fehler und weitere Debuginformationen angibt. Verwenden Sie ein Netzwerkablaufverfolgungstool, um diesen Code, fehlertyp und andere Parameter zu lesen. Die vollständige Liste findest du unter Partner-API: REST-Fehlercodes.

Berechtigungsfehler

Fehlerbeschreibungen und Bedeutung.

Fehlerbeschreibung Bedeutung
Abonnement kann nicht übertragen werden – Quellabonnement ist nicht aktiv. Originalunterstatus nicht aktiv
Abonnement kann nicht übertragen werden – Quellabonnement ist noch nicht bereitgestellt. Original sub FulfillmentState ist nicht erfolgreich
Der Übergangstyp ist nicht kompatibel . AzureAD-Abonnementzuordnung ist erforderlich. LegacyCannotConvertSubscriptionId-Fehler beim Aufrufen von GetSubscriptionUpgradeConflicts
Der Übergangstyp ist nicht kompatibel – widersprüchliche Abonnements für die Lizenzübertragung sind vorhanden. Wenn ein Microsoft Entra-Dienst Über Abonnement-IDs aus einem anderen Abonnement verfügt, fügen Sie ihn der Konfliktliste hinzu (umfasst Einkäufe, die entweder mit dem älteren oder dem modernen Kaufablauf getätigt wurden)

Fehler bei der Abonnementberechtigung

Wenn ein Zielabonnement nicht zum Upgrade berechtigt ist, wird einer der folgenden Gründe zurückgegeben.

Leere Listen werden zurückgegeben, wenn das Quellabonnement eine Testversion ist oder wenn der berechtigungstyp als geplant angegeben ist. Sie können nur mit einem sofortigen (auch als "Midterm" bezeichneten) Übergang zu einem vorhandenen Abonnement wechseln, nicht in eine geplante Änderung.

Fehlerbeschreibung Fehlercode
Das Abonnement ist nicht aktiv. SubscriptionNotActive = 1
Das Abonnement befindet sich innerhalb des Kündigungsfensters. SubscriptionInCancellationWindow = 2
Die Laufzeitdauer des Abonnements ist kürzer als die Laufzeitdauer des Quellabonnements. SubscriptionTermDurationShorterThanSourceTermDuration = 3
Das Enddatum der Abonnementlaufzeit liegt vor dem Enddatum der Quellabonnementlaufzeit. Das Enddatum der Abonnementlaufzeit liegt vor dem Enddatum der Quellabonnementlaufzeit. = 4

Beispielantwort

HTTP/1.1 200 OK
Content-Length: 138
Content-Type: application/json
MS-CorrelationId: 81b08ffe-4cf8-49cd-82db-5c2fb0a8e132
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": "92301b7d-7598-4938-d6f2-d31e080e9da6",
          "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": "151467a1-4246-4a00-da7b-3405463d9b78",
          "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"
  }
}

Nach dem Übergang

Veröffentlicht eine Übergangsanforderung für einen bestimmten Kunden und ein bestimmtes Abonnement. Gibt den Übergang mit seinem Anfangsstatus zurück.

Voraussetzungen

  • Anmeldeinformationen, wie unter Partner Center-Authentifizierung beschrieben. Dieses Szenario unterstützt die Authentifizierung mit eigenständigen App- und App+Benutzeranmeldeinformationen.

  • Eine Kunden-ID (customer-tenant-id). Wenn Sie die KUNDEN-ID nicht kennen, können Sie sie im Partner Center nachschlagen, indem Sie den Arbeitsbereich "Kunden " und dann den Kunden aus der Kundenliste und dann "Konto" auswählen. Suchen Sie auf der Seite "Konto" des Kunden im Abschnitt "Kundenkontoinformationen" nach der Microsoft-ID. Die Microsoft-ID entspricht der Kunden-ID (customer-tenant-id).

  • Eine Abonnement-ID für das anfängliche Abonnement.

GDAP-Rollen

Sie benötigen mindestens eine der folgenden GDAP-Rollen:

  • Verzeichnisleser oder globaler Reader (nur Übergang)
  • Directory Writer (Übergang mit Lizenzübertragung)

Hinweis

Obwohl diese API für Legacy und NCE verfügbar ist, ist GDAP nur für legacy erforderlich.

REST-Anforderung

Anforderungssyntax

Methode Anforderungs-URI
POST {baseURL}/v1/customers/{customer-tenant-id}/subscriptions/{subscription-id}/transitions HTTP/1.1

URI-Parameter

Verwenden Sie die folgenden Abfrageparameter, um einen Übergang auszuführen.

Name Type Erforderlich Beschreibung
customer-tenant-id guid J Eine GUID, die dem Mandanten des Kunden entspricht.
Abonnement-ID guid J Eine GUID, die dem ursprünglichen Abonnement entspricht.

Anforderungsheader

Weitere Informationen finden Sie unter Partner Center-REST-Header.

Anforderungstext

In dieser Tabelle werden die Übergangseigenschaften im Anforderungstext beschrieben.

Eigenschaft Type Erforderlich Beschreibung
fromCatalogItemId Zeichenfolge Nein Das Katalogelement, von dem Sie wechseln.
fromSubscriptionId Zeichenfolge Nein Die Abonnement-ID, von der Sie wechseln.
toCatalogItemId Zeichenfolge Ja Das Katalogelement, zu dem Sie wechseln.
toSubscriptionId Zeichenfolge Nein Die Abonnement-ID, zu der Sie wechseln.
Menge integer Ja Die Anzahl der Lizenzen, über die der Übergang abgeschlossen werden soll.
termDuration Zeichenfolge Nein Angeben der Laufzeit des Abonnements.
billingCycle Zeichenfolge Nein Angeben der Abrechnungszeitraum des Abonnements.
transitionType Zeichenfolge Ja Der Übergangstyp. Mögliche Werte - transition_only, transition_with_license_transfer.

Beispiel für eine Anfrage

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: 81b08ffe-4cf8-49cd-82db-5c2fb0a8e132
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"
}

REST-Antwort

Wenn die Methode erfolgreich verläuft, wird eine Übergangsressource mit dem Anfangsstatus zurückgegeben.

Erfolgs- und Fehlercodes der Antwort

Jede Antwort enthält einen HTTP-Statuscode, der Erfolg oder Fehler und weitere Debuginformationen angibt. Verwenden Sie ein Netzwerkablaufverfolgungstool, um diesen Code, fehlertyp und andere Parameter zu lesen. Die vollständige Liste findest du unter Partner-API: REST-Fehlercodes.

Beispielantwort

HTTP/1.1 200 OK
Content-Length: 138
Content-Type: application/json
MS-CorrelationId: 81b08ffe-4cf8-49cd-82db-5c2fb0a8e132
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" 
    }
}