Quickstart
1
Add an endpoint
As an organisation administrator, open Settings → Webhooks → Add endpoint in Caretta and enter a public HTTPS URL.
2
Choose a delivery mode
Select individual events for the lowest latency, or choose a bundled
call.ready event for one combined payload.3
Save the signing secret
Copy the signing secret when Caretta shows it. It is displayed once. Store it in a secrets manager or encrypted environment variable.
4
Send a test
Select Send test for the endpoint. Caretta sends a
webhook.test request.5
Verify and acknowledge
Verify
X-Caretta-Signature against the raw request body and return a 2xx response within 10 seconds.Events
Eligible calls are real calls longer than 60 seconds that have not been deleted. Calls lasting 60 seconds or less, and deleted calls, do not produce delivery events.
Choose a delivery strategy
Per-event delivery
Select any combination ofcall.completed, call.notes_ready, and call.metrics_ready. This is the default and sends each component as soon as it is ready.
Use call.completed when you need one reliable event for every eligible call. Use call.metrics_ready when you need the evaluation result for every eligible call, including calls that were skipped with a recorded reason.
Bundled delivery
Bundled mode sends onecall.ready event after all selected components are ready. The transcript is always included; notes and metrics are optional.
If you must receive every eligible call:
- Subscribe to
call.completedusing per-event delivery. - For a reliable single bundle, include metrics but do not require notes.
- If you need a notes-and-metrics bundle, add a second per-event endpoint for
call.completedas a safety net.
Verify signatures
Every request includes these headers:
Caretta signs this exact byte sequence:
verify-caretta-signature.js
Delivery behaviour
- Return any
2xxresponse within 10 seconds. - Delivery is at least once. Deduplicate using
X-Caretta-Event-Id. - Event ordering is not guaranteed. Correlate related events with
data.call.id. - Failed requests are retried with backoff for approximately two hours.
- Network retries reuse the event and delivery IDs.
2xx, and performs slower processing asynchronously.
Payloads
All events includeevent, schema_version, event_id, delivery_id, and occurred_at.
call.completed
call.completed
call.notes_ready
call.notes_ready
call.metrics_ready
call.metrics_ready
metrics array with a skip reason. Metrics can be re-evaluated; use evaluated_at to identify the latest result.webhook.test
webhook.test
These examples show the payload structure and use illustrative values. Build consumers to tolerate additional fields so they remain compatible as Caretta adds data.
Manage an endpoint
Open Settings → Webhooks to:- enable or disable delivery;
- change the URL, subscribed events, or delivery mode;
- send a test event;
- inspect the delivery log;
- rotate the signing secret; or
- delete the endpoint.
Endpoint management through a public REST API is planned but is not currently available.