The observed behavior involves a failure in the evaluation of a complex Architect expression during the parsing of a JSON response returned via a Data Action. Specifically, an attempt to map a nested numeric value from the response body to a flow variable results in a Type Mismatch error, despite the source value conforming to the expected integer format. This issue is documented internally under INC-8821.
The Data Action executes a POST request to /api/v2/conversations/{conversationId}/participants/{participantId}/replace/contact/external. The response payload is valid JSON. However, when the expression attempts to extract a specific property for use in a decision block, the evaluation fails.
The expression in question follows this logic:
ToInteger(JsonPath(Task.ResponseData, "$.data.statusId"))
The returned JSON is as follows:
{
"data": {
"statusId": 102,
"updatedAt": "2023-10-27T14:00:00Z"
}
}
Verification of the variable type in the Architect Flow confirms it’s set to Integer. Testing via the Data Action simulator returns the correct value, but the runtime execution in the IVR fails consistently. This is not a 400 or 404 error. The API call succeeds, but the subsequent Architect expression fails to resolve the value. Not 100% sure but it feels like a casting issue during the transition from the JSON object to the flow variable.