Zapier
Connect TIA to 8,000+ apps without writing a receiver. Every lead, form submission, and ticket event can start a Zap, and Zaps can push leads and tickets back into TIA.
Webhook setup
Connect TIA events to another system
Choose the event and agent scope
Select the TIA change another system needs, then receive it from all agents or one Concierge.
Add the HTTPS endpoint
Enter the receiving URL, add the webhook, and retain the signing secret used to verify deliveries.
The Zapier app runs on the same events and delivery path as custom webhooks — Zapier is one consumer of that system, not a separate integration.
Connecting
- In Zapier, add a TIA step and choose Connect a new account.
- Paste an API key. Create one at API keys in your TIA dashboard.
- That's it — there's no "which workspace?" step.
API keys are bound to the workspace they were created in, so the connection resolves your organization from the key alone. The connection is labelled with that workspace name, which is how you tell two connections apart if you run several.
Membership is re-verified server-side on every request. The binding is a convenience default, not a grant.
To connect a different workspace, create a key from that workspace and add a second Zapier connection.
Triggers
Five triggers, all delivered as instant REST Hooks — Zapier subscribes to a webhook and TIA pushes. Each also has a polling fallback, so a Zap keeps working if a hook delivery is missed.
| Trigger | Fires when | Filters |
|---|---|---|
| New Lead | A visitor submits the in-chat contact form | Agent |
| New Form Submission | A visitor submits a custom form | Agent, Form |
| New Ticket | A ticket is raised | Agent |
| New Ticket Status Change | A ticket moves to a new status | Agent, only-when-new-status-is |
| New Ticket Assignment | A ticket gets an owner | Agent |
Agent and Form filters are dropdowns populated live from your workspace — no ids to copy.
Output fields
Payloads are flattened for mapping. New Lead gives you id, name, email, phone, contactId, conversationId, agentName, createdAt. New Ticket adds ticketNumber, subject, description, status, priority, category, requesterName, requesterEmail, and conversationSummary. New Ticket Status Change carries both fromStatus and toStatus plus changedBy, so you can act on the transition rather than the end state.
Custom form values are flattened onto the top level as well as nested under values — a field named order_number is a mappable output field, not something buried in a blob.
Actions
Create Lead — push a lead in from another system. Runs the same field rules, contact resolution, and lead.created event as a lead collected in the widget.
Fields: Agent (required), Email (required), Name, Phone.
Create Ticket — raise a ticket from anywhere. Fields: Agent (required), Subject (required), Description, Requester Email, Requester Name, Category, Priority.
Create Ticket needs the Helpdesk module (Growth and up). Without it the step fails with a clear "your plan does not include this" message rather than a bare status code.
Searches
Find Ticket — by ticket number or requester email. Find Lead — the most recent lead from an email address, optionally scoped to an agent.
Pair a search with an action using Zapier's "create if it doesn't exist" option to build idempotent Zaps.
Zaps worth building first
| Zap | Why |
|---|---|
| New Lead → Slack message | Sales sees the lead before the visitor closes the tab. |
| New Lead → HubSpot/Pipedrive contact | Stop retyping what the agent already collected. |
| New Ticket (priority = urgent) → PagerDuty or Slack | The queue is asynchronous; urgent isn't. |
New Ticket Status Change (to closed) → send an NPS survey | Ask while it's fresh. |
| New Ticket Assignment → DM the new owner | Nobody discovers a ticket by refreshing. |
New Form Submission (warranty_claim) → Airtable row | Structured intake into a structured tool. |
| Typeform submission → Create Lead | Fold non-chat capture into the same contact record. |
| Shopify refund → Create Ticket | Give a manual process a tracked queue. |
Troubleshooting
| Symptom | What to check |
|---|---|
| "TIA rejected the API key" | The key was revoked or mistyped. Create a new one at API keys. |
| "Your TIA plan does not include this" | Create Ticket requires the Helpdesk module (Growth). |
| Agent dropdown is empty | The key's workspace has no agents, or the key is bound to a different workspace. |
| Trigger doesn't fire | Check Settings → Webhooks in TIA — the Zapier subscription is listed there with its delivery log. A subscription auto-disables after 15 consecutive failures. |
| Duplicate items on first run | Zapier replays a sample on setup; live Zaps deduplicate on record id. |
| Old tickets appear on a status-change Zap | The polling fallback orders by last activity, so a recently-touched ticket is at the head of the list even if it was created weeks ago. |
Turning a Zap off sends TIA a 410 Gone, which removes the subscription cleanly. You don't need to delete anything by hand.
Availability
The TIA Zapier app is progressing through Zapier's review lifecycle (Private → Beta → Public). Until it's listed in the App Directory, use the invite link from your TIA dashboard or contact us for access.
If you'd rather not wait, the same six events are available today as custom webhooks, and work identically in Make, n8n, or your own endpoint.
Next steps
- Webhooks & Events — the delivery layer underneath.
- Integration API — the endpoints each Zapier step calls.
- API keys — creating and scoping the key.