We’re trying to push custom IVR inputs into the participant data payload using the Set Participant Data action in Architect. The Rust backend subscribes to the notification stream and expects these variables to show up under context.participant_data. When I drop the mapping into the action, the flow completes fine but the downstream webhook receives an empty object.
Here’s the payload I’m passing:
{
“custom_ivr_option”: “{{conversation.label}}”,
“routing_priority”: “high”,
“session_id”: “{{interaction.id}}”
}
The API docs mention that participant data needs to be flattened, but I’m not sure how the serialization works when Architect hands it off to the WebSocket event stream. We’ve tested this with a basic routing skill assignment and it works perfectly. The issue only surfaces when we try to push these key-value pairs through the node, and it doesn’t actually persist the data. Docs are pretty vague on the flattening rules. Not sure if the action just drops nested structures or if I’m missing a specific syntax requirement. The notification endpoint keeps returning an empty object on the conversation:updated event.