CS Talk
CS Talk is the Kakao Biz Message channel that lets you exchange 1:1 support messages with customers over a KakaoTalk channel and manage support sessions and operational settings alongside them.
Run a support conversation
Send a Plain message
Sends a CS Talk plain message. Depending on msgType, you can send TEXT, IMAGE, VIDEO, AUDIO, and FILE.
Body Parameters
{}JSONuserKey
RequiredStringThe user key.
senderKey
RequiredStringThe sender profile key.
msgType
RequiredStringThe message type.
message
RequiredStringThe message to deliver to the user. Up to 1,000 characters.
attachment
ObjectThe attachment message object. Used with the IMAGE, VIDEO, AUDIO, and FILE types.
ref
StringA reference field. Up to 200 characters; it is returned in the send-request result webhook.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/cstalk/plain" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "userKey":"{userKey}", "senderKey":"{senderKey}", "msgType":"TEXT", "message":"상담 안내 메시지입니다.", "ref":"client-ref-001"}'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "msgKey":"20260424104234546POM101182450000", "ref":"client-ref-001" }}Send a Rich message
KAKAO_CERT (identity verification) requires a channel whitelist request
- To send with
msgTypeset toKAKAO_CERT, the KakaoTalk channel must be registered on the identity verification whitelist in advance. - Submit the request through a general inquiry or your sales representative.
- The request must include evidence of whether CI (Connecting Information) is used and the channel details.
Sends a CS Talk rich message. It supports the TEXT, IMAGE, WIDE, ITEM_LIST, WIDE_ITEM_LIST, CAROUSEL_FEED, and PERSONAL types.
Body Parameters
{}JSONuserKey
RequiredStringThe user key.
senderKey
RequiredStringThe sender profile key.
msgType
RequiredStringThe message bubble type.
message
StringThe message to deliver to the user.
description
StringAn additional message to deliver to the user.
header
StringThe header.
attachment
ObjectThe message attachment information.
carousel
ObjectThe carousel information. Required for the CAROUSEL_FEED type.
autoAnswer
StringThe automatic system response message.
lock
BooleanWhether it is a secure message.
certExpiry
IntegerThe identity verification validity period in minutes. Required when msgType is KAKAO_CERT.
ref
StringA reference field. Up to 200 characters; it is returned in the send-request result webhook.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/cstalk/rich" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "userKey":"{userKey}", "senderKey":"{senderKey}", "msgType":"TEXT", "message":"상담 안내 메시지입니다.", "attachment": { "buttons": [{ "type":"WL", "name":"바로가기", "urlMobile":"https://m.example.com", "urlPc":"https://www.example.com" }] }, "ref":"client-ref-001"}'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "msgKey":"20260424104234546POM101182450000", "ref":"client-ref-001" }}End a support conversation
Ends the currently open support session.
Body Parameters
{}JSONuserKey
RequiredStringThe user key.
senderKey
RequiredStringThe sender profile key.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/cstalk/end" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "userKey":"{userKey}", "senderKey":"{senderKey}"}'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"header-value-X-Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "msgKey":"20260424104234546POM101182450000" }, "ref":"client-ref-001" }}End a support conversation and hand over to the bot
Ends the support session and then runs the bot event block.
Body Parameters
{}JSONuserKey
RequiredStringThe user key.
senderKey
RequiredStringThe sender profile key.
botEvent
StringThe name of the bot event to run.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/cstalk/endWithBot" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "userKey":"{userKey}", "senderKey":"{senderKey}", "botEvent":"상담종료"}'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"header-value-X-Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "msgKey":"20260424104234546POM101182450000" }, "ref":"client-ref-001" }}Block a user from receiving messages
Blocks a specific user from receiving CS Talk messages.
Body Parameters
{}JSONcstalk
RequiredObjectThe CS Talk request object.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/cstalk/profile/user/block" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "cstalk": { "senderKey":"{senderKey}", "userKey":"{userKey}" }}'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success" }}Unblock a user from receiving messages
Unblocks a blocked user from receiving CS Talk messages.
Body Parameters
{}JSONcstalk
RequiredObjectThe CS Talk request object.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/cstalk/profile/user/unblock" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "cstalk": { "senderKey":"{senderKey}", "userKey":"{userKey}" }}'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success" }}Look up a session
Looks up the current support session by user key.
Query Parameters
QUERYuserKey
RequiredStringThe user key.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/cstalk/session?userKey=userKeySample" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"header-value-X-Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "session": { "sessionId": 1, "senderKey":"{senderKey}", "startedType":"UM", "startedAt":"2025-09-24T11:22:08.557", "expiredType":"AE", "expiredAt":"2025-10-25T10:00:00" } } }}Look up KakaoTalk certification status
Looks up the progress of a customer's KakaoTalk certification (electronic signature) by certification transaction ID.
Query Parameters
QUERYcertTxId
RequiredStringThe certification transaction ID. Kakao issues it when the certification is requested.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/cstalk/cert/status?certTxId=certTxIdSample" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"header-value-X-Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "cert": { "txId":"{certTxId}", "sessionId": 1, "signStatus":"COMPLETED", "createdAt":"2026-09-10T10:00:00", "viewedAt":"2026-09-10T10:00:30", "completedAt":"2026-09-10T10:01:12", "expiredAt":"2026-09-10T10:10:00" } } }}Receive support messages (webhook)
Webhook receipt policy
- A webhook is the method by which the Bizgo API delivers changes or inbound data to a URL you registered.
- CS Talk, message report, and MO webhooks are all processed normally only when they receive HTTP 200 and a response that matches the specification.
- If there is no response or the response does not match the specification, it is treated as a failure, and a failure is retried up to 3 times.
- If every retry fails, that webhook delivery is treated as failed and is not delivered again.
- The connect timeout and the read timeout are each processed on a 5-second basis.
- For webhook service IPs and security requirements, see Firewall and security protocol.
Common webhook fields
msgKeyis present on all seven types, but it does not mean the same thing. ThemsgKeyonresultis the one returned by the send API, while themsgKeyon the six inbound types is issued per event and does not correspond to a send.- Correlate sessions with
sessionId, and match sends with themsgKeyandrefonresult. sendTimeis when Bizgo received the event, andreportTimeis when Bizgo sent the webhook.kakaoTimeis the time Kakao supplied. It is the CS Talk server's time, not the time the user typed the message.- The time format is
yyyy-MM-dd'T'HH:mm:ss.SSS+09:00(KST). When the source value is missing, an empty string is delivered. - Fields without a value are omitted from the body, so the set of keys differs per requestType.
- A retry can deliver the same event again, so make your handling idempotent on
msgKey. - Delivery order is not guaranteed. Depending on network conditions and payload size, events can arrive out of order.
Support sessions and the user key
- A support session is a prerequisite for an agent to send messages to a customer; an agent can only send messages while a session exists.
- A session is kept for 30 days after the last message received from the KakaoTalk user, and is extended every time a customer message arrives.
- The session end time is set to 30 days from the next exact hour after the time the last message was received.
- A session ends when the agent ends the support conversation or blocks the user, when the user enters
!종료("end"), leaves the chatroom, or blocks the channel, or when 30 days have passed since the last message was received. userKeyis the key that identifies a specific KakaoTalk user, and it is delivered together with the CS Talk message on receipt.userKeymust be 1 to 20 characters. An empty value or more than 20 characters returnsA507.userKeyis valid per KakaoTalk channel, so the same user gets a different user key on a different channel.userKeyis case-sensitive, and it changes to a different key if the user leaves KakaoTalk and signs up again.
Receive a user message
The webhook that receives user messages. It delivers the message data the user sent to the customer webhook URL you registered.
Body Parameters
{}JSONmsgKey
RequiredStringThe message key.
userKey
RequiredStringThe CS Talk user key.
senderKey
RequiredStringThe key of the sender profile that received the message.
serviceType
RequiredStringThe service type.
msgType
RequiredStringThe message type.
requestType
StringThe request type.
sendTime
RequiredStringThe send time. Delivered in ISO 8601 format.
reportTime
RequiredStringThe report time. Delivered in ISO 8601 format.
kakaoTime
StringThe time the CS Talk server delivered the message. It is not the time the user actually typed it.
sessionId
StringThe support session ID.
content
StringThe body field kept for backward compatibility.
extra
StringAdditional information delivered by Kakao.
contents
Object ArrayThe array of message data the user sent. The content field is no longer provided after January 2026, so use contents.
attachment
StringThe area that additionally delivers the full message as a txt file URL when the user's message exceeds 4,000 characters.
Returns
code
StringThe webhook processing result code.
result
StringThe webhook processing result message.
Request example
curl -X POST "{고객 Webhook URL}/cstalk/message" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d '{ "msgKey":"20260424104234546POM101182450000", "userKey":"{userKey}", "senderKey":"{senderKey}", "serviceType":"CSTALK", "msgType":"TEXT", "requestType":"message", "sendTime":"2026-04-24T10:42:34.546+09:00", "reportTime":"2026-04-24T10:42:35.120+09:00", "kakaoTime":"2026-04-24T10:42:35.000+09:00", "contents": [{ "comment":"상담 문의 내용입니다." }]}'Response example
{ "code":"A000", "result":"Success"}Receive user meta information
Delivers the metadata from when the user requested a support connection to the customer webhook URL you registered.
Body Parameters
{}JSONmsgKey
RequiredStringThe message key.
userKey
RequiredStringA key that identifies a specific KakaoTalk user. It is valid per KakaoTalk channel and is case-sensitive.
senderKey
RequiredStringThe key of the sender profile that received the message.
serviceType
RequiredStringThe service type.
msgType
RequiredStringThe message type.
requestType
RequiredStringThe request type.
sendTime
RequiredStringThe send time. Delivered in ISO 8601 format.
reportTime
RequiredStringThe report time. Delivered in ISO 8601 format.
kakaoTime
StringThe time the CS Talk server delivered the message. It is not the time the user actually typed it.
appUserId
NumberThe KakaoTalk app user ID.
sessionId
StringThe support session ID. An agent can send messages once a support session exists.
reference
ObjectThe current metadata you configured.
lastReference
ObjectThe most recent metadata delivered when there is no current metadata.
Returns
code
StringThe webhook processing result code.
result
StringThe webhook processing result message.
Request example
curl -X POST "{고객 Webhook URL}/cstalk/reference" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d '{ "msgKey":"20260424104234546POM101182450000", "userKey":"{userKey}", "senderKey":"{senderKey}", "serviceType":"CSTALK", "msgType":"REFERENCE", "requestType":"reference", "sendTime":"2026-04-24T10:42:34.546+09:00", "reportTime":"2026-04-24T10:42:35.120+09:00", "kakaoTime":"2026-04-24T10:42:35.000+09:00", "sessionId":"{sessionId}", "reference": { "extra":"orderNo=1234" }, "lastReference": { "extra":"orderNo=1233", "bot":"false", "bot_event":" 상담시작", "created_at":"2026-04-23T09:30:00.000+09:00" }}'Response example
{ "code":"A000", "result":"Success"}Receive session expiry
Delivers session end information to the customer webhook URL you registered when the support session ends.
Body Parameters
{}JSONmsgKey
RequiredStringThe message key.
userKey
RequiredStringThe CS Talk user key.
senderKey
RequiredStringThe key of the sender profile that received the message.
serviceType
RequiredStringThe service type.
msgType
RequiredStringThe message type.
requestType
RequiredStringThe request type.
sendTime
RequiredStringThe send time. Delivered in ISO 8601 format.
reportTime
RequiredStringThe report time. Delivered in ISO 8601 format.
kakaoTime
StringThe time the CS Talk server delivered the message. It is not the time the user actually typed it.
sessionId
StringThe ID of the ended support session.
Returns
code
StringThe webhook processing result code.
result
StringThe webhook processing result message.
Request example
curl -X POST "{고객 Webhook URL}/cstalk/expired_session" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d '{ "msgKey":"20260424104234546POM101182450000", "userKey":"{userKey}", "senderKey":"{senderKey}", "serviceType":"CSTALK", "msgType":"SESSION", "requestType":"expired_session", "sendTime":"2026-04-24T10:42:34.546+09:00", "reportTime":"2026-04-24T10:42:35.120+09:00", "kakaoTime":"2026-04-24T10:42:35.000+09:00", "sessionId":"{sessionId}"}'Response example
{ "code":"A000", "result":"Success"}Receive read information
When read information is delivered
- It is delivered only while the support session is connected, and only for up to 24 hours after the message was sent.
- It is not real time — expect a delay.
- To receive this webhook, contact Kakao Business Lounge separately.
Delivers user read information to the customer webhook URL you registered.
Body Parameters
{}JSONmsgKey
RequiredStringThe message key.
userKey
RequiredStringThe CS Talk user key.
senderKey
RequiredStringThe key of the sender profile that received the message.
serviceType
RequiredStringThe service type.
msgType
RequiredStringThe message type.
requestType
RequiredStringThe request type.
sendTime
RequiredStringThe send time. Delivered in ISO 8601 format.
reportTime
RequiredStringThe report time. Delivered in ISO 8601 format.
kakaoTime
StringThe time the CS Talk server delivered the message. It is not the time the user actually typed it.
Returns
code
StringThe webhook processing result code.
result
StringThe webhook processing result message.
Request example
curl -X POST "{고객 Webhook URL}/cstalk/seen_info" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d '{ "msgKey":"20260424104234546POM101182450000", "userKey":"{userKey}", "senderKey":"{senderKey}", "serviceType":"CSTALK", "msgType":"SEEN", "requestType":"seen_info", "sendTime":"2026-04-24T10:42:34.546+09:00", "reportTime":"2026-04-24T10:42:35.120+09:00", "kakaoTime":"2026-04-24T10:42:35.000+09:00"}'Response example
{ "code":"A000", "result":"Success"}Receive personal information
Delivers the personal information provided after the user consents to its collection to the customer webhook URL you registered.
Body Parameters
{}JSONmsgKey
RequiredStringThe message key.
userKey
RequiredStringThe CS Talk user key.
senderKey
RequiredStringThe key of the sender profile that received the message.
serviceType
RequiredStringThe service type.
msgType
RequiredStringThe message type.
requestType
RequiredStringThe request type.
sendTime
RequiredStringThe send time. Delivered in ISO 8601 format.
reportTime
RequiredStringThe report time. Delivered in ISO 8601 format.
kakaoTime
StringThe time the CS Talk server delivered the message. It is not the time the user actually typed it.
sessionId
StringThe support session ID.
personalInfo
ObjectThe personal information the user consented to.
Returns
code
StringThe webhook processing result code.
result
StringThe webhook processing result message.
Request example
curl -X POST "{고객 Webhook URL}/cstalk/personal_info" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d '{ "msgKey":"20260424104234546POM101182450000", "userKey":"{userKey}", "senderKey":"{senderKey}", "serviceType":"CSTALK", "msgType":"PERSONAL", "requestType":"personal_info", "sendTime":"2026-04-24T10:42:34.546+09:00", "reportTime":"2026-04-24T10:42:35.120+09:00", "kakaoTime":"2026-04-24T10:42:35.000+09:00", "sessionId":"{sessionId}", "personalInfo": { "phone_number":"0100000000", "nickname":"홍길동" }}'Response example
{ "code":"A000", "result":"Success"}Receive the identity verification result
Do not store certResult
certResultis the identity verification result encrypted with AES256/CTR/NoPadding and Base64. Decrypting it yields the name, phone number, birthday, gender, nationality, and CI.- Kakao policy requires that verification data is never stored — discard it as soon as you have identified the user.
- Mask it on your side as well so the body never lands in logs, APM, or error reports.
- Kakao delivers the decryption key separately by email. Both the verification data and the key are Base64 encoded.
- The result is delivered regardless of the support session state, and
ciis provided only to sender profiles that passed the handling review.
The webhook that receives identity verification results. When the KakaoTalk identity verification (electronic signature) requested with a KAKAO_CERT bubble completes, the result is delivered to the registered webhook URL.
Body Parameters
{}JSONmsgKey
RequiredStringThe message key.
userKey
RequiredStringThe user key.
senderKey
RequiredStringThe sender profile key.
serviceType
RequiredStringThe service type.
msgType
RequiredStringThe message type.
requestType
RequiredStringThe request type. It is delivered as cert_result.
sendTime
RequiredStringThe send time. (ISO 8601, yyyy-MM-dd'T'HH:mm:ss.SSS).
reportTime
RequiredStringThe report time. (ISO 8601, yyyy-MM-dd'T'HH:mm:ss.SSS).
kakaoTime
StringThe time the Kakao server received it.
sessionId
StringThe support session ID.
certTxId
RequiredStringThe certification transaction ID. It is the same value as certTxId in the certification status API.
certResult
RequiredStringThe encrypted identity verification result. Decrypting it yields the name, phone number, birthday, gender, nationality, and CI.
Returns
code
StringThe webhook processing result code.
result
StringThe webhook processing result message.
Request example
curl -X POST "{고객 Webhook URL}/cstalk/cert_result" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d '{ "msgKey":"20260424104234546POM101182450000", "userKey":"{userKey}", "senderKey":"{senderKey}", "serviceType":"CSTALK", "msgType":"KAKAO_CERT", "requestType":"cert_result", "sendTime":"2026-04-24T10:42:34.546+09:00", "reportTime":"2026-04-24T10:42:35.120+09:00", "kakaoTime":"2026-04-24T10:42:35.000+09:00", "sessionId":"{sessionId}", "certTxId":"{certTxId}", "certResult":"amI1a0dQTVVRSm1YTk9BNW9tYWpXdz09" }'Response example
{ "code":"A000", "result":"Success"}Receive the delivery result
Delivers the result of a CS Talk message send request to the customer webhook URL you registered.
Body Parameters
{}JSONmsgKey
RequiredStringThe message key.
userKey
RequiredStringThe CS Talk user key.
senderKey
RequiredStringThe key of the sender profile that received the message.
serviceType
RequiredStringThe service type.
msgType
StringThe message type.
requestType
RequiredStringThe request type. One of write, end, and endwithbot.
sendTime
RequiredStringThe send time. Delivered in ISO 8601 format.
reportTime
RequiredStringThe report time. Delivered in ISO 8601 format.
reportCode
StringThe send result code. It is the Kakao response code converted to a Bizgo code.
reportText
StringThe report message.
kakaoResCreatedAt
StringThe time the Kakao response was created. (ISO 8601).
ref
StringThe reference field you passed in the request.
Returns
code
StringThe webhook processing result code.
result
StringThe webhook processing result message.
Request example
curl -X POST "{고객 Webhook URL}/cstalk/result" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d '{ "msgKey":"20260424104234546POM101182450000", "userKey":"{userKey}", "senderKey":"{senderKey}", "serviceType":"CSTALK", "msgType":"TEXT", "requestType":"write", "sendTime":"2026-04-24T10:42:34.546+09:00", "reportTime":"2026-04-24T10:42:35.120+09:00", "reportCode":"A000", "reportText":"Success", "ref":"client-ref-001"}'Response example
{ "code":"A000", "result":"Success"}Upload files
Upload an image
Uploads a CS Talk image file. It supports jpg, png, and gif, and you can register files up to 5MB.
Body Parameters
FORM-DATAfile
RequiredBinaryThe image file to upload.
fileKey
StringThe key that identifies the uploaded file. If you omit it, the server generates one.
imageName
StringThe name of the uploaded file. If you omit it, the file name without its extension is used.
senderKey
RequiredStringThe Kakao Biz Message sender profile key.
imageType
StringThe image type. Enter rich when uploading an image for a Rich message.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/file/cstalk/image" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: multipart/form-data" \ -F "file=@sample.jpg" \ -F "senderKey={senderKey}" \ -F "imageType=rich"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"header-value-X-Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "imgUrl":"https://mud-kage.kakao.com/.../cstalk_image.jpg" } }}Upload a file
The upload size limit differs by environment
Production accepts files up to 300MB, but the Sandbox environment allows only 10MB.
Files larger than 10MB cannot be tested in the Sandbox, so verify them in production.
Uploads a CS Talk attachment of the FILE, AUDIO, or VIDEO type.
Body Parameters
FORM-DATAfile
RequiredBinaryThe binary of the file to upload.
fileKey
StringThe key that identifies the uploaded file. If you omit it, the server generates one.
imageName
StringThe name of the uploaded file. If you omit it, the file name without its extension is used.
senderKey
RequiredStringThe Kakao Biz Message sender profile key.
fileType
StringThe file type. file: general file, audio: audio file, video: video file.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/file/cstalk" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: multipart/form-data" \ -F "file=@sample.pdf" \ -F "senderKey={senderKey}" \ -F "fileType=file"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"header-value-X-Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "fileUrl":"https://mud-kage.kakao.com/.../cstalk_file.pdf", "fileName":"sample.pdf", "size":"102400" } }}Manage the channel
Activate CS Talk
Enables CS Talk.
Body Parameters
{}JSONcstalk
RequiredObjectThe CS Talk request object.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/cstalk/sender/activate" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "cstalk": { "senderKey":"{senderKey}", "committalCompany":"비즈고" }}'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success" }}Deactivate CS Talk
Disables CS Talk.
Body Parameters
{}JSONcstalk
RequiredObjectThe CS Talk request object.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/cstalk/sender/deactivate" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "cstalk": { "senderKey":"{senderKey}", "committalCompany":"비즈고" }}'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success" }}Activate the chat capability
Enables the chat feature of the KakaoTalk channel.
Body Parameters
{}JSONcstalk
RequiredObjectThe CS Talk request object.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/cstalk/sender/chat/activate" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "cstalk": { "senderKey":"{senderKey}" }}'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success" }}Deactivate the chat capability
Disables the chat feature of the KakaoTalk channel.
Body Parameters
{}JSONcstalk
RequiredObjectThe CS Talk request object.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/cstalk/sender/chat/deactivate" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "cstalk": { "senderKey":"{senderKey}" }}'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success" }}Look up support hours
Looks up the support hours.
Query Parameters
QUERYsenderKey
RequiredStringThe Kakao Biz Message sender profile key.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/cstalk/consult/time?senderKey={senderKey}" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"header-value-X-Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "cstalk": { "weekTimeTable": [{ "day":"mon", "startAt":"0900", "endAt":"1800" }] } } }}Save support hours
Saves the support hours for the KakaoTalk channel. Once registered, hours can only be updated, and they are deleted if you disable CS Talk. The hours appear on the KakaoTalk channel home, and the chat feature must be enabled to view the configured hours.
Body Parameters
{}JSONcstalk
RequiredObjectThe CS Talk request object.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/cstalk/consult/time" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "cstalk": { "senderKey":"{senderKey}", "weekTimeTable": [{ "day":"mon", "startAt":"0900", "endAt":"1800" }] }}'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success" }}Look up system messages
Looks up the list of system messages.
Query Parameters
QUERYsenderKey
RequiredStringThe Kakao Biz Message sender profile key.
id
StringThe system message ID. Enter it to look up a specific message only.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/cstalk/system/message?senderKey={senderKey}" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"header-value-X-Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "systemMessages": [{ "id":"7678", "name":"상담 시작 안내", "status":"A", "createdAt":"2025-08-18 16:40:00", "modifiedAt":"2025-08-18 16:40:00", "inspectStatus":"REG", "inspectRequestAt":"2025-08-27 13:16:59", "inspectedAt":"", "messages": [{ "messageType":"ST", "content":"상담을 시작합니다.", "buttons": [{ "ordering": 1, "type":"WL", "name":"바로가기", "urlMobile":"https://m.example.com", "urlPc":"https://www.example.com" }] }], "comments": [{ "id":"101", "content":"검수 요청이 등록되었습니다.", "userName":"비즈고", "createdAt":"2025-08-27 13:17:02", "status":"INQ" }] }] } }}Register a system message
Registers a system message.
Body Parameters
{}JSONcstalk
RequiredObjectThe CS Talk request object.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/cstalk/system/message" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "cstalk": { "senderKey":"{senderKey}", "name":"상담 시작 안내", "messages": [{ "messageType":"ST", "content":"상담을 시작합니다.", "buttons": [{ "ordering": 1, "type":"WL", "name":"바로가기", "urlMobile":"https://m.example.com", "urlPc":"https://www.example.com" }] }] }}'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"header-value-X-Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "systemMessage": { "id":"7678" } } }}Delete a system message
Deletes a system message.
Path Parameters
PATHsenderKey
RequiredStringThe sender profile key.
id
RequiredStringThe ID of the system message to delete.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X DELETE "https://mars.ibapi.kr/api/comm/v1/center/cstalk/system/message/senderKey/%40bizgo/id/sysMsgId" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success" }}Request a system message review
Requests a review of the system message.
Body Parameters
{}JSONcstalk
RequiredObjectThe CS Talk request object.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/cstalk/system/message/approval/request" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "cstalk": { "senderKey":"{senderKey}" }}'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success" }}Cancel a system message review
Cancels the review request for the system message.
Body Parameters
{}JSONcstalk
RequiredObjectThe CS Talk request object.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/cstalk/system/message/approval/cancel" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "cstalk": { "senderKey":"{senderKey}" }}'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success" }}Delete a support message
Deletes a CS Talk message that has already been sent. A deleted message cannot be restored.
Before you delete
- A deleted message cannot be restored.
- The request is rejected with
A502unless you own the sender profile. You cannot delete another customer's messages. - Response codes:
A000deleted ·A502sender profile not registered, invalidsenderKey/msgKey, or not the owner ·A507invaliduserKey·A822the message cannot be deleted in its current state ·A213any other processing failure
Deletes a CS Talk message that has already been sent. A deleted message cannot be restored.
Body Parameters
{}JSONcstalk
RequiredObjectThe CS Talk request object.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/cstalk/chat/delete" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "cstalk": { "senderKey":"{senderKey}", "userKey":"{userKey}", "msgKey":"{msgKey}" }}'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success" }}Connect a support conversation
Customers can request support through a support connection button on a PC or mobile page.
When you pass meta information through the support connection button on PC, you must open the requesting page as a new window or a popup; the minimum recommended popup size is 1024 x 800.
If clicking the support connection button goes through a partner page before moving to the Kakao login page, include the script below inside the partner page and the popup window opens at the recommended size.
<script src="https://bizmessage.kakao.com/chat/includeScript"></script>
For a profile that uses both a bot and CS Talk, you can use the bot parameter to control whether the connection goes to the bot or to CS Talk.
Button connection (POST)
Calls the Kakao support connection URL directly with POST. Use application/x-www-form-urlencoded as the Content-Type.
Body Parameters
FORM-URLENCODEDuuid
RequiredString(40)The sender profile key. Note that this is not the KakaoTalk channel @id.
extra
String(1000)The metadata delivered to the user when switching to CS Talk or the bot.
bot
String(5)Enter true to connect to the bot, false (default) to connect to an agent, and auto to keep an ongoing session.
event
String(100)The name of the event fired when the user is handed off to the bot.
app_open_type
StringHow the app is launched. Enter direct or modal.
Returns
redirect
RedirectOpens the KakaoTalk support connection screen. This is not a separate Bizgo API JSON response.
Request example
curl -X POST "https://bizmessage.kakao.com/chat/open" \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "uuid={uuid}&extra={extra}&bot=false&event={event}&app_open_type=direct"Response example
카카오 상담 연결 URL 호출 후 카카오톡 상담 화면으로 이동합니다.비즈고 API JSON 응답이 아니라 카카오 URL 이동/응답으로 처리됩니다.Button connection (GET)
Calls the Kakao support connection URL directly with GET. Include uuid in the path and pass the remaining values as query parameters.
Query Parameters
QUERYuuid
RequiredString(40)The sender profile key. Pass it as a path parameter, and note that it is not the KakaoTalk channel @id.
extra
String(50)The metadata delivered to the user when switching to CS Talk or the bot.
bot
String(5)Enter true to connect to the bot, false (default) to connect to an agent, and auto to keep an ongoing session.
event
String(100)The name of the event fired when the user is handed off to the bot.
app_open_type
StringHow the app is launched. Enter direct or modal.
Returns
redirect
RedirectOpens the KakaoTalk support connection screen. This is not a separate Bizgo API JSON response.
Request example
curl -X GET "https://bizmessage.kakao.com/chat/open/{uuid}?extra={extra}&bot=false&event={event}&app_open_type=direct"Response example
카카오 상담 연결 URL 호출 후 카카오톡 상담 화면으로 이동합니다.비즈고 API JSON 응답이 아니라 카카오 URL 이동/응답으로 처리됩니다.