Entscheidungsfindungsmigrations-API decisioning-migration-api

Auf dieser Seite: Verwenden Sie die Entscheidungsfindungsmigrations-API, um Entscheidungs-Management-Objekte mit automatisierter Abhängigkeitsanalyse und Rollback-Unterstützung zwischen Sandboxes zu verschieben, damit Sie Entscheidungsinhalte zwischen Umgebungen übertragen können, während die Datenintegrität erhalten bleibt.

Mit der Entscheidungsfindungsmigrations-API können Sie Entscheidungs-Management-Objekte von einer Sandbox in eine andere migrieren. Der Migrationsprozess wird in Form asynchroner Workflows ausgeführt, die Funktionen für Abhängigkeitsanalysen, Ausführung und optionales Rollback enthalten.

Mit dieser API können Sie Ihre Entscheidungs-Inhalte nahtlos zwischen Umgebungen übertragen und dabei Datenintegrität und -beziehungen beibehalten.

Weitere Informationen zu den Vorteilen und Funktionen von Entscheidungsfindung im Vergleich zum Entscheidungs-Management finden Sie auf dieser Seite.

Funktionen capabilities

Die Entscheidungsfindungsmigrations-API bietet die folgenden Funktionen:

  • Abhängigkeitsanalyse – Identifizieren Sie alle erforderlichen Abhängigkeiten zwischen Quell- und Ziel-Sandboxes, einschließlich Attributen, Segmenten und Datensatzanforderungen.
  • Flexibler Migrationsumfang – Führen Sie Migrationen je nach Bedarf auf Sandbox-, Angebots- oder Entscheidungsebene aus.
  • Rollback-Unterstützung – Setzen Sie eine abgeschlossene Migration zurück, wenn bei der Validierung Probleme auftreten.

Voraussetzungen prerequisites

Erforderliche Berechtigungen permissions

Um die Migrations-API verwenden zu können, benötigen Sie entsprechende Berechtigungen in der Quell- und Ziel-Sandbox:

Quell-Sandbox – Lesezugriff auf Entscheidungs-Management-Objekte

Ziel-Sandbox – Erstellungs- und Bearbeitungszugriff auf Entscheidungsfindungs-Objekte

Zu den typischen Berechtigungen gehören:

  • Verwalten/Anzeigen der Entscheidungsfindung
  • Verwalten/Anzeigen von Entscheidungen
  • Verwalten von Angeboten
  • Verwalten von Rangfolgestrategien
  • Verwalten von Kampagnen (bei Migration von kampagnenbezogenen Artefakten)
  • Verwalten/Anzeigen von Datenströmen (beim Erstellen eines Datenstroms)
  • Verwalten/Anzeigen von Schemata
NOTE
Informationen zum Zuweisen von Entscheidungsfindungs-Berechtigungen finden Sie in diesem Abschnitt. Eine vollständige Liste der Berechtigungen finden Sie auf der Seite Integrierte Berechtigungen.

Vorbereiten der Ziel-Sandbox target-sandbox-preparation

Bevor Sie eine Migration ausführen, stellen Sie sicher, dass Ihre Ziel-Sandbox ordnungsgemäß konfiguriert ist:

  • Attribute – Prüfen Sie, ob die erforderlichen Profilattribute und Kontextattribute in der Ziel-Sandbox vorhanden sind, oder bereiten Sie Zuordnungen für sie vor.
  • Segmente – Stellen Sie sicher, dass die erforderlichen Segmente in der Ziel-Sandbox vorhanden sind, oder planen Sie ihre Zuordnung mithilfe des Namespace und der ID.
  • Datensatz – Geben Sie einen Datensatznamen an, der für die Migration verwendet werden soll (dependency.datasetName).
  • Datenstrom – Legen Sie fest, ob bei der Migration ein Datenstrom erstellt werden soll (createDataStream).

Weitere Informationen zur Sandbox-Verwaltung finden Sie unter Verwenden und Zuweisen von Sandboxes.

API-Grundlagen api-basics

Basis-URL base-url

Verwenden Sie die folgende Basis-URL:

  • Produktion:

Authentifizierung authentication

Alle API-Anfragen erfordern die folgenden Header:

  • Authorization: Bearer <IMS_ACCESS_TOKEN>
  • x-gw-ims-org-id: <IMS_ORG_ID>
  • Content-Type: application/json

Detaillierte Anweisungen zum Einrichten der Authentifizierung finden Sie im Authentifizierungshandbuch für Journey Optimizer.

Workflow-Modell workflow-model

Durch jeden API-Aufruf wird eine Workflow-Ressource erstellt oder abgerufen. Workflows sind asynchrone Vorgänge, die den Fortschritt und die Ergebnisse von Migrationsaufgaben verfolgen.

Ein Workflow verfügt über die folgenden Eigenschaften:

  • id – Eindeutige Workflow-Kennung (UUID)
  • status – Aktueller Workflow-Status: New, Running, Completed oder Failed
  • result – Workflow-Ausgabe nach Abschluss (einschließlich Migrationsergebnissen und Warnungen)
  • errors – Strukturierte Fehlerdetails
  • _links.self – Workflow-URL zum Abrufen des Status

Migrations-Workflow migration-workflow

Der Migrationsprozess besteht aus zwei Hauptschritten: Analysieren von Abhängigkeiten und Ausführen der Migration. Führen Sie die folgenden Schritte aus, um eine erfolgreiche Migration sicherzustellen.

Schritt 1: Analysieren von Abhängigkeiten analyze-dependencies

Verwenden Sie vor der Migration den Abhängigkeits-Workflow, um zu ermitteln, was in Ihrer Ziel-Sandbox vom Entscheidungs-Management zur Entscheidungsfindung zugeordnet werden muss. Diese Analyse hilft Ihnen, die Beziehungen zwischen Objekten zu verstehen und die erforderlichen Zuordnungen vorzubereiten.

Erstellen eines Abhängigkeits-Workflows create-dependency-workflow

Verwenden Sie den folgenden API-Aufruf, um einen Workflow zur Abhängigkeitsanalyse zu erstellen.

API-Format

POST /workflows/generate-dependencies

Abhängigkeit auf Sandbox-Ebene (als erste Analyse empfohlen)

Beginnen Sie mit einer Analyse auf Sandbox-Ebene, um einen vollständigen Überblick über alle Abhängigkeiten zu erhalten:

curl --request POST \
  --url "https://decisioning-migration.adobe.io/workflows/generate-dependencies?request-level=sandbox" \
  --header "Authorization: Bearer <IMS_ACCESS_TOKEN>" \
  --header "x-gw-ims-org-id: <IMS_ORG_ID>" \
  --header "Content-Type: application/json" \
  --data '{
    "imsOrgId": "<IMS_ORG_ID>",
    "sourceSandboxDetails": { "sandboxName": "<SOURCE_SANDBOX_NAME>" },
    "targetSandboxDetails": { "sandboxName": "<TARGET_SANDBOX_NAME>" }
  }'

Abhängigkeit auf Angebotsebene

Um die Abhängigkeiten nur für bestimmte Angebote zu analysieren, rufen Sie denselben Endpunkt mit request-level=offer in der Abfragezeichenfolge auf und geben Sie im Hauptteil ein offersList-Array mit den Angebots-IDs an, die Sie analysieren möchten.

Abhängigkeit auf Entscheidungsebene

Um die Abhängigkeiten nur für bestimmte Entscheidungen zu analysieren, verwenden Sie request-level=decision in der Abfragezeichenfolge und stellen Sie im Hauptteil ein decisionsList-Array mit den Entscheidungs-IDs bereit, die Sie analysieren möchten.

Prüfen des Status des Abhängigkeits-Workflows poll-dependency-status

Fragen Sie den Abhängigkeits-Workflow ab, um zu prüfen, wann die Analyse abgeschlossen ist.

API-Format

GET /workflows/generate-dependencies/{id}

Anfrage

curl --request GET \
  --url "https://decisioning-migration.adobe.io/workflows/generate-dependencies/<WORKFLOW_ID>" \
  --header "Authorization: Bearer <IMS_ACCESS_TOKEN>" \
  --header "x-gw-ims-org-id: <IMS_ORG_ID>"

Wenn das Feld status den Wert Completed anzeigt, ist die Abhängigkeitsanalyse bereit. Verwenden Sie die Workflow-Ausgabe, um Ihre Zuordnungen von Migrationsabhängigkeiten zu erstellen:

  • profileAttributes – Ordnet Quellprofilattribute Zielprofilattributen zu
  • contextAttributes – Ordnet Quellkontextattribute Zielkontextattributen zu
  • segments – Ordnet Quellsegmentschlüssel Zielsegmentkennungen ({namespace, id}) zu
  • datasetName – Gibt den Zieldatensatznamen für die Migration an

Schritt 2: Ausführen der Migration execute-migration

Nachdem Sie die Abhängigkeiten analysiert und die Zuordnungen vorbereitet haben, können Sie die Migration ausführen.

Erstellen eines Migrations-Workflows create-migration-workflow

Verwenden Sie die Abhängigkeitszuordnungen aus Schritt 1, um Ihre Migration zu konfigurieren und auszuführen.

API-Format

POST /workflows/migration

Migration auf Sandbox-Ebene

So migrieren Sie alle Entscheidungsfindungs-Objekte von einer Sandbox in eine andere:

curl --request POST \
  --url 'https://decisioning-migration.adobe.io/workflows/migration?request-level=sandbox' \
  --header 'Authorization: Bearer <IMS_ACCESS_TOKEN>' \
  --header 'Content-Type: application/json' \
  --header 'x-gw-ims-org-id: <IMS_ORG_ID>' \
  --data '{
    "imsOrgId": "<IMS_ORG_ID>",
    "sourceSandboxDetails": { "sandboxName": "<SOURCE_SANDBOX_NAME>" },
    "targetSandboxDetails": { "sandboxName": "<TARGET_SANDBOX_NAME>" },
    "createDataStream": true,
    "dependency": {
      "profileAttributes": {
        "sourceAttr1": "targetAttr1"
      },
      "segments": {
        "sourceSegmentKey1": {
          "namespace": "<TARGET_SEGMENT_NAMESPACE>",
          "id": "<TARGET_SEGMENT_ID>"
        }
      },
      "contextAttributes": {
        "sourceCtx1": "targetCtx1"
      },
      "datasetName": "<TARGET_DATASET_NAME>"
    }
  }'

Migration auf Angebotsebene

Um nur bestimmte Angebote zu migrieren, verwenden Sie request-level=offer in der Abfragezeichenfolge und fügen Sie dem Hauptteil ein offersList-Array hinzu:

"offersList": ["offer-id-1", "offer-id-2"]

Migration auf Entscheidungsfindungs-Ebene

Um nur bestimmte Entscheidungen zu migrieren, verwenden Sie request-level=decision in der Abfragezeichenfolge und fügen Sie dem Hauptteil ein decisionsList-Array hinzu:

"decisionsList": ["decision-id-1", "decision-id-2"]

Überwachen des Migrationsstatus poll-migration-status

Fragen Sie den Status des Migrations-Workflows ab, um seinen Fortschritt nachzuverfolgen.

API-Format

GET /workflows/migration/{id}

Anfrage

curl --request GET \
  --url "https://decisioning-migration.adobe.io/workflows/migration/<WORKFLOW_ID>" \
  --header "Authorization: Bearer <IMS_ACCESS_TOKEN>" \
  --header "x-gw-ims-org-id: <IMS_ORG_ID>"

Migrationsergebnisse

Wenn das Feld status den Wert Completed anzeigt, war die Migration erfolgreich. Der Workflow result umfasst die folgenden Elemente:

  • Zuordnungen von migrierten Objekten
  • Etwaige Warnungen während der Migration

Wenn das Feld status den Wert Failed anzeigt, prüfen Sie das errors[]-Array und das Feld result.error auf Details zu den Problemen.

Validieren der Migration validate-migration

Prüfen Sie nach erfolgreichem Abschluss der Migration, ob alle Objekte korrekt migriert wurden.

Validierungs-Checkliste validation-checklist

  1. Segmente – Prüfen Sie, ob alle referenzierten Segmente in der Ziel-Sandbox entsprechend Ihren Zuordnungen korrekt aufgelöst werden.

  2. Attribute – Vergewissern Sie sich, dass alle Profilattribute und Kontextattribute in der Ziel-Sandbox vorhanden sind und korrekt zugeordnet werden.

  3. Entscheidungsfindungs-Objekte – Prüfen Sie migrierte Objekte in der Benutzeroberfläche von Journey Optimizer:

    • Angebote (Entscheidungselemente)
    • Eignungsregeln
    • Rangfolgenformeln
    • Auswahlstrategien
    • Entscheidungsrichtlinien
  4. Datenstromtests – Wenn ein Datenstrom erstellt wurde, testen Sie die Laufzeitbereitstellung mithilfe der Edge Interact API.

Beispiel test-runtime-delivery

Wenn bei der Migration ein Datenstrom erstellt wurde, können Sie die Angebotsbereitstellung anhand des folgenden Beispiels testen:

curl --request POST \
  --url "https://edge.adobedc.net/ee/or2/v1/interact?configId=<DATASTREAM_ID>" \
  --header "Content-Type: application/json" \
  --header "x-request-id: <uuid>" \
  --data '{ "events": [ ... ] }'

Rollback einer Migration rollback

Wenn Sie während der Validierung Probleme feststellen, können Sie eine abgeschlossene Migration zurücksetzen, um den vorherigen Status der Ziel-Sandbox wiederherzustellen.

Erstellen eines Rollback-Workflows create-rollback-workflow

Starten Sie ein Rollback, indem Sie einen Rollback-Workflow erstellen, der auf die Migration verweist, die Sie zurücksetzen möchten.

API-Format

POST /workflows/rollback

Anfrage

curl --request POST \
  --url "https://decisioning-migration.adobe.io/workflows/rollback" \
  --header "Authorization: Bearer <IMS_ACCESS_TOKEN>" \
  --header "x-gw-ims-org-id: <IMS_ORG_ID>" \
  --header "Content-Type: application/json" \
  --data '{ "rollbackWorkflowId": "<MIGRATION_WORKFLOW_ID>" }'

Ersetzen Sie <MIGRATION_WORKFLOW_ID> durch die ID des Migrations-Workflows, den Sie zurücksetzen möchten.

Überwachen des Rollback-Status poll-rollback-status

Fragen Sie den Rollback-Workflow ab, um seinen Fortschritt nachzuverfolgen.

API-Format

GET /workflows/rollback/{rollbackWorkflowId}

Anfrage

curl --request GET \
  --url "https://decisioning-migration.adobe.io/workflows/rollback/<ROLLBACK_WORKFLOW_ID>" \
  --header "Authorization: Bearer <IMS_ACCESS_TOKEN>" \
  --header "x-gw-ims-org-id: <IMS_ORG_ID>"

Bearbeitung gleichzeitiger Workflows handle-concurrency

Mit der Migrations-API kann jeweils nur ein Workflow pro Organisation ausgeführt werden. Wenn Sie versuchen, einen neuen Workflow zu erstellen, während ein anderer ausgeführt wird, erhalten Sie eine Fehlerantwort 409 Conflict („Ein Workflow ist bereits in Bearbeitung …“).

Warten Sie in diesem Fall, bis der laufende Workflow abgeschlossen ist, oder rufen Sie die Workflow-ID ab und fragen Sie den Status ab. Sobald der aktuelle Workflow abgeschlossen ist, können Sie einen neuen erstellen.

Entitätszuordnungsreferenz entity-mapping

Bei der Migration vom Entscheidungs-Management zur Entscheidungsfindung werden Entitäten wie folgt zugeordnet:

Entscheidungs-Management
Entscheidungsfindung
Angebot
Entscheidungselement
Angebotssammlung
Elementsammlung
Eignungsregel
Eignungsregel
Rangfolgenformel
Rangfolgenformel
Entscheidung
Auswahlstrategie und Entscheidungsrichtlinie
Kampagne
Kampagne (nur grundlegende Inhalte)
Platzierung
Oberfläche und Kanalkonfiguration
Tag
Einheitliches Tag
Angebotsattribute
Feld migratedofferattributes im Schema der personalisierten Angebotselemente
Kontextattribute
Feld migratedcontextattributes im Schema, das an den während der Migration bereitgestellten Datensatz angehängt ist

Workflow-Bereinigung cleanup

Das Löschen von Workflows ist nicht öffentlich verfügbar. Wenden Sie sich an Ihre Systemadministration, wenn Sie eine Workflow-Ressource löschen müssen.

recommendation-more-help
journey-optimizer-help