Integrations / Attio
Attio AI voice agents that log every caller as a person
The agent looks the caller up in Attio by phone number, creates the person if there is no match, and adds a note with what the caller asked for.
Inbound sales agent
Finds or creates the Attio person and notes the call.
Instructions
Look up the caller by phone number. If there is no match, ask for their first and last name and create the person. Before the call ends, add a note with what they asked for and anything you promised. Transfer to sales if they ask for a person.
- Handoff
- Sales rep
Connected tools
- Find personWebhook
- Create personWebhook
- Add noteWebhook
- Transfer to salesTransfer
What a Attio AI voice agent can do
Open one to watch a call. The grey lines are the tools the agent calls mid-sentence.
A query on the phone_numbers attribute tells the agent if the caller is already a person in Attio, and returns the record ID.
If the query comes back empty, the agent asks for a name and creates the person, with the caller's number on the record.
Before the call ends, the agent adds a plaintext note to the person with what they wanted and what the agent told them.
Tool definitions
Webhook tools go to POST /v1/agents/tools. Transfers are a system tool on the agent. Replace the placeholder values in capitals with your own.
Find person
Finds a person by the caller's phone number.
Show the JSON definition
Create person
Creates a person with the caller's name and number.
Show the JSON definition
Add note
Adds a plaintext note to the person.
Show the JSON definition
Transfer to sales
Cold transfer to a sales rep.
Show the JSON definition
Set it up
No native connector. The tools call Attio's REST API directly with an access token from your workspace, stored as a bearer secret. Vendor details read in November 2026.
Create an access token
In Attio's developer settings, create an app for your workspace and generate an access token with
record_permission:read-write,object_configuration:readandnote:read-write.Add the tools
Add the three webhook tools with the token as a bearer secret.
find_personreadssystem__caller_id, so the agent never asks for the number.Write the instructions
Say when to create a person, which questions to ask first, and that the note goes in before any transfer.
Test with two numbers
Call from a number that is on a person in Attio, then from a new number, and check the person and the note in each case.
Documentation
- List records (checked November 2026)Attio docs
- Create a record (checked November 2026)Attio docs
- Create a note (checked November 2026)Attio docs
- Phone number attribute (checked November 2026)Attio docs
- Authentication (checked November 2026)Attio docs
- Rate limiting (checked November 2026)Attio docs
- Webhook toolsCartesia docs
- Dynamic variablesCartesia docs
Before you build
Phone numbers need a country code
Attio validates phone numbers against E.164, and a string value has to start with + and the country code.
Large records get cut off
Attio returns every attribute value on a record, and Cartesia passes at most 16 KiB of a response to the model. If your people records are large, put a small service in front.
Rate limits
Attio allows 100 read requests and 25 write requests per second, and answers with 429 and a Retry-After header above that. A few calls per phone call stays far below it.
Create fails on duplicates
The create endpoint throws if a unique attribute, such as an email address, already belongs to another person. Search first, as the instructions say.
Use cases for teams on Attio
More integrations
Enterprise-grade security
HIPAA compliant

SOC 2 Type 2

GDPR
Attio AI voice agent FAQs
How do I connect Attio to an AI voice agent?
In Attio's developer settings, create an app for your workspace and an access token with record_permission:read-write, object_configuration:read and note:read-write. Add the three webhook tools with that token as a bearer secret.
Can it write to Attio companies or deals instead of people?
Yes. The same records endpoints take another object slug, such as companies, in place of people. Check the attribute slugs in your workspace first, since custom attributes have their own.
What happens if a person record is too large for the agent?
Attio returns every attribute value on a record, and Cartesia passes at most 16 KiB of a tool response to the model. If your people records are large, put a small service in front that returns only the fields the agent needs.
Who bills the phone minutes on an Attio voice agent?
Cartesia bills the agent at $0.03/min, plus LLM usage and telephony. Phone minutes depend on the number. Cartesia-provisioned numbers are US only and carry Cartesia's telephony fee. Numbers from your Twilio account or a SIP trunk pay your carrier's rates instead. Attio's limits of 100 reads and 25 writes per second leave plenty of room.
What happens if the caller is already in Attio?
The agent finds them. find_person looks the caller up by phone number first, and the agent creates a person only when there is no match. That order matters, because Attio's create endpoint fails if a unique attribute such as an email address already belongs to another person.
Get started today
Talk to an expert.
Connect with a member of our team and learn how Cartesia can help you build world-class voice experiences.
Start building.
Access our models via API and bring a voice agent into production in minutes.