RCS message
RCS message is the channel API that supports rich messages with buttons, cards, and images.
Send a unified RCS message
Unified RCS is a send method that supports both iOS and Android. Unless you are maintaining an existing integration, review the difference between unified RCS and Android RCS and prefer unified RCS.
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": [{ "rcs": { "from": "{senderNumber}", "formatId": "RCS_FORMAT_ID", "brandKey": "RCS_BRAND_KEY", "body": { "title": "통합 RCS 안내", "description": "통합 RCS 본문입니다." } } }], "ref": "rcs-unified-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": "rcs-unified-20260331-001" }}Reservation send
Registers a unified RCS message to be sent at the specified time. The detailed fields you can send are the same as in the unified RCS 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": "01000000000" }], "messageFlow": [{ "rcs": { "from": "{senderNumber}", "formatId": "RCS_FORMAT_ID", "brandKey": "RCS_BRAND_KEY", "body": { "title": "통합 RCS 예약 안내", "description": "지정한 시각에 발송되는 통합 RCS 메시지입니다." }, "expiryOption": "1" } }], "resvSendTime": "2026-05-01 10:00:00", "resvName": "통합 RCS 예약 발송", "ref": "rcs-resv-20260501-001" }'Response example
{ "common": { "authCode": "A000", "authResult": "Success", "infobankTrId": "Infobank-Tracking-Id" }, "data": { "code": "A000", "result": "Success", "resvKey": "20260501100000RESV0000000001" }}Send an Android RCS message
Use Android RCS when you need to keep an existing Android Chat+ integration. Before starting a new integration, first review the difference between unified RCS and Android RCS.
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": [{ "rcs": { "from": "{senderNumber}", "formatId": "RCS_FORMAT_ID", "brandKey": "RCS_BRAND_KEY", "body": { "title": "RCS 안내", "description": "안드로이드 RCS 메시지입니다." } } }], "ref": "rcs-android-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": "rcs-android-20260331-001" }}Upload an image
Upload the image before sending the RCS message, then put the issued media value in messageFlow[].rcs.body.media.
Body Parameters
FORM-DATAfile
RequiredBinaryThe RCS 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/rcs" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: multipart/form-data" \ -F "file=@/path/to/rcs-image.jpg"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"header-value-X-Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "media":"maapfile://clientId_c70626a6917a452a8faec8509e93065e", "expired":"2027-04-24T12:16:38+09:00" } }}Manage brands
Look up brand details
Looks up RCS brand details by brandId.
Query Parameters
brandId
RequiredStringThe brand ID to look up.
Returns
common
ObjectThe common response section.
data
ObjectThe API result section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/rcs/brand?brandId={brandId}" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"header-value-X-Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "rcs": { "brandId":"{brandId}", "name":"{name}", "brandKey":"{brandKey}", "status":"ready" } } }}Update a brand
Updates the brand's basic information and images.
Body Parameters
FORM-DATAbrandId
RequiredStringThe brand ID to update.
regBrand
RequiredObjectThe brand update information.
brandProfile
BinaryThe brand profile image file.
brandBackground
BinaryThe brand background image file.
seasonDocFile
BinaryThe seasonal supporting document file.
Returns
common
ObjectThe common response section.
data
ObjectThe API result section.
Request example
curl -X PUT "https://mars.ibapi.kr/api/comm/v1/center/rcs/brand" \ -H "Authorization: {ApiKey}" \ -F "brandId={brandId}" \ -F 'regBrand={ "name": "비즈고", "description": "브랜드 소개 문구", "tel": "0212345678", "webSiteUrl": "https://www.example.com" }' \ -F "brandProfile=@brand-profile.png"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"header-value-X-Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "rcs": { "brandId":"{brandId}", "name":"{name}", "brandKey":"{brandKey}", "status":"ready" } } }}Manage chatrooms
A chatroom (chatbot) belongs to a brand and is the unit that actually exchanges messages. Use these APIs to look up and update the chatroom information under a brand, or to cancel an approval request and delete it.
Look up the chatroom list
Look up chatroom details
Update a chatroom
Cancel chatroom approval
Delete a chatroom
Look up the available queries
Manage common formats
Look up common formats
Looks up the common formats available for RCS.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/rcs/messagebase/common/list" \ -H "Content-Type: application/json" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"header-value-X-Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "rcs": { "messageForms": [ { "messagebaseformId":"RPISMTX002", "formName":"모바일 상품권 전송 T", "bizCondition": [], "cardType":"standalone media top", "registerDate":"2026-02-05T17:59:20", "updateDate":"2026-02-05T18:37:56" } ] } } }}Look up common format details
Looks up RCS common format details by message base ID.
Query Parameters
messagebaseId
RequiredStringThe message base ID to look up.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/rcs/messagebase/common?messagebaseId={messagebaseId}" \ -H "Content-Type: application/json" \ -H "Authorization: {ApiKey}"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"header-value-X-Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "rcs": { "messageForm": { "formatId":"RPTDXXX001", "templateName":"통합 정보형 템플릿", "body": [], "buttons": { "suggestions": [] }, "policyInfo": { "buttonsAllowed": true, "maxButtonCount": 2 } } } } }}Manage templates
Look up the template form list
Look up template form details
Look up the template list
Look up template details
Register a template
Update a template
Cancel template approval
Delete a template
Manage template images
Register a template image
Uploads an image for registering an RCS template and issues a template file ID.
Body Parameters
FORM-DATAbrandId
RequiredStringThe brand ID.
file
RequiredBinaryThe binary of the image file used to register the template.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/rcs/messagebase/file" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: multipart/form-data" \ -F "brandId={brandId}" \ -F "file=@/path/to/template-image.jpg"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"header-value-X-Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "rcs": { "image": { "fileId":"{fileId}", "fileName":"template-image.jpg", "imageWidth": 900, "imageHeight": 900 } } } }}Look up template image details
Looks up template image details by brand ID and template file ID.
Query Parameters
brandId
RequiredStringThe brand ID.
fileId
RequiredStringThe template file ID.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/rcs/messagebase/file?brandId={brandId}&fileId={fileId}" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"header-value-X-Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "rcs": { "image": { "fileId":"{fileId}", "fileName":"template-image.jpg", "imageWidth": 900, "imageHeight": 900 } } } }}Look up template form logo images
Looks up the logo images available for a template form by its template form ID.
Query Parameters
messagebaseformId
RequiredStringThe message form ID.
Returns
common
ObjectThe common response section.
data
ObjectThe product response section.
Request example
curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/rcs/messagebase/messagebaseform/logo?messagebaseformId={messagebaseformId}" \ -H "Authorization: {ApiKey}" \ -H "Content-Type: application/json"Response example
{ "common": { "authCode":"A000", "authResult":"Success", "infobankTrId":"header-value-X-Infobank-Tracking-Id" }, "data": { "code":"A000", "result":"Success", "data": { "rcs": { "images": [ { "fileId":"{fileId}", "fileName":"template-logo.png", "imageWidth": 900, "imageHeight": 900 } ] } } }}