이벤트 · 사용자와 접근 권한
api_key.expiring
API 키 만료 임박
API 키가 7일 안에 만료돼요. 이 이벤트는 만료일마다 한 번 전송돼요.
- 객체 유형
- api_key
- 전송 대상
- admin 역할의 웹훅
페이로드
idstring필수이벤트 ID(
evt_…)로,webhook-id헤더로도 보내요. 중복 전송을 걸러 내는 데 쓰세요.typestring필수허용 값:
api_key.expiringcreated_atstring (date-time)필수변경이 일어난 시각(UTC).
org_idinteger필수api_versionstring필수data스키마의 계약 버전.sequenceinteger웹훅 안에서의 전송 순번(테스트 이벤트에는 없어요).
payloadstring필수thin은data필드가 없다는 뜻이에요: API로 객체를 읽으세요.허용 값:
fullthindataobject필드
days_leftinteger필수키가 만료되기까지 남은 일수.
testboolean필수POST /v1/webhooks/{webhook_id}/test로 보낸 테스트 이벤트.
전송 예시
{
"id": "evt_0123456789abcdef0123456789abcdef",
"type": "api_key.expiring",
"created_at": "2026-10-24T10:00:03Z",
"org_id": 1,
"api_version": "1.62.0",
"sequence": 1042,
"object": {
"type": "api_key",
"id": "14"
},
"payload": "full",
"data": {
"api_key": {
"id": 14,
"name": "CRM sync",
"prefix": "kb_3f9a",
"kind": "org",
"role": "editor",
"scopes": [
"cards:read",
"cards:write"
],
"expires_at": "2026-10-31T00:00:00Z"
},
"days_left": 6
},
"test": false
}이벤트 수신
각 전송은 이 JSON 본문을 웹훅의 수신 주소로 보내는 POST 요청이에요. 본문을 신뢰하기 전에 webhook-signature 헤더(Standard Webhooks)를 검증하고, 몇 초 안에 2xx 상태로 응답한 다음 처리는 그 뒤에 하세요. 한 웹훅으로 가는 전송은 이벤트 순서를 지키며, 실패한 전송은 간격을 늘려 가며 재시도해요.
새 이벤트 유형과 새 필드는 언제든 추가될 수 있어요. 모르는 유형과 필드는 건너뛰세요.