This document describes how to integrate Kakao Talk Messaging APIs into your service with a REST API.
You can test the features described in this document in [Tools] > [REST API Test].
According to your service's purpose and requirements, you need to decide which API to use first by considering their characteristics and difference.
1. Select a type of Messaging APIThere are two types of messaging APIs: Kakao Talk Sharing API and Kakao Talk Messaging API. You need to understand the differences between the two messaging APIs completely by referring to Concepts, and decide which API to use to implement the function to send a message.
You cannot use the Kakao Talk Sharing APIs with a REST API. To apply the Kakao Talk Sharing on a web page, use the JavaScript SDK.
Decide which message template to use by referring to Message template > Types.
You can configure a message according to the default template in JSON format or create a custom template in person for your service. Refer to How to use for more details.
Note that the Kakao Talk Messaging APIs are categorized according to the message targets:
To send a Kakao Talk message to friends, 1. Get permission. Before permission is granted to your app, you can only retrieve the list of the team members. 2. Enable the 'Send message in KakaoTalk' scope in [My Application] > [Kakao Login] > [Consent items]. A user must also consent to the scope. To see more about the conditions for providing friend information, refer to Usage policy.
According to the desired message type, the required components of the message and the API to call are different. Refer to Message template components and samples.
Message type | Configuration method | Target | API to call |
---|---|---|---|
Feed, List, Location, Commerce, Text, Calendar | Default template | Me (MyChatroom) | /v2/api/talk/memo/default/send |
Feed, List, Location, Commerce, Text, Calendar | Default template | Friends | /v1/api/talk/friends/message/default/send |
Feed, List, Commerce | Custom template | Me (MyChatroom) | /v2/api/talk/memo/send |
Feed, List, Commerce | Custom template | Friends | /v1/api/talk/friends/message/send |
Scrape | Default template | Me (MyChatroom) | /v2/api/talk/memo/scrap/send |
Scrape | Default template | Friends | /v1/api/talk/friends/message/scrap/send |
Scrape | Custom template | Me (MyChatroom) | /v2/api/talk/memo/scrap/send |
Scrape | Custom template | Friends | /v1/api/talk/friends/message/scrap/send |
This API enables you to configure a message in JSON format according to the default template type to use.
Add the issued access token to the request header, and send a POST
request. According to the template type to use, you must pass template_object
configured in JSON format.
To send a message to friends, obtain the receiving users' uuid
s through the Friends picker or the Retrieving list of friends API, and then pass the uuid
s as the receiver_uuids
parameter. You can send a message to up to five friends at once.
If the message is successfully sent to all friends, successful_receiver_uuids
including an array of uuid
s of the receiving users is returned. If the message is sent to some friends only, failure_info
including the failure cause and an array of the users failed to deliver the message to is returned with successful_receiver_uuids
.
Method | URL | Authorization |
---|---|---|
POST |
https://kapi.kakao.com/v2/api/talk/memo/default/send |
Access token |
Permission | Prerequisite | Kakao Login | User consent |
---|---|---|---|
- | Register platforms Activate Kakao Login Manage consent items |
Required | Required: Send message in KakaoTalk |
Name | Description | Required |
---|---|---|
Authorization | Authorization: Bearer ${ACCESS_TOKEN} Access token as a type of user authentication. |
O |
Name | Type | Description | Required |
---|---|---|---|
template_object | Object |
One of Feed, List, Location, Commerce, Text, and Calendar messages. IMPORTANT: To use the calendar template, you need a public event ID or a subscribed calendar ID. To obtain permission for a public event or a subscribed calendar, request permission. |
O |
Name | Type | Description | Required |
---|---|---|---|
result_code | Integer |
If a message is successfully sent, 0 is returned. |
O |
curl -v -X POST "https://kapi.kakao.com/v2/api/talk/memo/default/send" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
--data-urlencode 'template_object={
"object_type": "feed",
"content": {
"title": "Dessert pictures",
"description": "Americano, bread, cake",
"image_url": "https://mud-kage.kakao.com/dn/NTmhS/btqfEUdFAUf/FjKzkZsnoeE4o19klTOVI1/openlink_640x640s.jpg",
"image_width": 640,
"image_height": 640,
"link": {
"web_url": "http://www.daum.net",
"mobile_web_url": "http://m.daum.net",
"android_execution_params": "contentId=100",
"ios_execution_params": "contentId=100"
}
},
"item_content": {
"profile_text": "Kakao",
"profile_image_url": "http://k.kakaocdn.net/dn/Q2iNx/btqgeRgV54P/VLdBs9cvyn8BJXB3o7N8UK/kakaolink40_original.png",
"title_image_url": "http://k.kakaocdn.net/dn/Q2iNx/btqgeRgV54P/VLdBs9cvyn8BJXB3o7N8UK/kakaolink40_original.png",
"title_image_text": "Cheese cake",
"title_image_category": "cake",
"items": [
{
"item": "cake1",
"item_op": "1000 won"
},
{
"item": "cake2",
"item_op": "2000 won"
},
{
"item": "cake3",
"item_op": "3000 won"
}
],
"sum": "total",
"sum_op": "6000 won"
},
"social": {
"like_count": 100,
"comment_count": 200,
"shared_count": 300,
"view_count": 400,
"subscriber_count": 500
},
"buttons": [
{
"title": "",
"link": {
"web_url": "http://www.daum.net",
"mobile_web_url": "http://m.daum.net"
}
},
{
"title": "View on App",
"link": {
"android_execution_params": "contentId=100",
"ios_execution_params": "contentId=100"
}
}
]
}'
curl -v -X POST "https://kapi.kakao.com/v2/api/talk/memo/default/send" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
--data-urlencode 'template_object={
"object_type": "list",
"header_title": "WEEKELY MAGAZINE",
"header_link": {
"web_url": "http://www.daum.net",
"mobile_web_url": "http://m.daum.net",
"android_execution_params": "main",
"ios_execution_params": "main"
},
"contents": [
{
"title": "Space for bike riders",
"description": "Magazine",
"image_url": "https://mud-kage.kakao.com/dn/QNvGY/btqfD0SKT9m/k4KUlb1m0dKPHxGV8WbIK1/openlink_640x640s.jpg",
"image_width": 640,
"image_height": 640,
"link": {
"web_url": "http://www.daum.net/contents/1",
"mobile_web_url": "http://m.daum.net/contents/1",
"android_execution_params": "/contents/1",
"ios_execution_params": "/contents/1"
}
},
{
"title": "Oreo Cappuccino with awesome visuals",
"description": "Magazine",
"image_url": "https://mud-kage.kakao.com/dn/boVWEm/btqfFGlOpJB/mKsq9z6U2Xpms3NztZgiD1/openlink_640x640s.jpg",
"image_width": 640,
"image_height": 640,
"link": {
"web_url": "http://www.daum.net/contents/2",
"mobile_web_url": "http://m.daum.net/contents/2",
"android_execution_params": "/contents/2",
"ios_execution_params": "/contents/2"
}
},
{
"title": "Emotional atmosphere",
"description": "Magazine",
"image_url": "https://mud-kage.kakao.com/dn/NTmhS/btqfEUdFAUf/FjKzkZsnoeE4o19klTOVI1/openlink_640x640s.jpg",
"image_width": 640,
"image_height": 640,
"link": {
"web_url": "http://www.daum.net/contents/3",
"mobile_web_url": "http://m.daum.net/contents/3",
"android_execution_params": "/contents/3",
"ios_execution_params": "/contents/3"
}
}
],
"buttons": [
{
"title": "",
"link": {
"web_url": "http://www.daum.net",
"mobile_web_url": "http://m.daum.net"
}
},
{
"title": "View on App",
"link": {
"android_execution_params": "main",
"ios_execution_params": "main"
}
}
]
}'
curl -v -X POST "https://kapi.kakao.com/v2/api/talk/memo/default/send" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
--data-urlencode 'template_object={
"object_type": "location",
"content": {
"title": "Kakao Pangyo Office",
"description": "Kakao Pangyo Office Location입니다.",
"image_url": "https://mud-kage.kakao.com/dn/drTdbB/bWYf06POFPf/owUHIt7K7NoGD0hrzFLeW0/kakaolink40_original.png",
"image_width": 800,
"image_height": 800,
"link": {
"web_url": "https://developers.kakao.com",
"mobile_web_url": "https://developers.kakao.com/mobile",
"android_execution_params": "platform=android",
"ios_execution_params": "platform=ios"
}
},
"buttons": [
{
"title": "View on Web",
"link": {
"web_url": "https://developers.kakao.com",
"mobile_web_url": "https://developers.kakao.com/mobile"
}
}
],
"address": "235, Pangyoyeok-ro, Bundang-gu, Seongnam-si, Gyeonggi-do",
"address_title": "Kakao Pangyo Office"
}'
curl -v -X POST "https://kapi.kakao.com/v2/api/talk/memo/default/send" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
--data-urlencode 'template_object={
"object_type": "commerce",
"content": {
"title": "Ivory long dress (4 Color)",
"image_url": "https://mud-kage.kakao.com/dn/RY8ZN/btqgOGzITp3/uCM1x2xu7GNfr7NS9QvEs0/kakaolink40_original.png",
"image_width": 640,
"image_height": 640,
"link": {
"web_url": "https://style.kakao.com/main/women/contentId=100",
"mobile_web_url": "https://style.kakao.com/main/women/contentId=100",
"android_execution_params": "contentId=100",
"ios_execution_params": "contentId=100"
}
},
"commerce": {
"regular_price": 208800,
"discount_price": 146160,
"discount_rate": 30
},
"buttons": [
{
"title": "Purchase",
"link": {
"web_url": "https://style.kakao.com/main/women/contentId=100/buy",
"mobile_web_url": "https://style.kakao.com/main/women/contentId=100/buy",
"android_execution_params": "contentId=100&buy=true",
"ios_execution_params": "contentId=100&buy=true"
}
},
{
"title": "Share",
"link": {
"web_url": "https://style.kakao.com/main/women/contentId=100/share",
"mobile_web_url": "https://style.kakao.com/main/women/contentId=100/share",
"android_execution_params": "contentId=100&share=true",
"ios_execution_params": "contentId=100&share=true"
}
}
]
}'
curl -v -X POST "https://kapi.kakao.com/v2/api/talk/memo/default/send" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
--data-urlencode 'template_object={
"object_type": "text",
"text": "This is a Text area that displays up to 200 characters.",
"link": {
"web_url": "https://developers.kakao.com",
"mobile_web_url": "https://developers.kakao.com"
},
"button_title": "Check it out"
}'
curl -X POST "https://kapi.kakao.com/v2/api/talk/memo/default/send" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
--data-urlencode 'template_object={
"object_type": "calendar",
"id_type": "event",
"id": "6351f57c7ec8e318d0b809a0",
"content": {
"title": "Fashion show for S/S collection",
"description": "Join this upcoming event! To add this event to your calendar, click [일정 등록 하기].",
"image_url": "https://mud-kage.kakao.com/dn/RY8ZN/btqgOGzITp3/uCM1x2xu7GNfr7NS9QvEs0/kakaolink40_original.png",
"link": {
"web_url":"https://kakao.com"
}
},
"buttons": [
{
"title": "View event",
"link": {
"web_url": "https://developers.kakao.com",
"mobile_web_url": "https://developers.kakao.com/mobile"
}
}
]
}'
HTTP/1.1 200 OK
{
"result_code":0
}
Method | URL | Authorization |
---|---|---|
POST |
https://kapi.kakao.com/v1/api/talk/friends/message/default/send |
Access token |
Permission | Prerequisite | Kakao Login | User consent |
---|---|---|---|
Required | Register platforms Activate Kakao Login Manage consent items |
Required | Required: Send message in KakaoTalk |
Name | Description | Required |
---|---|---|
Authorization | Authorization: Bearer ${ACCESS_TOKEN} Access token as a type of user authentication. |
O |
Name | Type | Description | Required |
---|---|---|---|
receiver_uuids | String[] |
uuid obtained through the Friends picker or the Retrieving list of friends API.Up to five uuids are allowed. (Example: 'receiver_uuids=["abcdefg0001","abcdefg0002","abcdefg0003"]' ) |
O |
template_object | Object |
Object containing the message components. One of Feed, List, Location, Commerce, Text, and Calendar messages. IMPORTANT: To use the calendar template, you need a public event ID or a subscribed calendar ID. To obtain permission for a public event or a subscribed calendar, request permission. |
O |
Name | Type | Description | Required |
---|---|---|---|
successful_receiver_uuids | String[] |
Array of uuid s that a message is successfully sent to. |
X |
failure_info | FailureInfo[] |
Returned when you request to send a message to two or more (up to five) recipients and it fails to send some recipients with the HTTP status code 200. If you request to send a message to a single recipient and it fails, only the error code and message are returned without failure_info . |
X |
Name | Type | Description | Required |
---|---|---|---|
code | Integer |
Error code. | O |
msg | String |
Error message. | O |
receiver_uuids | String[] |
Array containing uuid s that are failed to receive a message. |
O |
curl -v -X POST "https://kapi.kakao.com/v1/api/talk/friends/message/default/send" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
--data-urlencode 'receiver_uuids=["abcdefg0001","abcdefg0002","abcdefg0003"]' \
--data-urlencode 'template_object={
"object_type": "feed",
"content": {
"title": "Dessert pictures",
"description": "Americano, bread, cake",
"image_url": "https://mud-kage.kakao.com/dn/NTmhS/btqfEUdFAUf/FjKzkZsnoeE4o19klTOVI1/openlink_640x640s.jpg",
"image_width": 640,
"image_height": 640,
"link": {
"web_url": "http://www.daum.net",
"mobile_web_url": "http://m.daum.net",
"android_execution_params": "contentId=100",
"ios_execution_params": "contentId=100"
}
},
"item_content": {
"profile_text": "Kakao",
"profile_image_url": "http://k.kakaocdn.net/dn/Q2iNx/btqgeRgV54P/VLdBs9cvyn8BJXB3o7N8UK/kakaolink40_original.png",
"title_image_url": "http://k.kakaocdn.net/dn/Q2iNx/btqgeRgV54P/VLdBs9cvyn8BJXB3o7N8UK/kakaolink40_original.png",
"title_image_text": "Cheese cake",
"title_image_category": "cake",
"items": [
{
"item": "cake1",
"item_op": "1000 won"
},
{
"item": "cake2",
"item_op": "2000 won"
},
{
"item": "cake3",
"item_op": "3000 won"
}
],
"sum": "total",
"sum_op": "6000 won"
},
"social": {
"like_count": 100,
"comment_count": 200,
"shared_count": 300,
"view_count": 400,
"subscriber_count": 500
},
"buttons": [
{
"title": "",
"link": {
"web_url": "http://www.daum.net",
"mobile_web_url": "http://m.daum.net"
}
},
{
"title": "View on App",
"link": {
"android_execution_params": "contentId=100",
"ios_execution_params": "contentId=100"
}
}
]
}'
curl -v -X POST "https://kapi.kakao.com/v1/api/talk/friends/message/default/send" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
--data-urlencode 'receiver_uuids=["abcdefg0001","abcdefg0002","abcdefg0003"]' \
--data-urlencode 'template_object={
"object_type": "list",
"header_title": "WEEKELY MAGAZINE",
"header_link": {
"web_url": "http://www.daum.net",
"mobile_web_url": "http://m.daum.net",
"android_execution_params": "main",
"ios_execution_params": "main"
},
"contents": [
{
"title": "Space for bike riders",
"description": "Magazine",
"image_url": "https://mud-kage.kakao.com/dn/QNvGY/btqfD0SKT9m/k4KUlb1m0dKPHxGV8WbIK1/openlink_640x640s.jpg",
"image_width": 640,
"image_height": 640,
"link": {
"web_url": "http://www.daum.net/contents/1",
"mobile_web_url": "http://m.daum.net/contents/1",
"android_execution_params": "/contents/1",
"ios_execution_params": "/contents/1"
}
},
{
"title": "Oreo Cappuccino with awesome visuals",
"description": "Magazine",
"image_url": "https://mud-kage.kakao.com/dn/boVWEm/btqfFGlOpJB/mKsq9z6U2Xpms3NztZgiD1/openlink_640x640s.jpg",
"image_width": 640,
"image_height": 640,
"link": {
"web_url": "http://www.daum.net/contents/2",
"mobile_web_url": "http://m.daum.net/contents/2",
"android_execution_params": "/contents/2",
"ios_execution_params": "/contents/2"
}
},
{
"title": "Emotional atmosphere",
"description": "Magazine",
"image_url": "https://mud-kage.kakao.com/dn/NTmhS/btqfEUdFAUf/FjKzkZsnoeE4o19klTOVI1/openlink_640x640s.jpg",
"image_width": 640,
"image_height": 640
}
],
"buttons": [
{
"title": "",
"link": {
"web_url": "http://www.daum.net",
"mobile_web_url": "http://m.daum.net"
}
},
{
"title": "View on App",
"link": {
"android_execution_params": "main",
"ios_execution_params": "main"
}
}
]
}'
curl -v -X POST "https://kapi.kakao.com/v1/api/talk/friends/message/default/send" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
--data-urlencode 'receiver_uuids=["abcdefg0001","abcdefg0002","abcdefg0003"]' \
--data-urlencode 'template_object={
"object_type": "location",
"content": {
"title": "Kakao Pangyo Office",
"description": "This is the location of Kakao Pangyo Office.",
"image_url": "https://mud-kage.kakao.com/dn/drTdbB/bWYf06POFPf/owUHIt7K7NoGD0hrzFLeW0/kakaolink40_original.png",
"image_width": 800,
"image_height": 800,
"link": {
"web_url": "https://developers.kakao.com",
"mobile_web_url": "https://developers.kakao.com/mobile",
"android_execution_params": "platform=android",
"ios_execution_params": "platform=ios"
}
},
"buttons": [
{
"title": "View on Web",
"link": {
"web_url": "https://developers.kakao.com",
"mobile_web_url": "https://developers.kakao.com/mobile"
}
}
],
"address": "235, Pangyoyeok-ro, Bundang-gu, Seongnam-si, Gyeonggi-do",
"address_title": "Kakao Pangyo Office"
}'
curl -v -X POST "https://kapi.kakao.com/v1/api/talk/friends/message/default/send" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
--data-urlencode 'receiver_uuids=["abcdefg0001","abcdefg0002","abcdefg0003"]' \
--data-urlencode 'template_object={
"object_type": "commerce",
"content": {
"title": "Ivory long dress (4 Color)",
"image_url": "https://mud-kage.kakao.com/dn/RY8ZN/btqgOGzITp3/uCM1x2xu7GNfr7NS9QvEs0/kakaolink40_original.png",
"image_width": 640,
"image_height": 640,
"link": {
"web_url": "https://style.kakao.com/main/women/contentId=100",
"mobile_web_url": "https://style.kakao.com/main/women/contentId=100",
"android_execution_params": "contentId=100",
"ios_execution_params": "contentId=100"
}
},
"commerce": {
"regular_price": 208800,
"discount_price": 146160,
"discount_rate": 30
},
"buttons": [
{
"title": "Purchase",
"link": {
"web_url": "https://style.kakao.com/main/women/contentId=100/buy",
"mobile_web_url": "https://style.kakao.com/main/women/contentId=100/buy",
"android_execution_params": "contentId=100&buy=true",
"ios_execution_params": "contentId=100&buy=true"
}
},
{
"title": "Share",
"link": {
"web_url": "https://style.kakao.com/main/women/contentId=100/share",
"mobile_web_url": "https://style.kakao.com/main/women/contentId=100/share",
"android_execution_params": "contentId=100&share=true",
"ios_execution_params": "contentId=100&share=true"
}
}
]
}'
curl -v -X POST "https://kapi.kakao.com/v1/api/talk/friends/message/default/send" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
--data-urlencode 'receiver_uuids=["abcdefg0001","abcdefg0002","abcdefg0003"]' \
--data-urlencode 'template_object={
"object_type": "text",
"text": "This is a Text area that displays up to 200 characters.",
"link": {
"web_url": "https://developers.kakao.com",
"mobile_web_url": "https://developers.kakao.com"
},
"button_title": "Check it out"
}'
curl -X POST "https://kapi.kakao.com/v2/api/talk/friends/message/default/send" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
--data-urlencode 'template_object={
"object_type": "calendar",
"id_type": "event",
"id": "6351f57c7ec8e318d0b809a0",
"content": {
"title": "Fashion show for S/S collection",
"description": "Join this upcoming event! To add this event to your calendar, click [일정 등록 하기].",
"image_url": "https://mud-kage.kakao.com/dn/RY8ZN/btqgOGzITp3/uCM1x2xu7GNfr7NS9QvEs0/kakaolink40_original.png",
"link": {
"web_url":"https://kakao.com"
}
},
"buttons": [
{
"title": "View event",
"link": {
"web_url": "https://developers.kakao.com",
"mobile_web_url": "https://developers.kakao.com/mobile"
}
}
]
}'
HTTP/1.1 200 OK
{
"successful_receiver_uuids": ["abcdefg0001","abcdefg0002","abcdefg0003"]
}
HTTP/1.1 200 OK
{
"successful_receiver_uuids": ["abcdefg0001","abcdefg0002"],
"failure_info":[{
"code": -532,
"msg": "daily message limit per sender has been exceeded.",
"receiver_uuids": ["abcdefg0003"]
}]
}
Unlike the Sending message with default template, you can customize a template in [Tools] > [Message Template Builder] to send a message.
Add the issued access token to the request header, and send a POST
request. Also, you must set template_id
to the template ID of the custom template registered in [Message Template Builder]. If you use user arguments for some components when you configure a custom message to input variable information, you must also pass key and value pairs as the value of template_args
. Otherwise, the defined argument is displayed to users as raw data, such as ${key}
.
To send a message to friends, obtain the receiving users' uuid
s through the Friends picker or the Retrieving list of friends API, and then pass the uuid
s as the receiver_uuids
parameter. You can send a message to up to five friends at once.
If the message is successfully sent to all friends, successful_receiver_uuids
including an array of uuid
s of the receiving users is returned. If the message is sent to some friends only, failure_info
including the failure cause and an array of the users failed to deliver the message to is returned with successful_receiver_uuids
.
Method | URL | Authorization |
---|---|---|
POST |
https://kapi.kakao.com/v2/api/talk/memo/send |
Access token |
Permission | Prerequisite | Kakao Login | User consent |
---|---|---|---|
- | Register platforms Activate Kakao Login Manage consent items Message Template |
Required | Required: Send message in KakaoTalk |
Name | Description | Required |
---|---|---|
Authorization | Authorization: Bearer ${ACCESS_TOKEN} Access token as a type of user authentication. |
O |
Name | Type | Description | Required |
---|---|---|---|
template_id | String |
Template ID of the custom template registered in [Tools] > [Message Template Builder]. Note: To use a custom template for sending to me, set the purpose of the custom template as [Kakao Talk Sharing]. |
O |
template_args | Object |
If the specified template contains a user argument, use this parameter to pass key-value pairs. | X |
Name | Type | Description | Required |
---|---|---|---|
result_code | Integer |
If a message is successfully sent, 0 is returned. |
O |
curl -v -X POST "https://kapi.kakao.com/v1/api/talk/memo/message/send" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
-d "template_id=12345"
HTTP/1.1 200 OK
{
"result_code":0
}
Method | URL | Authorization |
---|---|---|
POST |
https://kapi.kakao.com/v1/api/talk/friends/message/send |
Access token |
Permission | Prerequisite | Kakao Login | User consent |
---|---|---|---|
Required | Register platforms Activate Kakao Login Manage consent items Message Template |
Required | Required: Send message in KakaoTalk |
Name | Description | Required |
---|---|---|
Authorization | Authorization: Bearer ${ACCESS_TOKEN} Access token as a type of user authentication. |
O |
Name | Type | Description | Required |
---|---|---|---|
receiver_uuids | String[] |
uuid obtained through the Friends picker or the Retrieving list of friends API.Up to five uuids are allowed. (Example: 'receiver_uuids=["abcdefg0001","abcdefg0002","abcdefg0003"]' ) |
O |
template_id | String |
Template ID of the custom template registered in [Tools] > [Message Template Builder]. | O |
template_args | Object |
If the specified template contains a user argument, use this parameter to pass key-value pairs. | X |
Name | Type | Description | Required |
---|---|---|---|
successful_receiver_uuids | String[] |
Array of uuid s that a message is successfully sent to. |
X |
failure_info | FailureInfo[] |
Returned when you request to send a message to two or more (up to five) recipients and it fails to send some recipients with the HTTP status code 200. If you request to send a message to a single recipient and it fails, only the error code and message are returned without failure_info . |
X |
Name | Type | Description | Required |
---|---|---|---|
code | Integer |
Error code. | O |
msg | String |
Error message. | O |
receiver_uuids | String[] |
Array containing uuid s that are failed to receive a message. |
O |
curl -v -X POST "https://kapi.kakao.com/v1/api/talk/friends/message/send" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
--data-urlencode 'receiver_uuids=["abcdefg0001","abcdefg0002","abcdefg0003"]' \
-d "template_id=12345"
HTTP/1.1 200 OK
{
"successful_receiver_uuids": ["abcdefg0001","abcdefg0002","abcdefg0003"]
}
HTTP/1.1 200 OK
{
"successful_receiver_uuids": ["abcdefg0001","abcdefg0002"],
"failure_info":[{
"code": -532,
"msg": "daily message limit per sender has been exceeded.",
"receiver_uuids": ["abcdefg0003"]
}]
}
This API scrapes a web page, and then configures a message based on the scraped web page information to send a message.
Add the issued access token to the request header, and send a POST
request. This API scrapes a web page first and sends a message with the scraped information. Thus, When you request to send a scrape message, you must pass request_url
, a web page to be scraped. Make sure that you have registered the domain of the web page to be scraped as a site domain in [My Application] > [Platform] > [Web] in advance.
To send a message to friends, obtain the receiving users' uuid
s through the Friends picker or the Retrieving list of friends API, and then pass the uuid
s as the receiver_uuids
parameter. You can send a message to up to five friends at once.
If the message is successfully sent to all friends, successful_receiver_uuids
including an array of uuid
s of the receiving users is returned. If the message is sent to some friends only, failure_info
including the failure cause and an array of the users failed to deliver the message to is returned with successful_receiver_uuids
.
Method | URL | Authorization |
---|---|---|
POST |
https://kapi.kakao.com/v2/api/talk/memo/scrap/send |
Access token |
Permission | Prerequisite | Kakao Login | User consent |
---|---|---|---|
- | Register platforms Activate Kakao Login Manage consent items |
Required | Required: Send message in KakaoTalk |
Name | Description | Required |
---|---|---|
Authorization | Authorization: Bearer ${ACCESS_TOKEN} Access token as a type of user authentication. |
O |
Name | Type | Description | Required |
---|---|---|---|
request_url | String |
Web page URL to be scraped. Its domain must match the domain registered on the Kakao Developers. Refer to Scrape message. |
O |
Name | Type | Description | Required |
---|---|---|---|
result_code | Integer |
If a message is successfully sent, 0 is returned. |
O |
curl -v -X POST "https://kapi.kakao.com/v2/api/talk/memo/scrap/send" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
--data-urlencode "request_url=https://developers.kakao.com"
HTTP/1.1 200 OK
{
"result_code":0
}
Method | URL | Authorization |
---|---|---|
POST |
https://kapi.kakao.com/v1/api/talk/friends/message/scrap/send |
Access token |
Permission | Prerequisite | Kakao Login | User consent |
---|---|---|---|
Required | Register platforms Activate Kakao Login Manage consent items |
Required | Required: Send message in KakaoTalk |
Name | Description | Required |
---|---|---|
Authorization | Authorization: Bearer ${ACCESS_TOKEN} Access token as a type of user authentication. |
O |
Name | Type | Description | Required |
---|---|---|---|
receiver_uuids | String[] |
uuid obtained through the Friends picker or the Retrieving list of friends API.Up to five uuids are allowed. (Example: 'receiver_uuids=["abcdefg0001","abcdefg0002","abcdefg0003"]' ) |
O |
request_url | String |
Web page URL to be scraped. Its domain must match the domain registered on the Kakao Developers. Refer to Scrape message. |
O |
Name | Type | Description | Required |
---|---|---|---|
successful_receiver_uuids | String[] |
Array of uuid s that a message is successfully sent to. |
X |
failure_info | FailureInfo[] |
Returned when you request to send a message to two or more (up to five) recipients and it fails to send some recipients with the HTTP status code 200. If you request to send a message to a single recipient and it fails, only the error code and message are returned without failure_info . |
X |
Name | Type | Description | Required |
---|---|---|---|
code | Integer |
Error code. | O |
msg | String |
Error message. | O |
receiver_uuids | String[] |
Array containing uuid s that are failed to receive a message. |
O |
curl -v -X POST "https://kapi.kakao.com/v1/api/talk/friends/message/scrap/send" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
--data-urlencode 'receiver_uuids=["abcdefg0001","abcdefg0002","abcdefg0003"]' \
--data-urlencode "request_url=https://developers.kakao.com"
HTTP/1.1 200 OK
{
"successful_receiver_uuids": ["abcdefg0001","abcdefg0002"],
"failure_info":[{
"code": -532,
"msg": "daily message limit per sender has been exceeded.",
"receiver_uuids": ["abcdefg0003"]
}]
}
This API scrapes a web page, and then configures a message based on the scraped web page information to send a message. Unlike the Sending scrape message with default template, you can use a custom template registered in [Tools] > [Message Template Builder] when requesting to send a scrape message.
Add the issued access token to the request header, and send a POST
request. When you request to send a scrape message, you must pass request_url
, a web page to be scraped. Make sure that you have registered the domain of the web page to be scraped as a site domain in [My Application] > [Platform] > [Web] in advance.
Also, you must set template_id
to the template ID of the custom template registered in [Message Template Builder]. If the template includes argument
(User argument), you must also pass key and value pairs as the value of template_args
. Otherwise, the defined argument is displayed to users as raw data, such as ${key}
.
To send a message to friends, obtain the receiving users' uuid
s through the Friends picker or the Retrieving list of friends API, and then pass the uuid
s as the receiver_uuids
parameter. You can send a message to up to five friends at once.
If the message is successfully sent to all friends, successful_receiver_uuids
including an array of uuid
s of the receiving users is returned. If the message is sent to some friends only, failure_info
including the failure cause and an array of the users failed to deliver the message to is returned with successful_receiver_uuids
.
Method | URL | Authorization |
---|---|---|
POST |
https://kapi.kakao.com/v2/api/talk/memo/scrap/send |
Access token |
Permission | Prerequisite | Kakao Login | User consent |
---|---|---|---|
- | Register platforms Activate Kakao Login Manage consent items Message Template |
Required | Required: Send message in KakaoTalk |
Name | Description | Required |
---|---|---|
Authorization | Authorization: Bearer ${ACCESS_TOKEN} Access token as a type of user authentication. |
O |
Name | Type | Description | Required |
---|---|---|---|
request_url | String |
Web page URL to be scraped. Its domain must match the domain registered on the Kakao Developers. Refer to Scrape message. |
O |
template_id | String |
Template ID of the custom template registered in [Tools] > [Message Template Builder]. The scraped content is applied in the specified custom template. Note: To use a custom template for sending to me, set the purpose of the custom template as [Kakao Talk Sharing]. |
O |
template_args | Object |
If the template specified through template_id contains other user arguments, pass the user arguments using this parameter in key:value format.You cannot overwrite the scrape result. |
X |
Name | Type | Description | Required |
---|---|---|---|
result_code | Integer |
If a message is successfully sent, 0 is returned. |
O |
curl -v -X POST "https://kapi.kakao.com/v2/api/talk/memo/scrap/send" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
--data-urlencode "request_url=https://developers.kakao.com" \
-d "template_id=12345"
HTTP/1.1 200 OK
{
"result_code":0
}
Method | URL | Authorization |
---|---|---|
POST |
https://kapi.kakao.com/v1/api/talk/friends/message/scrap/send |
Access token |
Permission | Prerequisite | Kakao Login | User consent |
---|---|---|---|
Required | Register platforms Activate Kakao Login Manage consent items Message Template |
Required | Required: Send message in KakaoTalk |
Name | Description | Required |
---|---|---|
Authorization | Authorization: Bearer ${ACCESS_TOKEN} Access token as a type of user authentication. |
O |
Name | Type | Description | Required |
---|---|---|---|
receiver_uuids | String[] |
uuid obtained through the Friends picker or the Retrieving list of friends API.Up to five uuids are allowed. (Example: 'receiver_uuids=["abcdefg0001","abcdefg0002","abcdefg0003"]' ) |
O |
request_url | String |
Web page URL to be scraped. Its domain must match the domain registered on the Kakao Developers. Refer to Scrape message. |
O |
template_id | String |
Template ID of the custom template registered in [Tools] > [Message Template Builder]. The scraped content is applied in the specified custom template. |
O |
template_args | Object |
If the template specified through template_id contains other user arguments, pass the user arguments using this parameter in key:value format.You cannot overwrite the scrape result. |
X |
Name | Type | Description | Required |
---|---|---|---|
successful_receiver_uuids | String[] |
Array of uuid s that a message is successfully sent to. |
X |
failure_info | FailureInfo[] |
Returned when you request to send a message to two or more (up to five) recipients and it fails to send some recipients with the HTTP status code 200. If you request to send a message to a single recipient and it fails, only the error code and message are returned without failure_info . |
X |
Name | Type | Description | Required |
---|---|---|---|
code | Integer |
Error code. | O |
msg | String |
Error message. | O |
receiver_uuids | String[] |
Array containing uuid s that are failed to receive a message. |
O |
curl -v -X POST "https://kapi.kakao.com/v1/api/talk/friends/message/scrap/send" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
--data-urlencode 'receiver_uuids=["abcdefg0001","abcdefg0002","abcdefg0003"]' \
--data-urlencode "request_url=https://developers.kakao.com" \
-d "template_id=12345"
HTTP/1.1 200 OK
{
"successful_receiver_uuids": ["abcdefg0001","abcdefg0002","abcdefg0003"]
}
HTTP/1.1 200 OK
{
"successful_receiver_uuids": ["abcdefg0001","abcdefg0002"],
"failure_info":[{
"code": -532,
"msg": "daily message limit per sender has been exceeded.",
"receiver_uuids": ["abcdefg0003"]
}]
}