https://rcs-bizmessage.api.nhncloudservice.com
[Method, URI]
POST /rcs/v1.0/messages/sms
Content-Type: application/json
[Header]
"X-TC-APP-KEY" : String,
"X-SECRET-KEY": String
[Request Body]
Field | Type | Required | Description | Note |
---|---|---|---|---|
sendDateTime | String | X | Desired Sending Time | Format: YYYY-MM-DD hh:mm:ss Time before the current time unavailable, default: current time |
brandId | String | O | Brand ID | |
chatbotId | String | O | Sender number | |
recipientNumber | String | O | Recipient number | Space not allowed, example input: 01012345678, +821012345678 |
isAd | Boolean | X | Ad sending or not | Default: false |
unsubscribeNumber | String | X | Deny-to-receive number | Required If ad is true |
body | String | O | Body | Max. 100 characters, |
buttons | List | X | Button | Max 100 |
button.buttonType | String | X | Button type |
|
button.buttonJson | String | X | Button Json | Check the format for the button type |
isFallback | Boolean | X | Alternative sending or not | Default: false |
{
"brandId":"sampleBrandId",
"chatbotId":"15881234",
"recipientNumber":"01012345678",
"isAd": false,
"body":"testBody",
"buttons" : [
{
"buttonType" : "URL",
"buttonJson" : "{ \"action\": { \"urlAction\":{\"openUrl\":{\"url\":\"http://www.test.com\"} },\"displayText\":\"Go to the homepage\"}}"
}
]
}
[Response Body]
[Success example]
{
"header": {
"resultCode": 0,
"resultMessage": "success",
"isSuccessful": true
},
"messageId" : "20220914184500weq0u9pNu30"
}
[Failure example]
{
"header": {
"resultCode": -3000,
"resultMessage": "Invalid button parameter",
"isSuccessful": false
}
}
Field | Type | Description |
---|---|---|
header.resultCode | Integer | Result code |
header.resultMessage | String | Result message |
header.isSuccessful | Boolean | Successful or not |
[Method, URI]
POST /rcs/v1.0/messages/lms
Content-Type: application/json
[Header]
"X-TC-APP-KEY" : String,
"X-SECRET-KEY": String
[Request Body]
Field | Type | Required | Description | Note |
---|---|---|---|---|
sendDateTime | String | X | Desired Sending Time | Format: YYYY-MM-DD hh:mm:ss Time before the current time unavailable, default: current time |
brandId | String | O | Brand ID | |
chatbotId | String | O | Sender number | |
recipientNumber | String | O | Recipient number | Space not allowed, example input: 01012345678, +821012345678 |
isAd | Boolean | X | Ad sending or not | Default: false |
unsubscribeNumber | String | X | Deny-to-receive number | Required If ad is true |
title | String | X | Title | Max. 30 characters |
body | String | O | Body | Max. 1300 characters |
buttons | List | X | Button | Max 3 ea |
button.buttonType | String | X | Button type |
|
button.buttonJson | String | X | Button Json | Check the format for the button type |
isFallback | Boolean | X | Alternative sending or not | Default: false |
{
"brandId":"sampleBrandId",
"chatbotId":"15881234",
"recipientNumber":"01012341234",
"isAd": false,
"title":"testTitle",
"body":"testBody",
"buttons" : [
{
"buttonType" : "URL",
"buttonJson" : "{ \"action\": { \"urlAction\":{\"openUrl\":{\"url\":\"http://www.test.com\"} },\"displayText\":\"Go to homepage\"}}"
}
]
}
[Response Body]
[Success example]
{
"header": {
"resultCode": 0,
"resultMessage": "success",
"isSuccessful": true
},
"messageId" : "20220914184500weq0u9pNu30"
}
[Failure example]
{
"header": {
"resultCode": -3000,
"resultMessage": "Invalid button parameter",
"isSuccessful": false
}
}
Field | Type | Description |
---|---|---|
header.resultCode | Integer | Result code |
header.resultMessage | String | Result message |
header.isSuccessful | Boolean | Successful or not |
[Method, URI]
POST /rcs/v1.0/messages/mms
Content-Type: application/json
[Header]
"X-TC-APP-KEY" : String,
"X-SECRET-KEY": String
[Request Body]
Field | Type | Required | Description | Note |
---|---|---|---|---|
sendDateTime | String | X | Desired Sending Time | Format: YYYY-MM-DD hh:mm:ss Time before the current time unavailable, default: current time |
brandId | String | O | Brand ID | |
chatbotId | String | O | Sender number | |
recipientNumber | String | O | Recipient number | Space not allowed, example input: 01012345678, +821012345678 |
isAd | Boolean | X | Ad sending or not | Default: false |
unsubscribeNumber | String | X | Deny-to-receive number | Required when ad is true |
mmsType | String | O | MMS type |
|
cards | List | O | Cards | HORIZONTAL(1), VERTICAL(1), CAROUSEL_MEDIUM(3 ~ 6), CAROUSEL_SMALL(3 ~ 6) |
card.title | String | X | Title | Max. 30 characters |
card.description | String | X | Content | Slide X(Max:1300), CAROUSEL_MEDIUM(Max:60), CAROUSEL_SMALL(MAX:30) |
card.media | String | O | Attachment ID | ID value issued when uploading an attached file |
card.buttons | List | X | Button | Max 2 ea |
card.button.buttonType | String | X | Button type |
|
card.button.buttonJson | String | X | Button Json | Check the format for the button type |
isFallback | Boolean | X | Alternative sending or not | Default: false |
{
"brandId":"sampleBrandId",
"chatbotId":"15881234",
"recipientNumber":"01012341234",
"isAd": false,
"mmsType": "HORIZONTAL",
"cards": [
{
"title":"testTitle",
"description":"testBody",
"media":"fileId",
"buttons" : [
{
"buttonType" : "URL",
"buttonJson" : "{ \"action\": { \"urlAction\":{\"openUrl\":{\"url\":\"http://www.test.com\"} },\"displayText\":\"Go to homepage\"}}"
},
{
"buttonType" : "URL",
"buttonJson" : "{ \"action\": { \"urlAction\":{\"openUrl\":{\"url\":\"http://www.test.com\"} },\"displayText\":\"Go to homepage\"}}"
}
]
}
]
}
[Response Body]
[Success example]
{
"header": {
"resultCode": 0,
"resultMessage": "success",
"isSuccessful": true
},
"messageId" : "20220914184500weq0u9pNu30"
}
[Failure example]
{
"header": {
"resultCode": -3000,
"resultMessage": "Invalid button parameter",
"isSuccessful": false
}
}
Field | Type | Description |
---|---|---|
header.resultCode | Integer | Result code |
header.resultMessage | String | Result message |
header.isSuccessful | Boolean | Successful or not |
[Method, URI]
POST /rcs/v1.0/messages/template
Content-Type: application/json
[Header]
"X-TC-APP-KEY" : String,
"X-SECRET-KEY": String
[Request Body]
Field | Type | Required | Description | Note |
---|---|---|---|---|
sendDateTime | String | X | Desired Sending Time | Format: YYYY-MM-DD hh:mm:ss Time before the current time unavailable, default: current time |
brandId | String | O | Brand ID | |
chatbotId | String | O | Sender number | |
messagebaseId | String | O | Template ID | |
recipientNumber | String | O | Recipient number | Space not allowed, example input: 01012345678, +821012345678 |
isAd | Boolean | X | Send ads or not | Default: false, ads can only be sent for image templates |
unsubscribeNumber | String | X | Unsubscribe number | Required when isAd is true |
body | String | X | Body | Up to 90 characters, only for free templates |
templateParameter | Map | X | Substituent key, value | |
isFallback | Boolean | X | Alternative sending or not |
{
"sendDateTime" : "2022-11-21 00:00:00",
"brandId":"sampleBrandId",
"chatbotId":"15881234",
"messagebaseId":"UBR.AGNtIngI0u-GG000F",
"templateParameter" : {
"key1":"value1"
},
"isAd": true,
"unsubscribeNumber": "0801234567",
"recipientNumber":"01012341234"
}
[Response Body]
[Success example]
{
"header": {
"resultCode": 0,
"resultMessage": "success",
"isSuccessful": true
},
"messageId" : "20220914184500weq0u9pNu30"
}
[Failure example]
{
"header": {
"resultCode": -3000,
"resultMessage": "Invalid button parameter",
"isSuccessful": false
}
}
Field | Type | Description |
---|---|---|
header.resultCode | Integer | Result code |
header.resultMessage | String | Result message |
header.isSuccessful | Boolean | Successful or not |
[Method, URI]
GET /rcs/v1.0/messages/sms
Content-Type: application/json
[Header]
"X-TC-APP-KEY" : String
"X-SECRET-KEY" : String
[Query Parameter]
Field | Type | Required | Description | Note |
---|---|---|---|---|
messageId | String | O (optional required) | Message ID | Message ID issued upon request |
brandId | String | X | Brand ID | |
chatbotId | String | X | Sender number | |
messageStatus | String | X | Message status |
|
startSendDateTime | String | O (optional required) | Request time from | Format: YYYY-MM-DD hh:mm:ss from~to up to 31 days |
endSendDateTime | String | O (optional required) | Request time to | Format: YYYY-MM-DD hh:mm:ss from~to up to 31 days |
startReceiveDateTime | String | O (optional required) | Receive time from | Format: YYYY-MM-DD hh:mm:ss from~to up to 31 days |
endReceiveDateTime | String | O (optional required) | Receive time to | Format: YYYY-MM-DD hh:mm:ss from~to up to 31 days |
limit | Integer | X | Limit | Default: 15 max: 1000 |
offset | Integer | X | offset | Default: 6 |
[Success example]
{
"header": {
"resultCode": 0,
"resultMessage": "success",
"isSuccessful": true
},
"data": [
{
"messageId": "20230503100623Uc3C0JDd0u0",
"recipientSequence": 0,
"messageType": "SMS",
"brandId": "sampleBrandId",
"chatbotId": "15881234",
"recipientNumber": "01012341234",
"messagebaseId": "SS000000",
"title": "",
"body": "testBody",
"messageStatus": "DELIVERED",
"sendDateTime": "2023-05-03T10:06:23.000+09:00",
"receiveDateTime" : "2023-05-03T10:07:23.000+09:00",
"fallbackStatus" : "NONE",
"fallbackDateTime" : ""
}
],
"pagination": {
"offset": 0,
"limit": 15,
"total": 1
}
}
[Failure example]
{
"header": {
"resultCode": 500,
"resultMessage": "Internal Error. It is not handled. Please report this. 'https://toast.com/support/inquiry.",
"isSuccessful": false
}
}
Field | Type | Description |
---|---|---|
header.resultCode | Integer | Result code |
header.resultMessage | String | Result message |
header.isSuccessful | Boolean | Successful or not |
data | - | Message information |
data.messageId | String | Message ID |
data.recipientSeq | Integer | Recipient sequence |
data.messageType | String | Message type |
data.brandId | String | Brand ID |
data.chatbotId | String | Chatbot ID |
data.recipientNumber | String | Recipient number |
data.messagebaseId | String | Message type |
data.title | String | Title |
data.body | String | Body |
data.messageStatus | String | Message status
|
data.sendDateTime | dateTime | Request time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
data.receiveDateTime | dateTime | Receive Time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
data.fallbackStatus | String | Alternative Delivery Status
|
data.fallbackDateTime | dateTime | Alternative Delivery Request Time (YYYY-MM-DDThh:mm:ss.SSS±HH) |
[Method, URI]
GET /rcs/v1.0/messages/lms
Content-Type: application/json
[Header]
"X-TC-APP-KEY" : String
"X-SECRET-KEY" : String
[Query Parameter]
Field | Type | Required | Description | Note |
---|---|---|---|---|
messageId | String | O (optional required) | Message ID | Message ID issued upon request |
brandId | String | X | Brand ID | |
chatbotId | String | X | Sender number | |
messageStatus | String | X | Message status |
|
startSendDateTime | String | O (optional required) | Request time from | Format: YYYY-MM-DD hh:mm:ss from~to up to 31 days |
endSendDateTime | String | O (optional required) | Request time to | Format: YYYY-MM-DD hh:mm:ss from~to up to 31 days |
startReceiveDateTime | String | O (optional required) | Receive time from | Format: YYYY-MM-DD hh:mm:ss from~to up to 31 days |
endReceiveDateTime | String | O (optional required) | Receive time to | Format: YYYY-MM-DD hh:mm:ss from~to up to 31 days |
limit | Integer | X | Limit | Default: 15 max: 1000 |
offset | Integer | X | offset | Default: 6 |
[Success example]
{
"header": {
"resultCode": 0,
"resultMessage": "success",
"isSuccessful": true
},
"data": [
{
"messageId": "20230503100623Uc3C0JDd0u0",
"recipientSequence": 0,
"messageType": "LMS",
"brandId": "sampleBrandId",
"chatbotId": "15881234",
"recipientNumber": "01012341234",
"messagebaseId": "SS000000",
"title": "",
"body": "testBody",
"messageStatus": "DELIVERED",
"sendDateTime": "2023-05-03T10:06:23.000+09:00",
"receiveDateTime" : "2023-05-03T10:07:23.000+09:00",
"fallbackStatus" : "NONE",
"fallbackDateTime" : ""
}
],
"pagination": {
"offset": 0,
"limit": 15,
"total": 1
}
}
[Failure example]
{
"header": {
"resultCode": 500,
"resultMessage": "Internal Error. It is not handled. Please report this. 'https://toast.com/support/inquiry.",
"isSuccessful": false
}
}
Field | Type | Description |
---|---|---|
header.resultCode | Integer | Result code |
header.resultMessage | String | Result message |
header.isSuccessful | Boolean | Successful or not |
data | - | Message information |
data.messageId | String | Message ID |
data.recipientSeq | Integer | Recipient sequence |
data.messageType | String | Message type |
data.brandId | String | Brand ID |
data.chatbotId | String | Chatbot ID |
data.recipientNumber | String | Recipient number |
data.messagebaseId | String | Message type |
data.title | String | Title |
data.body | String | Body |
data.messageStatus | String | Message status
|
data.sendDateTime | dateTime | Request time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
data.receiveDateTime | dateTime | Receive Time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
data.fallbackStatus | String | Alternative Delivery Status
|
data.fallbackDateTime | dateTime | Alternative Delivery Request Time (YYYY-MM-DDThh:mm:ss.SSS±HH) |
[Method, URI]
GET /rcs/v1.0/messages/mms
Content-Type: application/json
[Header]
"X-TC-APP-KEY" : String
"X-SECRET-KEY" : String
[Query Parameter]
Field | Type | Required | Description | Note |
---|---|---|---|---|
messageId | String | O (optional required) | Message ID | Message ID issued upon request |
brandId | String | X | Brand ID | |
chatbotId | String | X | Sender number | |
messageStatus | String | X | Message status |
|
startSendDateTime | String | O (optional required) | Request time from | Format: YYYY-MM-DD hh:mm:ss from~to up to 31 days |
endSendDateTime | String | O (optional required) | Request time to | Format: YYYY-MM-DD hh:mm:ss from~to up to 31 days |
startReceiveDateTime | String | O (optional required) | Receive time from | Format: YYYY-MM-DD hh:mm:ss from~to up to 31 days |
endReceiveDateTime | String | O (optional required) | Receive time to | Format: YYYY-MM-DD hh:mm:ss from~to up to 31 days |
limit | Integer | X | Limit | Default: 15 max: 1000 |
offset | Integer | X | offset | Default: 6 |
[Success example]
{
"header": {
"resultCode": 0,
"resultMessage": "success",
"isSuccessful": true
},
"data": [
{
"messageId": "20230503100623Uc3C0JDd0u0",
"recipientSequence": 0,
"messageType": "MMS",
"brandId": "sampleBrandId",
"chatbotId": "15881234",
"recipientNumber": "01012341234",
"messagebaseId": "SS000000",
"title": "",
"body": "testBody",
"messageStatus": "DELIVERED",
"sendDateTime": "2023-05-03T10:06:23.000+09:00",
"receiveDateTime" : "2023-05-03T10:07:23.000+09:00",
"fallbackStatus" : "NONE",
"fallbackDateTime" : ""
}
],
"pagination": {
"offset": 0,
"limit": 15,
"total": 1
}
}
[Failure example]
{
"header": {
"resultCode": 500,
"resultMessage": "Internal Error. It is not handled. Please report this. 'https://toast.com/support/inquiry.",
"isSuccessful": false
}
}
Field | Type | Description |
---|---|---|
header.resultCode | Integer | Result code |
header.resultMessage | String | Result message |
header.isSuccessful | Boolean | Successful or not |
data | - | Message information |
data.messageId | String | Message ID |
data.recipientSeq | Integer | Recipient sequence |
data.messageType | String | Message type |
data.brandId | String | Brand ID |
data.chatbotId | String | Chatbot ID |
data.recipientNumber | String | Recipient number |
data.messagebaseId | String | Message type |
data.title | String | Title (first card) |
data.body | String | Body (first card) |
data.messageStatus | String | Message status
|
data.sendDateTime | dateTime | Request time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
data.receiveDateTime | dateTime | Receive Time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
data.fallbackStatus | String | Alternative Delivery Status
|
data.fallbackDateTime | dateTime | Alternative Delivery Request Time (YYYY-MM-DDThh:mm:ss.SSS±HH) |
[Method, URI]
GET /rcs/v1.0/messages/template
Content-Type: application/json
[Header]
"X-TC-APP-KEY" : String
"X-SECRET-KEY" : String
[Query Parameter]
Field | Type | Required | Description | Note |
---|---|---|---|---|
messageId | String | O (optional required) | Message ID | Message ID issued upon request |
brandId | String | X | Brand ID | |
chatbotId | String | X | Sender number | |
messageStatus | String | X | Message status |
|
startSendDateTime | String | O (optional required) | Request time from | Format: YYYY-MM-DD hh:mm:ss from~to up to 31 days |
endSendDateTime | String | O (optional required) | Request time to | Format: YYYY-MM-DD hh:mm:ss from~to up to 31 days |
startReceiveDateTime | String | O (optional required) | Receive time from | Format: YYYY-MM-DD hh:mm:ss from~to up to 31 days |
endReceiveDateTime | String | O (optional required) | Receive time to | Format: YYYY-MM-DD hh:mm:ss from~to up to 31 days |
limit | Integer | X | Limit | Default: 15 max: 1000 |
offset | Integer | X | offset | Default: 6 |
[Success example]
{
"header": {
"resultCode": 0,
"resultMessage": "success",
"isSuccessful": true
},
"data": [
{
"messageId": "20230503100623Uc3C0JDd0u0",
"recipientSequence": 0,
"messageType": "TEMPLATE",
"brandId": "sampleBrandId",
"chatbotId": "15881234",
"recipientNumber": "01012341234",
"messagebaseId": "SS000000",
"title": "",
"body": "testBody",
"messageStatus": "DELIVERED",
"sendDateTime": "2023-05-03T10:06:23.000+09:00",
"receiveDateTime" : "2023-05-03T10:07:23.000+09:00",
"fallbackStatus" : "NONE",
"fallbackDateTime" : ""
}
],
"pagination": {
"offset": 0,
"limit": 15,
"total": 1
}
}
[Failure example]
{
"header": {
"resultCode": 500,
"resultMessage": "Internal Error. It is not handled. Please report this. 'https://toast.com/support/inquiry.",
"isSuccessful": false
}
}
Field | Type | Description |
---|---|---|
header.resultCode | Integer | Result code |
header.resultMessage | String | Result message |
header.isSuccessful | Boolean | Successful or not |
data | - | Message information |
data.messageId | String | Message ID |
data.recipientSeq | Integer | Recipient sequence |
data.messageType | String | Message type |
data.brandId | String | Brand ID |
data.chatbotId | String | Chatbot ID |
data.recipientNumber | String | Recipient number |
data.messagebaseId | String | Template ID |
data.title | String | Title |
data.body | String | Body |
data.messageStatus | String | Message status
|
data.sendDateTime | dateTime | Request time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
data.receiveDateTime | dateTime | Receive Time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
data.fallbackStatus | String | Alternative Delivery Status
|
data.fallbackDateTime | dateTime | Alternative Delivery Request Time (YYYY-MM-DDThh:mm:ss.SSS±HH) |
[Method, URI]
GET /rcs/v1.0/messages/sms/{messageId}
Content-Type: application/json
[Header]
"X-TC-APP-KEY" : String
"X-SECRET-KEY" : String
[Path Parameter]
Field | Type | Required | Description | Note |
---|---|---|---|---|
messageId | String | O | Message ID | Message ID issued upon request |
[Success example]
{
"header": {
"resultCode": 0,
"resultMessage": "success",
"isSuccessful": true
},
"messageRecipient": {
"messageId": "20230503100623Uc3C0JDd0u0",
"sendDateTime": "2023-05-03T10:06:23.000+09:00",
"messageType": "SMS",
"brandId": "sampleBrandId",
"chatbotId": "15881234",
"recipientNumber": "01012341234",
"messagebaseId": "SS000000",
"isAd": false,
"unsubscribeNumber": "",
"body": "testBody",
"buttons": [
{
"buttonType": "URL",
"buttonJson": "{ \"action\": { \"urlAction\":{\"openUrl\":{\"url\":\"http://www.test.com\"} },\"displayText\":\"Go to the homepage\"}}",
}
],
"messageStatus": "DELIVERED",
"resultCode": 2000,
"telecom": "kt",
"receiveDateTime": "2023-05-03T10:06:23.000+09:00",
"resultDateTime": "2023-05-03T10:06:23.000+09:00",
"isFallback": false,
"fallbackStatus": "NONE",
"fallbackRequestId": "",
"fallbackResultCode": "",
"fallbackDateTime": ""
}
}
[Failure example]
{
"header": {
"resultCode": 500,
"resultMessage": "Internal Error. It is not handled. Please report this. 'https://toast.com/support/inquiry.",
"isSuccessful": false
}
}
Field | Type | Description |
---|---|---|
header.resultCode | Integer | Result code |
header.resultMessage | String | Result message |
header.isSuccessful | Boolean | Successful or not |
message | - | Message Details |
message.messageId | String | Message ID |
message.messageType | String | Message type |
message.brandId | String | Brand ID |
message.chatbotId | String | Chatbot ID |
message.recipientNumber | String | Recipient number |
message.messagebaseId | String | Template ID |
message.body | String | Body |
message.buttons | - | Button information |
message.buttons.buttonType | String | Button type
|
message.buttons.buttonJson | String | Button Json |
message.messageStatus | String | Message status
|
message.resultCode | String | Result code |
message.telecom | String | Mobile carrier (skt, kt, lgu) |
message.sendDateTime | dateTime | Request time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
message.receiveDateTime | dateTime | Receive Time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
message.resultDateTime | dateTime | Result time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
message.isFallback | Boolean | Alternative sending or not |
message.fallbackStatus | String | Alternative Delivery Status
|
message.fallbackRequestId | String | Resending SMS request ID |
message.fallbackResultCode | String | Alternative Delivery Result Code |
message.fallbackDateTime | dateTime | Alternative Delivery Request Time (YYYY-MM-DDThh:mm:ss.SSS±HH) |
[Method, URI]
GET /rcs/v1.0/messages/lms/{messageId}
Content-Type: application/json
[Header]
"X-TC-APP-KEY" : String
"X-SECRET-KEY" : String
[Path Parameter]
Field | Type | Required | Description | Note |
---|---|---|---|---|
messageId | String | O | Message ID | Message ID issued upon request |
[Success example]
{
"header": {
"resultCode": 0,
"resultMessage": "success",
"isSuccessful": true
},
"messageRecipient": {
"messageId": "20230503100623Uc3C0JDd0u0",
"sendDateTime": "2023-05-03T10:06:23.000+09:00",
"messageType": "LMS",
"brandId": "sampleBrandId",
"chatbotId": "15881234",
"recipientNumber": "01012341234",
"messagebaseId": "SL000000",
"isAd": false,
"unsubscribeNumber": "",
"body": "testBody",
"buttons": [
{
"buttonType": "URL",
"buttonJson": "{ \"action\": { \"urlAction\":{\"openUrl\":{\"url\":\"http://www.test.com\"} },\"displayText\":\"Go to the homepage\"}}",
}
],
"messageStatus": "DELIVERED",
"resultCode": 2000,
"telecom": "kt",
"receiveDateTime": "2023-05-03T10:06:23.000+09:00",
"resultDateTime": "2023-05-03T10:06:23.000+09:00",
"isFallback": false,
"fallbackStatus": "NONE",
"fallbackRequestId": "",
"fallbackResultCode": "",
"fallbackDateTime": ""
}
}
[Failure example]
{
"header": {
"resultCode": 500,
"resultMessage": "Internal Error. It is not handled. Please report this. 'https://toast.com/support/inquiry.",
"isSuccessful": false
}
}
Field | Type | Description |
---|---|---|
header.resultCode | Integer | Result code |
header.resultMessage | String | Result message |
header.isSuccessful | Boolean | Successful or not |
message | - | Message Details |
message.messageId | String | Message ID |
message.messageType | String | Message type |
message.brandId | String | Brand ID |
message.chatbotId | String | Chatbot ID |
message.recipientNumber | String | Recipient number |
message.messagebaseId | String | Template ID |
message.title | String | Title |
message.body | String | Body |
message.buttons | - | Button information |
message.buttons.buttonType | String | Button type
|
message.buttons.buttonJson | String | Button Json |
message.messageStatus | String | Message status
|
message.resultCode | String | Result code |
message.telecom | String | Mobile carrier (skt, kt, lgu) |
message.sendDateTime | dateTime | Request time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
message.receiveDateTime | dateTime | Receive Time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
message.resultDateTime | dateTime | Result time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
message.isFallback | Boolean | Alternative sending or not |
message.fallbackStatus | String | Alternative Delivery Status
|
message.fallbackRequestId | String | Resending SMS request ID |
message.fallbackResultCode | String | Alternative Delivery Result Code |
message.fallbackDateTime | dateTime | Alternative Delivery Request Time (YYYY-MM-DDThh:mm:ss.SSS±HH) |
[Method, URI]
GET /rcs/v1.0/messages/mms/{messageId}
Content-Type: application/json
[Header]
"X-TC-APP-KEY" : String
"X-SECRET-KEY" : String
[Path Parameter]
Field | Type | Required | Description | Note |
---|---|---|---|---|
messageId | String | O | Message ID | Message ID issued upon request |
[Success example]
{
"header": {
"resultCode": 0,
"resultMessage": "success",
"isSuccessful": true
},
"messageRecipient": {
"messageId": "20230503100623Uc3C0JDd0u0",
"sendDateTime": "2023-05-03T10:06:23.000+09:00",
"messageType": "MMS",
"brandId": "sampleBrandId",
"chatbotId": "15881234",
"recipientNumber": "01012341234",
"messagebaseId": "SMwThM00",
"isAd": false,
"unsubscribeNumber": "",
"mmsType": "HORIZONTAL",
"cards": [
{
"title": "testTitle",
"description": "testBody",
"media": "file.xx.xx.xxxxxxxxxxxxx",
"buttons": [
{
"buttonType": "URL",
"buttonJson": "{ \"action\": { \"urlAction\":{\"openUrl\":{\"url\":\"http://www.test.com\"} },\"displayText\":\"Go to homepage\"}}",
}
],
}
],
"messageStatus": "DELIVERED",
"resultCode": 2000,
"telecom": "kt",
"receiveDateTime": "2023-05-03T10:06:23.000+09:00",
"resultDateTime": "2023-05-03T10:06:23.000+09:00",
"isFallback": false,
"fallbackStatus": "NONE",
"fallbackRequestId": "",
"fallbackResultCode": "",
"fallbackDateTime": ""
}
}
[Failure example]
{
"header": {
"resultCode": 500,
"resultMessage": "Internal Error. It is not handled. Please report this. 'https://toast.com/support/inquiry.",
"isSuccessful": false
}
}
Field | Type | Description |
---|---|---|
header.resultCode | Integer | Result code |
header.resultMessage | String | Result message |
header.isSuccessful | Boolean | Successful or not |
message | - | Message Details |
message.messageId | String | Message ID |
message.messageType | String | Message type |
message.brandId | String | Brand ID |
message.chatbotId | String | Chatbot ID |
message.recipientNumber | String | Recipient number |
message.messagebaseId | String | Template ID |
message.isAd | Boolean | Ad or not |
message.unsubscribeNumber | String | Deny-to-receive number |
message.mmsType | String | MMS type
|
message.cards | - | Cards |
message.cards.title | String | Title |
message.cards.description | String | Content |
message.cards.media | String | Attachment ID |
message.cards.buttons | - | Button |
message.cards.button.buttonType | String | Button type Open chat room (COMPOSE), copy (CLIPBOARD), make a call (DIALER), show map (MAP_SHOW), search map (MAP_QUERY), current |
message.card.button.buttonJson | String | X |
message.messageStatus | String | Message status
|
message.resultCode | String | Result code |
message.telecom | String | Mobile carrier (skt, kt, lgu) |
message.sendDateTime | dateTime | Request time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
message.receiveDateTime | dateTime | Receive Time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
message.resultDateTime | dateTime | Result time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
message.isFallback | Boolean | Alternative sending or not |
message.fallbackStatus | String | Alternative Delivery Status
|
message.fallbackRequestId | String | Resending SMS request ID |
message.fallbackResultCode | String | Alternative Delivery Result Code |
message.fallbackDateTime | dateTime | Alternative Delivery Request Time (YYYY-MM-DDThh:mm:ss.SSS±HH) |
[Method, URI]
GET /rcs/v1.0/messages/template/{messageId}
Content-Type: application/json
[Header]
"X-TC-APP-KEY" : String
"X-SECRET-KEY" : String
[Path Parameter]
Field | Type | Required | Description | Note |
---|---|---|---|---|
messageId | String | O | Message ID | Message ID issued upon request |
[Success example]
{
"header": {
"resultCode": 0,
"resultMessage": "success",
"isSuccessful": true
},
"messageRecipient": {
"messageId": "20230503100623Uc3C0JDd0u0",
"sendDateTime": "2023-05-03T10:06:23.000+09:00",
"messageType": "TEMPLATE",
"brandId": "sampleBrandId",
"chatbotId": "15881234",
"recipientNumber": "01012341234",
"messagebaseId": "UBR.xxxxxxxxxxxxx",
"isAd": false,
"unsubscribeNumber": "",
"body": "testBody",
"buttons": [
{
"buttonType": "URL",
"buttonJson": "{ \"action\": { \"urlAction\":{\"openUrl\":{\"url\":\"http://www.test.com\"} },\"displayText\":\"Go to the homepage\"}}",
}
],
"messageStatus": "DELIVERED",
"resultCode": 2000,
"telecom": "kt",
"receiveDateTime": "2023-05-03T10:06:23.000+09:00",
"resultDateTime": "2023-05-03T10:06:23.000+09:00",
"isFallback": false,
"fallbackStatus": "NONE",
"fallbackRequestId": "",
"fallbackResultCode": "",
"fallbackDateTime": ""
}
}
[Failure example]
{
"header": {
"resultCode": 500,
"resultMessage": "Internal Error. It is not handled. Please report this. 'https://toast.com/support/inquiry.",
"isSuccessful": false
}
}
Field | Type | Description |
---|---|---|
header.resultCode | Integer | Result code |
header.resultMessage | String | Result message |
header.isSuccessful | Boolean | Successful or not |
message | - | Message Details |
message.messageId | String | Message ID |
message.messageType | String | Message type |
message.brandId | String | Brand ID |
message.chatbotId | String | Chatbot ID |
message.recipientNumber | String | Recipient number |
message.messagebaseId | String | Template ID |
message.body | String | Body |
message.buttons | - | Button information |
message.buttons.buttonType | String | Button type
|
message.buttons.buttonJson | String | Button Json |
message.messageStatus | String | Message status
|
message.resultCode | String | Result code |
message.telecom | String | Mobile carrier (skt, kt, lgu) |
message.sendDateTime | dateTime | Request time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
message.receiveDateTime | dateTime | Receive Time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
message.resultDateTime | dateTime | Result time (YYYY-MM-DDThh:mm:ss.SSS±hh:mm) |
message.isFallback | Boolean | Alternative sending or not |
message.fallbackStatus | String | Alternative Delivery Status
|
message.fallbackRequestId | String | Resending SMS request ID |
message.fallbackResultCode | String | Alternative Delivery Result Code |
message.fallbackDateTime | dateTime | Alternative Delivery Request Time (YYYY-MM-DDThh:mm:ss.SSS±HH) |
[Method, URI]
POST /rcs/v1.0/media
Content-Type: multipart/form-data
[Header]
"X-TC-APP-KEY" : String
"X-SECRET-KEY" : String
[Request Body]
Field | Type | Required | Description | Note |
---|---|---|---|---|
uploadFile | MultipartFile | O | Attachment | |
uploadUser | String | X | Upload user name |
[Response Body]
[Success example]
{
"header" : {
"resultCode" : 0,
"resultMessage" : "SUCCESS",
"isSuccessful" : true
}
}
[Failure example]
{
"header": {
"resultCode": 500,
"resultMessage": "Internal Error. It is not handled. Please report this. 'https://toast.com/support/inquiry.",
"isSuccessful": false
}
}
Field | Type | Description |
---|---|---|
header.resultCode | Integer | Result code |
header.resultMessage | String | Result message |
header.isSuccessful | Boolean | Successful or not |
{
"action": {
"composeAction": {
"composeTextMessage": {
"phoneNumber": "01000000000",
"text": "Message to send"
}
},
"displayText": "Open a chat room"
}
}
Field | Description | Note |
---|---|---|
action.displayText | Button name | Max. 17 characters |
action.composeAction.composeTextMessage.phoneNumber | Message recipient number | |
action.composeAction.composeTextMessage.text | Message to be sent | Max. 100 characters, |
{
"action": {
"clipboardAction": {
"copyToClipboard": {
"text": "Message to copy"
}
},
"displayText": "Copy"
}
}
Field | Description | Note |
---|---|---|
action.displayText | Button name | Max. 17 characters |
action.clipboardAction.copyToClipboard.text | Content to copy to clipboard | Max. 200 characters |
{
"action": {
"dialerAction": {
"dialPhoneNumber": {
"phoneNumber": "16446114"
}
},
"displayText": "Make a call"
}
}
Field | Description | Note |
---|---|---|
action.displayText | Button name | Max. 17 characters |
action.dialerAction.dialPhoneNumber.phoneNumber | Phone number |
{
"action": {
"mapAction": {
"showLocation": {
"location": {
"latitude": "37.400977",
"longitude": "127.104239",
"label": "NHN"
},
"fallbackUrl": "https://www.google.co.kr/maps"
}
},
"displayText": "Show map"
}
}
Field | Description | Note |
---|---|---|
action.displayText | Button name | Max. 17 characters |
action.mapAction.showLocation.location.latitude | Latitude | |
action.mapAction.showLocation.location.longitude | Longitude | |
action.mapAction.showLocation.location.label | Location name | Max. 200 characters |
action.mapAction.showLocation.fallbackUrl | Link to call when action fails |
{
"action": {
"mapAction": {
"showLocation": {
"location": {
"query": "NHN"
},
"fallbackUrl": "https://www.google.co.kr/maps"
}
},
"displayText": "Search a map"
}
}
Field | Description | Note |
---|---|---|
action.displayText | Button name | Max. 17 characters |
action.mapAction.showLocation.location.query | Search keyword | Max. 200 characters |
action.mapAction.showLocation.fallbackUrl | Website to query the location |
{
"action": {
"mapAction": {
"requestLocationPush": {
"currentLocation": true
}
},
"displayText": "Share the current location"
}
}
Field | Description | Note |
---|---|---|
action.displayText | Button name | Max. 17 characters |
action.mapAction.requestLocationPush.currentLocation | Whether to share the current location | In order to use the feature of the button normally, the corresponding value must be set to true. |
{
"action": {
"urlAction": {
"openUrl": {
"url": "http://www.test.com"
}
},
"displayText": "Go to page"
}
}
Field | Description | Note |
---|---|---|
action.displayText | Button name | Max. 17 characters |
action.urlAction.openUrl.url | URL address to connect |
{
"action": {
"calendarAction": {
"createCalendarEvent": {
"startTime": "2020-03-31T15:00:00.000Z",
"endTime": "2020-03-31T15:00:00.000Z",
"title": "Register Schedule",
"description": "This is an anniversary registration."
}
},
"displayText": "Register a schedule"
}
}
Field | Description | Note |
---|---|---|
action.displayText | Button name | Max. 17 characters |
action.calendarAction.createCalendarEvent.startTime | Start date | Format: yyyy-MM-ddTHH:mm:ss+9:00Z (Korean time) Set to 1/1/1970 08:59 if not formatted |
action.calendarAction.createCalendarEvent.endTime | End date | Format: yyyy-MM-ddTHH:mm:ss+9:00Z (Korean time) Set to 1/1/1970 08:59 if not formatted |
action.calendarAction.createCalendarEvent.title | Title | Max. 17 characters |
action.calendarAction.createCalendarEvent.description | Content | Max. 500 characters |