Adobe Workfront skills for AI agents. Includes Workfront Planning (WFP/Maestro) solution architecture: workspace design, record connections, formula fixes, tier limits, the Planning API, and a Fusion scenario optimizer.
93%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Passed
No findings from the security scan
When Adobe Experience League documentation and the actual behavior of the Planning API disagree, this file resolves which is authoritative for which question. Always reconcile before quoting a number or behavior to a customer.
Public Adobe docs describe the UI/UX surface of Workfront Planning. They document what users see and can do through the web interface.
Observed API behavior describes the programmatic surface. It documents what the Planning API actually accepts and returns.
Both are real. They serve different purposes. Discrepancies usually fall into three buckets:
| Topic | Public Adobe docs | Observed API behavior | Authoritative source | Notes |
|---|---|---|---|---|
| Number, Percentage, Currency precision (max) | "up to 6 decimal places" | "0 to 4" | API | Public docs likely outdated. Trust the observed behavior for what the API will accept. If a customer commitment depends on the exact number, confirm against the live API before quoting. |
| Currency default precision | Not specified | "Default: 2" | API | Use 2 unless explicitly configured otherwise. |
| Date format options | Locale, Standard, Long, European, ISO | API-only ISO 8601 with mandatory Z timezone | Both | Public refers to DISPLAY format choices in the UI. The API uses STORAGE format. Both correct in their layer. Do not conflate. |
| CASE function in formulas | Not mentioned (not in unsupported list either) | Supported, documented | API | Public docs are silent. CASE works. Use it. |
| Unsupported formula functions | ADDHOUR, SWITCH, FORMAT | Above plus SORTASCARRAY, SORTDESCARRAY | API | Use the longer list. |
| Reference field mechanics | "lookup field with aggregator at connect time" | referenceOptions.multiple, backField parameter | Complementary | Public describes the effect, the API describes the mechanism. Use both when explaining. |
| Filter operators | UI labels (Contains, Is any of, etc.; Q4 renames Has any/none of to Is any/none of) | v1 tokens ($contains, $hasAnyOf, etc.); v2 uppercase conditions | Both | Map UI operator to API operator when switching layers. The label change does not change API tokens. See api-contract.md for versioned operators; run node scripts/search.js api basics for the public page. |
| Color palette for select fields | "swatches or hex code" (unspecified) | 20 named colors enumerated (light-blue through dark-gray) | API | Public docs do not enumerate. The 20 named colors are: light-blue, dark-blue, light-cyan, dark-cyan, light-teal, dark-teal, light-green, dark-green, light-yellow, dark-yellow, light-orange, dark-orange, light-red, dark-red, light-pink, dark-pink, light-purple, dark-purple, light-gray, dark-gray. |
| Connection type names | Workfront, AEM, GenStudio | Workfront, AEM, Brand | Both | The API uses Brand as the connection key for GenStudio Brands. In the UI picker this appears under "Adobe Applications". When writing API code, use Brand. When talking to customers, use "GenStudio". |
| Formula function reference | Lists 6 WFP-only expressions and 3 unsupported | ~50 supported functions across date/time, math, text/logic, and Planning-specific | API | Public docs are dramatically incomplete. CASE is supported despite being omitted; ADDHOUR, SWITCH, FORMAT, SORTASCARRAY, and SORTDESCARRAY are not. |
| Bulk record operation atomicity | Not addressed | Explicitly non-atomic; must check per-record errors | API | Partial success is the normal case. Always check the response. |
| Identity model (user IDs) | Not explicitly called out | Returns Adobe IMS user IDs, NOT Workfront userIds | API | Common integration footgun. Any join against legacy Workfront data needs an IMS-to-Workfront mapping. |
| Percentage value storage | Shows percent symbol in UI | Stored as decimal (0.75 = 75%) | Both | UI display vs API storage. Do not conflate. |
If a customer or engineer reports behavior that contradicts this table, the table is the candidate for staleness, not the customer. Validate against the current API (the source closest to ground truth) and update this file. Note the date of validation in the row.
Date of this reconciliation: May 11, 2026.