Help Center/Integrations

Connecting to HubSpot, Salesforce, Slack, and More — API + Zapier

Use Allison's REST API and outbound webhooks to connect to any app — directly or through Zapier, Make, n8n, and similar automation tools.

Allison ships with a Google Calendar integration today, but you don't have to wait for native support to connect anything else. Two primitives — a REST API and outbound webhooks — let you wire your agent to any service that has a public API, either directly or through a no-code automation tool like Zapier.

The two primitives

1. REST API — read and write your Allison data from anywhere

Anything you can do on your dashboard, a script or external system can do via our API. Create an API key on Settings → API Keys, and your system can:

  • Look up and create contacts
  • Read calls, bookings, and transcripts
  • Manage knowledge (facts, FAQs, policies) programmatically
  • Manage locations, team members, escalation rules, intents

Full API reference lives at docs.allisonvoice.com. Every endpoint uses the same API key auth (Authorization: Bearer AV_...) and the same api.allisonvoice.com/v1/... base URL.

2. Outbound Webhooks — react to what happens on calls

Instead of polling, subscribe to events. Create a webhook subscription on Settings → Webhooks, point it at your URL, and Allison will POST a signed payload whenever:

  • A call ends (call.ended) — with duration, disposition, summary, and contact
  • A caller leaves a message (call.message_taken)
  • A caller requests a callback (call.callback_requested)
  • Allison escalates to a team member (call.escalation_triggered)
  • An appointment gets booked (call.appointment_booked)
  • A new caller profile is auto-created (contact.created)

Every webhook is signed with HMAC-SHA256 so you can verify it came from Allison. Failed deliveries retry on a 6-attempt schedule spanning 24 hours.

Using Zapier (or Make, n8n, Pabbly, Workato)

Zapier has a built-in "Webhooks by Zapier" trigger that catches any incoming POST. This is the fastest path for most integrations — no code, no server, just a Zap.

Setup in Zapier:

  1. Create a new Zap. Choose Webhooks by ZapierCatch Hook as the trigger.
  2. Zapier gives you a URL like https://hooks.zapier.com/hooks/catch/...
  3. In Allison, go to Settings → Webhooks, click Add Webhook, paste that URL, and pick which events you want (usually call.ended and call.appointment_booked are the most useful).
  4. Test by making a test call. Zapier will capture the payload and show you every field you can map.
  5. Add your action step — "Create HubSpot contact", "Post to Slack channel", "Add row in Google Sheets", whatever.

Worked examples

HubSpot — create a contact when a new caller reaches Allison

Goal: every time someone new calls your business, their info lands in HubSpot as a contact.

  1. Create a Zap with Catch Hook trigger from Zapier Webhooks.
  2. Subscribe to the contact.created event in Allison's Settings → Webhooks. Paste the Zapier URL.
  3. Add a HubSpot action: Create or Update Contact.
  4. Map fields: phone from data.phone, name from data.name, email from data.email.
  5. Turn on the Zap. Every new caller auto-lands in HubSpot.

If you want call history attached, add a second Zap on call.ended that logs a HubSpot engagement against the same contact.

Salesforce — create a lead when a callback is requested

Goal: if Allison took a callback request during a call, it becomes a Salesforce lead for the sales team.

  1. Zapier → Catch Hook trigger.
  2. Subscribe to call.callback_requested. Paste URL into Allison.
  3. Salesforce action: Create Lead.
  4. Map phone, name, and the data.reason field into the Lead's description.
  5. Optional: use Zapier's filter step to only create leads for certain call topics.

Slack — notify a channel when Allison escalates a call

Goal: every time Allison escalates (warm transfer, cold transfer, or take-message fallback), your on-call channel gets notified in real time.

  1. Zapier → Catch Hook.
  2. Subscribe to call.escalation_triggered. This one fires mid-call the moment a rule matches, so you'll get the Slack ping while the call is still happening.
  3. Slack action: Send Channel Message.
  4. Build the message: ":phone: Escalation: {{data.rule_name}} — {{data.context}}"
  5. Filter by data.destination_type = "team_member" if you only want team-targeted escalations.

Google Sheets — log every call for later analysis

Want a running log of every call for reporting? Subscribe to call.ended, Zapier → Create Spreadsheet Row, map the fields you care about (call_id, disposition, duration_seconds, summary, contact_id). You'll have a complete call log in a spreadsheet, updated in real time.

Going direct — your own webhook receiver

If you'd rather not use Zapier, point the webhook at your own URL and handle it with whatever stack you prefer. Verifying the signature takes about five lines of code; the signing documentation has working examples in Node.js, Python, Ruby, and PHP.

The delivery log on Settings → Webhooks → [your subscription] → Deliveries shows every attempt: timestamp, status code, response preview, duration. If your endpoint is misbehaving, you'll see it here.

Picking between API and webhooks

  • Webhooks when you want to react to something happening (a call ended, an appointment was booked). Push model — we notify you.
  • API when you want to look something up on demand or change a setting (pull a transcript, update a caller's notes, add a new FAQ). Pull model — you ask.

Most integrations use both. A typical CRM sync pattern: webhook fires contact.created → your automation creates the contact in the CRM → next time you need fresh data, a cron job calls the Allison API to pull the latest calls for that contact.

What about HubSpot or Calendly as a pre-built integration?

They're on the roadmap. For now, the API + Zapier path above works cleanly for both and gives you complete control over how data flows in and out. When native integrations ship, they'll connect to the same data sources — anything you build via API + webhooks keeps working.

Questions about a specific integration?

Call your agent and ask, or send a message to the Allison support team via the dashboard. We can often help you scope a Zap in a few minutes.

Still have questions? Log in to chat with Allison.

Log In to Chat