웹훅 이벤트

사용 가능한 이벤트

이벤트 유형설명
note.created새 메모가 생성될 때 트리거됨
note.audio_uploaded오디오 녹음이 업로드될 때 트리거됨
test웹훅 구성 테스트에 사용됨

공통 페이로드 구조

모든 웹훅 페이로드는 WebhookPayload<T> 인터페이스로 정의되는 공통 구조를 공유합니다:
type
string
required
웹훅을 트리거한 이벤트 유형. 예: "note.created"
eventId
string
required
이 이벤트의 고유 식별자. 이 ID는 같은 이벤트의 재시도에서도 동일하게 유지되어 중복 제거를 가능하게 합니다. 예: "evt_123abc456def789"
webhookId
string
required
이 이벤트를 트리거한 웹훅 구성의 ID. 예: "wh_123abc456def789"
workspaceId
string
required
이벤트가 발생한 워크스페이스의 ID. 예: "ws_123abc456def789"
timestamp
string
required
이벤트가 발생한 시점의 ISO8601 타임스탬프. 예: "2023-01-01T00:00:00.000Z"
payload
object
required
이벤트별 데이터 페이로드. 구조는 이벤트 유형에 따라 달라집니다.
예시:
{
  "type": "event_type",
  "eventId": "evt_123abc456def789",
  "webhookId": "wh_123abc456def789",
  "workspaceId": "ws_123abc456def789",
  "timestamp": "2023-01-01T00:00:00.000Z",
  "payload": {
    // 이벤트별 데이터
  }
}

이벤트별 페이로드

note.created

payload
object
required
note
object
required
생성된 메모의 데이터가 포함된 메모 객체.
예시:
{
  "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. 예: "https://storage.caret.so/recordings/123abc456def789.mp3"
예시:
{
  "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"
  }
}