본문 바로가기메인 메뉴 바로가기사이드 메뉴 바로가기

kakao developers

관련사이트

사이드 메뉴

카카오맵

검색

도구

웹훅 테스트

이 문서는 카카오디벨로퍼스에서 제공하는 웹훅 테스트 기능을 소개합니다.

기능 소개

서비스는 웹훅 테스트 도구를 사용해 구현한 웹훅이 제대로 작동하는지 혹은 어떤 형식으로 요청을 전달받는지 확인할 수 있습니다. 웹훅에 대한 자세한 사항은 웹훅을 참고합니다.

웹훅 테스트는 아래 두 가지 방식으로 이용할 수 있습니다.

  • 실제 웹훅 전송: 웹훅 URL을 등록한 경우, 등록한 웹훅 URL로 웹훅 요청이 실제로 전송됩니다.
  • 요청 미리보기: 웹훅 URL을 등록하지 않은 경우, 웹훅 요청의 예시만 미리 확인할 수 있습니다.

카카오디벨로퍼스에서 제공하는 모든 종류의 웹훅은 [도구] > [웹훅 테스트]에서 테스트할 수 있습니다. 테스트 기능은 변경 이벤트만 발생할 뿐 실제 사용자의 상태나 정보를 변경하지 않습니다.

연결 해제 웹훅

사용자가 앱과 연결을 끊을 때 서비스에 보내는 웹훅을 테스트할 수 있습니다. 웹훅 요청 명세는 연결 해제 웹훅을 참고합니다.

연결 해제 웹훅 테스트 화면

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

계정 상태 변경 웹훅

연결, 연결 해제, 동의항목 동의 및 철회와 같은 카카오계정의 상태 변경 이벤트를 테스트할 수 있습니다. 웹훅 요청 명세는 계정 상태 변경 웹훅을 참고합니다.

계정 상태 웹훅 테스트 화면

  1. [A] [앱]: 테스트할 앱을 선택합니다.
  2. [B] [웹훅 URL]: 웹훅을 수신할 웹훅 URL을 확인합니다. 입력한 웹훅 URL이 없는 경우, [설정]을 눌러 계정 상태 변경 웹훅을 설정합니다.
  3. [C] [카테고리]: 카테고리를 선택합니다.
    • 테스트 도구에서는 사용 권한이 필요한 RISC와 CAEP 카테고리도 테스트해볼 수 있습니다.
  4. [D] [이벤트 타입]: 테스트 전송할 변경 이벤트 타입을 선택합니다. (참고: 지원하는 이벤트 타입)
  5. [E] [카카오계정]: 이벤트를 발송할 멤버를 선택합니다. 단, 선택한 계정은 해당 앱에 연결되어 있어야 합니다.
  6. [F] [파라미터]: 이벤트 속성을 설정합니다. (참고: 웹훅 요청 본문)
  7. [G] [발송]: 버튼을 눌러 웹훅을 전송합니다. 웹훅 URL을 등록하지 않은 경우, [요청 미리보기]를 눌러 요청 예시만 확인할 수 있습니다. (참고: 웹훅 전송 결과 )
카테고리 및 이벤트 타입별 파라미터
카테고리이벤트 타입파라미터
OAuth사용자 연결 해제
  • reason: 사용자가 앱 연결을 해제한 사유 선택
OAuth서비스 약관 동의
  • scope: 사용자가 동의한 동의항목 선택
OAuth서비스 약관 철회
  • scope: 사용자가 철회한 동의항목 선택
OAuth토큰 만료
  • reason: 토큰이 만료된 주체를 지정
    • issuer: 발급자
    • user: 사용자
RISC계정 사용 중지
  • reason: 카카오계정이 비활성화된 사유 선택
RISC식별자 변경
  • subject_type: 식별자 타입을 선택
    • phone: 전화번호
    • email: 이메일
  • new_value: 새 전화번호 또는 이메일 입력
CAEP인증 레벨 변경
  • previous_value: 변경 전 카카오계정 인증 레벨을 선택
  • new_value: 변경 후 인증 레벨을 선택
    • nist-aal1: 2단계 인증 미적용
    • nist-aal2: 2단계 인증 적용
KAKAO사용자 정보 변경
  • profile: 변경 이벤트를 발생시킬 회원 정보를 지정 (예: account_email birthday age_range)

[발송]을 선택하면 아래에 테스트 정보가 표시됩니다.

  • 웹훅 요청: 테스트 요청의 전체 본문이 표시됩니다. 웹훅 URL이 설정되지 않은 경우 HostURL은 출력되지 않습니다.
  • 보안 이벤트 토큰: 요청에 포함된 SET의 디코딩 값이 출력됩니다. 각 headerpayload가 분리되어 제공되니 디버깅 시 참고하세요.
웹훅 전송 결과

계정 상태 변경 웹훅 테스트 페이지는 웹훅 요청과 더불어 보안 이벤트 토큰웹훅 응답 정보를 추가로 제공합니다.

보안 이벤트 토큰

웹훅 요청에 포함된 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.1
Host: example.com
Content-Type: application/secevent+jwt
Accept: application/json
xxxXXXyYYYNmNhMTBmNmNhZGYyNzAiLCJ0eXAiOiJzZWNldmVudCtqd3QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiI4Yz
웹훅 응답 예시

서비스의 엔드포인트에서 웹훅 요청에 어떻게 응답하는지 확인할 수 있습니다. 웹훅 URL을 등록하지 않은 경우에는 제공하지 않습니다.

HTTP/1.1 403 Forbidden
Alt-Svc: h3=":443"
ma=93600,h3-29=":443"
ma=93600,quic=":443"
ma=93600
v="43"
Cache-Control: max-age=0
Connection: close
Content-Length: 359
Content-Type: text/html
Date: Wed, 16 Apr 2025 07:54:35 GMT
Mime-Version: 1.0
Elapsed time: 582ms

카카오톡 공유 웹훅

사용자에게 공유한 카카오톡 메시지가 성공적으로 전송될 할 때 서비스에 보내는 웹훅을 테스트할 수 있습니다. 웹훅 요청 명세는 카카오톡 공유 웹훅을 참고합니다.

카카오톡 공유 웹훅 테스트 화면

  1. [A] [앱]: 테스트할 앱을 선택합니다.
  2. [B] [웹훅 URL]: 웹훅을 수신할 웹훅 URL을 확인합니다. 입력한 웹훅 URL이 없는 경우, [설정]을 눌러 카카오톡 공유 웹훅을 설정합니다.
  3. [C] [파라미터]: 이벤트 속성을 설정합니다. (참고: 웹훅 요청 본문)
  4. [D] [발송]: 버튼을 눌러 웹훅을 전송합니다. 웹훅 URL을 등록하지 않은 경우, [요청 미리보기]를 눌러 요청 예시만 확인할 수 있습니다. (참고: 웹훅 요청 예시)

카카오톡 채널 웹훅

사용자가 앱에 연결된 카카오톡 채널을 추가하거나 삭제할 때 서비스에 보내는 웹훅을 테스트할 수 있습니다. 웹훅 요청 명세는 카카오톡 채널 웹훅을 참고합니다.

카카오톡 채널 웹훅 테스트 화면

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

도움이 되었나요?