Brand Message
Brand Message is the Kakao Biz Message channel for sending brand-style messages to KakaoTalk channel friends. It supports both template-based basic sends and free-form sends where you compose the message content yourself.
Send a basic Brand Message
A basic Brand Message is sent against a template you registered in advance. You can use it for template-code-based substitution sends.
Send a basic message
The basic Brand Message send specification. It uses a pre-approved template code, and sendType is basic.
There are two ways to send a basic message.
1. Variable separation: put the substitution values in Variable fields such as messageVariable, buttonVariable, and couponVariable.
2. Payload: put the values directly into the text, attachment, and carousel structures, similar to Alimtalk.
The two are alternatives within the same basic send, and you must use the fields that match the template structure and msgType. Use Variable fields only when you need variable substitution.
Body Parameters
{}JSONdestinations
RequiredObject ArrayThe array of recipient information. Up to 200 per broadcast send.
messageFlow
RequiredObject ArrayWhen you add messages, they are handled in order as automatic failover messages.
paymentCode
StringThe department code used for settlement.
groupKey
StringA key you set to group messages and review their statistics in Message Insight.
idempotencyKey
StringThe idempotency key field that identifies the request for idempotency.
idempotencyTtl
IntegerThe validity period of the idempotency key.
ref
StringA per-request reference field.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "/api/comm/v1/send/omni" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "destinations": [{ "to": "01012345678", "messageVariable": { "name": "ํ๊ธธ๋" } }], "messageFlow": [{ "brandmessage": { "sendType": "basic", "msgType": "TEXT", "senderKey": "{senderKey}", "templateCode": "BM_TEMPLATE_001" } }], "ref": "brand-basic-20260331-001" }'Response example
{ "common": { "authCode": "A000", "authResult": "Success", "infobankTrId": "Infobank-Tracking-Id" }, "data": { "code": "A000", "result": "SUCCESS", "data": { "destinations": [{ "to": "01012345678", "msgKey": "20260424104234546POM101182450000", "code": "A000", "result": "Success" }] }, "ref": "brand-basic-20260331-001" }}Basic reservation send
Registers a basic Brand Message to be sent at the specified time. The detailed fields you can send are the same as in the basic message send specification. After registering, see the Reservation management page for lookup, update, cancel, pause, resume, and recipient management.
Body Parameters
{}JSONdestinations
RequiredObject ArrayThe array of recipient information. Up to 200 per broadcast send.
messageFlow
RequiredObject ArrayWhen you add messages, they are handled in order as automatic failover messages.
resvSendTime
RequiredStringThe reservation send time.
resvName
StringA name that identifies the reservation.
ref
StringA per-request reference field.
Returns
common
ObjectThe common response section.
data
ObjectThe reservation registration response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/reservation" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "destinations": [{ "to": "01012345678" }], "messageFlow": [{ "brandmessage": { "sendType": "basic", "msgType": "FT", "senderKey": "{senderKey}", "templateCode": "BM_TEMPLATE_001", "targeting": "M" } }], "resvSendTime": "2026-05-01 10:00:00", "resvName": "๋ธ๋๋๋ฉ์์ง ๊ธฐ๋ณธํ ์์ฝ ๋ฐ์ก", "ref": "brand-basic-resv-20260501-001" }'Response example
{ "common": { "authCode": "A000", "authResult": "Success", "infobankTrId": "Infobank-Tracking-Id" }, "data": { "code": "A000", "result": "Success", "resvKey": "20260501100000RESV0000000001" }}Basic send with automatic template substitution
Sends a basic Brand Message using only a template code and substitution variables, without a template payload. The Bizgo API builds the payload that matches the template code and substitutes the destinations[].replaceWords values before sending.
Body Parameters
{} JSONdestinations
RequiredObject ArrayThe array of recipient information.
messageFlow
RequiredObject ArrayThe array of message specifications.
paymentCode
StringThe department code used for settlement.
groupKey
StringThe group key.
idempotencyKey
StringThe idempotency key.
idempotencyTtl
IntegerThe idempotency key expiration time in seconds.
ref
StringA per-request reference field.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/send/omni" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "destinations": [{ "to": "01000000000", "replaceWords": { "customerName": "ํ๊ธธ๋", "point": "500" } }], "messageFlow": [{ "brandmessage": { "senderKey": "{senderKey}", "templateCode": "{templateCode}", "sendType": "template", "targeting": "I", "pushAlarm": "Y", "originCID": "123456789", "unsubscribePhoneNumber": "0801234567", "unsubscribeAuthNumber": "12345" } }], "paymentCode": "brand-team-01", "groupKey": "brand-template-group-01", "idempotencyKey": "brand-template-idempotency-001", "idempotencyTtl": 300, "ref": "brand-template-001" }'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "destinations": [{ "to":"01000000000", "msgKey":"20260424104234546POM101182450000", "code":"A000", "result":"Success" }] }, "ref":"brand-template-001" }}Send a free-form Brand Message
A free-form Brand Message is sent with content you compose directly, without registering a template. You can define the image, button, and carousel elements that suit the message type.
About
discountRate(discount rate) for commerce and carousel commerce
- Allowed range:
1to100- From 2026-08-04, a
discountRatevalue of0makes the template registration or send request fail.- The same applies to
discount_ratein free-form sends and to the fixed variableํ ์ธ์จ("discount rate") in the variable-separation method.- When you are not using a discount rate, send
nullinstead of0.
Send a free-form message
The free-form Brand Message send specification. You compose the body and button values directly without a template code, and sendType is free.
Body Parameters
{}JSONdestinations
RequiredObject ArrayThe array of recipient information. Up to 200 per broadcast send.
messageFlow
RequiredObject ArrayWhen you add messages, they are handled in order as automatic failover messages.
paymentCode
StringThe department code used for settlement.
groupKey
StringA key you set to group messages and review their statistics in Message Insight.
idempotencyKey
StringThe idempotency key field that identifies the request for idempotency.
idempotencyTtl
IntegerThe validity period of the idempotency key.
ref
StringA per-request reference field.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "/api/comm/v1/send/omni" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "destinations": [{ "to": "01012345678" }], "messageFlow": [{ "brandmessage": { "sendType": "free", "msgType": "TEXT", "senderKey": "{senderKey}", "content": "์์ ํ ๋ธ๋๋๋ฉ์์ง ๋ณธ๋ฌธ์
๋๋ค." } }], "ref": "brand-free-20260331-001" }'Response example
{ "common": { "authCode": "A000", "authResult": "Success", "infobankTrId": "Infobank-Tracking-Id" }, "data": { "code": "A000", "result": "SUCCESS", "data": { "destinations": [{ "to": "01012345678", "msgKey": "20260424104234546POM101182450000", "code": "A000", "result": "Success" }] }, "ref": "brand-free-20260331-001" }}Free-form reservation send
Registers a free-form Brand Message to be sent at the specified time. The detailed fields you can send are the same as in the free-form message send specification. After registering, see the Reservation management page for lookup, update, cancel, pause, resume, and recipient management.
Body Parameters
{}JSONdestinations
RequiredObject ArrayThe array of recipient information. Up to 200 per broadcast send.
messageFlow
RequiredObject ArrayWhen you add messages, they are handled in order as automatic failover messages.
resvSendTime
RequiredStringThe reservation send time.
resvName
StringA name that identifies the reservation.
ref
StringA per-request reference field.
Returns
common
ObjectThe common response section.
data
ObjectThe reservation registration response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/reservation" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "destinations": [{ "to": "01012345678" }], "messageFlow": [{ "brandmessage": { "sendType": "free", "msgType": "FT", "senderKey": "{senderKey}", "content": "์์ ํ ๋ธ๋๋๋ฉ์์ง ์์ฝ ๋ฐ์ก ๋ณธ๋ฌธ์
๋๋ค.", "targeting": "M" } }], "resvSendTime": "2026-05-01 10:00:00", "resvName": "๋ธ๋๋๋ฉ์์ง ์์ ํ ์์ฝ ๋ฐ์ก", "ref": "brand-free-resv-20260501-001" }'Response example
{ "common": { "authCode": "A000", "authResult": "Success", "infobankTrId": "Infobank-Tracking-Id" }, "data": { "code": "A000", "result": "Success", "resvKey": "20260501100000RESV0000000001" }}Basic Brand Message broadcast send
This capability sends a basic template message in bulk to a friend group or to all friends. It also provides send control (resume, pause, terminate) and status lookup. To check the expected audience size and the estimated duration before you send, see Pre-send checks for Brand Message.
Broadcast send
Notes on broadcast sends
- The template you use for the send must have no variables, and the template status must be registered (A).
- The send runs automatically at the broadcast message start time you requested; it stops automatically from 20:50 to 08:00 the next day and resumes automatically after 08:00 the next day.
- If you use a friend group, the group status must be C (Completed) and the number of registered users in the group (user_count) must be 10 or more before you can schedule a message send.
- Friend relationships inside a friend group are synchronized in real time.
- Both all-friends sends and friend group sends set the send count from the friend relationships at the time of the send request, and messages are then sent sequentially within that set count according to the friend relationships at the actual send time.
Schedules a broadcast send to an entire Kakao friend group based on a basic template. You can set the start time to at least 10 minutes after the request, within the 08:00โ20:50 (KST) window.
Body Parameters
{} JSONbrandmessage
RequiredObjectThe basic template broadcast send information.
paymentCode
StringThe department code used for settlement.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/groupMessage" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "brandmessage": { "senderKey": "{senderKey}", "templateCode": "{templateCode}", "friendGroupKey": "{friendGroupKey}", "sendStartAt": "2026-04-08 16:40:00", "pushAlarm": "Y" } }'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "brandmessage": { "requestId":"1203981", "status":"READY", "sendStartAt":"2026-04-08 16:40:00", "pushAlarm":"Y", "expectedCount": 7, "sendCount": 0, "senderKey":"{senderKey}", "msgType":"FI", "templateCode":"{templateCode}" } } }}Resume a broadcast send
Resumes a paused basic template broadcast send request.
Body Parameters
{} JSONbrandmessage
RequiredObjectThe broadcast send control information.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/groupMessage/resume" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "brandmessage": { "senderKey": "{senderKey}", "requestId": "1203981" } }'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "brandmessage": { "requestId":"1203981", "status":"READY", "sendStartAt":"2026-04-08 16:20:00", "pushAlarm":"Y", "expectedCount": 7, "sendCount": 0, "senderKey":"{senderKey}", "msgType":"FI", "templateCode":"{templateCode}" } } }}Pause a broadcast send
Pauses a basic template broadcast send request that is in progress.
Body Parameters
{} JSONbrandmessage
RequiredObjectThe broadcast send control information.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/groupMessage/pause" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "brandmessage": { "senderKey": "{senderKey}", "requestId": "1203981" } }'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "brandmessage": { "requestId":"1203981", "status":"PAUSED", "sendStartAt":"2026-04-08 16:20:00", "pushAlarm":"Y", "expectedCount": 7, "sendCount": 3, "senderKey":"{senderKey}", "msgType":"FI", "templateCode":"{templateCode}" } } }}Terminate a broadcast send
Terminates a basic template broadcast send request that is reserved or in progress.
Body Parameters
{} JSONbrandmessage
RequiredObjectThe broadcast send control information.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/groupMessage/terminate" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "brandmessage": { "senderKey": "{senderKey}", "requestId": "1203981" } }'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "brandmessage": { "requestId":"1203981", "status":"TERMINATED", "sendStartAt":"2026-04-08 16:20:00", "pushAlarm":"Y", "expectedCount": 7, "sendCount": 3, "senderKey":"{senderKey}", "msgType":"FI", "templateCode":"{templateCode}" } } }}Look up a broadcast send
Looks up the status of a specific broadcast send request by sender profile key and request ID.
Query Parameters
senderKey
RequiredStringThe sender profile key.
requestId
RequiredIntegerThe broadcast send request ID.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/groupMessage?senderKey={senderKey}&requestId=1203981" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "brandmessage": { "requestId":"1203981", "status":"SENDING", "sendStartAt":"2026-04-08 16:40:00", "pushAlarm":"Y", "expectedCount": 7, "sendCount": 3, "senderKey":"{senderKey}", "msgType":"FI", "templateCode":"{templateCode}" } } }}Look up the list of recently changed broadcast send requests
Looks up the broadcast send request IDs changed after the reference time. Use it to reconcile request statuses you missed.
Query Parameters
senderKey
RequiredStringThe sender profile key.
since
StringThe reference time for changes.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/groupMessage/lastModified?senderKey={senderKey}&since=2026-04-08T15:00:00" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "brandmessage": { "requestIds": ["1203981", "1203982", "1203983"] } } }}Pre-send checks for Brand Message
These lookups let you check the expected send count and charge, the number of friends you hold, and the estimated duration before you send. They support both friend-group-based and phone-number-list-based checks, and you use them not only for broadcast sends but also to validate any send in advance.
Check the expected audience size (friend group based)
Looks up the estimated number of sends for a broadcast based on the message type and friend group conditions. When you use a friend group, its status must be complete (C) and it must contain at least 10 registered users to schedule a send; friend relationships are synced in real time.
Query Parameters
senderKey
RequiredStringThe sender profile key.
msgType
RequiredStringThe Brand Message type. (Converted to Kakao's original chatBubbleType.)
friendGroupKey
StringThe target friend group key. If omitted, the lookup covers all friends.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/groupMessage/possible?senderKey={senderKey}&msgType=FI&friendGroupKey={friendGroupKey}" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "brandmessage": { "possible": 320 } } }}Check the expected audience size (phone number list based)
Looks up the estimated number of eligible sends for a broadcast based on a phone number list. Country codes in the list are normalized automatically, and the eligible audience is calculated from the valid numbers. You need at least 10 entries, and the whole request is rejected if any entry is malformed.
Body Parameters
{} JSONsenderKey
RequiredStringThe sender profile key.
phoneNumbers
RequiredString ArrayThe list of phone numbers to check for send eligibility.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/groupMessage/friend/possible" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "senderKey": "{senderKey}", "phoneNumbers": [ "01000000000", "01000000001" ] }'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "brandmessage": { "possible": 320 } } }}Look up the total friend count for the channel
Looks up the friend count for the sender profile. Use it to check the eligible audience size for a broadcast send in advance.
Query Parameters
senderKey
RequiredStringThe sender profile key.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/groupMessage/friendCount?senderKey={senderKey}" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "brandmessage": { "count": 1250 } } }}Look up the estimated duration
Looks up the estimated end time and duration based on the broadcast send start time and audience size.
Query Parameters
senderKey
RequiredStringThe sender profile key.
startTime
RequiredStringThe broadcast send start time.
count
RequiredIntegerThe send audience size.
target
StringThe target type.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/groupMessage/estimate?senderKey={senderKey}&startTime=2026-04-08T16:40:00&count=320&target=FRIEND_GROUP" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "brandmessage": { "estimatedFinishedAt":"2026-04-08T16:58:00", "duration": 18 } } }}Manage image files
Upload the image files you will use in Brand Message templates and free-form message composition. The upload path differs by message type and layout.
Upload an image
Uploads an image used in a basic Brand Message. This API does not attach a file directly to the message body โ it issues an image URL you use when registering and composing a Brand Message template.
Body Parameters
FORM-DATAfile
RequiredBinaryThe binary of the Brand Message image file to upload.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/file/brandmessage/default" \ -H "Authorization: {ApiKey}" \ -F "file=@/path/brand-image.jpg"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "imgUrl":"https://example.kakao.image/brand-image.jpg" } }}Upload a wide image
Uploads an image used in a wide image Brand Message. Use the issued imgUrl in the Brand Message template or send configuration.
Body Parameters
FORM-DATAfile
RequiredBinaryThe binary of the Brand Message image file to upload.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/file/brandmessage/wide" \ -H "Authorization: {ApiKey}" \ -F "file=@/path/brand-image.jpg"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "imgUrl":"https://example.kakao.image/brand-image.jpg" } }}Upload the first wide list image
Uploads the image used for the first list image of a wide list Brand Message.
Body Parameters
FORM-DATAfile
RequiredBinaryThe binary of the Brand Message image file to upload.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/file/brandmessage/wideItemList/first" \ -H "Authorization: {ApiKey}" \ -F "file=@/path/brand-image.jpg"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "imgUrl":"https://example.kakao.image/brand-image.jpg" } }}Upload a wide list image
Uploads the image used for the 2ndโ4th list images of a wide list Brand Message.
Body Parameters
FORM-DATAfile
RequiredBinaryThe binary of the Brand Message image file to upload.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/file/brandmessage/wideItemList" \ -H "Authorization: {ApiKey}" \ -F "file=@/path/brand-image.jpg"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "imgUrl":"https://example.kakao.image/brand-image.jpg" } }}Upload a carousel feed image
Uploads an image used in a carousel feed Brand Message.
Body Parameters
FORM-DATAfile
RequiredBinaryThe binary of the Brand Message image file to upload.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/file/brandmessage/carouselFeed" \ -H "Authorization: {ApiKey}" \ -F "file=@/path/brand-image.jpg"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "imgUrl":"https://example.kakao.image/brand-image.jpg" } }}Upload a carousel commerce image
Uploads an image used in a carousel commerce Brand Message. All carousel images must use the same ratio.
Body Parameters
FORM-DATAfile
RequiredBinaryThe binary of the Brand Message image file to upload.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/file/brandmessage/carouselCommerce" \ -H "Authorization: {ApiKey}" \ -F "file=@/path/brand-image.jpg"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "imgUrl":"https://example.kakao.image/brand-image.jpg" } }}Manage videos
Register the videos you will use in Brand Message and look up their processing status. There are two ways to prepare a video for sending.
- New upload โ a video you have not yet uploaded to Kakao. This is a 2-step structure: you are issued an upload channel, then your client uploads the file directly to that channel. (Unlike the image file management APIs, the file is not transmitted to us directly.)
- Register an existing video โ a video that is already on the channel. You register it for sending with just the
vidor thevideoUrl, with no re-upload.
New upload flow
1. Register the upload POST /video/upload/register
โ the response issues vid, uploadUrl, and token
โ
โผ
2. Transmit the file client โ uploadUrl (sent directly to the Kakao server, using token)
โ
โผ
3. Check the status GET /video?vid=...
โ sendable once status is PUBLIC (PRIVATE allows template registration only)
The
A000in the step 1 response only means the upload channel was issued successfully; it does not mean the video registration is complete. Check whether it is actually usable with thestatusfrom the step 3 lookup.
Step 2: transmit the video file
Transmit the video file directly to the uploadUrl you received in the step 1 response. The uploadUrl and the token are valid for only 5 minutes after issue, and if the transmission fails you must start again from the upload registration (step 1).
| Item | Value |
|---|---|
| Method and URL | POST {uploadUrl} |
| Headers | x-kamp-upload-token: {token} ยท Content-Type: multipart/form-data |
| Body | file โ the video binary |
curl -X POST \
-H 'x-kamp-upload-token: {token}' \
-H 'Content-Type: multipart/form-data' \
-F 'file=@{video_file}' \
'{uploadUrl}'
This transmission goes directly to the Kakao upload server and does not pass through the Bizgo API. Use the
vidfrom the success response to run the step 3 status lookup. If it fails, theerrCodeandmessagein the response tell you the cause (nonexistent vid, size, resolution, or length exceeded, unsupported format, token authentication failure, and so on).
Rules for registering an existing video
A video you have already uploaded to your KakaoTalk channel skips step 2 above; you register it straight away by specifying only the vid or the videoUrl.
- One is required โ enter at least one of
vidandvideoUrl. If you enter both,videoUrltakes precedence. videoUrlformat โhttps://business.kakao.com/{์ฑ๋์๋ณ์}/videos/{vid}- Registrable states โ you can only register a video in the
PUBLICorPRIVATEstate.
Video status codes
These are the status values in the lookup and registration responses.
| status | Description |
|---|---|
REGISTERED | Upload registered |
ENCODING | Encoding in progress |
PUBLIC | Public โ can be sent and registered in a template |
PRIVATE | Private โ can be registered in a template only |
VIOLATED | Video that violates policy |
ILLEGAL | Illegally filmed material (๋ถ๋ฒ์ดฌ์๋ฌผ) |
DELETED | Deleted video |
ERROR | An error occurred during upload or encoding |
Register a video upload
Registers a video upload for a Brand Message and issues Kakao upload channel information. This API only issues the upload channel โ you must send the file yourself to the uploadUrl returned in the response.
Body Parameters
{} JSONsenderKey
RequiredStringThe sender profile key. max: 40
fileName
RequiredStringThe name of the video file to upload.
fileSize
RequiredNumberThe size of the video file to upload. Unit: bytes
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/video/upload/register" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "senderKey": "{senderKey}", "fileName": "brand-promotion.mp4", "fileSize": 4075447 }'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "brandmessage": { "video": { "vid":"rvuzx2fkv08xrgrrhuwsc151z", "uploadUrl":"https://up03-kamp.kakao.com/v4/upload/rvuzx2fkv08xrgrrhuwsc151z/open", "token":"zXupsa4sM18oTL-..." } } } }}Register an existing video
Registers a video already uploaded to your KakaoTalk channel for Brand Message sending, without re-uploading it. This is a separate API from the video upload registration that issues an upload channel, and you identify the video with either vid or videoUrl โ not both.
Body Parameters
{} JSONsenderKey
RequiredStringThe sender profile key. max: 40
vid
StringThe video identifier to register. Cannot be used together with videoUrl.
videoUrl
StringThe channel video URL to register. Cannot be used together with vid.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/video/register" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "senderKey": "{senderKey}", "vid": "rvhyrk8x0dqp0d8oiyc1w2m9t" }'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "brandmessage": { "video": { "vid":"rvhyrk8x0dqp0d8oiyc1w2m9t", "status":"PUBLIC", "title":"๋์", "thumbnailUrl":"https://thumb.kakaocdn.net/.../2.jpg", "videoUrl":"https://business.kakao.com/_jIxmCs/videos/1090870" } } } }}Look up a video
Looks up the processing status and metadata of a single uploaded video by its identifier.
Query Parameters
vid
RequiredStringThe identifier of the video to look up.
senderKey
RequiredStringThe sender profile key. max: 40
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/video?vid={vid}&senderKey={senderKey}" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "brandmessage": { "video": { "vid":"rvuzx2fkv08xrgrrhuwsc151z", "status":"PUBLIC", "title":"brand-promotion", "thumbnailUrl":"https://thumb.kakaocdn.net/.../2.jpg", "videoUrl":"https://business.kakao.com/_jIxmCs/videos/1079462" } } } }}Look up the video list
Looks up the history of videos uploaded for the sender profile. You can filter by registration date and page through the results with offset and limit.
Query Parameters
senderKey
RequiredStringThe sender profile key. max: 40
date
StringThe registration date to look up. If omitted, all records are returned. Format: yyyyMMdd
offset
NumberThe lookup start offset. Negative values are not allowed. default: 0
limit
NumberThe number of records to look up. default: 100, max: 1000
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/video/list?senderKey={senderKey}&date=20260624&offset=0&limit=100" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "offset": 0, "limit": 100, "totalCount": 1, "videos": [{ "vid":"rvuzx2fkv08xrgrrhuwsc151z", "senderKey":"{senderKey}", "fileName":"brand-promotion.mp4", "fileSize": 4075447, "status":"PUBLIC", "title":"brand-promotion", "thumbnailUrl":"https://thumb.kakaocdn.net/.../2.jpg", "videoUrl":"https://business.kakao.com/_jIxmCs/videos/1079462", "modifiedAt":"2026-06-24 15:53:05", "regDate":"2026-06-24 15:52:29", "updateDate":"2026-06-24 15:53:05" }] } }}Manage basic templates
Look up, register, update, and delete the templates you use for basic Brand Message sends. For types that need an image, issue the imgUrl first with the image file management APIs, then use it.
Look up a template
Looks up Brand Message template details by sender profile key and template code.
Query Parameters
senderKey
RequiredStringThe sender profile key.
templateCode
RequiredStringThe template code.
sendType
StringThe Brand Message send type.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/template?senderKey={senderKey}&templateCode={templateCode}&sendType=basic" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "brandmessage": { "senderKey":"{senderKey}", "sendType":"basic", "templateCode":"{templateCode}", "msgType":"FT", "text":"#{customerName}๋, ํํ์ ํ์ธํด ์ฃผ์ธ์.", "pushAlarm":"Y", "createAt":"2026-04-24T10:42:34+09:00", "modifiedAt":"2026-04-24T10:42:34+09:00", "status":"A" } } }}Look up recently changed templates
Looks up Brand Message templates changed after the specified time. Use it as the basis for refreshing templates or for an internal sync batch.
Query Parameters
senderKey
RequiredStringThe sender profile key.
senderKeyType
StringThe sender key type.
since
StringThe lookup start time.
page
IntegerThe page number.
count
IntegerThe number of records per page.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/template/lastModified?senderKey={senderKey}&senderKeyType=S&since=2026-04-23T09:00:00&page=1&count=100" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "brandmessage": { "templates": [{ "senderKey":"{senderKey}", "senderKeyType":"S", "templateCode":"BRAND_TEXT_001" }] } } }}Register a template
Registers a Brand Message template. For types that require an image, use the imgUrl issued by the Brand Message image upload API.
Body Parameters
{} JSONbrandmessage
RequiredObjectThe Brand Message template information.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/template" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "brandmessage": { "senderKey": "{senderKey}", "sendType": "basic", "templateName": "๋ธ๋๋ ํํ ์๋ด", "msgType": "FT", "text": "#{customerName}๋, ์๋ก์ด ํํ์ ํ์ธํด ์ฃผ์ธ์.", "pushAlarm": "Y" } }'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "brandmessage": { "senderKey":"{senderKey}", "sendType":"basic", "templateCode":"BRAND_TEXT_001", "msgType":"FT", "text":"#{customerName}๋, ์๋ก์ด ํํ์ ํ์ธํด ์ฃผ์ธ์.", "pushAlarm":"Y", "createAt":"2026-04-24T10:42:34+09:00", "modifiedAt":"2026-04-24T10:42:34+09:00", "status":"A" } } }}Update a template
Updates a registered Brand Message template. What you can change depends on the review status and Kakao's policy.
Body Parameters
{} JSONbrandmessage
RequiredObjectThe Brand Message template information.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X PUT "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/template" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "brandmessage": { "senderKey": "{senderKey}", "sendType": "basic", "templateName": "๋ธ๋๋ ํํ ์๋ด ์์ ", "msgType": "FT", "text": "#{customerName}๋, ์
๋ฐ์ดํธ๋ ํํ์ ํ์ธํด ์ฃผ์ธ์.", "pushAlarm": "Y" } }'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "brandmessage": { "senderKey":"{senderKey}", "sendType":"basic", "templateCode":"BRAND_TEXT_001", "msgType":"FT", "text":"#{customerName}๋, ์
๋ฐ์ดํธ๋ ํํ์ ํ์ธํด ์ฃผ์ธ์.", "pushAlarm":"Y", "createAt":"2026-04-24T10:42:34+09:00", "modifiedAt":"2026-04-24T10:42:34+09:00", "status":"A" } } }}Delete a template
Deletes a Brand Message template by sender profile key and template code.
Path Parameters
senderKey
RequiredStringThe sender profile key.
templateCode
RequiredStringThe code of the template to delete.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X DELETE "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/template/senderKey/{senderKey}/templateCode/{templateCode}" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success" }}Manage group tags
A group tag is management information for classifying Brand Message templates and operational targets. You can look up, register, update, and delete group tags by sender profile.
Look up all group tags
Looks up all Brand Message group tags for the sender profile.
Query Parameters
senderKey
RequiredStringThe sender profile key.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/groupTag/list?senderKey={senderKey}" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "groupTags": [{ "groupTagKey":"{groupTagKey}", "groupTagName":"VIP ๊ณ ๊ฐ" }] } }}Look up a group tag
Looks up Brand Message group tag details by sender profile key and group tag key.
Query Parameters
senderKey
RequiredStringThe sender profile key.
groupTagKey
RequiredStringThe group tag key.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/groupTag?senderKey={senderKey}&groupTagKey={groupTagKey}" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "groupTags": [{ "groupTagKey":"{groupTagKey}", "groupTagName":"VIP ๊ณ ๊ฐ" }] } }}Register a group tag
Registers a Brand Message group tag.
Body Parameters
{} JSONgroupTag
RequiredObjectThe Brand Message group tag information.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/groupTag" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "groupTag": { "groupTagKey": "VIP_CUSTOMER", "groupTagName": "VIP ๊ณ ๊ฐ" } }'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "groupTags": [{ "groupTagKey":"VIP_CUSTOMER", "groupTagName":"VIP ๊ณ ๊ฐ" }] } }}Update a group tag
Updates a registered Brand Message group tag.
Body Parameters
{} JSONgroupTag
RequiredObjectThe Brand Message group tag information.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X PUT "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/groupTag" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "groupTag": { "groupTagKey": "VIP_CUSTOMER", "groupTagName": "VIP ๊ณ ๊ฐ ์์ " } }'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "groupTags": [{ "groupTagKey":"VIP_CUSTOMER", "groupTagName":"VIP ๊ณ ๊ฐ ์์ " }] } }}Delete a group tag
Deletes a Brand Message group tag by sender profile key and group tag key.
Path Parameters
senderKey
RequiredStringThe sender profile key.
groupTagKey
RequiredStringThe key of the group tag to delete.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X DELETE "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/groupTag/senderKey/{senderKey}/groupTagKey/{groupTagKey}" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success" }}Manage friend groups
A friend group is a management capability that groups friend audiences by sender profile for use in basic broadcast sends. You can create a group from a file upload or a phone number array, and add or delete phone numbers per group.
Upload a friend group file
Uploads a phone number list file and issues a temporary file key for registering a friend group or adding and removing phone numbers.
Body Parameters
FORM-DATAsenderKey
RequiredStringThe sender profile key.
file
RequiredBinaryThe phone number list file to upload.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/friendGroup/file" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: multipart/form-data" \ -F "senderKey={senderKey}" \ -F "file=@friend-group.csv"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "friendGroup": { "fileKey":"{fileKey}", "expiredAt":"2026-04-10 14:03:25" } } }}Register a friend group
Creates a friend group. You can register the phone numbers to include with fileKey or phoneNumbers.
Body Parameters
{} JSONfriendGroup
RequiredObjectThe friend group information.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/friendGroup" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "friendGroup": { "senderKey": "{senderKey}", "friendGroupKey": "VIP_CUSTOMERS", "phoneNumbers": [ "01000000000", "01000000001" ] } }'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "friendGroup": { "friendGroupKey":"VIP_CUSTOMERS", "requestId": 1203981, "status":"IN_PROGRESS", "createdAt":"2026-04-09 15:10:00", "modifiedAt":"2026-04-09 15:10:00" } } }}Look up a friend group
Looks up friend group details by sender profile key and friend group key.
Query Parameters
senderKey
RequiredStringThe sender profile key.
friendGroupKey
RequiredStringThe friend group key.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/friendGroup?senderKey={senderKey}&friendGroupKey=VIP_CUSTOMERS" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "friendGroup": { "friendGroupKey":"VIP_CUSTOMERS", "userCount": 12000, "friendCount": 11540, "status":"COMPLETED", "createdAt":"2026-04-09 15:10:00", "modifiedAt":"2026-04-09 15:12:25" } } }}Look up the friend group list
Looks up the friend groups registered for the sender profile.
Query Parameters
senderKey
RequiredStringThe sender profile key.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/friendGroup/list?senderKey={senderKey}" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "friendGroups": [{ "friendGroupKey":"VIP_CUSTOMERS", "userCount": 12000, "friendCount": 11540, "status":"COMPLETED", "createdAt":"2026-04-09 15:10:00", "modifiedAt":"2026-04-09 15:12:25" }] } }}Delete a friend group
Deletes a friend group by sender profile key and friend group key.
Path Parameters
senderKey
RequiredStringThe sender profile key.
friendGroupKey
RequiredStringThe key of the friend group to delete.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X DELETE "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/friendGroup/senderKey/{senderKey}/friendGroupKey/{friendGroupKey}" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success" }}Add phone numbers to a friend group
Adds phone numbers to an existing friend group. You can supply them with fileKey or phoneNumbers.
Body Parameters
{} JSONfriendGroup
RequiredObjectThe friend group information.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/friendGroup/phoneNumber/update" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "friendGroup": { "senderKey": "{senderKey}", "friendGroupKey": "VIP_CUSTOMERS", "phoneNumbers": [ "01000000002", "01000000003" ] } }'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "friendGroup": { "friendGroupKey":"VIP_CUSTOMERS", "requestId": 1203982, "status":"IN_PROGRESS", "createdAt":"2026-04-09 15:15:00", "modifiedAt":"2026-04-09 15:15:00" } } }}Delete phone numbers from a friend group
Removes phone numbers from an existing friend group. You can supply them with fileKey or phoneNumbers.
Body Parameters
{} JSONfriendGroup
RequiredObjectThe friend group information.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/friendGroup/phoneNumber/delete" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "friendGroup": { "senderKey": "{senderKey}", "friendGroupKey": "VIP_CUSTOMERS", "phoneNumbers": [ "01000000003" ] } }'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "friendGroup": { "friendGroupKey":"VIP_CUSTOMERS", "requestId": 1203983, "status":"IN_PROGRESS", "createdAt":"2026-04-09 15:18:00", "modifiedAt":"2026-04-09 15:18:00" } } }}Manage consent to receive promotional information
Upload, by sender profile, the consent evidence required to send promotional Brand Messages. Korean regulations require you to hold this consent evidence.
Upload an evidence file
Uploads a supporting evidence file that proves consent to receive promotional information. Uploaded files are managed per sender profile, and you can check the registration result with the file key and URL returned in the response.
Body Parameters
FORM-DATAsenderKey
RequiredStringThe sender profile key. max: 40
file
RequiredBinaryThe supporting evidence file to upload.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/marketingAgree" \ -H "Authorization: {ApiKey}" \ -F "senderKey={senderKey}" \ -F "file=@/path/marketing-agree.pdf"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "marketingAgree": { "fileKey":"{fileKey}", "fileUrl":"https://mud-kage.kakao.com/.../marketing-agree.pdf" } } }}Manage toll-free opt-out
Manage, by sender profile, the toll-free opt-out information required in Brand Message promotional notices under Korean regulations.
Set the toll-free opt-out information for a sender profile
Registers the toll-free opt-out phone number and verification code for the sender profile. You can use them in the toll-free opt-out notice at the bottom of promotional messages.
Body Parameters
{} JSONbrandmessage
RequiredObjectThe toll-free opt-out information.
Returns
common
ObjectThe common response section.
data
ObjectThe service response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/brandmessage/unSubscribeContent" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json" \ -d '{ "brandmessage": { "senderKey": "{senderKey}", "unsubscribePhoneNumber": "080-1234-1234", "unsubscribeAuthNumber": "12345" } }'Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success" }}