Grundlagen zur Adobe Workfront-Planung-API

IMPORTANT
Die Informationen in diesem Artikel beziehen sich auf Adobe Workfront-Planung, eine zusätzliche Funktion von Adobe Workfront.
Eine Liste der Anforderungen für den Zugriff auf Workfront-Planung finden Sie unter Überblick über den Zugriff auf Adobe Workfront-Planung.
Allgemeine Informationen zu Workfront Planning finden Sie unter Erste Schritte mit Adobe Workfront Planning.

Das Ziel der Adobe Workfront Planning-API besteht darin, die Erstellung von Integrationen mit Planning zu vereinfachen, indem eine RESTful-Architektur eingeführt wird, die über HTTP ausgeführt wird. In diesem Dokument wird davon ausgegangen, dass Sie mit REST- und JSON-Antworten vertraut sind.

Eine vollständige Endpunktreferenz, Anfrage-/Antwortschemata und versionsspezifische Details finden Sie in der Entwicklerdokumentation zur Workfront Planning API.

Authentifizierung

Die Workfront Planning-API verwendet OAuth 2.0 zur Authentifizierung. Anmeldedaten werden über die Adobe Developer Console eingerichtet.

Je nach Integrationstyp werden die folgenden beiden Flüsse unterstützt:

  • Server-zu-Server-Authentifizierung (JWT): Für automatisierte Integrationen und Backend-Services ohne Benutzerinteraktion. Verwendet die OAuth Server-zu-Server-Anmeldedaten (Client-Anmeldedaten erteilen - Ihre Anwendung authentifiziert sich direkt mithilfe ihrer Client-ID und ihres Geheimnisses, um ein Zugriffstoken zu erhalten, ohne dass ein Benutzer-Login oder Einverständnisschritt erforderlich ist).

    Weitere Informationen finden Sie unter Server-zu-Server-.

  • Benutzerauthentifizierung (Autorisierungs-Code-Fluss) für Integrationen, die im Namen eines bestimmten Benutzers handeln. Verwendet die Anmeldeinformationen für die OAuth-Web-App oder die Einzelseiten-App (Autorisierungs-Code erteilen - der Benutzer meldet sich an und willigt ein, woraufhin Ihre Anwendung einen Autorisierungs-Code erhält und gegen ein Zugriffs-Token eintauscht).

    Weitere Informationen finden Sie unter Benutzerauthentifizierung.

Erstellen Sie zunächst ein Projekt in der Adobe Developer Console und fügen Sie die Workfront Planning-API hinzu, um Ihre Anmeldeinformationen abzurufen.

Um Anmeldeinformationen einzurichten, erstellen Sie ein OAuth2-Programm in Workfront.

Weitere Informationen finden Sie unter Erstellen von OAuth2-Programmen für Workfront-Integrationen.

NOTE
Der /login-Endpunkt und die API-Schlüsselauthentifizierung werden für Workfront Planning nicht unterstützt. Verwenden Sie keine sessionID oder apiKey Parameter.

API-Versionierung

Die Planning-API wird über den URL-Pfad versioniert.

Die folgenden Versionen werden derzeit unterstützt:

Version
Veröffentlichungsdatum
Version 1
Juli 2024
Version 2
Mai 2026
NOTE
Der Workfront Planning-Connector für Workfront Fusion wurde nicht auf API-Version 2 aktualisiert und verwendet Version 1 bis auf Weiteres.

Weitere Informationen zu den derzeit unterstützten Versionen finden Sie im Artikel Entwicklerdokumentation für die Workfront Planning API.

Es wird empfohlen, eine Version in allen Integrationen explizit festzulegen:

https://{customer-domain}/maestro/api/v2/...

Wenn eine neue Hauptversion veröffentlicht wird, ist die vorherige Version weiterhin verfügbar, bis ein Verfallsdatum mitgeteilt wird.

Folgen Sie den Workfront-Versionshinweisen , um über API-Änderungen auf dem Laufenden zu bleiben.

URL-Struktur und -Vorgänge

Objekte werden durch Senden einer HTTP-Anfrage an den eindeutigen URI bearbeitet. Der Vorgang wird durch die HTTP-Methode angegeben.

Methode
Vorgang
GET
Abrufen eines einzelnen Objekts nach ID oder Suche/Listenobjekte
POST
Neues Objekt erstellen
PUT
Vorhandenes Objekt ersetzen (vollständige Aktualisierung)
PATCH
Vorhandenes Objekt teilweise aktualisieren (nur die angegebenen Felder werden geändert)
LÖSCHEN
Löschen eines Objekts
NOTE
Version1 Hinweis: PATCH wird in Version 1 nicht unterstützt. PUT für alle Aktualisierungen verwenden.

Vollständige Endpunktpfade und Anfrage-/Antwortbeispiele finden Sie in der API-Referenz unter developer.adobe.com/wf-planning.

HTTP-Status-Codes

Die Planning-API gibt Standard-HTTP-Status-Codes zurück:

Code
Bedeutung
200 OK
Erfolgreicher GET-, PUT- oder PATCH-Test
201 Erstellt
Erfolgreicher POST (Ressource erstellt)
204 Kein Inhalt
Erfolgreiche DELETE
207 Multi-Status
Massenvorgang mit gemischten Ergebnissen abgeschlossen, wobei einige Elemente erfolgreich waren und einige fehlgeschlagen sind. Details finden Sie in den Antworten auf einzelne Elemente.
400 Fehlerhafte Anfrage
Ungültige Anfrage — Details finden Sie in der Fehlerantwort
401 Nicht autorisiert
Fehlendes oder ungültiges Authentifizierungstoken
403 Verboten
Authentifiziert, aber unzureichende Berechtigungen
404 nicht gefunden
Ressource existiert nicht
409 Konflikt
Bei einem Schreibkonflikt wurde die Ressource durch eine andere Anfrage geändert. Versuchen Sie es erneut mit der neuesten Version.
429 zu viele Anfragen
Ratenlimit überschritten
NOTE
Hinweis Version 1: Version 1 gibt 200 OK für alle erfolgreichen Vorgänge zurück, einschließlich POST und DELETE.

Umgang mit Fehlern

Die Planning-API gibt Fehler in einem konsistenten Format zurück. Jede Fehlerantwort enthält eine für Menschen lesbare Nachricht, einen maschinenlesbaren Fehlercode und eine Anfrage-ID für die Support-Eskalation.

Beispielfehlerantwort:

json
{
  "title": "Validation failed",
  "status": 400,
  "detail": "Request validation failed. See 'errors' for details.",
  "errorCode": "VALIDATION_FAILED",
  "requestId": "req-123",
  "errors": [
    { "field": "name", "message": "must not be blank" }
  ]
}

Verwenden Sie errorCode (nicht status), um die programmgesteuerte Fehlerbehandlung zu steuern. Er bietet die spezifischste Klassifizierung des Fehlers.

NOTE
Hinweis zu Version 1: Fehlerantworten der Version 1 verwenden ein numerisches type (z. B. 40001) anstelle eines errorCode und schließen Details in ein report-Objekt anstelle eines detail-Felds der obersten Ebene ein.

Datensätze filtern

Verwenden Sie den filter-Parameter in Datensatzsuchanfragen, um nur Datensätze zurückzugeben, die bestimmten Kriterien entsprechen. Bei POST-Anfragen ist filter eine JSON-Eigenschaft im Anfragetext. Bei GET-Anfragen ist filter ein Abfrageparameter, der eine JSON-codierte Filtergruppe enthält. Filter verwenden eine typisierte zusammengesetzte Struktur mit expliziten logischen Operatoren.

json
{
  "filter": {
    "operator": "AND",
    "conditions": [
      { "fieldId": "<fieldId>", "condition": "IS", "value": "Active" },
      { "fieldId": "<fieldId>", "condition": "CONTAINS", "value": "marketing" }
    ]
  }
}

Filter können mit AND/OR-Operatoren verschachtelt werden, um zusammengesetzte Bedingungen zu erstellen:

json
{
  "filter": {
    "operator": "OR",
    "conditions": [
      {
        "operator": "AND",
        "conditions": [
          { "fieldId": "<fieldId>", "condition": "BETWEEN", "value": ["2024-03-31T20:00:00.000Z", "2024-04-01T20:00:00.000Z"] },
          { "fieldId": "<fieldId>", "condition": "IS", "value": "active" }
        ]
      },
      {
        "operator": "AND",
        "conditions": [
          { "fieldId": "<fieldId>", "condition": "IS_BETWEEN", "value": ["2024-04-15T00:00:00.000Z", "2024-04-16T00:00:00.000Z"] },
          { "fieldId": "<fieldId>", "condition": "IS", "value": "planned" }
        ]
      }
    ]
  }
}
NOTE
Version 1 Hinweis: Version 1 verwendet nicht typisierte Operatoren im Mongo-Stil in einem filters. Operatoren erhalten das Präfix $ (z. B. $and, $or, $is, $contains, $isBetween). Paginierungsparameter (offset, limit) und recordTypeId werden im Anfragetext und nicht als URL-Pfad und Abfrageparameter übergeben.

Feldtypen und Suchmodifikatoren

Sie können Modifikatoren und Filter mit Feldern verwenden, um zu steuern, welche Daten in den Ergebnissen zurückgegeben werden.

Beispiele finden Sie in der Entwicklerdokumentation zur Workfront Planning API.

Verwenden von Suchmodifikatoren

Workfront Planning unterstützt die folgenden Suchmodifikatoren:

Modifikator
Beispiel
Beschreibung
Mögliche Werte
CONTAINS
{„fieldId“:“<id>",„condition“:„CONTAINS“,„value“:„product“}
Gibt Datensätze zurück, deren Feldwert den Filter enthält
„Neue Produkteinführung“
DOES_NOT_CONTAIN
{„fieldId“:“<id>",„condition“:„DOES_NOT_CONTAIN“,„value“:„product“}
Gibt Datensätze zurück, bei denen der Feldwert den Filter nicht enthält
„Neue Einführung“
IST
{„fieldId“:“<id>",„condition“:„IS“,„value“:„New Product Launch“}
Gibt Datensätze zurück, deren Feldwert genau mit dem Filter übereinstimmt
„Neue Produkteinführung“
IS_NOT
{„fieldId“:“<id>",„condition“:„IS_NOT“,„value“:„product“}
Gibt Datensätze zurück, deren Feldwert nicht genau mit dem Filter übereinstimmt
„Neue Produkteinführung“
IS_EMPTY
{„fieldId“:“<id>",„condition“:„IS_EMPTY“}
Gibt Datensätze zurück, deren Feldwert leer ist
"" oder „null“
IS_NOT_EMPTY
{„fieldId“:“<id>",„condition“:„IS_NOT_EMPTY“}
Gibt Datensätze zurück, deren Feldwert nicht leer ist
„Neue Produkteinführung“
GRÖSSER_ALS
{„fieldId“:“<id>",„condition“:„GREATER_THAN“,„value“:„10“}
Gibt Datensätze zurück, deren Feldwert größer als der Filter ist
"11"
GRÖSSER_ALS_ODER_GLEICH
{„fieldId“:“<id>",„condition“:„GREATER_THAN_OR_EQUAL“,„value“:„10“}
Gibt Datensätze zurück, deren Feldwert größer oder gleich dem Filter ist.
"10", "11"
LESS_THAN
{„fieldId“:“<id>",„condition“:„LESS_THAN“,„value“:„10“}
Gibt Datensätze zurück, deren Feldwert kleiner als der Filter ist
"9"
LESS_THAN_OR_EQUAL
{„fieldId“:“<id>",„condition“:„LESS_THAN_OR_EQUAL“,„value“:„10“}
Gibt Datensätze zurück, deren Feldwert kleiner oder gleich dem Filter ist.
"9", "10"
IS_BETWEEN
{„fieldId“:“<id>",„condition“:„IS_BETWEEN“,„value“:[„2024-01-01“,„2024-12-31“]}
Gibt Datensätze zurück, deren Feldwert zwischen den beiden Filterwerten liegt.
["2024-03-01","2024-06-30"]
IS_NOT_BETWEEN
{„fieldId“:“<id>",„condition“:„IS_NOT_BETWEEN“,„value“:[„2024-01-01“,„2024-12-31“]}
Gibt Datensätze zurück, deren Feldwert nicht zwischen den beiden Filterwerten liegt
["2023-01-01","2025-06-30"]
IS_AFTER
{„fieldId“:“<id>",„condition“:„IS_AFTER“,„value“:„2024-01-01“}
Gibt Datensätze zurück, deren Datumsfeldwert nach dem Filter liegt.
"2024-06-01"
IS_BEFORE
{„fieldId“:“<id>",„condition“:„IS_BEFORE“,„value“:„2024-12-31“}
Gibt Datensätze zurück, deren Datumsfeldwert vor dem Filter liegt.
"2024-06-01"
IS_ANY_OF
{„fieldId“:“<id>",„condition“:„IS_ANY_OF“,„value“:[„Active“,„Planned“]}
Gibt Datensätze zurück, deren Feldwert mit einem Wert in der Filterliste übereinstimmt
[„Aktiv“,„Geplant“,„Abgeschlossen“]
IS_NONE_OF
{„fieldId“:“<id>",„condition“:„IS_NONE_OF“,„value“:[„Active“,„Planned“]}
Gibt Datensätze zurück, deren Feldwert keinem der Werte in der Filterliste entspricht
[„Aktiv“,„Geplant“]
HAS_ANY_OF
{„fieldId“:“<id>",„condition“:„HAS_ANY_OF“,„value“:[„Tag1“,„Tag2“]}
Gibt Datensätze zurück, deren mehrwertiges Feld einen der Filterwerte enthält
[„Tag1“,„Tag2“]
HAS_ALL_OF
{„fieldId“:“<id>",„condition“:„HAS_ALL_OF“,„value“:[„Tag1“,„Tag2“]}
Gibt Datensätze zurück, deren mehrwertiges Feld alle Filterwerte enthält
[„Tag1“,„Tag2“]
IS_EXACTLY
{„fieldId“:“<id>",„condition“:„IS_EXACTLY“,„value“:[„Tag1“]}
Gibt Datensätze zurück, deren mehrwertiges Feld genau die Filterwerte und keine weiteren enthält
[„Tag1“]
HAS_NONE_OF
{„fieldId“:“<id>",„condition“:„HAS_NONE_OF“,„value“:[„Tag1“]}
Gibt Datensätze zurück, deren mehrwertiges Feld keinen der Filterwerte enthält
[„Tag1“]
NOTE
Version 1 Hinweis: V1-Modifikatornamen verwenden $-prefixed camelCase (z. B. $contains, $isNot, $isEmpty, $greaterThan, $greaterThanOrEqual, $lessThan, $lessThanOrEqual, $isBetween, $isNotBetween, $isAnyOf, $hasAllOf). Das Verhalten der einzelnen Modifikatoren ist identisch.

Unterstützte Filterbedingungen nach Feldtyp

Feldtyp
Unterstützte Bedingungen
Text, Langtext
ENTHÄLT, DOES_NOT_CONTAIN, IS, IS_NOT, IS_EMPTY, IS_NOT_EMPTY
Zahl, Prozentsatz, Währung
IS, IS_NOT, GREATER_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN, LESS_THAN_OR_EQUAL, IS_EMPTY, IS_NOT_EMPTY
Datum
IS, IS_NOT, IS_AFTER, IS_BEFORE, IS_BETWEEN, IS_NOT_BETWEEN, IS_EMPTY, IS_NOT_EMPTY
Einzelauswahl
IS, IS_NOT, IS_ANY_OF, IS_NONE_OF, IS_EMPTY, IS_NOT_EMPTY
Mehrfachauswahl, Benutzer
HAS_ANY_OF, HAS_ALL_OF, IS_EXACTLY, HAS_NONE_OF, IS_EMPTY, IS_NOT_EMPTY
Boolescher Wert
IST
Formel
ENTHÄLT, DOES_NOT_CONTAIN, IS, IS_NOT, IS_EMPTY, IS_NOT_EMPTY
created-by
IS, IS_NOT, IS_ANY_OF, IS_NONE_OF
Aktualisiert von
IS, IS_NOT, IS_ANY_OF, IS_NONE_OF, IS_EMPTY, IS_NOT_EMPTY
created-at
IS, IS_NOT, IS_AFTER, IS_BEFORE, IS_BETWEEN, IS_NOT_BETWEEN
updated-at
IS, IS_NOT, IS_AFTER, IS_BEFORE, IS_BETWEEN, IS_NOT_BETWEEN, IS_EMPTY, IS_NOT_EMPTY
Verweis
HAS_ANY_OF, HAS_ALL_OF, IS_EXACTLY, HAS_NONE_OF, IS_EMPTY, IS_NOT_EMPTY
Lookup
Hängt vom verknüpften Feldtyp ab
NOTE
Version 1 Hinweis: Version 1 verwendet $-vorangestellte Operatornamen (z. B. $contains, $greaterThan, $isAnyOf, $hasAllOf). Der Satz unterstützter Bedingungen pro Feldtyp ist identisch.

Nach Personenfeldern filtern

Personenfeldfilter (user, created-by, updated-by, approved-by) akzeptieren sowohl Adobe IMS- als auch Workfront-Benutzer-IDs. Ein einfacher Zeichenfolgenwert wird als Adobe IMS-Benutzer-ID interpretiert.

Um den Kennungstyp zur Überprüfung der Workfront-Benutzer-ID festzulegen, müssen Sie explizit id- und idType übergeben. Unterstützte Werte für idType sind “WF” für Workfront-Benutzer-IDs und “IMS” für Adobe IMS-Benutzer-IDs.

{
  "filter": {
   "operator": "AND",
    "conditions": [
      {
        "fieldId": "<userFieldId>",
        "condition": "HAS_ANY_OF",
        "value": [
          { "id": "63e3b13000078c1795146248182d15dc", "idType": "WF" }
        ]
      }
    ]
  }
}
NOTE
Hinweis zur Version 1: V1 unterstützt nur das Filtern nach der IMS-ID der Benutzer.

Filtern externer Referenzfelder nach externer ID

Externe Referenzfelder verknüpfen Datensätze mit Objekten in anderen Adobe-Systemen (z. B. Workfront-Projekten oder AEM Assets). Intern weist Planning diesen Objekten Planungsdatensatz-IDs zu. Um diese Felder direkt nach ihrer ursprünglichen Objekt-ID zu filtern, fügen Sie "matchExternalId": true zu einer Filterbedingung hinzu.

Dieses Flag ist nur für Referenzfelder gültig, bei denen referenceOptions.isExternal true ist. Bei nicht externen Referenzfeldern wird es ignoriert. Wenn ein einzelner Zeichenfolgenwert nicht aufgelöst werden kann, schlägt die Anfrage mit 400 Bad Request fehl. Wenn ein Listenwert angegeben wird, durchlaufen nicht aufgelöste Einträge unveränderte Elemente und stimmen einfach nicht überein.

{
  "filter": {
    "operator": "AND",
    "conditions": [
      {
        "fieldId": "<externalReferenceFieldId>",
        "condition": "IS_ANY_OF",
        "value": [
          "5f6a4f6e00000123456789abcdef0123",
          "/content/dam/wknd/en/adventures/bali-surf-camp"
        ],
        "matchExternalId": true
      }
    ]
  }
}
NOTE
Hinweis zu Version 1: V1 unterstützt nicht das Filtern nach externen Objekt-IDs.

Felder für externe Verbindungen

Planungs-Datensatztypen können externe Referenzfelder hosten, die Datensätze mit Objekten in anderen Adobe-Systemen verknüpfen, anstatt mit anderen Planungs-Datensatztypen.

Um ein externes Referenzfeld über die API zu erstellen, legen Sie referenceOptions.recordTypeId in einem neuen REFERENCE auf die ID des gewünschten externen Datensatztyps fest. Der Server leitet referenceOptions.isExternal=true und die Verbindungsmetadaten (connectionName, objectName) automatisch vom Zieldatensatztyp ab.

Zu den unterstützten externen Objekttypen gehören Workfront-Objekte (Projekte, Aufgaben, Programme, Portfolios, Unternehmen, Gruppen, Teams, Benutzer) und AEM Assets (Assets, Inhaltsfragmente).

NOTE
Hinweis zu Version 1: V1 unterstützt nicht das Erstellen externer Verbindungsfelder.

Sortieren

Sortieren Sie die Ergebnisse nach einem beliebigen Feld, indem Sie ein sort-Array in Ihre Anfrage aufnehmen:

json
{
  "sort": [
    { "fieldId": "F6527ecb25df57c441d92b9fc", "direction": "asc" },
    { "fieldId": "F658afcbd4a0273c67c346fd5", "direction": "desc" }
  ]
}

Mehrere Sortierfelder werden der Reihe nach ausgewertet. Wenden Sie bei der Paginierung immer eine Sortierung an, um eine konsistente Sortierung über Seiten hinweg sicherzustellen.

Um Ergebnisse zu gruppieren, fügen Sie neben Sortieren ein Gruppen-Array ein:

{
  "sort": [{ "fieldId": "F001", "direction": "asc" }],
  "group": [{ "fieldId": "F002", "direction": "asc" }]
}
NOTE
Hinweis zu Version 1: V1 verwendet sorting (nicht sort), groupingFieldIds (Array von Feld-IDs, nicht group Objekte) und die jetzt nicht mehr unterstützte rowOrderViewId, um die Zeilenreihenfolge einer vorhandenen Ansicht anzuwenden. Keiner dieser V1-Parameter wird in der Version unterstützt

Feldprojektion

Um zu begrenzen, welche Felder in einer Antwort zurückgegeben werden, verwenden Sie die fieldIds oder fieldAliases Abfrageparameter mit einer kommagetrennten Liste. Dies reduziert die Größe der Antwort-Payload und wird für Integrationen mit hohem Volumen oder Latenzabhängigkeit empfohlen.

NOTE
Version 1 Hinweis: Version 1 verwendet ?attributes= für die Projektion (z. B. ?attributes=data,createdBy) anstelle von ?fieldIds= oder ?fieldAliases=.

Paginierung

Die Planning-API unterstützt paginierte Antworten zum Verwalten großer Datensätze.

  • Cursor-basierte Paginierung wird für Arbeitsbereiche, Datensatztypen, Felder und Ansichten verwendet. Übergeben Sie einen cursor aus der vorherigen Antwort, um die nächste Seite abzurufen. Cursor-basierte Antworten enthalten das Flag HasMore , das angibt, ob mehr Seiten vorhanden sind oder nicht.
  • Seitenbasierte Paginierung wird für die Datensatzsuche verwendet. Verwenden Sie page und size als Abfrageparameter. Wenden Sie bei der Paginierung immer eine Sortierung an, um eine konsistente Sortierung über Seiten hinweg sicherzustellen. Beachten Sie, dass die Paginierung auf Null basiert. Um die Ergebnisse der zweiten Seite abzurufen, verwenden Sie “page=1” als Parameter.

Verwenden Sie beispielsweise die folgende Anfrage, um die zweite Seite mit 500 Datensätzen aus einer Datensatzsuche abzurufen:

POST /v2/record-types/{recordTypeId}/records/search?page=1&size=500
{
  "sort": [{ "fieldId": "F6527ecb25df57c441d92b9fc", "direction": "asc" }],
  "filter": { "operator": "AND", "conditions": [
    { "fieldId": "<fieldId>", "condition": "IS", "value": "active" }
  ] }
}

Alle paginierten Antworten enthalten einen strukturierten Umschlag, der angibt, ob weitere Ergebnisse verfügbar sind. Wenden Sie bei der Paginierung immer eine Sortierung an, um eine konsistente Sortierung über Seiten hinweg sicherzustellen.

NOTE
Version 1 Hinweis: V1 verwendet offset und limit im Anfrageinhalt übergeben (standardmäßig 500, max. 2.000). Um die Datensätze 2001-4000 abzurufen, legen Sie im Anfragetext "offset" fest: "2000", "limit": "2000". Die Antwort gibt ein flaches Datensatz-Array mit einem totalCount zurück.

Massenvorgänge

Die Planning-API unterstützt das Massenerstellen, Aktualisieren, Patchen und Löschen von Datensätzen in einer einzigen Anfrage. Informationen zu Endpunktpfaden Anfrageformaten und Datensatzbeschränkungen pro Vorgang finden Sie in API-Referenz🔗 unter developer.adobe.com/wf-planning.

NOTE
Version 1 Hinweis: Massenvorgänge sind in Version 1 nicht verfügbar.

Berechtigungen

Berechtigungen für Entitäten werden über eine dedizierte Berechtigungs-API verwaltet, die von den Ressourcenendpunkten selbst getrennt ist. Auf diese Weise können Sie aktuelle Berechtigungen lesen, die Freigabeliste verwalten und Zugriffsanfragen unabhängig von Datenvorgängen verarbeiten. Weitere Informationen finden Sie im Abschnitt „API-Referenzen“ im Artikel Workfront Planning API.

NOTE
Version 1 Hinweis: Version 1 stellt keine API für öffentliche Berechtigungen bereit. Berechtigungsstufe wird direkt in Ressourcenantwort-DTOs eingebettet.

Verwenden der Planning-API mit benutzerdefinierten Workfront-Formularen

Sie können die Planning-API über ein externes Suchfeld in einem benutzerdefinierten Workfront-Formular aufrufen, um Planungsdaten direkt in Workfront-Objekten einzublenden. Weitere Informationen finden Sie unter Beispiele für das externe Suchfeld in einem benutzerdefinierten Formular.

Verwandte Ressourcen

Weitere Informationen zur API finden Sie in den folgenden Artikeln:

recommendation-more-help
workfront-help-quicksilver