Verschieben von Objekten zwischen Workfront-Umgebungen mithilfe der Workfront Umgebungsförderungs-API

Mit der Umgebungsförderungsfunktion können Sie konfigurationsbezogene Objekte von einer Umgebung in eine andere verschieben. Sie können diese Objekte mithilfe der Workfront-API verschieben, wie in diesem Artikel beschrieben.

Anweisungen zum Verschieben von Objekten zwischen Umgebungen mithilfe der Workfront-Anwendung finden Sie unter:

Zugriffsanforderungen

Sie müssen über Folgendes verfügen:

Adobe Workfront plan
Prime oder Ultimate (nur neue Pläne)
Adobe Workfront licenses
Standard
Konfigurationen auf Zugriffsebene
Sie müssen ein Workfront -Administrator sein.

Weitere Informationen zu den Informationen in dieser Tabelle finden Sie unter Zugriffsanforderungen in der Workfront-Dokumentation.

Voraussetzungen

Der Endpunkt "Promotion Package erstellen"setzt voraus, dass Sie die Quellumgebung bereits konfiguriert haben. Dieser API-Aufruf erfordert das manuelle Erstellen einer Objektzuordnung von Workfront objCodes und Objekt-GUIDs. Die spezifische Struktur dieser Karte wird nachfolgend beschrieben.

Unterstützte Objekte für die Umgebungsförderung

Die Funktion zur Umgebungsförderung soll die Möglichkeit bieten, konfigurationsbezogene Objekte von einer Umgebung in eine andere zu verschieben. Die Möglichkeit zum Verschieben von Transaktionsobjekten wird nicht unterstützt (mit eingeschränkten Ausnahmen).

Eine Liste der förderfähigen Objekte und der zugehörigen förderfähigen Unterobjekte finden Sie unter Unterstützte Objekte für die Umgebungsförderung im Artikel Übersicht über das Verschieben von Objekten zwischen Workfront-Umgebungen.

Authentifizierung

Die API authentifiziert jede Anfrage, um sicherzustellen, dass der Client Zugriff auf das Anzeigen oder Ändern eines angeforderten Objekts hat.

Die Authentifizierung erfolgt durch Übergabe einer Sitzungs-ID oder eines API-Schlüssels, der mit der folgenden Methode gegeben werden kann:

Authentifizierung des Anforderungsheaders

Die bevorzugte Authentifizierungsmethode besteht darin, einen Anforderungsheader namens SessionID zu übergeben, der das Sitzungstoken enthält. Dies hat den Vorteil, dass sie vor Cross-Site Request Forgery (CSRF) -Angriffen geschützt sind und den URI nicht zum Zwischenspeichern stören.

Im Folgenden finden Sie ein Beispiel für eine Anfrage-Kopfzeile:

GET /attask/api/v15.0/project/search
SessionID: abc1234

API-Endpunkte

Package erstellen

POST /packages

Dieser Aufruf führt einen mehrstufigen Prozess aus.

Der erste Schritt führt zur Erstellung eines leeren Promotionpakets im Status "ASSEMBLING".

Der zweite Schritt verwendet das im Hauptteil der POST bereitgestellte Array objectCollections , um die angeforderten Datensätze aus Workfront zusammenzustellen. Dieser Schritt kann je nach der Anzahl der angeforderten Datensätze und Ihrer Workfront-Konfiguration mehrere Minuten dauern. Am Ende dieses Prozesses wird das leere Promotion-Paket mit dem Wert packageEntities aktualisiert und der Status wird automatisch auf "ENTWURF"gesetzt.

NOTE
Beachten Sie die Struktur des objectCollections -Arrays.
Jedes Element im Array enthält einen objCode -Schlüssel, der dem im Workfront API Explorer dokumentierten Objektcode entspricht.
Jedes Element enthält auch eine entities -Sammlung. Dadurch wird das ID -Feld erwartet. Es kann auch ein optionales name -Attribut akzeptieren, um leichter zu erkennen, was das ID darstellt.
Eine Liste der zulässigen Objektcodes, die in der Liste objectCollections angefordert werden sollen, finden Sie im Abschnitt Unterstützte Objekte für die Umgebungsförderung in diesem Artikel.

URL

POST https://{domain}.{environment}.workfront.com/environment-promotion/api/v1/packages

Kopfzeilen

{
    "apikey": "**********",
    "Content-Type": "application/json"
}

Oder

{
    "sessionID": "*****************",
    "Content-Type": "application/json"
}

Text

{
    "name": "Agency Onboarding - 2023-06-06",
    "description": "This promotion package contains configuration to support the agency onboarding processes...",
    "source": "https://{domain}.{environment}.workfront.com",
    "objectCollections": [
        {
            "objCode": "PROJ",
            "entities": [
                {
                    "ID": "6419b8b9001151ee258921a4f7597ba1",
                    "name": "Agency Request"
                }
            ]
        },
        {
            "objCode": "TMPL",
            "entities": [
                {
                    "ID": "6419b8b9001151ee258921a4f7597bb2",
                    "name": "New Agency Onboarding"
                },
                {
                    "ID": "6419b8b9001151ee258921a4f7597bc3",
                    "name": "New Agency Offboarding"
                }
            ]
        },
        {
            "objCode": "PTLTAB",
            "entities": [
                {
                    "ID": "645e6435000b4aaebe4776f4a42ed5ad",
                    "name": "Agency Performance and Readiness"
                }
            ]
        }
    ]
}

Reaktion

200
{
    "data": {
        "id": "1d5693b9-b7b5-492d-8219-c21f34bcaca6",
        "name": "Agency Onboarding - 2023-06-06",
        "description": "This promotion package contains configuration to support the agency onboarding processes...",
        "source": "https://{domain}.{environment}.workfront.com",
        "status": "ASSEMBLING",
        "version": 1,
        "createdAt": "2023-06-06T17:29:21.600Z",
        "createdById": "61aa9d0e0005fcee8f212835bdaa2619",
        "publishedAt": null,
        "customerId": "61aa9d090005fa42152c1cb66659f38d"
    }
}

Eine Liste von Paketen abrufen

GET /packages

Dieser Aufruf gibt eine ungefilterte Liste von Promotion-Paketen zurück, die zum Kunden gehören.

Die Antwort umfasst alle Pakete, die aus einer der Sandboxes, Vorschauen oder Produktionsinstanzen des Kunden von Workfront erstellt wurden.

URL

GET https://{domain}.{environment}.workfront.com/environment-promotion/api/v1/packages

Kopfzeilen

{
    "apikey": "**********"
}

Oder

{
    "sessionID": "*****************"
}

Text

Empty

Reaktion

200
{
    "data": [
        {
            "id": "1d5693b9-b7b5-492d-8219-c21f34bcaca6",
            "name": "Agency Onboarding - 2023-06-06",
            "description": "This promotion package contains configuration to support the agency onboarding processes...",
            "status": "ASSEMBLING",
            "createdAt": "2023-06-06T17:29:21.600Z",
            "deletedAt": null
},
        {...}
    ]
}

<!—Überprüfen Sie den obigen "Status"— wurde er hinzugefügt?—>

Paket nach ID abrufen

GET /packages/{id}

Dieser Aufruf gibt die Details eines angeforderten Promotion-Pakets zurück.

Die Anfrage kann unabhängig von der ursprünglichen Quelle des Promotion-Pakets über jede Umgebung gesendet werden.

URL

GET https://{domain}.{environment}.workfront.com/environment-promotion/api/v1/packages/{id}

Kopfzeilen

{
    "apikey": "**********"
}

Oder

{
    "sessionID": "*****************"
}

Text

Empty

Reaktion

200
{
    "data": {
        "id": "1d5693b9-b7b5-492d-8219-c21f34bcaca6",
        "name": "Agency Onboarding - 2023-06-06",
        "description": "This promotion package contains configuration to support the agency onboarding processes...",
        "source": "https://{domain}.{environment}.workfront.com",
        "status": "DRAFT",
        "version": 1,
        "createdAt": "2023-06-06T17:29:21.600Z",
        "publishedAt": null,
        "customerId": "61aa9d090005fa42152c1cb66659f38d",
        "packageEntities": {
            "GROUP": [
               {
                   "id": "52aa9d0e0005fcee8f212835bdaa2691",
                   "name": "Default Group",
                   "description": "null"
                   - or -
                   "description": "..."
               }
            ],
            "ROLE": [
               {...}
            ],
            ...
        }
   }
}

Aktualisieren bestimmter Eigenschaften eines Pakets

PATCH /packages/{id}

Dieser Aufruf aktualisiert alle Inhalte des Promotion-Pakets, die im PATCH-Textkörper bereitgestellt werden.

Die bearbeitbaren Attribute sind:

  1. name (string)
  2. description (string)
  3. status (Zeichenfolge mit Wertvalidierung)

Eine ausführliche Beschreibung der verfügbaren Status finden Sie unter Status der Umgebungsförderung im Artikel Überblick über das Verschieben von Objekten zwischen Workfront-Umgebungen.

URL

PATCH https://{domain}.{environment}.workfront.com/environment-promotion/api/v1/packages/{id}

Kopfzeilen

{
    "apikey": "**********",
    "Content-Type": "application/json"
}

Oder

{
    "sessionID": "*****************",
    "Content-Type": "application/json"
}

Text

{
    "status": "ACTIVE"
}

Reaktion

200
{
    "data": {
        "id": "1d5693b9-b7b5-492d-8219-c21f34bcaca6",
        "name": "Agency Onboarding - 2023-06-06",
        "description": "This promotion package contains configuration to support the agency onboarding processes...",
        "source": "https://{domain}.{environment}.workfront.com",
        "status": "ACTIVE",
        "version": 1,
        "createdAt": "2023-06-06T17:29:21.600Z",
        "publishedAt": "2023-06-06T19:39:01.600Z",
        "customerId": "61aa9d090005fa42152c1cb66659f38d",
        "packageEntities": {
            "GROUP": [
               {
                   "id": "52aa9d0e0005fcee8f212835bdaa2691",
                   "name": "Default Group",
                   "description": "..."
               }
            ],
            "ROLE": [
               {...}
            ],
            ...
        }
   }
}

Löschen eines Pakets

DELETE /packages/{id}

Durch diesen Aufruf wird der Datensatz des Promotion-Pakets gelöscht. Diese Aktion ist unumkehrbar.

NOTE
Im Gegensatz zum Löschen eines Promotion-Pakets wird empfohlen, den Status des Pakets in DEAKTIVIERT zu ändern. Dadurch kann das Paket abgerufen werden und der Installationsverlauf der Bereitstellung wird beibehalten.

URL

DELETE https://{domain}.{environment}.workfront.com/environment-promotion/api/v1/packages/{id}

Kopfzeilen

{
    "apikey": "**********"
}

Oder

{
    "sessionID": "*****************"
}

Text

Empty

Reaktion

200
Deleted

Ausführen einer Vorab-Ausführung

IMPORTANT
Bevor Sie eine Installation ausführen können, müssen Sie diese Vorab-Ausführung ausführen. Sie verwenden die von diesem Aufruf generierte ID, wenn Sie die Installation ausführen.
POST {customer-domain}/environment-promotion/api/v1/packages/{id}/prepare-installation

Dieser Aufruf führt einen Vergleich zwischen der Package-Definition und der in der URL angegebenen Zielumgebung durch.

Das Ergebnis ist ein JSON-Hauptteil, der angibt, ob ein Promotion-Objekt in der Zielumgebung gefunden wurde oder nicht.

Für jedes Promotion-Objekt wird einer der folgenden actions festgelegt:

ERSTELLEN

Wenn ein entsprechender Datensatz nicht in der Zielumgebung gefunden werden kann, ist die Aktion auf CREATE gesetzt.

Wenn diese Aktion in dem translationmap festgelegt ist, der für den /install -Endpunkt bereitgestellt wird, erstellt der Installationsdienst den Datensatz.

USEEXISCH

Wenn ein entsprechender Datensatz in der Zielumgebung gefunden wird, wird die Aktion auf USEXISTING gesetzt und eine targetId wird auch in der translationmap erfasst.

Wenn diese Aktion in dem translationmap festgelegt ist, der für den /install -Endpunkt bereitgestellt wird, erstellt der Installationsdienst den Datensatz nicht. Sie verwendet jedoch die im Zuordnungseintrag enthaltene targetId für andere Objekte, die möglicherweise einen Verweis auf diesen Datensatz enthalten.

Beispielsweise kann eine "Standardgruppe"in der Zielumgebung gefunden werden, in der ein Paket bereitgestellt wird. Es ist nicht möglich, zwei Standardgruppendatensätze zu verwenden. Daher verwendet der Installationsdienst die GUID für die bestehende Gruppe in allen anderen Aktionen zur Objekterstellung, die einen Verweis auf die "Standardgruppe"enthalten, z. B. in einem Projekt, einem Formular oder einer anderen Entität, die mit dieser Gruppe verbunden ist.

Hinweis:

  • Wenn die Aktion USEXISTING zugewiesen wird, wird der vorhandene Datensatz in der Zielumgebung nicht geändert.

    Wenn sich beispielsweise die Beschreibung für die "Standardgruppe"in der Sandbox geändert hat, aus der das Paket erstellt wurde, und der Beschreibungswert in der Zielumgebung unterschiedlich ist, bleibt der Wert nach einer Installation mit dem Wert translationmap unverändert.

ÜBERSCHREIBUNG

Diese Aktion wird nicht automatisch festgelegt.

Diese Aktion bietet die Möglichkeit, ein Objekt zu aktualisieren, das in der Zielumgebung vorhanden ist. Es bietet die Möglichkeit, eine zugewiesene CREATE - oder USEEXISTING -Aktion manuell zu überschreiben, bevor der /install -Aufruf ausgeführt wird.

  • Ein Benutzer kann ein Objekt in der Testumgebung aktualisieren und dann mithilfe der Aktion ÜBERSCHREIBEN dieses Objekt in der Zielumgebung aktualisieren.

  • Wenn der Benutzer zunächst ein Promotion-Paket installiert und dann in Zukunft ein neues (oder aktualisiertes) Paket Änderungen an Objekten im ursprünglichen Paket enthält, kann der Benutzer mithilfe von OVERWRITING zuvor installierte Objekte ersetzen (überschreiben).

    Weitere Informationen zum Überschreiben finden Sie im Abschnitt [Überschreiben](#overwriting) in diesem Artikel.

IGNORE

Diese Aktion wird nicht automatisch festgelegt.

Es bietet die Möglichkeit, eine zugewiesene CREATE - oder USEEXISTING -Aktion manuell zu überschreiben, bevor der /install -Aufruf ausgeführt wird.

Hinweise:

  • Wenn ein Datensatz, der ursprünglich auf CREATE gesetzt wurde, auf IGNORE festgelegt ist, sollten alle untergeordneten Datensätze ebenfalls auf IGNORE gesetzt werden.

    Wenn beispielsweise ein Vorlagendatensatz einer CREATE-Aktion zugeordnet wurde und der Installations-Benutzer ihn von der Bereitstellung ausschließen möchte, kann er die Aktion der Vorlage auf IGNORE setzen.

    In diesem Fall führt die Bereitstellung zu einem fehlgeschlagenen Installationsversuch, wenn der Benutzer nicht auch die Vorlagenaufgaben, Vorlagenaufgaben, Vorlagenaufgaben, Vorlagenaufgaben, Warteschlangendefinition, Warteschlangenthemen, Routing-Regeln usw. auf IGNORE setzt.

  • Wenn ein Datensatz, der ursprünglich auf USEEXISTING gesetzt wurde, auf IGNORE gesetzt ist, kann es während des Installationsprozesses zu einigen negativen Auswirkungen kommen.

    Wenn beispielsweise ein Gruppendatensatz der Aktion USEXISTING zugeordnet wurde und der Installations-Benutzer die Aktion zu IGNORE ändert, wird für Objekte, die eine Gruppe erfordern (z. B. ein Projekt kann nicht ohne zugewiesene Gruppe existieren), diesem Projekt die Systemstandardgruppe zugewiesen.

  • Wenn ein Datensatz, der ursprünglich auf USEEXISTING festgelegt war, auf CREATE gesetzt ist, kann es während des Installationsprozesses zu einigen negativen Auswirkungen kommen, da viele Workfront-Entitäten über eindeutige Namensbeschränkungen verfügen.

    Wenn beispielsweise ein Eintrag "Standardgruppe"der Aktion USEXISTING zugeordnet wurde und der Installations-Benutzer die Aktion in CREATE ändert, da bereits eine "Standardgruppe"vorhanden ist, schlägt der Installationsprozess fehl, alle Schritte abzuschließen. Gruppennamen müssen eindeutig sein.

    Einige Entitäten haben keine individuelle Namensbeschränkung. Bei diesen Objekten führt diese Änderung zu zwei identischen Datensätzen. Beispielsweise erfordern Vorlagen, Projekte, Ansichten, Filter, Gruppierungen, Berichte und Dashboards keine eindeutigen Namensbeschränkungen. Es empfiehlt sich, eindeutige Namen für diese Datensätze zu verwenden, diese werden jedoch nicht erzwungen.

Es gibt derzeit keine Unterstützung für ein UPDATE action in den Alpha-Funktionen dieses Dienstes. Die Option, ein UPDATE action zuzulassen, ist etwas, das wir untersuchen.

URL

POST https://{domain}.{environment}.workfront.com/environment-promotion/api/v1/packages/:id/prepare-installation

Kopfzeilen

{
    "apikey": "**********",
    "Content-Type": "application/json"
}

Oder

{
    "sessionID": "*****************",
    "Content-Type": "application/json"
}

Text

{}

Reaktion

200
{
    "environmentPromotionPackageId": "45f2ae94-76c0-4b13-8f3b-f688de83043d",
    "environmentPromotionPackageVersion": 1,
    "id": "c0bc79bd-c9c1-4b5b-b118-b1241392de0e",
    "userId": "5ba38da500b752fd66439d4f6a9999a1",
    "customerId": "5ba38d9d00b74f0c7a38b1b487fc9710",
    "status": "PREPARING",
    "environment": "mmi.my.workfront.com",
    "registeredAt": "2023-10-19T20:00:16.697Z",
    "updatedAt": "2023-10-19T20:00:16.701Z",
    "translationMap": {
        "CTGY": {
            "62d9c9a0000013aeeefe7242a0a5fdb2": {
                "name": "Example Document Form",
                "action": "USEEXISTING",
                "isValid": true,
                "targetId": "62d9c9a0000013aeeefe7242a0a5fdb2"
            }
        },
        "PGRP": {
            "62d1eee4001c6618e6b9f9a588ba1598": {
                "name": "Asset Detail",
                "action": "USEEXISTING",
                "isValid": true,
                "targetId": "62d1eee4001c6618e6b9f9a588ba1598"
            }
        },
        "GROUP": {
            "5ba38da500b752b0f46d13186030b7ad": {
                "name": "Default Group",
                "action": "USEEXISTING",
                "isValid": true,
                "targetId": "5ba38da500b752b0f46d13186030b7ad"
            }
        },
        "PARAM": {
            "62d1eee400f8578895166ee91a83f97a": {
                "name": "Asset Type",
                "action": "USEEXISTING",
                "isValid": true,
                "targetId": "62d1eee400f8578895166ee91a83f97a"
            },
            "62d1eee50001407c713514a8970b58e4": {
                "name": "Keywords",
                "action": "USEEXISTING",
                "isValid": true,
                "targetId": "62d1eee50001407c713514a8970b58e4"
            },
            "62d1eee5000333ac3981ea4f3df6d88e": {
                "name": "Permitted Uses",
                "action": "USEEXISTING",
                "isValid": true,
                "targetId": "62d1eee5000333ac3981ea4f3df6d88e"
            },
            "62d1eee5000b188e9ec8039a097fc7ab": {
                "name": "File Format",
                "action": "USEEXISTING",
                "isValid": true,
                "targetId": "62d1eee5000b188e9ec8039a097fc7ab"
            },
            "62d1eee500100c159fd5f838ce560507": {
                "name": "CTA",
                "action": "USEEXISTING",
                "isValid": true,
                "targetId": "62d1eee500100c159fd5f838ce560507"
            },
            "62d9c988001c1f23954dbb9d646335b5": {
                "name": "Other CTA",
                "action": "USEEXISTING",
                "isValid": true,
                "targetId": "62d9c988001c1f23954dbb9d646335b5"
            },
            "62d9c9880070f546cf4c798ea6c3eaa4": {
                "name": "Other Audience",
                "action": "USEEXISTING",
                "isValid": true,
                "targetId": "62d9c9880070f546cf4c798ea6c3eaa4"
            },
            "62d9c990006258baf1b40f2569c3eab7": {
                "name": "Target Audience",
                "action": "USEEXISTING",
                "isValid": true,
                "targetId": "62d9c990006258baf1b40f2569c3eab7"
            }
        }
    }
}
NOTE
Die ID, die Sie zum Ausführen der Installation benötigen, ist das Feld id . In diesem Beispiel ist das Feld id das dritte Feld von oben und hat einen Wert, der mit c0bc79bd beginnt.

Ausführen einer Installation

IMPORTANT
Bevor Sie eine Installation ausführen können, müssen Sie eine Vorab-Ausführung ausführen. Sie verwenden die ID, die aus der Vorab-Ausführung generiert wurde, wenn Sie die Installation ausführen.
Wenn Änderungen an der Zielumgebung (der Umgebung, in der das Paket bereitgestellt wird) nach der Ausführung der Vorab-Ausführung vorgenommen wurden, empfehlen wir, die Vorab-Ausführung erneut auszuführen. Wenn Sie die Vorab-Ausführung nicht erneut ausführen, ist die Ausführung möglicherweise nicht ordnungsgemäß abgeschlossen oder die Installation schlägt möglicherweise fehl.
Anweisungen zum Ausführen einer Vorab-Ausführung finden Sie unter Ausführen einer Vorab-Ausführung ausführen.
POST /install

Dieser Aufruf startet einen Installationsversuch eines Promotion-Pakets in der in der POST-URL angegebenen Zielumgebung.

URL

POST https://{domain}.{environment}.workfront.com/environment-promotion/api/v1/installations/{id}/install

Kopfzeilen

{
    "apikey": "**********",
    "Content-Type": "application/json"
}

Oder

{
    "sessionID": "*****************",
    "Content-Type": "application/json"
}

Text

{
}

Reaktion

202
{}

Liste der Installationen für ein bestimmtes Paket abrufen

GET /v1/installations?environmentPromotionPackageId={environmentPromotionPackageId}

Die Ergebnisse umfassen Installationsereignisse aus allen Umgebungen, in denen das Paket bereitgestellt wurde. Sie beschränken sich nicht auf die Anlagen für die Umgebung, über die die Anfrage gestellt wird. Auf diese Weise können Sie ermitteln, welche Umgebungen dieses Paket erhalten haben.

URL

GET https://{domain}.{environment}.workfront.com/environment-promotion/api/v1/installations?environmentPromotionPackageId={environmentPromotionPackageId}

Kopfzeilen

{
    "apikey": "**********"
}

Oder

{
    "sessionID": "*****************"
}

Text

Empty

Reaktion

200
[
    {
        "id": "2892b936-e09e-455a-935f-e1462ab9753c",
        "environmentPromotionPackageId": "4fae2b9d-d315-45f4-909f-a0c0d79fc65d",
        "environmentPromotionPackageVersion": 1,
        "userId": "8fbbc5bcf4f94a5b862483ee05573e73",
        "customerId": "54286d78b064451096752b99bf968481",
        "status": "INSTALLED",
        "environment": "https://{domain}.{environment}.workfront.com",
        "registeredAt": "2021-03-16T02:21:31.908Z",
        "updatedAt": null,
        "translationMap": {
            "ROLE": {
                "5f6d114f006883209828ddd9088e63b3": {
                    "name": "DAM Curator",
                    "action": "USEEXISTING",
                    "isValid": true,
                    "targetId": "600f4bed00028a718599f29575840053"
                },
                "ad535a9ebe647361e053a7656a0a1575": {
                    "name": "Copywriter",
                    "action": "USEEXISTING",
                    "isValid": true,
                    "targetId": "600f162700001ca051081c06667b14a4"
                },
                ...
            },
            "TMPL": {
                "5f9b317c00b3db5af69abcd1ed5f82aa": {
                    "name": "Digital Asset Production (Integrated)",
                    "action": "CREATE",
                    "isValid": true,
                    "targetId": "6054cda40000d5af63dc811d9c2b3a07"
                },
                ...
            },
            ...
        }
    },
    {...}
]

Installationsdetails für eine Installation abrufen

GET /installations/{id}

Dieser Aufruf gibt die finale translationMap zurück, die vom Installationsdienst für eine bestimmte Installation erzeugt wurde.

Jeder Datensatz gibt an, was die verschriebene action war und ob diese Aktion erfolgreich war oder nicht.

Für Datensätze mit CREATE action wird das Feld targetId mit dem Wert des neu erstellten Datensatzes im Zielsystem festgelegt. Außerdem wird für das Feld installationStatus der Wert INSTALLIERT festgelegt.

Für Datensätze mit dem USEXISTING action wird auch das Feld targetId festgelegt und das Feld installationStatus auf REGISTRIERT. Dies bedeutet, dass der Zuordnungsprozess abgeschlossen ist und der Installationsdienst bestätigt, dass er den Datensatz ausgewertet hat und dass nichts zu tun ist.

Wenn der Datensatz einen CREATE action -Wert hat, der Datensatz jedoch nicht erfolgreich erstellt werden kann, wird der installationStatus auf FEHLGESCHLAGEN gesetzt und der Grund für den Fehler wird ebenfalls angegeben.

URL

GET https://{domain}.{environment}.workfront.com/environment-promotion/api/v1/installations/{id}

Kopfzeilen

{
    "apikey": "**********"
}

Oder

{
    "sessionID": "*****************"
}

Text

Empty

Reaktion

200
{
    "id": "2892b936-e09e-455a-935f-e1462ab9753c",
    "environmentPromotionPackageId": "4fae2b9d-d315-45f4-909f-a0c0d79fc65d",
    "environmentPromotionPackageVersion": 1,
    "userId": "8fbbc5bcf4f94a5b862483ee05573e73",
    "customerId": "54286d78b064451096752b99bf968481",
    "status": "INSTALLED",
    "environment": "https://{domain}.{environment}.workfront.com",
    "registeredAt": "2021-03-16T02:21:31.908Z",
    "updatedAt": null,
    "translationMap": {
        "ROLE": {
            "5f6d114f006883209828ddd9088e63b3": {
                "name": "DAM Curator",
                "action": "USEEXISTING",
                "isValid": true,
                "targetId": "600f4bed00028a718599f29575840053"
            },
            ...
        },
        "TMPL": {
            "5f9b317c00b3db5af69abcd1ed5f82aa": {
                "name": "Digital Asset Production (Integrated)",
                "action": "CREATE",
                "isValid": true,
                "targetId": "6054cda40000d5af63dc811d9c2b3a07"
            },
            ...
        },
        ...
    }
}

Überschreiben

Dies ist ein dreistufiger Prozess.

  1. Erstellen Sie eine Übersetzungszuordnung (entspricht der Phase "Installation vorbereiten").
  2. Bearbeiten Sie die generierte Übersetzungszuordnung und legen Sie die Felder action und targetId für jedes Objekt fest, das überschrieben werden soll. Die Aktion sollte OVERWRITING lauten und die targetId sollte die UUID des Objekts sein, das überschrieben werden soll
  3. Führen Sie die Installation aus.

Schritt 1: Erstellen einer Übersetzungskarte

URL

POST https://{domain}.{environment}.workfront.com/environment-promotion/api/v1/packages/{id}/translation-map

Text

Keine

Reaktion

Eine Übersetzungszuordnung mit dem Status 202 - OK

{
    {objcode}: {
        {object uuid}: {
            "targetId": {uuid of object in destination},
            "action": {installation action},
            "name": {name of the object},
            "isValid": true
        },
        {...more objects}
    },
    {...more objcodes}
}

Beispiel

{
    "UIVW": {
        "109f611680bb3a2b0c0a8c1f5ec63f6d": {
            "targetId": "6643a26b0001401ff797ccb318f97aa6",
            "action": "CREATE",
            "name": "Actual Portfolio Cost by Program",
            "isValid": true
        }
    },
    "UIGB": {
        "edb4c6c127d38910e4860eb25569a5cc": {
            "targetId": "6643a26b000178fb5cc27b74cc1e87ec",
            "action": "USEEXISTING",
            "name": "Actual Portfolio Cost by Program",
            "isValid": true
        }
    },
    "UIFT": {
        "f97b662e229fd09ee595d8d359ec88bd": {
            "targetId": "6643a26b00015cdd6727b76d6fda1d1d",
            "action": "USEEXISTING",
            "name": "Actual Portfolio Cost by Program",
            "isValid": true
        }
    },
    "PTLSEC": {
        "4bb80aa88a96420296a7f47bf866f162": {
            "targetId": "4bb80aa88a96420296a7f47bf866f162",
            "action": "USEEXISTING",
            "name": "Actual Portfolio Cost by Program",
            "isValid": true
        }
    },
    "EXTSEC": {
        "65f8637900015e4dceb6fe079bd5409d": {
            "targetId": "65f8637900015e4dceb6fe079bd5409d",
            "action": "USEEXISTING",
            "name": "Asnyc List",
            "isValid": true
        }
    },
    "PTLTAB": {
        "65f8638a00016422a83ddc3508852d0f": {
            "targetId": "65f8638a00016422a83ddc3508852d0f",
            "action": "CREATEWITHALTNAME",
            "name": "Cool 2.0 The Best",
            "isValid": true
        }
    }
}

Schritt 2: Ändern der Übersetzungskarte

Für diesen Schritt gibt es keinen Endpunkt.

  1. Überprüfen Sie in der Übersetzungszuordnung, die in Schritt 1 - Erstellen einer Übersetzungszuordnung zurückgegeben wird, die Liste der zu installierenden Objekte.

  2. Aktualisieren Sie das Aktionsfeld für jedes Objekt auf die gewünschte Installationsaktion.

  3. Validieren Sie die targetId für jedes Objekt. Wenn die festgelegte Aktion USEEXISTING oder OVERWRITING ist, sollte für die targetId die UUID des Zielobjekts in der Zielumgebung festgelegt werden. Bei jeder anderen Aktion sollte targetId eine leere Zeichenfolge sein.

    note note
    NOTE
    Die targetId ist bereits ausgefüllt, wenn eine Kollision erkannt wurde.

Schritt 3 - Installieren

URL

POST https://{domain}.{environment}.workfront.com/environment-promotion/api/v1/packages/{id}/install

Text

Dies ist ein Objekt mit einem einzelnen Feld translationMap, das der geänderten Übersetzungszuordnung aus Schritt 2 - Übersetzungszuordnung ändern entsprechen sollte.

{
    "translationMap": {
        {objcode}: {
            {object uuid}: {
                "targetId": {uuid of object in destination},
                "action": {installation action},
                "name": {name of the object},
                "isValid": true
            },
            {...more objects}
        },
        {...more objcodes}
    }
}

Beispiel

{
    "translationMap": {
    "UIVW": {
        "109f611680bb3a2b0c0a8c1f5ec63f6d": {
            "targetId": "6643a26b0001401ff797ccb318f97aa6",
            "action": "USEEXISTING",
            "name": "Actual Portfolio Cost by Program",
            "isValid": true
        }
    },
    "UIGB": {
        "edb4c6c127d38910e4860eb25569a5cc": {
            "targetId": "6643a26b000178fb5cc27b74cc1e87ec",
            "action": "USEEXISTING",
            "name": "Actual Portfolio Cost by Program",
            "isValid": true
        }
    },
    "UIFT": {
        "f97b662e229fd09ee595d8d359ec88bd": {
            "targetId": "6643a26b00015cdd6727b76d6fda1d1d",
            "action": "OVERWRITING",
            "name": "Actual Portfolio Cost by Program",
            "isValid": true
        }
    },
    "PTLSEC": {
        "4bb80aa88a96420296a7f47bf866f162": {
            "targetId": "4bb80aa88a96420296a7f47bf866f162",
            "action": "USEEXISTING",
            "name": "Actual Portfolio Cost by Program",
            "isValid": true
        }
    },
    "EXTSEC": {
        "65f8637900015e4dceb6fe079bd5409d": {
            "targetId": "65f8637900015e4dceb6fe079bd5409d",
            "action": "USEEXISTING",
            "name": "Asnyc List",
            "isValid": true
        }
    },
    "PTLTAB": {
        "65f8638a00016422a83ddc3508852d0f": {
            "targetId": "65f8638a00016422a83ddc3508852d0f",
            "action": "CREATEWITHALTNAME",
            "name": "Cool 2.0 The Best",
            "isValid": true
        }
    }
}
}

Reaktion

Die Antwort enthält den Status {uuid of the created installation} und 202 - ACCEPTED.

Beispiel: b6aa0af8-3520-4b25-aca3-86793dff44a6

recommendation-more-help
5f00cc6b-2202-40d6-bcd0-3ee0c2316b43