Skip to navigation

Attio

Recognize callers, add new people, and log call notes in Attio during calls.

Your receptionist can recognize callers who are already in Attio, add new callers as people with their name and phone number, and leave a note with what they wanted, so your team can follow up. There are two ways to connect:

  • Webhook tools call Attio’s API directly, with no Zapier account and no Zapier task usage.
  • Zapier actions sign in to Attio for you, but each action uses tasks from your Zapier plan.

Use webhook tools unless you can’t get an Attio admin to create an access token.

1

Create an access token

You need to be an Attio admin. Select the dropdown beside your workspace name, open Workspace settings, go to the Developers tab, and select New access token. Name it, for example Reception.ai, and give it only the scopes these tools need: object configuration read (object_configuration:read), records read-write (record_permission:read-write), and notes read-write (note:read-write). The labels in Attio may differ slightly from these names.

The token doesn’t expire, and it can see every person in your workspace. Delete it in Attio if it leaks.

2

Create the webhook tools

For each tool below, go to Integrations, select Add integration, and choose Webhook Tool. Every tool sends the same header: Authorization (Secret), set to Bearer followed by your token.

3

Add a rule

Add a rule telling your receptionist to use Attio only to recognize callers, and never to read records or notes back to them.

Find the caller

FieldValue
Namefind_attio_person
Description”Find the caller among our people in Attio by phone number. Use it at the start of a call. Pass the person’s record_id to the note tool.”
MethodPOST
URLhttps://api.attio.com/v2/objects/people/records/query
Request HeadersAuthorization (Secret): Bearer followed by your token
Body Parametersfilter (object, required), with the field below
limit (integer, fixed value): 5
Assign to agentsReceptionist

Select Add field on filter and add:

  • phone_numbers (string, required, from the conversation): “The caller’s phone number in international format, for example +14155550123.”

Attio only returns people whose saved number matches exactly, so store numbers with their country code.

Add the caller

FieldValue
Namecreate_attio_person
Description”Add the caller as a person, only when find_attio_person didn’t find them. Pass the new person’s record_id to the note tool.”
MethodPOST
URLhttps://api.attio.com/v2/objects/people/records
Request HeadersAuthorization (Secret): Bearer followed by your token
Body Parametersdata (object, required), with the fields below
Assign to agentsReceptionist

Select Add field on data and add values (object, required). On values, add:

  • name (object, required), with three fields:
    • first_name (string, required, from the conversation): “The caller’s first name.”
    • last_name (string, required, from the conversation): “The caller’s last name, or an empty string if they didn’t give it.”
    • full_name (string, required, from the conversation): “The caller’s first and last name.”
  • phone_numbers (array, required, from the conversation): “Exactly one item, for the caller’s phone number.” Under Each item, choose string, described as “The caller’s phone number in international format, for example +14155550123.”
  • email_addresses (array, from the conversation): “Exactly one item, for the caller’s email address. Leave it out if they didn’t give one.” Under Each item, choose string, described as “The caller’s email address.”

Log a note

FieldValue
Nameadd_attio_note
Description”Note what the caller wanted on their person record, before the call ends.”
MethodPOST
URLhttps://api.attio.com/v2/notes
Request HeadersAuthorization (Secret): Bearer followed by your token
Body Parametersdata (object, required), with the fields below
Assign to agentsReceptionist

Select Add field on data for each of these:

  • parent_object (string, fixed value): people
  • parent_record_id (string, required, from the conversation): “The person’s record_id from find_attio_person or create_attio_person.”
  • title (string, required, from the conversation): “A short title, for example: Call from Jane Doe about a quote.”
  • format (string, fixed value): plaintext
  • content (string, required, from the conversation): “What the caller wanted, in a few sentences.”

The parent object and format are fixed values, so notes always go on a person, even if the AI sends other values.

find_attio_person returns whatever is saved on the person. Keep the rule in place so your receptionist uses Attio only to recognize the caller, and callers never hear another person’s details.

Select Enable on each tool, then test your receptionist with a call from a number saved on an Attio person, then as a new caller who asks for a callback. The new person and a note appear in Attio.

Option 2: Zapier

1

Connect Zapier

If you haven’t yet, connect Zapier in Reception.ai.

2

Add the Attio actions

In your Zapier MCP server at mcp.zapier.com, add the actions below from the Attio app and connect your Attio workspace. For each field, either set a fixed value or let the AI fill it in, as listed.

3

Assign the tools

In Reception.ai, open the Zapier integration’s Tools tab, select Refresh tools, and assign each action as listed.

4

Add a rule

Add a rule telling your receptionist to use Attio only to recognize callers, and never to read records or notes back to them.

Zapier acts as the Attio user who connected the workspace and can see everything that user can. Connect with a member whose access is limited to the records your receptionist needs, and keep the rule in place so callers never hear another person’s details.

5

Test it

Test your receptionist with a call from a number saved on an Attio person, then as a new caller who asks for a callback. The new person and a note appear in Attio.

Zapier actions

Find the caller

FieldValue
Zapier actionFind Records
Set in ZapierThe object: People. The attribute to search by: phone number.
Let the AI fill inThe value to search for: the caller’s phone number.
Assign toClient

Add the caller

FieldValue
Zapier actionCreate Record
Set in ZapierThe object: People. Any attributes that should always be the same, if you use them.
Let the AI fill inFirst name, last name, phone number, and email address.
Assign toClient

Log a note

FieldValue
Zapier actionCreate Note
Set in ZapierThe parent object: People.
Let the AI fill inThe parent record ID (from the previous actions), a title, and the note text with what the caller needs.
Assign toClient

Whichever option you use, add a procedure so your receptionist searches for the caller first, only creates a person when no match is found, and then logs a note.

Limitations

  • Attio checks that phone numbers are valid. Tell your receptionist, in the tool’s or action’s description, to send numbers in international format, such as +14155550123.
  • Creating a person fails when another person already has the same unique value, such as an email address. Your receptionist should search first.
  • Tasks created through Zapier can’t be linked to an Attio record, so use the note for call details.
  • With Zapier, each action your receptionist runs uses tasks from your Zapier plan. Zapier currently counts two tasks per successful call; failed calls aren’t counted. When the plan runs out, the actions stop until it resets.

Troubleshooting

ProblemWhat to check
401 or 403 from AttioStart the header value with Bearer and a space, and check that the token has the scopes above and hasn’t been deleted.
An Attio action doesn’t appear in Reception.aiSelect Refresh tools on the Zapier integration after adding actions in Zapier.
An action shows Changed and isn’t usedYou edited it in Zapier. Select Update in the Tools tab.
Known callers aren’t foundCheck that numbers are stored with their country code. With Zapier, check that Find Records searches the People object by phone number.
Creating a person failsThe phone number may not be in international format, or the caller’s email address is already saved.
Notes aren’t linked to the callerYour receptionist needs the record ID from the find or create tool, or from Find Records or Create Record in Zapier.