Skip to main content
Webhook are registered in workspaces and are triggered on specific events, see each webhook description for more details. When one of these events takes place, the client endpoint receives the payload as a POST HTTPS request, in JSON format. The client is expected to answer with a 200 status code within 5 seconds. Failing to do that, the payload will be sent again immediately, then 1 minute and 5 minutes later, before being discarded. The following headers are set:
  • X-Claap-Webhook-Id: the webhook identifier.
  • X-Claap-Webhook-Secret: a secret key bound to the webhook, which can be used to check the request comes from Claap.

Event structure

Webhook payloads are structured as JSON objects like:
{
  "eventId": "eeghaiCh8Chaikusa5che",
  "event": {
    "type": "recording_added",
    "recording": {
      ... <Recording> payload
    }
  }
}
Where event.type identifies the kind of event being received and eventId this particular instance of webhook invocation. eventId is shared by all retries of a same invocation.

Moving from Insight Templates to AI Fields

Starting the 15th of June 2026, recording insightTemplates attribute will no longer be filled and will be replaced by aiFields attribute. aiFields will contain the recording insights in a flat collection. To migrate to the new output format before the 15th of June 2026, update your webhook configuration to enable the new aiFields attribute.