ThunderPhone 2.0 is live.Self-serve, from 2¢/min.Read the announcement

Facts verified against published sources on .

Amazon Connect AI voice agent integration

An Amazon Connect flow can send a caller to a ThunderPhone AI voice agent through Connect's External voice transfer connector, with the contact id and any UUI you set. When the agent is done, it hangs up, your flow resumes after the transfer block, and a Lambda fetches the agent's hand-off by contact id.

Connect stays in charge of the contact. The AI agent is one block in the middle of your flow.

Setup guide: Connect from Amazon Connect has the connector setup, the flow block settings, a ready-to-use Lambda and the test steps.

What it does for Amazon Connect teams

The AI agent handles the open-ended part of the call: a conversation in the caller's own words, in any of 47 languages, with live tools such as calendars and CRMs. When it's done, your flow picks up where it left off and can branch on what happened. A Lambda returns the agent's intent as a flat value, so a Check contact attributes block can route a billing_dispute differently from a new_order, and the summary can be set as a contact attribute for the person who takes the call.

How the call flows

In. In the Connect console you create a voice transfer integration under External Voice Systems, with an outbound route to sip.thunderphone.com over TLS on port 5061. The connector doesn't document digest authentication, so the agent's SIP endpoint accepts calls from your Region's Connect signalling ranges by IP allowlist. In the flow, a Transfer to phone number block set to External voice system names the connector, puts the endpoint's user part in To User, and optionally adds UUI. Set Resume flow after disconnect to Yes.

Connect sends the contact id in X-Amzn-ConnectContactId, which ThunderPhone stores as the call's external_call_id. The UUI reaches the prompt as {{sip_uui}}.

Back. AWS documents no way for Connect to accept a REFER from the agent or to read headers on a BYE. So the agent returns the call: it says goodbye and hangs up, and the flow resumes. An Invoke AWS Lambda function block then looks up the hand-off by contact id and returns intent and summary for the flow to use.

Setup at a glance

  1. Request the "External voice transfer connectors per account" quota increase. The menu stays hidden until AWS approves it.
  2. Create an IP-allowlist SIP endpoint for the agent with Connect's signalling ranges for your Region.
  3. Create the voice transfer integration and point its outbound route at ThunderPhone over TLS.
  4. Add the Transfer to phone number block, with Resume flow after disconnect on.
  5. Add a return transfer entry to the agent, deploy the Lambda from the guide with your API key stored encrypted (for example in AWS Secrets Manager), and test.

Limits and prerequisites

  • Check availability first. AWS's current admin guide no longer has pages for external voice transfer. Confirm with AWS that the connector is available for your instance and Region before you build on it.
  • AWS charges for the connector. AWS bills each connector per day ($100 a day since July 21, 2025) plus per-minute usage. ThunderPhone's minutes are billed separately.
  • The contact id is the only link back. Connect can't read the X-TP-Handoff-Id header on the BYE, so the Lambda looks the call up by contact id.
  • Lambda timing. A synchronous Lambda block times out after 8 seconds. The sample Lambda uses a 5-second request timeout.
  • TLS or TCP only. The endpoint refuses UDP. AWS doesn't document which protocols the connector offers, so confirm it can use TLS or TCP.

Frequently asked questions

Can ThunderPhone be the AI voice agent in an Amazon Connect contact flow?

Yes. A Transfer to phone number block sends the caller to the agent through the external voice transfer connector, and with Resume flow after disconnect set to Yes, the flow continues when the agent hangs up. Confirm with AWS that the connector is available in your Region first.

How does Amazon Connect get the AI agent's summary?

An Invoke AWS Lambda function block after the transfer calls ThunderPhone's hand-off lookup with the contact id. The Lambda in the docs guide returns found, intent and summary as a flat map, so the flow can branch on the intent and set the summary as a contact attribute.

Does this replace Amazon Lex?

It can take over the conversational part of a flow that would otherwise use a Lex bot, but nothing requires you to remove Lex. The AI agent is a single block in your flow, and you decide which callers reach it.

What does it cost to use ThunderPhone with Amazon Connect?

AWS bills the external voice transfer connector per day plus per-minute usage. ThunderPhone bills the agent's minutes at its normal per-minute rate, with no phone-number charge. See ThunderPhone pricing.

Is ThunderPhone on AWS Marketplace?

No. ThunderPhone isn't listed on AWS Marketplace today. You buy ThunderPhone directly and connect it with the connector described here.

Related