Set Participant Data action not persisting custom vars in Architect flow

Trying to pass a custom variable from an IVR flow into the Genesys Cloud Web Messaging SDK on Android. I’ve set up a flow in Architect with a Set Participant Data action. The goal is to inject a sessionToken so the mobile client can pick it up via the /api/v2/conversations/webchat/ endpoint.

Here’s the JSON payload I’m passing to the Set Participant Data action:

{
 "data": {
 "customSessionId": "abc-123-xyz",
 "priority": "high"
 }
}

The flow completes successfully, but when I hit the webchat conversation API from my Kotlin service, the participantData field is empty. I’ve checked the logs in Genesys Cloud and the action shows as successful.

Environment specs:

  • Genesys Cloud Org: US1
  • Architect Version: 2024.1
  • Android SDK: genesys-cloud-sdk-web-messaging:3.1.0
  • Auth: OAuth 2.0 Client Credentials

I’ve tried:

  • Adding a delay action after setting the data
  • Using the REST API directly to update participant data
  • Checking if the variable names need to be prefixed with custom_

Nothing works. The data just isn’t sticking. Am I missing a step in the flow configuration or is there a specific permission needed for the integration user?