GetExternalContactAction returning 200 but empty contact object

Trying to implement a lookup using the GetExternalContactAction in Architect. The docs state: “The action retrieves a contact from an external data source using the provided key.” We have a simple REST endpoint set up that accepts a phone number and returns the matching record. The flow is configured to pass the CallerPhoneNumber into the lookup key.

When we test the flow, the action completes successfully with a 200 status, but the contact object returned is empty. No error codes, just null fields.

Here’s the JSON payload our endpoint receives:

{
 "key": "+31612345678",
 "action": "GET"
}

And the response we send back:

{
 "firstName": "Sophia",
 "lastName": "Tester",
 "id": "12345"
}

The endpoint works fine in Postman. The issue seems to be how Architect maps the response to the internal contact object. Is there a specific schema requirement for the response body that isn’t documented? Or is the key field case-sensitive? We’ve tried both key and Key. Nothing works.

Check the response mapping in the external data source configuration. The action returns 200 if the HTTP call succeeds, but it needs explicit field mapping to populate the contact object. If your JSON returns { "name": "John" } but you haven’t mapped name to the contact schema, it stays empty. Verify the payload structure matches the source definition.