Webhook Events

Available Events

Event TypeDescription
note.createdTriggered when a new note is created
note.audio_uploadedTriggered when an audio recording is uploaded
testUsed for testing webhook configurations

Common Payload Structure

All webhook payloads share a common structure defined by the WebhookPayload<T> interface:

type
string
required

The type of event that triggered the webhook. Example: "note.created"

eventId
string
required

A unique identifier for this event. This ID remains the same across retries of the same event, enabling deduplication. Example: "evt_123abc456def789"

webhookId
string
required

The ID of the webhook configuration that triggered this event. Example: "wh_123abc456def789"

workspaceId
string
required

The ID of the workspace where the event occurred. Example: "ws_123abc456def789"

timestamp
string
required

ISO8601 timestamp of when the event occurred. Example: "2023-01-01T00:00:00.000Z"

payload
object
required

Event-specific data payload. The structure varies based on the event type.

Example:

{
  "type": "event_type",
  "eventId": "evt_123abc456def789",
  "webhookId": "wh_123abc456def789",
  "workspaceId": "ws_123abc456def789",
  "timestamp": "2023-01-01T00:00:00.000Z",
  "payload": {
    // Event-specific data
  }
}

Event-Specific Payloads

note.created

payload
object
required
note
object
required

A Note object containing the created note’s data.

Example:

{
  "type": "note.created",
  "eventId": "Ghapa5svAZBUUQts1x6p",
  "webhookId": "e4001eda-f005-4758-a162-d77fb57457d9",
  "workspaceId": "e48534e9-6e4e-47af-b968-02e4c3809d2b",
  "timestamp": "2025-03-07T16:28:45.470Z",
  "payload": {
    "note": {
      "title": "Frank Ocean - Lost",
      "kind": "podcast",
      "tags": [],
      "participants": [],
      "totalDurationSec": 47,
      "userWrittenNote": "gooood song",
      "summary": "This podcast is a part of song with lyrics.",
      "transcripts": [
        {
          "speaker": "Speaker A",
          "text": "I was screaming, I'm fighting for, but you kept running past the end zone.",
          "startTimestamp": "00:04",
          "endTimestamp": "00:10"
        },
        {
          "speaker": "Speaker A",
          "text": "in my lips.",
          "startTimestamp": "00:22",
          "endTimestamp": "00:22"
        }
      ],
      "inputLanguage": "en",
      "translationLanguage": null,
      "calendarEvent": null,
      "meetingApp": null,
      "visibility": "workspace",
      "createdAt": "2025-03-07T16:27:47.375085+00:00",
      "updatedAt": "2025-03-07T16:28:45.410173+00:00"
    }
  }
}

note.audio_uploaded

payload
object
required
audioUrl
string
required

URL to access the uploaded audio recording. Example: "https://storage.caret.so/recordings/123abc456def789.mp3"

Example:

{
  "type": "note.audio_uploaded",
  "eventId": "evt_123abc456def789",
  "webhookId": "wh_123abc456def789",
  "workspaceId": "ws_123abc456def789",
  "timestamp": "2023-01-01T00:00:00.000Z",
  "payload": {
    "audioUrl": "https://storage.caret.so/recordings/123abc456def789.mp3"
  }
}