CRM

Backfill Intercom conversations into Attio contacts with usage context

On a schedule, pulls recently active Intercom contacts, creates or merges the matching Attio person record by email.

CategoryCRM
Enginesim
Difficultyintermediate
Triggerschedule
Steps6
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerNightly schedule fires
  • ActionFetch recently active Intercom contactsIntercomIntercom
  • ActionQuery product-usage metrics from PostgresPostgreSQLPostgres
  • LogicMatch by email: merge if found, else create
  • ActionUpsert Attio person with usage attributesAttio
  • OutputWrite created-vs-merged run summary

What it does

Keeps your Attio CRM in sync with the people actually talking to support in Intercom. For each active contact it ensures an Attio person record exists, deduplicating by email so you never spawn a second record, and enriches that record with real product-usage context (last login, plan, seats, monthly active days) read from your data warehouse.

When to use it

Run this when your CRM is missing people who only ever showed up in support, or when reps open Attio and see no signal about how the account is actually using the product. Good for a nightly backfill that keeps sales and CS looking at the same truth.

How it works

  1. 1A nightly schedule fires the run.
  2. 2Fetch Intercom contacts with conversation activity since the last run.
  3. 3For each, query Postgres for usage metrics keyed on the contact's email/account.
  4. 4Decide: if an Attio person with that email exists, merge; otherwise create.
  5. 5Upsert the Attio person and write usage attributes (plan, MAU, last seen).
  6. 6Emit a per-run summary of created vs. merged records.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect IntercomConversations, contacts, articles.
  2. 2
    Connect AttioReal-time CRM with structured data + powerful views.
  3. 3
    Connect PostgresAny Postgres URL — query, write, migrate.
  4. 4
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  5. 5
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  6. 6
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.