- Store transcripts or post-call results
- Log call events in your own systems
- Trigger downstream workflows (analytics, alerts, CRM updates, etc.)
- Where to configure webhooks
- Create a webhook
- Available subscriptions
- Webhook request format
- Security recommendations
- How webhooks differ from Custom External Actions
- Where to go next
Where to configure webhooks
- In the left-hand sidebar, click Webhooks.
- You’ll see a list of existing webhooks for the current environment.
- Each row typically shows:
- Label – Name of the webhook.
- URL – The target endpoint.
- Method – Currently POST.
- Other metadata such as ID or connection details.
- Click Create Webhook to add a new subscription.
- Use the three-dot menu next to an existing webhook to edit or delete it (depending on your UI).
Create a webhook
To create a new webhook:- Go to Webhooks and click Create Webhook.
-
In the New Webhook dialog, fill in:
-
Label
A human‑friendly name for this webhook.
Example:Store transcripts in data warehouse. -
URL
The endpoint on your server that will receive webhook events.
Example:https://api.yourcompany.com/fluents/webhook. -
Subscriptions
Select one or more event types you want this webhook to receive
(see Available subscriptions below). -
Method
Currently POST is used for all webhooks. -
Account Connection (optional)
In some setups you can associate the webhook with a specific account connection.
If you don’t use this yet, you can leave it at its default value.
-
Label
- Click Create Webhook to save.
Available subscriptions
You can subscribe a webhook to one or more of the following event types:-
Message
Events related to messages exchanged during the call. -
Action
Events related to actions your agent performs (for example, certain phone actions or external actions). -
Transcript
Transcript-related events. Payloads typically include transcript text in thepayloadsection. -
Error
Events when an error occurs during a call or processing pipeline. -
Recording
Events related to call recordings (for example, when a recording is available). -
Human Detection
Events indicating when a human is detected in the call flow, depending on your configuration. -
Phone Call Did Not Connect
Events when an attempted call failed to connect (for example, unreachable or busy). -
Phone Call Connected
Events when a call successfully connects. -
Phone Call Ended
Events when a call is finished. -
Post-Call Processing Completed
Events when post-call processing is complete and the post-call result (analysis / summary) is ready.
The payload includes the post‑call result content in thepayloadsection so you can store or process it.
Webhook request format
All webhooks use:- HTTP method: POST
- Body: JSON
- Authentication: No built-in signing yet (see Security recommendations).
payload structure will vary by event type, but the top-level structure is generally consistent and includes:
call_id– Unique ID of the call linked to this event.type– The event type (for example,event_transcript,event_post_call_processing_completed).from_number– The caller’s number.to_number– The number that was called.is_outgoing–truefor outbound calls,falsefor inbound calls.payload– Event-specific data (transcript, post-call result, error details, etc.).
payload would contain the post-call result or analysis text, for example:
payload.post_call_resultsor a similar field, depending on your configuration.
- Accept JSON POST requests.
- Parse the body.
- React based on
typeand the data insidepayload.
Security recommendations
Currently, Fluents.ai webhooks do not include a built-in signing mechanism (HMAC or shared secret). To keep your webhook endpoints secure:- Use a secret, unguessable URL for your webhook endpoint.
- Example:
https://api.yourcompany.com/fluents/webhook/long-random-token.
- Example:
- Validate the data you receive and ignore unexpected payloads.
- Optionally limit access by:
- Allowlisting IP ranges (if feasible in your infrastructure).
- Adding your own authentication layer in front of the endpoint (for example, an API gateway).
How webhooks differ from Custom External Actions
Webhooks and Custom External Actions both involve calling external URLs, but they serve different purposes:-
Webhooks
- Triggered by events (for example, call connected, transcript chunk, post-call processing completed).
- Are usually one-way notifications from Fluents.ai to your systems.
- Do not pause the conversation or require an immediate response to continue the call.
- Great for logging, analytics, syncing data to CRMs or data warehouses, and triggering asynchronous workflows.
-
Custom External Actions
- Are triggered during a conversation by the agent (function-based).
- The agent waits for your API’s response and then uses that data to continue talking.
- Ideal when the conversation must react in real time to your API (for example, look up an account and then read back the balance).
Use Custom External Actions when the agent must call your API in the middle of a live call. See the Actions – Custom External Actions guide for more about custom actions.
Where to go next
-
Learn how to create Custom External Actions that call your own APIs in the
Actions Feature Guide. -
Review how calls are logged and how post-call processing works in
Call history (Core Concept) and
Agents – Post-Call Actions. -
Manage API keys and environments for your backend integrations in
Get API key and Settings.

