Attio integration | Zervanor
← All connectors

Attio

Also an agent tool
sales-crm

Attio integration (REST API v2). Modern data-model-driven CRM. Generic object/record CRUD over an {object} path param (people, companies, deals, users, workspaces, or custom), plus lists & entries, attributes, workspace members, notes, tasks, comments, threads, and webhook subscription management. Bearer api_key auth (single-workspace token; OAuth 2.0 documented as an alternate). Real signed webhooks (Attio-Signature HMAC-SHA256 hex over raw body, generic_hmac) emitting record/list-entry/note/task/comment CloudEvents. Binary surfaces (files/call-recordings/meetings/transcripts) are deferred — see attio-06/attio-08.

60 actions · 9 triggers

The Attio integration lets you connect Attio to your automations with 60 actions and 9 triggers — and every action is also a tool an AI agent can call. Examples: Identify (Self), List Objects, Create Object, Get Object, Update Object. No blank-canvas wiring — connect it and use it in your workflows.

Every action below is also a tool an AI agent can call — the same pack powers your workflows and your agents.

Triggers 9

Events in Attio that can start a workflow.

webhook

Record Created

Fires when a record is created in any object (Attio webhook event_type record.created).

webhook

Record Updated

Fires when an attribute on a record is updated (Attio webhook event_type record.updated).

webhook

Record Deleted

Fires when a record is deleted (Attio webhook event_type record.deleted).

webhook

List Entry Created

Fires when a record is added to a list (Attio webhook event_type list-entry.created).

webhook

List Entry Deleted

Fires when a list entry is removed (Attio webhook event_type list-entry.deleted).

webhook

Note Created

Fires when a note is created (Attio webhook event_type note.created).

webhook

Task Created

Fires when a task is created (Attio webhook event_type task.created).

webhook

Comment Created

Fires when a comment is created (Attio webhook event_type comment.created).

polling

New/updated Attio records

Polls a chosen object for records since the last run. Webhooks are the preferred trigger path for Attio.

Actions 60

What Zervanor can do in Attio.

Objects15

GET

List Objects

List all objects (standard + custom) defined in the workspace (Attio: GET /objects).

POST

Create Object

Create a custom object (Attio: POST /objects).

GET

Get Object

Get a single object by slug or UUID (Attio: GET /objects/{object}).

PATCH

Update Object

Update an object's definition (Attio: PATCH /objects/{object}).

GET

List Object Views

List the views defined for an object (Attio: GET /objects/{object}/views).

POST

List Records

List/query records of ANY object with filter, sorts, limit, offset (Attio: POST /objects/{object}/records/query). The generic record-read endpoint — {object} selects which object's records to query.

GET

Get Record

Get a single record by id within an object (Attio: GET /objects/{object}/records/{record_id}).

POST

Create Record

Create a record in any object (Attio: POST /objects/{object}/records). Body: { "data": { "values": { ... } } }. Returns the new record id at data.id.record_id. WRITE test target (paired with delete_record cleanup).

PUT

Upsert Record

Create or update a record by a matching attribute (Attio: PUT /objects/{object}/records). Body carries the matching attribute + values.

PATCH

Update Record

Update a record, OVERWRITING multiselect values (Attio: PATCH /objects/{object}/records/{record_id}).

PUT

Append Record Values

Update a record, APPENDING multiselect values (Attio: PUT /objects/{object}/records/{record_id}).

DELETE

Delete Record

Delete a record by id within an object (Attio: DELETE /objects/{object}/records/{record_id}). CLEANUP test target for create_record.

POST

Search Records

Full-text/identity search of records within an object (Attio: POST /objects/{object}/records/search).

GET

List Record Attribute Values

List the value history of one attribute on a record (Attio: GET /objects/{object}/records/{record_id}/attributes/{attribute}/values).

GET

List Record's List Entries

List the list-entries where this record is the parent (Attio: GET /objects/{object}/records/{record_id}/entries).

Lists13

GET

List Lists

List all lists in the workspace (Attio: GET /lists).

POST

Create List

Create a list (Attio: POST /lists).

GET

Get List

Get a single list by slug or UUID (Attio: GET /lists/{list}).

PATCH

Update List

Update a list (Attio: PATCH /lists/{list}).

GET

List List Views

List the views defined for a list (Attio: GET /lists/{list}/views).

POST

List Entries

List entries in a list with filter/sort/pagination (Attio: POST /lists/{list}/entries/query).

POST

Create Entry

Add a record to a list as an entry (Attio: POST /lists/{list}/entries).

PUT

Upsert Entry

Create or update a list entry by parent record (Attio: PUT /lists/{list}/entries).

GET

Get Entry

Get a single list entry (Attio: GET /lists/{list}/entries/{entry_id}).

PATCH

Update Entry

Update a list entry, OVERWRITING multiselect values (Attio: PATCH /lists/{list}/entries/{entry_id}).

PUT

Append Entry Values

Update a list entry, APPENDING multiselect values (Attio: PUT /lists/{list}/entries/{entry_id}).

DELETE

Delete Entry

Remove an entry from a list (Attio: DELETE /lists/{list}/entries/{entry_id}).

GET

List Entry Attribute Values

List the value history of one attribute on a list entry (Attio: GET /lists/{list}/entries/{entry_id}/attributes/{attribute}/values).

Attributes10

GET

List Attributes

List the attributes of an object or list (Attio: GET /{target}/{identifier}/attributes). target = objects | lists.

POST

Create Attribute

Create an attribute on an object or list (Attio: POST /{target}/{identifier}/attributes).

GET

Get Attribute

Get a single attribute on an object or list (Attio: GET /{target}/{identifier}/attributes/{attribute}).

PATCH

Update Attribute

Update an attribute on an object or list (Attio: PATCH /{target}/{identifier}/attributes/{attribute}).

GET

List Attribute Options

List the select options of an attribute (Attio: GET /{target}/{identifier}/attributes/{attribute}/options).

POST

Create Attribute Option

Create a select option on an attribute (Attio: POST /{target}/{identifier}/attributes/{attribute}/options).

PATCH

Update Attribute Option

Update a select option on an attribute (Attio: PATCH /{target}/{identifier}/attributes/{attribute}/options/{option}).

GET

List Attribute Statuses

List the statuses of an attribute (Attio: GET /{target}/{identifier}/attributes/{attribute}/statuses).

POST

Create Attribute Status

Create a status on an attribute (Attio: POST /{target}/{identifier}/attributes/{attribute}/statuses).

PATCH

Update Attribute Status

Update a status on an attribute (Attio: PATCH /{target}/{identifier}/attributes/{attribute}/statuses/{status}).

Tasks5

GET

List Tasks

List tasks (Attio: GET /tasks).

POST

Create Task

Create a task (Attio: POST /tasks).

GET

Get Task

Get a single task (Attio: GET /tasks/{task_id}).

PATCH

Update Task

Update a task (Attio: PATCH /tasks/{task_id}).

DELETE

Delete Task

Delete a task (Attio: DELETE /tasks/{task_id}).

Webhooks5

GET

List Webhooks

List the webhooks registered for the workspace (Attio: GET /webhooks).

POST

Create Webhook

Register a webhook with target_url + subscriptions[]; returns the signing secret once (Attio: POST /webhooks). Requires webhook:read-write scope.

GET

Get Webhook

Get a single webhook (Attio: GET /webhooks/{webhook_id}).

PATCH

Update Webhook

Update a webhook's target_url or subscriptions (Attio: PATCH /webhooks/{webhook_id}).

DELETE

Delete Webhook

Delete a webhook (Attio: DELETE /webhooks/{webhook_id}).

Notes4

GET

List Notes

List notes, optionally filtered by parent object/record (Attio: GET /notes).

POST

Create Note

Create a note attached to a record (Attio: POST /notes).

GET

Get Note

Get a single note (Attio: GET /notes/{note_id}).

DELETE

Delete Note

Delete a note (Attio: DELETE /notes/{note_id}).

Comments3

POST

Create Comment

Create a comment on a thread/record/entry (Attio: POST /comments).

GET

Get Comment

Get a single comment (Attio: GET /comments/{comment_id}).

DELETE

Delete Comment

Delete a comment (Attio: DELETE /comments/{comment_id}).

Threads2

GET

List Threads

List comment threads (Attio: GET /threads).

GET

Get Thread

Get a single comment thread (Attio: GET /threads/{thread_id}).

Workspace Members2

GET

List Workspace Members

List the workspace members — id, name, email, access_level (Attio: GET /workspace_members).

GET

Get Workspace Member

Get a single workspace member (Attio: GET /workspace_members/{workspace_member_id}).

Self1

GET

Identify (Self)

Identify the current access token — returns active, scope, workspace_id, workspace_name, client_id, token_type, exp, iat (Attio: GET /self). No scope required; any active token works. Safe identity/connectivity probe — connector READ test target.

Automations using Attio

Build your own automation with Attio in the visual builder.

Frequently asked questions

What can I automate with Attio?

60 actions are available — for example: Identify (Self), List Objects, Create Object, Get Object, Update Object, and more.

Which Attio events can start a workflow?

9 triggers — for example: Record Created, Record Updated, Record Deleted, List Entry Created.

Can Attio be used as an AI agent tool?

Yes. Every Attio action automatically becomes a tool an AI agent can call — the same pack powers both your workflows and your agents.

How is the Attio integration modelled?

Attio is modelled as a versioned connector pack, and the steps that need reasoning fall to first-party agents hosted in the same runtime as the workflows.