Integrations
Send AIVA events with webhooks and Zapier
Create a webhook so AIVA sends calls, texts, leads and bookings to your own tools, connect Zapier, and manage API keys.
A webhook tells AIVA to send a signed HTTPS request to a URL you choose whenever something happens: a call ends, a lead comes in, a text arrives, an appointment is booked. You need a URL that starts with https:// and can accept a JSON POST request. Everything in this guide lives under Admin & Developer → Webhooks in the dashboard.
1. Create a webhook
- In the sidebar, open Admin & Developer → Webhooks. Stay on the Webhooks tab.
- Click Create Webhook. On a new account the button reads Create Your First Webhook.
- Fill in the form:
- Name: something you'll recognise later.
- URL: the address that should receive events. It must use
https. - Description (optional): a note for yourself.
- Events: tick each event you want to receive. You must pick at least one.
- Click Create.
- AIVA shows Webhook created with your signing secret. Save this secret — it won't be shown again. Copy it, store it somewhere safe, then click Done.
Common events include call.started, call.completed, call.missed, call.transferred, call.summary_ready, call.failed, call.message_taken, sms.received, lead.created, chat.message, appointment.booked, appointment.cancelled, appointment.rescheduled, campaign.completed and campaign.failed. The Events list in the form always shows the full, current set.
Each request body is JSON with three fields: event (the event name), timestamp, and data (the details of what happened).
2. Check the signature
AIVA signs every request with your webhook's signing secret, using an HMAC SHA-256 signature. If your receiving tool can check signatures, give it the secret so it can reject requests that didn't come from AIVA. If you lose the secret, rotate it (see step 5) to get a new one.
3. Send a test event
- On the Webhooks tab, open the menu (⋮) on the webhook's row.
- Click Send Test. If the webhook has several events, choose one under Send a sample of.
- A banner at the top of the list shows the result:
- Test … delivered · HTTP 200 (or another 2xx code) means your endpoint accepted it.
- Your endpoint didn't accept the test … means it answered with an error or didn't answer. Check the URL, and that it responds with a 2xx status.
4. Read the delivery log and retry
Open the row's menu and click Delivery Log. Each row shows the Event, Status, HTTP code, Attempt number, any Error, and the Time.
If a delivery fails, AIVA retries it automatically, up to three attempts in total. Your endpoint should reply quickly with a 2xx status. Anything else counts as a failure.
To resend a failed delivery yourself, click Retry on its row. If a later attempt already got through, the row says Delivered by another attempt, and retrying may send the event twice.
5. Rotate the signing secret
Open the row's menu and click Rotate Secret. A banner shows New secret: followed by the new value. The old secret stops working straight away, so update your receiving tool right after you rotate.
6. Edit, pause or delete a webhook
- Pause: use the switch next to the webhook's name. An inactive webhook gets no events.
- Edit: open the menu, click Edit, change the fields or the Active switch, then click Update.
- Delete: open the menu and click Delete. Confirm in Delete webhook?. Its delivery history is removed too. You can undo for a few seconds.
7. Connect Zapier
With a catch hook (works for every account):
- In Zapier, start a new Zap and choose a webhook trigger that catches incoming requests. Zapier gives you a unique URL. See Zapier's help center for the exact steps.
- In AIVA, create a webhook (step 1) with that URL and the events you want.
- Click Send Test so Zapier receives a sample to map fields from.
- Finish the rest of your Zap in Zapier.
With the AIVA app in Zapier: an AIVA app for Zapier exists, but it isn't published in Zapier's directory yet. For now it's shared privately by invite. If you have an invite, open the API Keys tab and follow the Connect Zapier steps there: create an API key, choose the AIVA app in Zapier, and paste the key when Zapier asks you to connect. The Zaps you build then subscribe to AIVA events (call completed, lead created or text received). Those subscriptions appear on the Webhooks tab with a Zapier badge. You can't edit or test them in AIVA. Change them in Zapier, or delete them here.
8. Manage API keys
API keys let other tools, such as Zapier, connect to your workspace.
- Open the API Keys tab and click Create API Key.
- Enter a Name that reminds you what the key is for, then click Create.
- Under Copy your key now, copy the key. You won't be able to see it again. Click Done.
The list shows each key's Name, the start of its Key, and when it was Last used. To stop a key working, click its revoke button and confirm Revoke in Revoke API key?. Anything using it stops working immediately. Treat keys like passwords. An API key can't change account settings or credentials.
Troubleshooting
- Webhook URLs must use https: change the URL to start with
https://. - Select at least one event: tick at least one box under Events.
- Webhook URL not allowed: AIVA won't send to private or internal network addresses. Use a public URL.
- This webhook is disabled. Turn it back on before retrying a delivery.: switch the webhook back on, then click Retry.
Next steps
- Add custom actions so your assistant can call your own tools during a conversation.
- Connect HubSpot to log calls and contacts automatically.
- Review calls and results to see what your webhooks are reporting on.
Something here doesn’t match what you see in the dashboard? Email support@aivachat.io and we’ll fix the guide.