Trying to understand why my Spring Boot service cannot retrieve custom participant attributes set via Web Messaging when processing an Inbound Message flow in Architect.
I am using the Java SDK to push attributes to a conversation, but they do not appear in the Architect data action payload. The documentation states: “Participant attributes are available in the flow context if the interaction type supports them.”
Here is my Java code using the SDK:
ConversationApi convApi = new ConversationApi(apiClient);
ConversationParticipantAttributeSet attrSet = new ConversationParticipantAttributeSet();
attrSet.setCustomAttributes(new LinkedHashMap<>());
attrSet.getCustomAttributes().put("source", "webchat");
convApi.conversationsParticipantsAttributesPut(conversationId, participantId, attrSet, null, null);
The API returns 204 No Content, indicating success. However, in Architect, when I map the data action, the JSON payload looks like this:
payload:
participant_attributes:
custom:
# source is missing here
Is there a specific API endpoint or SDK method I should use to ensure these attributes persist for Inbound Message interactions? The Web Messaging channel seems to handle attributes differently than Voice or Chat.