Event subscription versioning
Workfront has two versions of event subscriptions. This article describes the differences between them.
The new version is not a change to the Workfront API, but rather a change to the event subscription functionality.
The ability to upgrade or downgrade event subscriptions ensures that when changes are made to the structure of events, existing subscriptions do not break, allowing you to test and upgrade to the new version without a gap in your event subscription.
When you upgrade or downgrade your event subscription to another version, you receive duplicate events for every event delivery for a five minute window after the version change. The duplicates include one each of event subscription version 1 and version 2. This ensures that you do not miss any events due to changing the event subscription version.
For information on the endpoints used for upgrading or downgrading event subscriptions, see Event subscription versioning in the article Event subscription API.
- 25.2 Release (April 10, 2025): All new subscriptions created after the 25.2 release are created as Version 2.
- January 15, 2026: All remaining Version 1 subscriptions are migrated to Version 2.
Changes between Version 1 and Version 2
The following changes have been made for event subscriptions Version 2:
General changes
CREATE event would be sent, and then an UPDATE would be sent with the parameter values (including calculated fields and their values).CREATE event will be sent and will contain parameter values including calculated fields.UPDATE events and are expecting to receive an UPDATE event after an object is created with calculated parameter values, you will no longer receive that UPDATE event. If you wish to see calculated parameter values on object creation, you must create an additional CREATE subscription.For any type of event that contains a change on a multi-select type field, if the field only contained one value it would be converted to and sent as a string. Otherwise it would be sent as an array.
Examples:
myMultiSelectField: ["oneValue"]is converted and sent asmyMultiSelectField: "oneValue".myMultiSelectField: ["first", "second"]is sent asmyMultiSelectField: ["first", "second"].
Regardless of how many values are in the array, it will be sent as an array.
Examples:
myMultiSelectField: ["oneValue"]is sent asmyMultiSelectField: ["oneValue"].myMultiSelectField: ["first", "second"]is sent asmyMultiSelectField: ["first", "second"].
Object specific changes
projectIDtaskIDopTaskIDcustomerID
UPDATE event sometimes incorrectly showed the affected fields change from null to ID value.UPDATE events show the correct value for the affected fields.UPDATE event only if these fields have actually changed, not if any other value has changed.referenceObjID
UPDATE event incorrectly showed the affected field change from null to object id.UPDATE events show the correct value for the affected fields.UPDATE event only if these fields have actually changed, not if any other value has changed.groups
DELETE event incorrectly showed the affected field as an empty array in the before state.DELETE event correctly shows the affected field in the before state.DELETE event will still be sent but now show correct data for the affected field.proofDecisionproofNameproofProgress
UPDATE events would be sent. The first one did not include the affected fields while the second event did.UPDATE event, and a second unnecessary event is not sent.topReferenceObjCodereferenceObjectName
UPDATE event incorrectly showed topReferenceObjCode change from EXPNS to PROJ, and referenceObjectName change from null to string value of project name.UPDATE events show the correct value for the affected fields.UPDATE event only if these fields have actually changed, not if any other value has changed.topReferenceObjCodereferenceObjectName
UPDATE event was sent changing the affected fields to null before the DELETE event was sent.UPDATE event is not sent. The DELETE event has correct values for the affected fields in the before state.UPDATE events and are expecting to receive it when the object is deleted, you no longer receive that UPDATE event. If you wish to see these fields when the object is deleted, you must create an additional DELETE subscription.projectIDtaskIDroleIDtimesheetIDhourTypeIDprojectOverheadIDreferenceObjIDreferenceObjCodesecurityRootID
DELETE event incorrectly showed the affected fields as null in the before state.DELETE event correctly shows the affected fields in the before state.DELETE event is still sent, but now shows correct data for the affected fields.rootGroupID
UPDATE event incorrectly showed the affected field change from null to ID value.UPDATE events show the correct value for the affected field.UPDATE event only if that field has actually changed, not if any other parameter value has changed.resolveProjectIDresolveTaskIDresolvingObjID
UPDATE event sometimes incorrectly showed the affected fields change from null to ID value.UPDATE events will show the correct value for the affected fields.rootGroupID
UPDATE event incorrectly showed the affected field change from null to ID value.UPDATE events show the correct value for the affected field.UPDATE event only if that field has actually changed, not if any other parameter value has changed.convertedOpTaskID
UPDATE event sometimes incorrectly showed the affected fields change from null to ID value.UPDATE events show the correct value for the affected field.UPDATE event only if that field has actually changed, not if any other parameter value has changed.rootGroupID
UPDATE event incorrectly showed the affected field change from null to ID value.UPDATE events show the correct value for the affected field.UPDATE event only if that field has actually changed, not if any other parameter value has changed.convertedOpTaskID
UPDATE event sometimes incorrectly showed the affected fields change from null to ID value.UPDATE events show the correct value for the affected field.UPDATE event only if that field has actually changed, not if any other parameter value has changed.Update event subscription version in a Workfront Fusion scenario
Workfront Fusion uses event subscriptions to watch for changes in Workfront to trigger scenarios. You can update the event susbcription version that Fusion uses directly in a scenario, using the Workfront > Update Events Payload Version module.
For instructions on using this module, see Workfront modules In the Workfront Fusion documentation.
For resources on preserving your Workfront Fusion scenarios during the event subscription upgrade, including a webinar recording, see .