API Request (Webhook)
After a call, Nova can automatically send an HTTP request to any URL — perfect for updating your CRM, creating tickets, or sending notifications to Slack.
How it works
- The call ends
- Nova evaluates the conditions
- Variables in the URL, body, and headers are replaced
- The HTTP request is sent
- Timeout: 10 seconds — after that, the request is aborted
Creating a webhook action
1
Open post-processing
Open your assistant → tab Post-Processing.
2
Add API request
Click Add action → API Request.
3
HTTP method and URL
Choose the method and enter the target URL:
| Method | Use |
|---|---|
GET | Retrieve data |
POST | Send data (most common) |
PUT | Replace data |
PATCH | Partially update data |
DELETE | Delete data |
Variables in the URL are supported:
https://api.firma.de/calls?caller={{caller_number}}4
Configure headers
Add the required headers, e.g.:
Authorization: Bearer your-api-key
Content-Type: application/json5
Define the body
Write the request body as JSON with variables:
{
"caller_name": "{{name}}",
"caller_phone": "{{caller_number}}",
"reason": "{{reason}}",
"summary": "{{summary}}",
"appointment_date": "{{appointment_date}}"
}6
Define conditions (optional)
Natural-language conditions just like email and SMS.
Available variables
| Variable | Description |
|---|---|
{{name}} | Caller's name |
{{email}} | Email address |
{{phone}} | Phone number |
{{caller_number}} | Caller's phone number |
{{callee_number}} | Number that was called |
{{reason}} | Request |
{{appointment_date}} | Appointment |
{{summary}} | AI summary |
| All extraction variables | Custom-defined variables |
Example use cases
CRM update (HubSpot, Salesforce)
POST https://api.hubspot.com/crm/v3/objects/contacts
{
"properties": {
"firstname": "{{name}}",
"phone": "{{caller_number}}",
"hs_lead_status": "NEW",
"notes_last_contacted": "{{summary}}"
}
}Slack notification
POST https://hooks.slack.com/services/T00/B00/xxx
{
"text": "New call from {{name}} ({{caller_number}}): {{reason}}"
}Create a ticket (Zendesk)
POST https://firma.zendesk.com/api/v2/tickets.json
{
"ticket": {
"subject": "Call from {{name}}",
"description": "{{summary}}",
"requester": {
"name": "{{name}}",
"email": "{{email}}"
}
}
}⚠️
The timeout is 10 seconds. Make sure your endpoint responds within that time. On timeout, the request is not retried.
💡
First test the webhook with a service like webhook.site (opens in a new tab) to inspect the payload sent before connecting it to your production system.