GetExternalContactAction returning empty result for valid phone number

Problem

I’m trying to use the GetExternalContactAction in Architect to look up a customer record based on their inbound phone number. The goal is to populate some custom attributes for routing logic later in the flow. I’ve set up the Data Action as a REST call to our internal CRM endpoint.

Configuration

Here is how the Data Action is configured:

  • Method: GET
  • URL: https://crm.internal/api/v1/contacts?phone={{phoneNumber}}
  • Headers: Authorization: Bearer {{token}}

The input variable phoneNumber is mapped from the interaction’s fromAddress. I’ve verified that the value passed is a valid E.164 string like +15551234567.

Output Mapping

The CRM returns a JSON object like this on a successful match:

{
 "id": "cust_99",
 "name": "John Doe",
 "tier": "gold"
}

I’ve mapped the output in Architect:

  • contactId$.id
  • customerName$.name

Issue

When I debug the flow, the Data Action always returns a 200 OK status, but the mapped output variables are empty. The contactId variable shows as undefined or null in the debug pane. The response body in the debug log clearly shows the JSON above.

I’ve tried changing the JSON path to $.body.id thinking maybe the wrapper is different, but that didn’t help either. Is there a specific format required for the phone number parameter in the URL query string? Or am I missing a step in mapping the REST response to the Architect variables?

Any help would be appreciated. I’m stuck on this simple lookup.