Overview
Attio Integration
Connect Gatsby event activity to Attio through automatic Google sync and webhooks. Track invitations, RSVPs, and attendance in your CRM without manual exports.
How the Integration Works
Section titled “How the Integration Works”Most event platforms send invitations from their own domain. That communication never appears in your CRM. You export CSVs to bridge the gap. By the time data lands in Attio, the event is over and the context is stale.
Gatsby connects to Attio through two complementary approaches. Automatic Google sync captures communication history. Webhooks via Zapier or Make push structured participation data.
How It Works
Section titled “How It Works”When you send event invitations from a connected Google account in Gatsby, those emails come FROM your actual Google account. Same with calendar invites. Attio already syncs your Google activity, so event communications appear in contact timelines automatically.
Click into any Person record in Attio. See the invitation you sent last Tuesday. The calendar invite they accepted. The follow-up you sent the day before the dinner. All there without any export or manual entry.
Requirements
Section titled “Requirements”Three things must be connected for automatic sync to work.
Setup Checklist
In Gatsby:
- Email sender set to a connected Google account
- Calendar organizer set to a connected Google account
In Attio:
- Same Google user connected for email and calendar sync
When all three are in place, event communications appear in Attio automatically.
For step-by-step instructions on connecting Google accounts to Gatsby, see Sending Emails.
What Gets Synced
Section titled “What Gets Synced”The sync captures communication, not structured data.
Captured Automatically
- Event invitation emails sent from connected Google accounts
- Calendar invites where organizer is a connected Google account
- Follow-up emails sent through connected accounts
- Replies and calendar responses
Not Captured
- System emails like RSVP confirmations (sent from Gatsby, not your Google)
- RSVP status (use webhooks)
- Attendance data (use webhooks)
- Registration form responses (use webhooks)
What You Can Capture
Section titled “What You Can Capture”Webhooks send structured event participation data that you control.
Data Available
- Who was invited to which events
- RSVP status changes (Accepted, Declined, Waitlist, Maybe)
- Attendance records (Attended, No Show)
- Registration form responses
- Guest company and title at time of event
- Event details (date, name, location)
Recommended Approach: Event Participation List
Section titled “Recommended Approach: Event Participation List”Create an “Event Participation” list in Attio. Each entry represents one person at one event, linked to their Person record. This structure enables queries that matter without overengineering your data model.
Queries This Enables
- All people who attended events in the last year
- Contacts invited to 5+ events but never attended
- Attendance by company
- No-show patterns
- Event participation over time
- Guests who accepted but did not show up
Other Data Model Options
Section titled “Other Data Model Options”The Event Participation list is a starting point, not the only option.
Alternative Approaches
- Update attributes directly on Person records. Simpler, less queryable. Works if you just want to track “last event attended” or “total events.”
- Create custom objects for complex event structures. More powerful, more setup.
- Build whatever fits your existing Attio setup. Webhooks send raw data. You decide where it goes.
What You Need
Section titled “What You Need”Before building workflows, gather these requirements.
Requirements Checklist
- Paid middleware plan. Zapier Pro or higher, Make, or n8n.
- Attio API credentials. For your middleware connection.
- Webhooks enabled in Gatsby. Contact support to enable.
About Webhook Platforms
This guide references Zapier. Same concepts apply to Make and n8n. You will use Gatsby webhooks to trigger workflows that create or update records in Attio.
Building the Workflow
Section titled “Building the Workflow”The core workflow triggers when Gatsby sends guest data and creates or updates the corresponding record in Attio.
Step 1: Create Your Attio Data Model
Create an Event Participation list with these recommended fields.
| Field Name | Type | Purpose |
|---|---|---|
| Person | Record Reference | Links to the Person record |
| Unique ID | Text | Used for de-duplication |
| Event Name | Text | Name of the event |
| Event Date | Date | When the event happens |
| RSVP Status | Select | Invited, Accepted, Declined, Waitlist |
| Attendance Status | Select | Attended, No Show, Pending |
| Company at Event | Text | Guest’s company at time of event |
| Position at Event | Text | Guest’s role at time of event |
| Last Updated | Timestamp | When this record was last synced |
Why Unique ID matters: Combine the person ID and event ID (like abc123_xyz789) to ensure exactly one entry per person per event. When someone RSVPs to multiple events, they get multiple list entries. One for each event.
Step 2: Build the Zapier Workflow
-
Trigger: Webhook receives guest data from Gatsby.
Gatsby sends data when someone is invited or updates their RSVP.
-
Filter (optional): Check that RSVP status is not empty.
Skip blank RSVPs to reduce noise.
-
Create/Update Person: Ensure the person exists in Attio.
Match by email address. Create if new.
-
Search for existing list entry: Check for Unique ID match.
This prevents duplicates.
-
Path A (exists): Update existing entry with new RSVP or attendance status.
-
Path B (new): Create new entry for this person/event combination.
Alternate: Post-Event Bulk Sync
Trigger manually after event cleanup. Process all guests at once. Use this when you want to verify data before it hits Attio.
How it differs:
- Trigger: Manually after event ends
- Processes: All guests at once
- Use: Post-event cleanup and verification
This gives you control over when event data flows to Attio.
Testing Your Integration
Section titled “Testing Your Integration”Run through these scenarios to verify everything works.
Test Scenarios
Test 1: New guest invited
Add a new guest to an event in Gatsby. Mark as Invited.
Expected: Person created in Attio. Event Participation entry created.
Test 2: Guest changes RSVP
Change a guest’s RSVP status to Accepted.
Expected: Same entry updates. No duplicate created.
Test 3: Same guest, different event
Add the same person to a different event.
Expected: New entry created. Different Unique ID.
Test 4: Mark attendance
Mark a guest as Attended or No Show.
Expected: Entry updates with attendance status.
Troubleshooting
If tests fail, check Zapier task history to see where the workflow stopped.
For webhook data schemas and field mapping details, contact support:
What You Can Do With This Data
Section titled “What You Can Do With This Data”Once event data flows into Attio, your CRM becomes a complete record of relationship engagement.
Run Targeted Reports
- Attendees from last quarter
- People who accepted but did not show up
- Contacts invited to 5+ events but never attended
- Event participation by company or role
Enrich Contact Profiles
- See complete event history when viewing a person
- Count total events attended per contact
- Track engagement trends over time
Build Outreach Campaigns
- Export attendee lists for follow-up emails
- Segment by event type or attendance patterns
- Create workflows based on event participation
Analyze Event Performance
- Compare RSVP rates across events
- Track no-show patterns
- Identify your most engaged contacts
Common Questions
Section titled “Common Questions” Do I need both integrations?
No, but they complement each other. Google sync gives communication timelines automatically. Webhooks give structured data for reporting. Most teams use both.
The Google sync isn't capturing some emails. Why?
Check that both the email sender and calendar organizer in Gatsby are set to connected Google accounts. System emails like RSVP confirmations do not sync because they send from Gatsby, not your Google account.
What if I don't want to use a List in Attio?
Webhooks send raw data. Structure it however you want. Update Person attributes directly, create custom objects, whatever fits your workflow. The List approach is a recommended starting point.
Can I capture custom registration responses?
Yes. Registration form responses come through webhook data. Map them to attributes or list entries in Attio.
Can I sync Attio contacts TO Gatsby?
Yes, though more advanced. Gatsby’s API lets you pull contact data from Attio. Contact support for details:
Is there a native integration?
Not yet. Attio integration uses webhooks through Zapier, Make, or n8n. Google sync is automatic if you use connected Google accounts.