Workspace Admins can set up webhooks for your workspace so you can integrate Otter Conversation data into your downstream tools and workflows.
Webhook Payload
Key Fields
- abstract_summary: A concise summary of the meeting’s essential details
- action_items: The list of AI-detected tasks and responsibilities assigned to participants
- insights: A detailed breakdown of key topics and points discussed
- outline: Custom topics or questions to extract precise information from the meeting
- transcript: Contains the entire transcript of the meeting
- calendar_guests: The emails of the users invited to the calendar event (if exists)
calendar_guests to match a corresponding contact in the external system (ex, you are sending the Otter summary to your CRM- conf_join_url: The URL of the Zoom, Google Meet, or Microsoft Teams conference (if exists)
- owner: The Otter owner of the Conversation
- shared_emails: The list of emails the Otter conversation is shared with
{
"id": "conversation_id",
"title": "product launch meeting",
"url": "<https://otter.ai/u/conversation_id>",
"owner": {
"id": "user_id",
"first_name": "Jane",
"last_name": "Doe",
"email": "Jane@test.com"
},
"created_at": "2025-07-31T12:00:00Z",
"process_status": {
"abstract_summary": "finished",
"action_item": "finished",
"outline": "success"
},
"calendar_guests": [
{
"name": "John Doe",
"email": "john@test.com",
"permission": "collaborate"
}
],
"shared_emails": [
{
"email": "jane@test.com",
"user": {
"id": "user_id",
"name": "Jane Doe",
"first_name": "Jane",
"last_name": "Doe",
"email": "jane@test.com"
},
"permission": "collaborate"
}
],
"shared_channels": [
{
"channel": {
"id": "channel_id",
"name": "All customer calls",
"member_count": 97,
"owner": {
"id": "user_id",
"name": "Owner Name",
"first_name": "Owner",
"last_name": "Name",
"email": "owner@test.com"
}
},
"permission": "collaborate"
}
],
"abstract_summary": "This meeting discussed the next steps in the project launch",
"conf_join_url": "https://calendar_meeting_url.com",
"relationships": {
"action_items": [
{
"id": "action_item_id",
"text": "Follow up with the sales team",
"assignee": {
"id": "user_id",
"first_name": "Jane",
"last_name": "Doe",
"email": "Jane@test.com"
},
"status": {
"completed": true,
"created_at": "2025-07-31T12:00:00Z",
"last_modified_at": "2025-07-31T12:00:00Z",
"completed_at": "2025-07-31T12:00:00Z"
}
}
],
"insights": [
{
"topic": "Decisions",
"text": [
[
"Launch next week",
"Prepare for marketing"
]
]
}
],
"outlines": [
{
"section": "Project risks",
"text": [
"Team fatigue",
"Tight deadline",
"Dependency on external API"
]
}
],
"transcript": {
"content": "Sam 00:15 \\n Welcome to project launch meeting!\\n",
"format": "txt"
}
}
}
Webhook Management
Workspace Admins can get the Webhook page by going to Manage Workspace > Developer. Only Workspace Admins can set up workspace webhooks.
Creating a Webhook
Create a new webhook by clicking on + Create webhook. The following dialog window will show up:
Enter the following information to create your webhook. The fields are:
- Endpoint URL (required): the URL to receive the exported speech, e.g., third-party URLs obtained from your CRM.
- Name (optional): a friendly name for this webhook. It can be null, and a blank field will be displayed for the webhook.
-
Source (required): the sources of speeches to export. Options:
- Workspace: All Conversations shared to the entire workspace will be exported.
- Channel: Only Conversations in the selected channels will be exported to this webhook.
- Currently, only public channels are supported.
Note: The Conversation must be shared first with these two sources before the Conversation is completed. Sharing a completed Conversation won’t trigger the export. -
Event type (currently not configurable): the event that will trigger the webhook export.
- We currently only support
Conversation.processed. This event happens when a speech has been transcribed and its insights have been generated.
- We currently only support
Updating a Webhook
Currently, there is no way to update a webhook. We recommend creating a new webhook, and deleting the old one.
Deleting a Webhook
The webhooks can be deleted with the three-dot icon on the right. The deletion is permanent and the endpoint URLs will stop receiving data from Otter immediately once they’re deleted.
Webhook Setup Best Practices
Check out some ways webhooks can be set up below. If you have any questions about specific setups, contact your Otter Account Manager.
Example 1 - Export external Sales calls through an auto-share channel
- Set up a public auto-share channel for your Sales calls. This allows you to auto-share external calls from selected team members to a central channel.
- Set up a channel-level webhook by setting the
source= the public channel you set up.
Example 2 - Export all <type of> calls through meeting template output rules
- Set up a meeting template to your preferences that is auto-applied to the calls you want exported.
- Set up an output rule in the meeting template so that all auto-applied meetings with this template are shared to a public channel.
- Set up a channel-level webhook by setting the
source= the public channel you set up.
conversation.completed webhook will only trigger if the meeting template is auto-applied and output to the correct channel automatically. If you apply the meeting template AFTER the meeting is over, it will NOT trigger the webhook.Example 3 - Manually selected “shared to workspace” meetings
- Set up a webhook where
source= “Conversations shared to anyone in the workspace” - Prior to meeting completion, ensure the meeting notes are shared with “Workspace members”
Troubleshooting & FAQ
Is a full API available?
- A full API is not yet available, but will be coming in future updates. Stay tuned!
What is the webhook retry logic?
- For each Conversation, there will be 2 additional retry attempts if the previous ones fail.
How do I get my custom prompt in the webhook payload?
- Custom prompts in the webhook payload are not yet supported, but will be coming in future updates. Stay tuned!
Do you support private channels?
- Private channels are not yet supported.
- Please contact your Otter Account Manager if you are interested in this feature. Your feedback and workflow use case will help us in building this feature in future updates.
I didn’t receive a meeting I expected to receive to my webhook. Why?
- Your meeting must be shared to the workspace or proper channel BEFORE the meeting ends.
Feedback
0 comments
Article is closed for comments.