Set Participant Data dropping custom keys in IVR

Hey folks,

Trying to pass some custom attributes through an IVR flow using the Set Participant Data action. We’ve got a JSON payload coming from an upstream API that looks like {"campaign_id": "123", "tier": "gold"}. I’m mapping these directly in the action, but when I check the conversation context later in the flow via a debug log, the custom keys are missing. The standard system fields like id and name are there, just not our stuff.

I’ve verified the JSON is valid and the mapping syntax in Architect seems correct. No errors on the action itself, it just completes with a green check. I tried using Get Participant Data right after to verify, and sure enough, the custom fields aren’t showing up in the response payload.

Is there a specific naming convention I’m missing for custom keys? Or maybe a delay in propagation? We’re running the latest version of Architect. Any ideas on why the data isn’t sticking?

Docs state: “Custom data must be prefixed with custom. to persist.” You’re sending raw keys. Change your payload to {"custom.campaign_id": "123", "custom.tier": "gold"}. The API strips non-prefixed keys for security.