CRM & sales
Attio setup guide
Flexible CRM of people, companies, deals and custom objects. Agents search and filter records, create, upsert and update them, add records to lists, write notes and create tasks.
Agents look up customers and deals and keep your records tidy.
Ways to connect
Company admins connect apps, on the Integrations page in Everdeck: open Attio, choose one of the ways below, follow its steps and fill in its fields. Everdeck checks what you enter before it saves anything, and asks you to confirm it’s you (your second factor) before you type any secret. How connecting works.
Attio can be connected 2 ways. Where there’s a key or token to paste, that’s usually the quickest.
Access token
API key.
- In Attio (as a workspace admin), open the dropdown beside your workspace name and click Workspace settings.
- Open the Developers tab and click + New access token. Name it (for example "Everdeck").
- Under Scopes, give read-write access to Records, Notes, Tasks and List entries, read access to Object configuration, List configuration and User management. You don't need Webhooks access: live updates from Attio (starting work when a record, list entry or task changes) aren't available yet.
- Copy the token and paste it here. Tokens do not expire; delete it in the same place to revoke access.
| Field | What to enter |
|---|---|
| Access token | A secret: Everdeck saves it encrypted and never shows it again. Where to find it. |
The scopes Everdeck asks for:
record_permission:read-writeobject_configuration:readlist_entry:read-writelist_configuration:readnote:read-writetask:read-writeuser_management:read
Disconnecting deletes the credentials Everdeck saved, but Everdeck can't revoke them: the key, token or password itself keeps working at Attio until you delete or rotate it there.
Your Attio app (OAuth)
Your OAuth app.
This way signs in with an OAuth app you create for Attio, as its steps describe: Everdeck never uses an app of its own. Register this redirect URI with your app:
https://everdeck.io/api/oauth/callback
Then save the app’s client ID and secret in Everdeck, on the connect page or under OAuth apps, and sign in.
- Open the Attio developer console at https://build.attio.com and choose New app. Give it a name and slug.
- On the OAuth tab, turn on OAuth 2.0 and add the redirect URI https://everdeck.io/api/oauth/callback.
- On the Scopes tab, set Records, Notes, Tasks and List entries to read-write, Object configuration, List configuration and User management to read. Leave Webhooks off: live updates from Attio aren't available yet.
- Copy the Client ID and Client secret here, click Connect and approve as a workspace admin (only admins can grant workspace-level access).
When you disconnect, Everdeck asks Attio to revoke the sign-in, then deletes the tokens it saved.
What agents can do
An agent uses an action only when its charter grants it, on the agent’s Tools tab, where you choose whether each one runs by itself (Auto), asks first or never runs. Each action has a risk tier: tier 3 actions, which customers or the public see, ask first unless you choose otherwise, and tier 4 actions (money, deleting things, access) always need a person. How tools and tiers work.
Actions marked Reads outside content return things people outside your company may have written. Agents treat what they read as information, never as instructions, and their riskier actions later in the same session need approval.
-
Search recordsTier 0 · ReadReads outside content
attio_search_recordsFuzzy search like Attio's search bar: matches names, domains, emails, phone numbers and social handles on people and companies, and names on other objects. Returns up to 25 hits with record id, object and label. Results are eventually consistent.
-
Filter recordsTier 0 · ReadReads outside content
attio_query_recordsList records of one object with filters and sorting, for example deals in a stage or people at a company. Filter syntax: {"stage": "In Progress"} (implicit equality) or {"$and": [{"name": {"$contains": "acme"}}, {"value": {"$gte": 10000}}]}. Sort: [{"attribute": "created_at", "direction": "desc"}].
-
Read a recordTier 0 · ReadReads outside content
attio_get_recordRead one record with all attribute values.
-
Create a recordTier 2 · Reversible
attio_create_recordCreate a person, company, deal or custom-object record. Fails if a unique attribute (a person's email, a company's domain) already exists; use assert_record to update instead.
-
Create or update a recordTier 2 · Reversible
attio_assert_recordUpsert by a unique attribute: if a record with the same value exists it is updated (multiselect values are replaced), otherwise it is created. For people match on email_addresses, for companies on domains.
-
Update a recordTier 2 · ReversibleReads outside content
attio_update_recordChange attribute values on a record; values for multiselect attributes are added to the existing ones. Move a deal with {"stage": "In Progress"} (the exact status title).
-
Add a record to a listTier 2 · Reversible
attio_add_to_listAdd a record to a list (a pipeline or collection), optionally setting the list's own attributes such as its stage. Lists can hold the same record more than once.
-
Write a noteTier 2 · ReversibleReads outside content
attio_create_noteAdd a note to a record (person, company, deal or other). Notes are visible to the workspace.
-
Create a taskTier 2 · ReversibleReads outside content
attio_create_taskCreate a task (plain text, up to 2,000 characters) with an optional deadline, linked to records and assigned to workspace members.
-
List an object's attributesTier 0 · ReadReads outside content
attio_list_attributesList an object's attributes (slug, title, type, whether unique or multiselect) to know what values to write.
-
List listsTier 0 · ReadReads outside content
attio_list_listsList the workspace's lists (pipelines and collections) with their slugs and parent objects.
-
List workspace membersTier 0 · ReadReads outside content
attio_list_membersList workspace members (id, name, email) for task assignees and deal owners.
Testing, problems and disconnecting
Everdeck checks the connection when you save it. On the connection’s page in Integrations, Test checks it again at any time.
If Attio later refuses the connection, for example because a key was deleted or a sign-in expired, the connection shows Needs attention on the Integrations page and the people who manage connections are told. Agents can’t use it until a company admin fixes it with Edit or Reconnect.
To stop agents using Attio, open the connection and select Disconnect. Agents stop using it at once and its saved credentials are deleted. What else happens depends on how it was connected: each way above says.
Still stuck?
Email [email protected] and say what you were trying to do. Or browse every guide.