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

kakao developers

Related sites
  • Docs
  • Kakao Talk Share
  • Webhook

사이드 메뉴

Search

This document introduces the Kakao Talk Share webhook feature.

This document explains the webhook requests that Kakao sends to your service's endpoint. Note that this specification describes incoming webhook requests from Kakao, not API requests that your service makes to Kakao.

For the overall workflow and detailed implementation guide for webhooks, see Implementation steps.

When invoking the Kakao Talk Share API via the SDK, you must specify custom parameters using serverCallbackArgs to receive the Kakao Talk Share webhook. For more details, see the development guides as below.

MethodURLRequired response formatAuthorization
GET/POSTWebhook URL registered in [App] > [Webhook] > [Kakao Talk Share webhook] on the app management pageHTTP status code 2XX (within 3 seconds)

Notifies the service when a user's Kakao Talk Share message is successfully delivered.

Upon receiving the webhook, the service must respond with an HTTP status code 2XX within 3 seconds.

Kakao Talk Share and Kakao Talk Message API

Message delivery results of Kakao Talk Share API can only be confirmed through webhook implementation. Refer to Overview for the differences between these APIs.

NameTypeDescriptionRequired
AuthorizationStringPrimary admin key sent to verify whether the webhook is valid.
Authorization: KakaoAK ${PRIMARY_ADMIN_KEY}
O
X-Kakao-Resource-IDStringUnique ID for distinguishing each webhook.
X-Kakao-Resource-ID: ${UNIQUE_ID}
O
User-AgentStringString indicating that the webhook was sent from Kakao.
User-Agent: KakaoOpenAPI/1.0
O
NameTypeDescriptionRequired
CHAT_TYPEEnumType of chatroom to which Kakao Talk Share message is sent.
  • MemoChat: My Chatroom
  • DirectChat: 1:1 chat with other users
  • MultiChat: Group chat with other users
  • OpenDirectChat: 1:1 Open Chat
  • OpenMultiChat: Group Open Chat
O
HASH_CHAT_IDStringA reference ID of the chatroom that receives a Kakao Talk Share message.
As a unique hash value for each service, a different ID is assigned for each service, even for the same chatroom.

Note: You can check how many chatrooms the Kakao Talk Share message has been sent to.
O
${CUSTOM_KEY}":"${CUSTOM_VALUE}JSONCustom parameter defined by a service when calling the Kakao Talk Share API through the SDK.
Input the keys and values of serverCallbackArgs parameter in JSON format.
(Example: {"user_id":"abcd","product_id":1234})
O
TEMPLATE_IDLongThe message template ID used when sending a Kakao Talk Share message with a message template. It is not delivered if the request does not use a message template ID.X
IS_SINGLE_CHATROOMBooleanIndicates whether the chatroom is a single chatroom where only the sender is participating or the only one remaining.
  • true: The chatroom where no other participants exist besides the sender
  • false: The chatroom where other participants exist besides the sender
(For example, if CHAT_TYPE is MultiChat but only the sender is participating, the response is true).

Important: Only available to the apps with paid usage settings enabled.
X
CHAT_MEMBER_COUNT_RANGEEnumThe range of the number of participants in the chatroom to which the Kakao Talk Share message is sent.
  • 1+: 1 or more but less than 5
  • 5+: 5 or more but less than 10
  • 10+: 10 or more but less than 30
  • 30+: 30 or more but less than 50
  • 50+: 50 or more but less than 100
  • 100+: 100 or more but less than 500
  • 500+: 500 or more but less than 1000
  • 1000+: 1000 or more
  • UNKNOWN: Unknown

Important: Only available to the apps with paid usage settings enabled.
X

You must respond with HTTP status code 2XX within 3 seconds of receiving the webhook request.

These are examples of the webhook request that Kakao sends to your service when the Kakao Talk message is successfully delivered.

curl -v -G GET "${KAKAOLINK_CALLBACK_URL}?CHAT_TYPE=MemoChat&HASH_CHAT_ID=${HASH_CHAT_ID}&TEMPLATE_ID=10000&custom_parameter_key=custom_parameter_value" \
-H "Authorization: KakaoAK ${PRIMARY_ADMIN_KEY}" \
-H "X-Kakao-Resource-ID: ${UNIQUE_ID}" \
-H "User-Agent: KakaoOpenAPI/1.0"
curl -v -X POST "${KAKAOLINK_CALLBACK_URL}" \
-H "Authorization: KakaoAK ${PRIMARY_ADMIN_KEY}" \
-H "X-Kakao-Resource-ID: ${UNIQUE_ID}" \
-H "User-Agent: KakaoOpenAPI/1.0" \
-H "Content-Type: application/json" \
-d '{
"CHAT_TYPE": "MemoChat",
"HASH_CHAT_ID": "${HASH_CHAT_ID}",
"TEMPLATE_ID": 10000,
"custom_parameter_key": "custom_parameter_value"
}'

Was this helpful?

    Kakao Talk Share > Webhook - Kakao Developers | Docs