Grunderna i Adobe Workfront Planning API

IMPORTANT
Informationen i den här artikeln handlar om Adobe Workfront Planning, en extrafunktion från Adobe Workfront.
Du måste ha följande för att få tillgång till Workfront Planning:
  • Ett nytt Workfront-paket och en ny licens. Workfront Planning är inte tillgängligt för tidigare Workfront-paket eller licenser.
  • Ett Workfront Planning-paket.
  • Din organisations instans av Workfront måste integreras med Adobe Unified Experience.
En fullständig lista över krav för åtkomst till Workfront Planning finns i Åtkomstöversikt.
Mer information om Workfront Planning finns i Översikt över Adobe Workfront Planning.

Målet för Adobe Workfront Planning API är att förenkla byggintegreringen med Planning genom att införa en REST-full arkitektur som fungerar över HTTP. I det här dokumentet förutsätts att du känner till REST- och JSON-svar och beskriver den metod som används i Planning API.

Tack vare Workfront Planning-schemat är det lättare att förstå de databasrelationer som kan användas för att hämta data från Workfront Planning för integrering.

Du kan anropa planerings-API:t från ett externt sökfält i ett anpassat Workfront-formulär.

Mer information om externa sökfält finns i Exempel på ett externt sökfält i ett anpassat formulär.

URL för Workfront Planning API

Operationer

Objekten ändras genom att en HTTP-begäran skickas till deras unika URI. Den åtgärd som ska utföras anges av HTTP-metoden.

Standardmetoderna för HTTP motsvarar följande åtgärder:

  • GET - Hämtar ett objekt efter ID, söker efter alla objekt efter en fråga
  • POST - Infogar ett nytt objekt
  • PUT - Redigerar ett befintligt objekt
  • DELETE - Tar bort ett objekt

Mer information och exempel på de olika åtgärderna finns i dokumentationen för Workfront Planning API-utvecklare.

Fälttyper och sökmodifieringar som används med dem

Du kan använda modifierare och filter med fält för att styra vilka data som returneras i resultatet.

Använda sökmodifierare

Workfront Planning stöder följande sökmodifierare:

Modifierare
Exempel
Beskrivning
Möjliga värden
$contains
"fieldId": { "$contains": "product" }
Returnerar poster vars fältvärde innehåller filtret
"Ny produktlansering"
$doesNotContain
"fieldId": { "$doesNotContain": "product" }
Returnerar poster där fältvärdet inte innehåller filtret
"New Launch"
$is
  • "fieldId" : { "$is": "new product launch" }
  • "fieldId" : { "new product launch" }
Returnerar poster vars fältvärde exakt matchar filtret
"Ny produktlansering"
$isNot
"fieldId": { "$isNot": "product" }
Returnerar poster vars fältvärde inte matchar filtret exakt
"Ny produktlansering"
$isEmpty
  • "fieldId": "$isEmpty"
  • "fieldId": { "$isEmpty": null }
Returnerar poster vars fältvärde inte är tomt
  • ""
  • null
$isNotEmpty
  • "fieldId": "$isNotEmpty"
  • "fieldId": { "$isNotEmpty": null }
Returnerar poster vars fältvärde inte är tomt
"Ny produktlansering"
$greaterThan
"fieldId": { "$greaterThan": 10 }
Returnerar poster vars fältvärde är större än filtret
  • 20
  • 25
$greaterThanOrEqual
"fieldId": { "$greaterThanOrEqual": 10 }
Returnerar poster vars fältvärde är större än eller lika med filtret
  • 10
  • 20
  • 25
$lessThan
"fieldId": { "$lessThan": 10 }
Returnerar poster vars fältvärde är mindre än filtret
  • 5
  • 9
$lessThanOrEqual
"fieldId": { "$lessThanOrEqual": 10 }
Returnerar poster vars fältvärde är mindre än eller lika med filtret
  • 5
  • 9
    • 10
$isAfter
"fieldId": { "$isAfter": "2024-05-14T20:00:00.000Z" }
Returnerar poster vars fältvärde är efter filtret
"2024-05-15T20:00:00.000Z"
$isBefore
"fieldId": { "$isBefore": "2024-05-14T20:00:00.000Z" }
Returnerar poster vars fältvärde är före filtret
"2024-05-12T20:00:00.000Z"
$isBetween
"fieldId": { "$isBetween": ["2024-05-10T20:00:00.000Z", "2024-05-15T20:00:00.000Z"] }
Returnerar poster vars fältvärde är mellan filtret
  • "2024-05-12T20:00:00.000Z"
  • "2024-05-14T20:00:00.000Z"
$isNotBetween
"fieldId": { "$isNotBetween": ["2024-05-10T20:00:00.000Z", "2024-05-15T20:00:00.000Z"] }
Returnerar poster vars fältvärde inte är mellan filtret
  • "2024-05-09T20:00:00.000Z"
  • "2024-05-17T20:00:00.000Z"
$isAnyOf
"fieldId": { "$isAnyOf": ["active", "completed"] }
Returnerar poster vars fältvärde är något av filtret
  • "active"
  • "avslutad"
$isNoneOf
"fieldId": { "$isNoneOf": ["active", "completed"] }
Returnerar poster vars fältvärde inte är något av filtret
  • "avslutad"
  • "fixed"
$hasAnyOf
"fieldId": { "$hasAnyOf": ["active", "completed"] }
Returnerar poster vars fältvärde har något av filtren
  • ["active", "fixed"]
  • ["fixed", "completed", "completed"]
$hasAllOf
"fieldId": { "$hasAllOf": ["active", "completed"] }
Returnerar poster vars fältvärde innehåller hela filtret
  • ["active", "completed"]
  • ["active", "completed", "completed"]
$hasNoneOf
"fieldId": { "$hasNoneOf": ["active", "completed"] }
Returnerar poster vars fältvärde inte har något filter
["fixed", "completed"]
$isexact
"fieldId": { "$isExactly": ["active", "completed"] }
Returnerar poster vars fältvärde är exakt lika med filtret
["active", "completed"]

Fälttyper

Nedan finns en lista över de fälttyper som stöds och vilka sökmodifierare som kan användas för var och en av dessa fälttyper

Fälttyp
Sökmodifierare som stöds
text
$contains, $doesNotContain, $is, $isNot, $isEmpty, $isNotEmpty
lång text
$contains, $doesNotContain, $is, $isNot, $isEmpty, $isNotEmpty
tal
$is, $isNot, $greaterThan, $greaterThanOrEqual, $lessThan, $lessThanOrEqual, $isEmpty, $isNotEmpty
procent
$is, $isNot, $greaterThan, $greaterThanOrEqual, $lessThan, $lessThanOrEqual, $isEmpty, $isNotEmpty
valuta
$is, $isNot, $greaterThan, $greaterThanOrEqual, $lessThan, $lessThanOrEqual, $isEmpty, $isNotEmpty
datum
$is, $isNot, $isAfter, $isBefore, $isBetween, $isNotBetween, $isEmpty, $isNotEmpty
enkelval
$is, $isNot, $isAnyOf, $isNoneOf, $isEmpty, $isNotEmpty
markera flera
$hasAnyOf, $hasAllOf, $isExakt, $hasNoneOf, $isEmpty, $isNotEmpty
boolesk
$is
användare
$hasAnyOf, $hasAllOf, $isExakt, $hasNoneOf, $isEmpty, $isNotEmpty
formel
$contains, $doesNotContain, $is, $isNot, $isEmpty, $isNotEmpty
url
$contains, $doesNotContain, $is, $isNot, $isEmpty, $isNotEmpty
skapad av
$is, $isNot, $isAnyOf, $isNoneOf
created-at
$is, $isNot, $isAfter, $isBefore, $isBetween, $isNotBetween
uppdaterad
$is, $isNot, $isAnyOf, $isNoneOf, $isEmpty, $isNotEmpty
uppdaterad
$is, $isNot, $isAfter, $isBefore, $isBetween, $isNotBetween, $isEmpty, $isNotEmpty
referens
$hasAnyOf, $hasAllOf, $isExakt, $hasNoneOf, $isEmpty, $isNotEmpty
sökning
Beroende på det länkade fältet

Använda programsatserna "And" och "Or"

I API-anropet kan du ha filter som baseras på flera kriterier som kombineras med $and" och"$or".

{
  "recordTypeId": "recordTypeId",
  "offset": "integer",
  "limit": "integer",
  "filters": [
    {
      "$or": [
        {
          "launch_date": {
            "$isBetween": [
              "2024-03-31T20:00:00.000Z",
              "2024-04-01T20:00:00.000Z"
            ]
          }
        },
        {
          "$and": [
            {
              "launch_date": {
                "$isBetween": [
                  "2024-03-31T20:00:00.000Z",
                  "2024-04-01T20:00:00.000Z"
                ]
              }
            },
            {
              "status": "active"
            }
          ]
        },
        {
          "$and": [
            {
              "launch_date": {
                "$isBetween": [
                  "2024-04-15T00:00:00.000Z",
                  "2024-04-16T00:00:00.000Z"
                ]
              }
            },
            {
              "status": "planned"
            }
          ]
        }
      ]
    }
  ]
}

Använda fältförfrågningsparametern

Du kan använda fältparametern request för att ange en kommaavgränsad lista med specifika fält som ska returneras. Dessa fältnamn är skiftlägeskänsliga.

Till exempel begäran

/v1/records/search?attributes=data,createdBy

{
    "records": [
        {
            "id": "Rc6527ecb35df57c441d92ba00",
            "createdBy": "61a9cc0500002f9fdaa7a6f824f557e1",
            "createdAt": null,
            "updatedBy": null,
            "updatedAt": null,
            "customerId": null,
            "imsOrgId": null,
            "recordTypeId": null,
            "data": {
                "F666c0b58b6fee61a2ea6ea81": [
                    {
                        "externalId": null,
                        "id": "Rc665728ff95730b58bc757b13",
                        "value": null
                    },
....

returnerar ett svar som liknar följande:

{
    "priority": 2,
    "name": "first task",
    "ID": "4c7c08fa0000002ff924e298ee148df4",
    "plannedStartDate": "2010-08-30T09:00:00:000-0600"
}

Sortera frågeresultat i API

Du kan sortera resultatet efter vilket fält som helst om du lägger till följande i ditt API-anrop:

/v1/records/search

Begärandetext:

{
    "recordTypeId": "Rt6527ecb25df57c441d92b9fa",
    "filters": [],
    "sorting": [
        {
            "fieldId": "F6527ecb25df57c441d92b9fc",
            "direction": "asc"
        },
        {
            "fieldId": "F658afcbd4a0273c67c346fd5",
            "direction": "desc"
        }
    ],
    "limit": 500,
    "offset": 0,
    "rowOrderViewId": "V6527ecb75df57c441d92ba03",
    "groupingFieldIds": []
}

Frågebegränsningar och sidnumrerade svar

Som standard returnerar Planning API-begäranden 500 resultat från början av listan. Om du vill åsidosätta standardbegränsningen för antal resultat kan du använda parametern limit i dina begäranden och ange ett annat tal, upp till 2 000 resultat.

Vi rekommenderar att du använder sidnumrerade svar för stora datauppsättningar genom att lägga till parametern offset i dina förfrågningar. Med sidnumrerade svar kan du ange platsen för det första resultatet som ska returneras.

Om du till exempel vill returnera resultatet 2001-4000 kan du använda följande begäran. I det här exemplet returneras 2000 poster som har aktiv status, från och med resultatet 2001:

POST /v1/records/search

Begärandetext:

{
    "recordTypeId": "recordTypeId",
    "offset": "2001",
    "limit": "2000",
    "filters": [
        { "status": "active" }
    ]
}

Använd en sorteringsparameter för att försäkra dig om att resultatet är rätt sidnumrerat. Detta gör att resultaten kan returneras i samma ordning, så att sidnumreringen inte upprepas eller hoppar över resultat.

Mer information om sortering finns i Sortera frågeresultat i API:t i den här artikeln.

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