이벤트 · 카드
card.index_failed
카드 인덱싱 실패
카드 버전의 인덱싱이 실패했어요(data.reason 필드는 중립 코드예요). 카드는 다시 업로드하거나 재인덱싱할 때까지 오류 상태로 남아요.
- 객체 유형
- card
- 전송 대상
- 객체를 볼 수 있는 웹훅: 역할, 데이터 프로필, 컬렉션에 따라 정해져요
페이로드
idstring필수이벤트 ID(
evt_…)로,webhook-id헤더로도 보내요. 중복 전송을 걸러 내는 데 쓰세요.typestring필수허용 값:
card.index_failedcreated_atstring (date-time)필수변경이 일어난 시각(UTC).
org_idinteger필수api_versionstring필수data스키마의 계약 버전.sequenceinteger웹훅 안에서의 전송 순번(테스트 이벤트에는 없어요).
payloadstring필수thin은data필드가 없다는 뜻이에요: API로 객체를 읽으세요.허용 값:
fullthindataobject필드
job_idinteger | null인덱싱 작업 또는 내보내기 작업.
versioninteger필수reasonstring필수중립 사유 코드(값이 늘어날 수 있는 열거형이므로 알 수 없는 코드는 일반 실패로 처리하세요). 예:
unprocessable,too_large,timeout,upstream_unavailable,internal.
testboolean필수POST /v1/webhooks/{webhook_id}/test로 보낸 테스트 이벤트.
전송 예시
{
"id": "evt_0123456789abcdef0123456789abcdef",
"type": "card.index_failed",
"created_at": "2026-10-24T10:00:03Z",
"org_id": 1,
"api_version": "1.62.0",
"sequence": 1042,
"object": {
"type": "card",
"id": "c_9f2e41"
},
"payload": "full",
"data": {
"card": {
"id": "c_9f2e41",
"title": "Refund policy",
"collection": "support",
"collection_id": 3,
"version": 4,
"kind": "text",
"status": "error",
"verification_state": "trusted",
"owner_id": 7,
"tags": [
"billing"
],
"external_id": null,
"metadata": {}
},
"job_id": 4410,
"version": 4,
"reason": "unprocessable"
},
"test": false
}이벤트 수신
각 전송은 이 JSON 본문을 웹훅의 수신 주소로 보내는 POST 요청이에요. 본문을 신뢰하기 전에 webhook-signature 헤더(Standard Webhooks)를 검증하고, 몇 초 안에 2xx 상태로 응답한 다음 처리는 그 뒤에 하세요. 한 웹훅으로 가는 전송은 이벤트 순서를 지키며, 실패한 전송은 간격을 늘려 가며 재시도해요.
새 이벤트 유형과 새 필드는 언제든 추가될 수 있어요. 모르는 유형과 필드는 건너뛰세요.