페이지 이동경로
  • Docs>
  • Message>
  • Kakao Talk Messaging: REST API

Message

Kakao Talk: REST API

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].

Before you begin

Choose an API to use

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 API

There 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.

REST API: Not supported for Kakao Talk Sharing

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.

2. Select a message type and configuration method

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.

3. Select a target

Note that the Kakao Talk Messaging APIs are categorized according to the message targets:

  • Send to me (MyChatroom): Provides a feature to send a message to the currently logged-in user through Kakao Talk that is linked to the user's Kakao Account. This API is only allowed to send a message to the currently logged-in user, not to the user's friends.
  • Send to friends: Provides a feature to send a message to user's friends through Kakao Talk that is linked to the Kakao Account of the currently logged-in user. You need to implement a process to get information about the message recipients through the Friends picker or the Retrieving a list of Kakao Talk friends API. Users can send a message to up to 5 friends at a time. The Kakao Talk Messaging API provides daily and monthly quotas. Refer to the quota.
Note

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.

APIs by conditions

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

Send message with default template

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' uuids through the Friends picker or the Retrieving list of friends API, and then pass the uuids 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 uuids 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.

Send to me

Basic information
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

Request

Header
Name Description Required
Authorization Authorization: Bearer ${ACCESS_TOKEN}
Access token as a type of user authentication.
O
Body
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

Response

Body
Name Type Description Required
result_code Integer If a message is successfully sent, 0 is returned. O

Sample

Request
Feed
List
Location
Commerce
Text
Calendar
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"
                }
              }
            ]
        }'
Response
HTTP/1.1 200 OK
{
  "result_code":0
}

Send to friends

Basic information
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

Request

Header
Name Description Required
Authorization Authorization: Bearer ${ACCESS_TOKEN}
Access token as a type of user authentication.
O
Body
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

Response

Body
Name Type Description Required
successful_receiver_uuids String[] Array of uuids 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
FailureInfo
Name Type Description Required
code Integer Error code. O
msg String Error message. O
receiver_uuids String[] Array containing uuids that are failed to receive a message. O

Sample

Request
Feed
List
Location
Commerce
Text
Calendar
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"
                }
            }
        ]
    }'
Response: Success
HTTP/1.1 200 OK
{
  "successful_receiver_uuids": ["abcdefg0001","abcdefg0002","abcdefg0003"]
}
Response: Fail to send a message to some recipents
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"]
  }]
}

Send message with custom template

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' uuids through the Friends picker or the Retrieving list of friends API, and then pass the uuids 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 uuids 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.

Send to me

Basic information
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

Request

Header
Name Description Required
Authorization Authorization: Bearer ${ACCESS_TOKEN}
Access token as a type of user authentication.
O
Body
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

Response

Body
Name Type Description Required
result_code Integer If a message is successfully sent, 0 is returned. O

Sample

Request
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"
Response
HTTP/1.1 200 OK
{
  "result_code":0
}

Send to friends

Basic information
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

Request

Header
Name Description Required
Authorization Authorization: Bearer ${ACCESS_TOKEN}
Access token as a type of user authentication.
O
Body
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

Response

Body
Name Type Description Required
successful_receiver_uuids String[] Array of uuids 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
FailureInfo
Name Type Description Required
code Integer Error code. O
msg String Error message. O
receiver_uuids String[] Array containing uuids that are failed to receive a message. O

Sample

Request
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"
Response: Success
HTTP/1.1 200 OK
{
  "successful_receiver_uuids": ["abcdefg0001","abcdefg0002","abcdefg0003"]
}
Response: Fail to send a message to some recipents
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"]
  }]
}

Send scrape message with default template

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' uuids through the Friends picker or the Retrieving list of friends API, and then pass the uuids 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 uuids 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.

Send to me

Basic information
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

Request

Header
Name Description Required
Authorization Authorization: Bearer ${ACCESS_TOKEN}
Access token as a type of user authentication.
O
Body
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

Response

Body
Name Type Description Required
result_code Integer If a message is successfully sent, 0 is returned. O

Sample

Request
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"
Response
HTTP/1.1 200 OK
{
  "result_code":0
}

Send to friends

Basic information
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

Request

Header
Name Description Required
Authorization Authorization: Bearer ${ACCESS_TOKEN}
Access token as a type of user authentication.
O
Body
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

Response

Body
Name Type Description Required
successful_receiver_uuids String[] Array of uuids 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
FailureInfo
Name Type Description Required
code Integer Error code. O
msg String Error message. O
receiver_uuids String[] Array containing uuids that are failed to receive a message. O

Sample

Request
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"
Response
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"]
  }]
}

Send scrape message with custom template

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' uuids through the Friends picker or the Retrieving list of friends API, and then pass the uuids 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 uuids 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.

Send to me

Basic information
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

Request

Header
Name Description Required
Authorization Authorization: Bearer ${ACCESS_TOKEN}
Access token as a type of user authentication.
O
Body
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

Response

Body
Name Type Description Required
result_code Integer If a message is successfully sent, 0 is returned. O

Sample

Request
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"
Response
HTTP/1.1 200 OK
{
  "result_code":0
}

Send to friends

Basic information
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

Request

Header
Name Description Required
Authorization Authorization: Bearer ${ACCESS_TOKEN}
Access token as a type of user authentication.
O
Body
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

Response

Body
Name Type Description Required
successful_receiver_uuids String[] Array of uuids 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
FailureInfo
Name Type Description Required
code Integer Error code. O
msg String Error message. O
receiver_uuids String[] Array containing uuids that are failed to receive a message. O

Sample

Request
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"
Response: Successs
HTTP/1.1 200 OK
{
  "successful_receiver_uuids": ["abcdefg0001","abcdefg0002","abcdefg0003"]
}
Response: Fail to send a message to some recipents
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"]
  }]
}

See more