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

Kakao Talk Message

REST API

This document describes how to integrate Kakao Talk Message APIs into your service with a REST API.

You can test the features described in this document in [Tools] > [REST API Test].

The Kakao Talk Message API only supports sending messages between users within the same service, and the Kakao Talk Social API permission is required to provide the message sending feature to friends. For more details, see Message sending features and How to use.

Before you begin

Choose implementation method

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 message sending feature

Kakao Developers provides two types of message sending features: Kakao Talk Share and Kakao Talk Message. Select the feature to use by referring to Message sending features. If you want to use Kakao Talk Message, check the content after Step 2.

REST API: Not supported for Kakao Talk Share

You cannot use the Kakao Talk Share APIs with a REST API. To apply the Kakao Talk Share 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 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 Message APIs are categorized according to the message targets:

Target Description
Send to me Sends a message to the currently logged-in user's Kakao Talk "My Chatroom". This feature can only send messages to the currently logged-in user, not to other users.
Send to friends Sends a message to the currently logged-in user's Kakao Talk friends.
Important: Additional feature request is required.
You need to implement a process to get recipient information through Friends picker or Kakao Talk friends list retrieval API. You can send messages to up to 5 friends at once. There are daily and monthly quotas, so refer to quota.
Caution: Permission

To send messages to friends, check the testing and permission request methods in [Kakao Talk Message Permission Request](../kakaotalk-message/common#how-to-use). Also refer to [Usage Policy](../kakaotalk-message/common#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 me message with default template

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 Kakao Talk (talk_message)

This is an API that sends a message to me by defining components as objects according to predefined template formats. For detailed message configuration methods, see Default template.

Request

Header
Name Description Required
Authorization Authorization: Bearer ${ACCESS_TOKEN}
Access token as a type of user authentication.
O
Content-Type Content-Type: application/x-www-form-urlencoded;charset=utf-8
Request data type
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;charset=utf-8" \
    -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;charset=utf-8" \
    -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;charset=utf-8" \
    -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;charset=utf-8" \
    -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;charset=utf-8" \
    -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 me message with custom template

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 Kakao Talk (talk_message)

This is an API that sends messages using custom templates directly configured in [Tools] > [Message Template]. For message configuration methods, see Custom template.

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]. O
template_args Object Required when the message template specified by template_id uses user arguments.
Pass in key:value format.
Cannot overwrite the scrape result.
Important: If you do not use this parameter even though the custom template includes user arguments, the part specified as user arguments will be exposed in the message as ${KEY} format.
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;charset=utf-8" \
    -H "Authorization: Bearer ${ACCESS_TOKEN}" \
    -d "template_id=12345" \
    -d 'template_args={"TITLE":"This is the title."}'
Response
HTTP/1.1 200 OK
{
  "result_code":0
}

Send me scrape message

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 Kakao Talk (talk_message)

This API configures a scrape message with information scraped from a specified web page and sends a message to the currently logged-in user's Kakao Talk.

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 message template configured in [Tools] > [Message Template].
Used when sending a scrape message based on a message template defined in your service.
(Note: Custom template)
X
template_args Object Required when the message template specified by template_id uses user arguments.
Pass in key:value format.
Cannot overwrite the scrape result.
Important: If you do not use this parameter even though the custom template includes user arguments, the part specified as user arguments will be exposed in the message as ${KEY} format.
X

Response

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

Sample

Request: Using default template
curl -v -X POST "https://kapi.kakao.com/v2/api/talk/memo/scrap/send" \
    -H "Content-Type: application/x-www-form-urlencoded;charset=utf-8" \
    -H "Authorization: Bearer ${ACCESS_TOKEN}" \
    --data-urlencode "request_url=https://developers.kakao.com"
Request: Using custom template
curl -v -X POST "https://kapi.kakao.com/v2/api/talk/memo/scrap/send" \
    -H "Content-Type: application/x-www-form-urlencoded;charset=utf-8" \
    -H "Authorization: Bearer ${ACCESS_TOKEN}" \
    --data-urlencode "request_url=https://developers.kakao.com" \
    -d "template_id=12345" \
    -d 'template_args={"TITLE":"This is the title."}'
Response
HTTP/1.1 200 OK
{
  "result_code":0
}

Send friends message with default template

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:
Permission
Register platforms
Activate Kakao Login
Manage consent items
Required Required:
Send message in Kakao Talk (talk_message)

This API sends a message to the currently logged-in user's Kakao Talk using default templates.

Request

Header
Name Description Required
Authorization Authorization: Bearer ${ACCESS_TOKEN}
Access token as a type of user authentication.
O
Content-Type Content-Type: application/x-www-form-urlencoded;charset=utf-8
Request data type
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;charset=utf-8" \
    -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;charset=utf-8" \
    -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;charset=utf-8" \
    -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;charset=utf-8" \
    -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;charset=utf-8" \
    -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 to send to all friends
HTTP/1.1 200 OK
{
  "successful_receiver_uuids": ["abcdefg0001","abcdefg0002","abcdefg0003"]
}
Response: Fail to send a message to some friends
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 friends message with custom template

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:
Permission
Register platforms
Activate Kakao Login
Manage consent items
Message template
Required Required:
Send message in Kakao Talk (talk_message)

This API sends a message to the currently logged-in user's Kakao Talk using custom templates.

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 Required when the message template specified by template_id uses user arguments.
Pass in key:value format.
Cannot overwrite the scrape result.
Important: If you do not use this parameter even though the custom template includes user arguments, the part specified as user arguments will be exposed in the message as ${KEY} format.
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;charset=utf-8" \
    -H "Authorization: Bearer ${ACCESS_TOKEN}" \
    --data-urlencode 'receiver_uuids=["abcdefg0001","abcdefg0002","abcdefg0003"]' \
    -d "template_id=12345" \
    -d 'template_args={"TITLE":"This is the title."}'
Response: Success to send to all friends
HTTP/1.1 200 OK
{
  "successful_receiver_uuids": ["abcdefg0001","abcdefg0002","abcdefg0003"]
}
Response: Fail to send a message to some friends
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 friends scrape message

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:
Permission
Register platforms
Activate Kakao Login
Manage consent items
Required Required:
Send message in Kakao Talk (talk_message)

This API configures a scrape message with information scraped from a specified web page and sends a message to friends.

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 message template configured in [Tools] > [Message Template].
Used when sending a scrape message based on a message template defined in your service.
(Note: Custom template)
X
template_args Object Required when the message template specified by template_id uses user arguments.
Pass in key:value format.
Cannot overwrite the scrape result.
Important: If you do not use this parameter even though the custom template includes user arguments, the part specified as user arguments will be exposed in the message as ${KEY} format.
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: Using default template
curl -v -X POST "https://kapi.kakao.com/v1/api/talk/friends/message/scrap/send" \
    -H "Content-Type: application/x-www-form-urlencoded;charset=utf-8" \
    -H "Authorization: Bearer ${ACCESS_TOKEN}" \
    --data-urlencode 'receiver_uuids=["abcdefg0001","abcdefg0002","abcdefg0003"]' \
    --data-urlencode "request_url=https://developers.kakao.com"
Request: Using custom template
curl -v -X POST "https://kapi.kakao.com/v1/api/talk/friends/message/scrap/send" \
    -H "Content-Type: application/x-www-form-urlencoded;charset=utf-8" \
    -H "Authorization: Bearer ${ACCESS_TOKEN}" \
    --data-urlencode 'receiver_uuids=["abcdefg0001","abcdefg0002","abcdefg0003"]' \
    --data-urlencode "request_url=https://developers.kakao.com" \
    -d "template_id=12345" \
    -d 'template_args={"TITLE":"This is the title."}'
Response: Success to send to all friends
HTTP/1.1 200 OK
{
  "successful_receiver_uuids": ["abcdefg0001","abcdefg0002","abcdefg0003"]
}
Response: Fail to send a message to some friends
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