Accessing Web Messaging Participant Attributes in Architect Inbound Message Flow

Does anyone know the correct syntax to extract participant attributes set via the Genesys Cloud Web Messaging API within an Architect Inbound Message flow?

Context:
We are pushing custom metadata (e.g., ticketId, priority) to the participant using the /api/v2/conversations/messaging/participants/{participantId} PATCH endpoint. The request succeeds with a 204 No Content response. However, when the message triggers the Architect flow, I cannot locate these attributes in the conversation.participants[0].attributes object. I have verified via the Postman console that the attributes are correctly attached to the participant resource in the backend.

Question:
Is there a specific expression syntax or Data Action required to map these external attributes into flow variables? I am currently trying:

ToString(conversation.participants[0].attributes.ticketId)

This returns an empty string. I also attempted using FindFirst(conversation.participants, "id", participantId) to isolate the correct participant, but the attributes object remains null in the flow context. Are these attributes cached differently for messaging conversations, or is there a delay in propagation that I need to handle via a Wait action?

The simplest way to resolve this is to use the getParticipant expression directly in the flow.

Cause:
The standard conversation.participants list often lacks the latest attribute patches due to caching delays in the Architect runtime context.

Solution:
Query the specific participant by ID to force a fresh fetch of the metadata.

// Architect Expression
getParticipant(conversation.id, participantId).attributes.ticketId