DatriseAI-first ETL

Source connector

Attio connector

Attio integration for databases, warehouses and BI tools

Modern CRM source for relationship and pipeline data. Datrise captures Attio entities such as objects, lists, records, notes, and relationship workflows, then lands normalized and typed models for warehouse reporting, attribution, and AI workflows.

The Attio REST API v2 authenticates with OAuth 2.0, API key, and Attio caps calls at 100 requests per second for reads and 25 requests per second for writes across the whole API; List records and List entries add a complexity score with a per-query cap and a 10-second sliding window; the Enterprise-only `POST /v2/sql` endpoint is capped at 2 requests per second.

Of the 5 objects, 5 sync as upserts keyed on the primary key and 0 as append-only streams, so each incremental run moves only what changed since the last watermark. Every object lands in its own table (for example `attio_objects`) with a schema derived from the Attio API rather than a flattened CSV, in any of the 43 supported destinations.

Datrise is in early access: pick a destination below to open the Attio pipeline page, and join the waitlist to get the Attio connector (CRM) with guided onboarding.

Incremental syncSchema-aware mapping43 destinations available

What Attio data Datrise extracts

Each object lands in its own typed table. Sync mode is derived from the object: history-style objects append, everything else upserts.

ObjectLanding tableSync mode
objectsattio_objectsUpsert by primary key, incremental on updated-at
listsattio_listsUpsert by primary key, incremental on updated-at
recordsattio_recordsUpsert by primary key, incremental on updated-at
notesattio_notesUpsert by primary key, incremental on updated-at
relationship workflowsattio_relationship_workflowsUpsert by primary key, incremental on updated-at

Attio API: setup facts for the connector

Verified against the vendor documentation on 2026-10-05. Unknown values are left blank rather than guessed.

APIAttio REST API v2
AuthenticationOAuth 2.0, API key — Multi-workspace apps use OAuth 2.0 from the Developer console (`token_level` `workspace` by default, or `user` with mandatory PKCE); a single workspace can instead generate a scoped API key, and both are sent as `Authorization: Bearer <access_token>`.
Paginationoffset — `POST /v2/objects/{object}/records/query` and `List entries` take `limit` (defaults to 500) and `offset` in the body and you stop when a page returns fewer than `limit`; some newer endpoints such as `GET /v2/meetings` use `cursor`/`pagination.next_cursor` instead.
Rate limit100 requests per second for reads and 25 requests per second for writes across the whole API; List records and List entries add a complexity score with a per-query cap and a 10-second sliding window; the Enterprise-only `POST /v2/sql` endpoint is capped at 2 requests per second
Incremental cursorNot published
WebhooksYes — V2 webhooks (record.created / record.updated / record.deleted / record.merged, list-entry.*, note.*, task.*)
Bulk exportNo
Deletes detectableYes — Only via webhooks: `record.deleted` carries `id.record_id` and `id.object_id`, and `record.merged` fires twice per merge naming each absorbed original in `duplicate_record_id`; the records query endpoint has no deleted-record flag or tombstone.

Official API reference

What bites when replicating Attio

  • There is no updated-at attribute on records: the only system timestamp on every object is the non-writable `created_at`, so a sync engine must subscribe to `record.updated` webhooks (one event per changed `attribute_id`) or re-read every record on each run.
  • Every attribute value carries `active_from` and `active_until`, and `GET /v2/objects/{object}/records/{record_id}/attributes/{attribute}/values?show_historic=true` returns the full value history oldest-first, but it answers 400 for COMINT and enriched attributes, so point-in-time reconstruction is not possible for those fields.
  • Record and entry queries are score-rate-limited on top of the 100 reads/second ceiling: each `records/query` gets a complexity score from its filters, sorts and the object's record count, with a per-query cap and a 10-second sliding-window budget summed across all tokens, so heavy filters on large objects 429 well below 100 requests per second.
  • Webhook subscriptions must be unique per target URL, event type and filter (duplicates are rejected with `409 uniqueness_conflict`), deliveries are smoothed to 25 requests per second per target URL with a 5-second response timeout, and after 10 failed retries over roughly 3 days the webhook is marked degraded, so a receiver outage of a few days loses the change stream for the gap.

Compare this against every other documented API

Popular destinations for Attio

Choose a destination below to open the ready pipeline page.

  • A
    Airtable

    Relational spreadsheet destination for ops and go-to-market teams.

    View pipeline
  • A
    Amazon Athena

    Serverless SQL over S3 data lake tables.

    View pipeline
  • A
    Amazon DynamoDB

    Serverless key-value and document store on AWS.

    View pipeline
  • A
    Amazon QuickSight

    AWS serverless BI with SPICE and embedded analytics.

    View pipeline
  • A
    Amazon Redshift

    AWS petabyte-scale warehouse with Spectrum.

    View pipeline
  • A
    Amazon S3 Data Lake

    Object storage landing zone for parquet and snapshots.

    View pipeline
  • A
    Apache Superset

    Open-source BI for SQL exploration, charts, and dashboard publishing.

    View pipeline
  • A
    Azure Data Lake Storage

    ADLS Gen2 object storage for analytics workloads.

    View pipeline
  • A
    Azure Synapse

    Microsoft analytics workspace with SQL pools.

    View pipeline

Attio connector FAQ

What Attio data does the connector extract?
5 objects: objects, lists, records, notes and relationship workflows. Each lands in its own table with types preserved; history-style objects (0) load as append-only streams.
Is the Attio integration incremental?
Yes. After the initial full load, every run reads only records changed since the last watermark (updated-at or event timestamp) and applies an upsert or an append depending on the object.
Where can I load Attio data?
Into 43 destinations: relational databases, cloud warehouses, data lakes, spreadsheets and BI tools. Each Attio → destination pair has its own page with the object-to-table mapping.

Related CRM sources

Other sources in the same category, each with its own connector page.

Early access

Launch your Attio pipeline with guided onboarding

Join the waitlist to get priority access for Attio integrations with guided setup, schema-aware mapping, and production-grade incremental sync.