Architect GetExternalContactAction returning empty result for phone lookup

We’re trying to pull customer data into the flow before the agent takes over. The goal is to use the GetExternalContactAction to fetch details based on the caller’s phone number.

Here is the JSON config for the action:

{
 "name": "GetExternalContactAction",
 "actionType": "GetExternalContactAction",
 "settings": {
 "externalContactId": "{{triggeringContact.phoneNumber}}",
 "externalContactSystem": "https://api.ourcrm.com/contacts"
 }
}

The flow runs without errors. No red X. But the output variable externalContact is always empty. The CRM endpoint works fine in Postman. We get a 200 OK and the JSON body.

We checked the logs. The action says “Success” but no data maps to the variables. Is the externalContactId supposed to be the raw phone string or an internal ID? The docs are vague on this part. We tried adding a header for the auth token in the settings but that field isn’t available in the standard action config.

Maybe we need a custom script instead? Or is there a way to pass headers to this specific action type?

You’re passing the phone number into externalContactId. That field expects the specific ID from your CRM, not the raw phone string. The GetExternalContactAction doesn’t do a lookup; it fetches a record by ID. You need to use a GetContactAction or a RestAction to query your CRM first. If you’re trying to match by phone, you’ll need to call your CRM’s search endpoint with {{triggeringContact.phoneNumber}} to get the ID, then use that ID in the GetExternalContactAction.

{
 "name": "SearchContact",
 "actionType": "RestAction",
 "settings": {
 "url": "https://api.ourcrm.com/contacts?phone={{triggeringContact.phoneNumber}}",
 "method": "GET",
 "resultVariable": "crmSearchResult"
 }
}