> ## Documentation Index
> Fetch the complete documentation index at: https://docs.goliathdata.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Zapier Integration Overview

> Connect Goliath to thousands of apps via Zapier — push contacts in from any source, and react to contact events in your Zaps.

The Goliath Zapier integration lets you wire your Goliath workspace into the
rest of your stack. You can **send contacts into Goliath** from any Zapier
trigger (forms, spreadsheets, email parsers, etc.) and you can **react to
Goliath events** from inside a Zap.

<Note>
  The Zapier app is published at
  [zapier.com/apps/goliathdata](https://zapier.com/apps/goliathdata/integrations).
  You connect your Goliath account to Zapier through the standard OAuth
  popup — no API keys to manage.
</Note>

## What you can do

<CardGroup cols={2}>
  <Card title="Triggers" icon="bolt" href="/zapier/triggers">
    Start a Zap when a contact in Goliath gets a new tag.
  </Card>

  <Card title="Actions" icon="play" href="/zapier/actions">
    Create, update, and find contacts from any other Zapier app.
  </Card>

  <Card title="Authentication" icon="key" href="/zapier/authentication">
    OAuth 2.0 — connect once, no token management.
  </Card>
</CardGroup>

## Capability matrix

| Capability                  | Direction     | Supported      |
| --------------------------- | ------------- | -------------- |
| Contact tag added           | Goliath → Zap | ✅              |
| Create contact (structured) | Zap → Goliath | ✅              |
| Create contact from text    | Zap → Goliath | ✅              |
| Update contact              | Zap → Goliath | ✅              |
| Find contact                | Zap → Goliath | ✅              |
| Property / deal events      | Goliath → Zap | ❌ (not yet)    |
| Note / task creation        | Zap → Goliath | ❌ (use update) |

## How it works at a glance

```mermaid theme={null}
flowchart LR
  A[Other Zapier App] -->|Action| Z[Zapier]
  Z -->|HTTPS + JWT| G[Goliath API]
  G -->|Contact saved| DB[(Goliath DB)]
  DB -->|Tag added| T[Trigger fires]
  T -->|Webhook POST| Z2[Zapier]
  Z2 -->|Run Zap| A2[Other Zapier App]
```

1. **Actions** are simple HTTPS calls. Zapier sends a JSON body to a Goliath
   endpoint with your OAuth token in the `Authorization` header. Goliath
   acknowledges immediately and processes the contact asynchronously.
2. **Triggers** are REST hooks. When you turn on a Zap, Zapier asks Goliath to
   subscribe a webhook URL. Goliath stores the subscription and fires a `POST`
   to that URL whenever a matching event happens.

## Connect Goliath to Zapier

1. From inside Goliath, open **Settings → Integrations** and click **Connect
   Zapier**. This opens the Goliath app on Zapier.
2. In Zapier, click **Connect a new account** on any Goliath trigger or action.
3. The OAuth popup will ask you to authorize Zapier to access your Goliath
   workspace. Approve it.
4. You're done — Zapier remembers the connection for every future Zap.

## Where contacts created via Zapier show up

Any contact created through a Zapier action is tagged with `Source: Zapier`
in Goliath. You can filter your contact list by source to see everything
that has come in via Zapier in the last 30 days from
**Automations → Integrations**.

## Limits & quotas

* **Subscription lifetime:** Trigger subscriptions auto-expire after **14
  days**. Zapier renews them automatically while a Zap is on; if a Zap is
  paused for more than two weeks the subscription is cleaned up.
* **Idempotency:** Duplicate contact-create requests with identical payloads
  are deduplicated server-side, so retrying a Zap step is safe.
* **Throughput:** There is no per-account rate limit on contact webhooks
  today, but very large bulk imports should be done via the CSV importer
  instead of one Zap run per row.

## Need a different trigger or action?

The current integration is intentionally narrow — contacts only, with one
trigger event. If you need property, deal, or task hooks, file a request
and we'll prioritize.
