사이드 메뉴
시작하기
로그인
커뮤니케이션
광고
웹훅 테스트
이 문서는 카카오디벨로퍼스에서 제공하는 웹훅 테스트 기능을 소개합니다.
서비스는 웹훅 테스트 도구를 사용해 구현한 웹훅이 제대로 작동하는지 혹은 어떤 형식으로 요청을 전달받는지 확인할 수 있습니다. 웹훅에 대한 자세한 사항은 웹훅을 참고합니다.
웹훅 테스트는 아래 두 가지 방식으로 이용할 수 있습니다.
- 실제 웹훅 전송: 웹훅 URL을 등록한 경우, 등록한 웹훅 URL로 웹훅 요청이 실제로 전송됩니다.
- 요청 미리보기: 웹훅 URL을 등록하지 않은 경우, 웹훅 요청의 예시만 미리 확인할 수 있습니다.
카카오디벨로퍼스에서 제공하는 모든 종류의 웹훅은 [도구] > [웹훅 테스트]에서 테스트할 수 있습니다. 테스트 기능은 변경 이벤트만 발생할 뿐 실제 사용자의 상태나 정보를 변경하지 않습니다.
사용자가 앱과 연결을 끊을 때 서비스에 보내는 웹훅을 테스트할 수 있습니다. 웹훅 요청 명세는 연결 해제 웹훅을 참고합니다.

- [A] [앱]: 테스트할 앱을 선택합니다.
- [B] [웹훅 URL]: 웹훅을 수신할 웹훅 URL을 확인합니다. 입력한 웹훅 URL이 없는 경우, [설정]을 눌러 연결 해제 웹훅을 설정합니다.
- [C] [카카오계정]: 테스트할 멤버의 카카오계정을 선택 단, 선택한 계정은 해당 앱에 연결되어 있어야 합니다.
- [D] [파라미터]: 이벤트 속성을 설정합니다. (참고: 웹훅 요청 본문)
- [E] [발송]: 버튼을 눌러 웹훅을 전송합니다. 웹훅 URL을 등록하지 않은 경우, [요청 미리보기]를 눌러 요청 예시만 확인할 수 있습니다. (참고: 웹훅 요청 예시)
연결, 연결 해제, 동의항목 동의 및 철회와 같은 카카오계정의 상태 변경 이벤트를 테스트할 수 있습니다. 웹훅 요청 명세는 계정 상태 변경 웹훅을 참고합니다.

- [A] [앱]: 테스트할 앱을 선택합니다.
- [B] [웹훅 URL]: 웹훅을 수신할 웹훅 URL을 확인합니다. 입력한 웹훅 URL이 없는 경우, [설정]을 눌러 계정 상태 변경 웹훅을 설정합니다.
- [C] [카테고리]: 카테고리를 선택합니다.
- 테스트 도구에서는 사용 권한이 필요한 RISC와 CAEP 카테고리도 테스트해볼 수 있습니다.
- [D] [이벤트 타입]: 테스트 전송할 변경 이벤트 타입을 선택합니다. (참고: 지원하는 이벤트 타입)
- [E] [카카오계정]: 이벤트를 발송할 멤버를 선택합니다. 단, 선택한 계정은 해당 앱에 연결되어 있어야 합니다.
- [F] [파라미터]: 이벤트 속성을 설정합니다. (참고: 웹훅 요청 본문)
- [G] [발송]: 버튼을 눌러 웹훅을 전송합니다. 웹훅 URL을 등록하지 않은 경우, [요청 미리보기]를 눌러 요청 예시만 확인할 수 있습니다. (참고: 웹훅 전송 결과 )
| 카테고리 | 이벤트 타입 | 파라미터 |
|---|---|---|
| OAuth | 사용자 연결 해제 |
|
| OAuth | 서비스 약관 동의 |
|
| OAuth | 서비스 약관 철회 |
|
| OAuth | 토큰 만료 |
|
| RISC | 계정 사용 중지 |
|
| RISC | 식별자 변경 |
|
| CAEP | 인증 레벨 변경 |
|
| KAKAO | 사용자 정보 변경 |
|
[발송]을 선택하면 아래에 테스트 정보가 표시됩니다.
- 웹훅 요청: 테스트 요청의 전체 본문이 표시됩니다. 웹훅 URL이 설정되지 않은 경우
Host와URL은 출력되지 않습니다. - 보안 이벤트 토큰: 요청에 포함된 SET의 디코딩 값이 출력됩니다. 각
header와payload가 분리되어 제공되니 디버깅 시 참고하세요.
계정 상태 변경 웹훅 테스트 페이지는 웹훅 요청과 더불어 보안 이벤트 토큰과 웹훅 응답 정보를 추가로 제공합니다.
웹훅 요청에 포함된 SET 정보를 디코딩한 값입니다. 헤더(Header)와 페이로드(Payload)로 구분됩니다.
// 헤더{"kid": "ea5d255f34921d4a6ca10f6cadf270","typ": "secevent+jwt","alg": "RS256"}// 페이로드{"aud": "8c67bxxxxxxxxxxxxxxxxxxxxxxe2e76140","sub": "701541","iss": "https://kauth.kakao.com","txm": "1d61d6c8-173b-488c-b8af-2e2b6ca29777","iat": 1744789997,"jti": "7185208e-c045-41e9-a2ff-0b219b9e123e","events": {"https://schemas.openid.net/secevent/oauth/event-type/user-linked": {"subject": {"sub": "701541","subject_type": "iss-sub","iss": "https://kauth.kakao.com"}}}}
카카오가 서비스에 전송한 웹훅 요청 예시입니다. 웹훅 URL을 등록하지 않은 경우, Host가 포함되지 않습니다.
POST / HTTP/1.1Host: example.comContent-Type: application/secevent+jwtAccept: application/jsonxxxXXXyYYYNmNhMTBmNmNhZGYyNzAiLCJ0eXAiOiJzZWNldmVudCtqd3QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiI4Yz
서비스의 엔드포인트에서 웹훅 요청에 어떻게 응답하는지 확인할 수 있습니다. 웹훅 URL을 등록하지 않은 경우에는 제공하지 않습니다.
HTTP/1.1 403 ForbiddenAlt-Svc: h3=":443"ma=93600,h3-29=":443"ma=93600,quic=":443"ma=93600v="43"Cache-Control: max-age=0Connection: closeContent-Length: 359Content-Type: text/htmlDate: Wed, 16 Apr 2025 07:54:35 GMTMime-Version: 1.0Elapsed time: 582ms
사용자에게 공유한 카카오톡 메시지가 성공적으로 전송될 할 때 서비스에 보내는 웹훅을 테스트할 수 있습니다. 웹훅 요청 명세는 카카오톡 공유 웹훅을 참고합니다.

- [A] [앱]: 테스트할 앱을 선택합니다.
- [B] [웹훅 URL]: 웹훅을 수신할 웹훅 URL을 확인합니다. 입력한 웹훅 URL이 없는 경우, [설정]을 눌러 카카오톡 공유 웹훅을 설정합니다.
- [C] [파라미터]: 이벤트 속성을 설정합니다. (참고: 웹훅 요청 본문)
- [D] [발송]: 버튼을 눌러 웹훅을 전송합니다. 웹훅 URL을 등록하지 않은 경우, [요청 미리보기]를 눌러 요청 예시만 확인할 수 있습니다. (참고: 웹훅 요청 예시)
사용자가 앱에 연결된 카카오톡 채널을 추가하거나 삭제할 때 서비스에 보내는 웹훅을 테스트할 수 있습니다. 웹훅 요청 명세는 카카오톡 채널 웹훅을 참고합니다.

- [A] [앱]: 테스트할 앱을 선택합니다.
- [B] [웹훅 URL]: 웹훅을 수신할 웹훅 URL을 확인합니다. 입력한 웹훅 URL이 없는 경우, [설정]을 눌러 카카오톡 채널 웹훅을 설정합니다.
- [C] [카카오계정]: 이벤트를 발송할 멤버선택. 단, 선택한 계정은 해당 앱에 연결되어 있어야 합니다.
- [D] [파라미터]: 이벤트 속성을 설정합니다. 테스트 시에는 카카오디벨로퍼스 채널 ID가 사용됩니다. (참고: 웹훅 요청 본문)
- [E] [발송]: 버튼을 눌러 웹훅을 전송합니다. 웹훅 URL을 등록하지 않은 경우, [요청 미리보기]를 눌러 요청 예시만 확인할 수 있습니다. (참고: 웹훅 요청 예시)