Find your people. Pick a challenge. Ship something real. The CreatorCon Hackathon is coming to the Community Pavilion for one epic night. Every skill level, every role welcome. Join us on May 5th and learn more here.

UXF Client Action Attribute returning undefined in Field Decorator Event Mapping

Vikram Gupta
Tera Contributor

I have configured a Field Decorator using a UXF Client Action to trigger a page collection. While the action successfully triggers and the page collection renders as expected, the custom attribute I defined in the Action Attribute is arriving as undefined in the target event.

Configuration Details:

Field Decorator: Implemented as UXF Client Action.
Action Payload Definition: Attribute is defined in the JSON payload and bound to the action.
UI Builder: The event mapping is configured to call a page collection.
Issue: When inspecting the payload in the handled event or the called page, the specific attribute value is missing/undefined.
Has anyone encountered this where the event fires but the payload data is dropped? I suspect a mismatch in the UX Add-on Event Mapping or the Target Payload Mapping JSON. Any guidance on the correct syntax for mapping these attributes would be appreciated.

 
 

 



@Maria Gabriela @Ashley Snyder @dylan_lindgren 

2 REPLIES 2

Naveen20
ServiceNow Employee

From Target Payload Mapping JSON:

json - 
"extensionPoint": {
"binding": {
"address": ["extensionPoint"]
},
"type": "EVENT_PAYLOAD_BINDING"
}
```

The `EVENT_PAYLOAD_BINDING` with `address: ["extensionPoint"]` means it's looking for a key called `extensionPoint` in the source action's emitted payload. If your Field Decorator's declarative action (`dq_score`) doesn't explicitly include `extensionPoint` as a property in its action payload, the binding resolves to `undefined` — which is exactly what you're seeing in that modal.

Possible fix:

1. Check your Declarative Action's payload schema — Open the `dq_score` declarative action record and verify that the Action Payload Definition includes a property named exactly `extensionPoint`. The key in the payload definition must match the address path in your event mapping verbatim.

2. Verify the Field Decorator is supplying the value — In your Field Decorator configuration, the action attribute that maps to `extensionPoint` must have a concrete value or binding at invocation time. If you're using a UXF Client Action on a Field Decorator, the payload gets constructed from the action attributes you define on the decorator. Make sure the attribute name in the decorator maps to what your action payload schema expects.

3. Try `RECORD_BINDING` as an alternative — If you're trying to pass something from the current record context (like a sys_id or field value) rather than a custom action attribute, consider switching from `EVENT_PAYLOAD_BINDING` to `RECORD_BINDING`:

```json
"extensionPoint": {
"binding": {
"address": ["fieldName"]
},
"type": "RECORD_BINDING"
}
```

4. Debug the actual payload — To confirm what's actually arriving, you can temporarily add a client script or use browser DevTools. In the browser console, filter the network requests or use the Now Experience component debugger to inspect the dispatched action's payload object. This will tell you the exact keys available at the point the event mapping tries to resolve the binding.

5. Nesting — If your action payload nests the value (e.g., `payload.data.extensionPoint` rather than `payload.extensionPoint`), your address array needs to reflect the full path: `"address": ["data", "extensionPoint"]`.

Hi Naveen 
Thanks for the input 
I found the issue in event mapping payload 
},
"type": "MAP_CONTAINER"
},

Missing these key value pair (doesn't understand the significance of the same) after adding the same it started working 
It was great to know that there is record_binding concept and we can dot walk in address 
it would be great if there is an any docs or kb article for all available properties we can explore