Skip to main content
Webhooks send call, conversation, and WebRTC events from Rapida to your HTTP endpoint. Use them to sync call status, media state, conversation state, transcripts, metadata, metrics, and post-call analysis results with your own systems.
Webhook event selection in Rapida

What are webhooks?

Webhooks are automated HTTP requests sent when a call, WebRTC media session, or assistant conversation reaches a configured event. They enable you to:
  • Receive real-time updates about call, media, and conversation status
  • Collect conversation data for analysis or storage
  • Trigger actions in external systems based on call, WebRTC, or conversation events

Events

Call events

WebRTC events

Conversation events

Payload shape

All webhook requests are sent as JSON. The top-level envelope is consistent across event types:
The conversation object is included when the event is tied to a conversation. Event-specific fields are always inside data; context_id is not sent as a separate top-level field.

Call payloads

Call event payloads include the available call lifecycle fields. Common keys are provider, direction, caller, to, from, context_id, channel_uuid, status_event, provider_response, stage, reason, status, duration_ms, call_status, failure_class, failure_reason, disconnect_reason, provider_status_code, retryable, and error.

WebRTC payloads

WebRTC events use the same envelope and include media-session fields in data.
For webrtc.reconnecting, data.type is usually ice_restarting or media_session_restarting. For webrtc.failed, data.type can include values such as peer_failed, media_session_start_failed, media_session_restart_failed, or media_restart_limit_reached.

Conversation payloads

conversation.begin includes source and identifier context for a new conversation:
conversation.resume includes the same source and identifier context plus the current message_count. The default conversation.completed payload has this structure:
Analysis values are only available on conversation.completed. Call and WebRTC events do not include post-call analysis output. If an analysis endpoint fails, the completed webhook is still sent, but the failed analysis key is omitted from data.metadata.
conversation.error includes the terminal error reason and message:

Configuration options

  • HTTP method: Select the HTTP method used for delivery. POST is the default for most integrations.
  • Server URL: Set the endpoint that receives webhook requests.
  • Headers: Add authentication headers or any required integration headers.
  • Retry status entries: Configure response status entries used by the delivery retry policy.
  • Retry count: Set how many times Rapida should retry delivery for retryable failures.
  • Timeout: Set how long Rapida should wait for your endpoint to respond.

Use Cases

Real-time Monitoring

Set up webhooks to receive instant notifications about call, media, and conversation starts, completions, or failures. This allows you to monitor assistant performance and user engagement in real time.

Data Analysis

Collect conversation data and analysis results through webhooks to feed into your analytics pipeline. This can help you gain insights into user behavior, common queries, and assistant effectiveness.

CRM Integration

Use webhooks to automatically update customer records in your CRM system based on conversation outcomes. This ensures your customer data stays current without manual intervention.

Automated Workflows

Trigger automated actions in your systems based on specific conversation events or outcomes. For example, create support tickets, send follow-up emails, or update inventory based on user interactions.

Conversation Logging

Maintain a comprehensive log of all assistant conversations by capturing webhook data. This can be crucial for compliance, training, and quality assurance purposes.

Multi-channel Support

Integrate webhook data with your omnichannel support system to provide seamless customer experiences across various platforms and touchpoints.