| Domain |
|---|
| https://kakaotalk-bizmessage.api.nhncloudservice.com |
Added Quick Reply, Item List, Talk Biz plugin, Main Link, and Business Form button.
Added the AlimTalk item highlight image registration API.
[URL]
POST /alimtalk/v2.3/appkeys/{appkey}/messages
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
| X-NC-API-IDEMPOTENCY-KEY | String | X | Key used to recognize subsequent retries of the same request If a request is made with the same key for 10 minutes, the request will be failed. |
[Request body]
{
"senderKey": String,
"templateCode": String,
"requestDate": String,
"senderGroupingKey": String,
"createUser": String,
"recipientList": [{
"recipientNo": String,
"templateParameter": {
String: String
},
"resendParameter": {
"isResend" : boolean,
"resendType" : String,
"resendTitle" : String,
"resendContent" : String,
"resendSendNo" : String
},
"buttons": [
{
"ordering": Integer,
"chatExtra": String,
"chatEvent": String,
"relayId": String,
"oneClickId": String,
"productId": String,
"target": String,
"telNumber": String
}
],
"quickReplies": [
"ordering": Integer,
"chatExtra": String,
"chatEvent": String,
"target": String
],
"recipientGroupingKey": String
}],
"messageOption": {
"price": Integer,
"currencyType": String
},
"statsId": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| senderKey | String | O | Sender key(40 characters) |
| templateCode | String | O | Registered delivery template code(up to 20 characters) |
| requestDate | String | X | Date and time of request(yyyy-MM-dd HH:mm) (send immediately, if it is left blank) Can be scheduled up to 60 days later |
| senderGroupingKey | String | X | Sender's grouping key(up to 100 characters) |
| createUser | String | X | Registrant(saved as user UUID when sending from console) |
| recipientList | List | O | List of recipients(up to 1000 persons) |
| - recipientNo | String | O | Recipient number(up to 15 characters) |
| - templateParameter | Object | X | Template parameter (required, if it includes a variable to be replaced for template) |
| -- key | String | X | Replacement key(#{key}) |
| -- value | String | X | Value which is mapped for replacement key |
| - resendParameter | Object | X | Alternative delivery information |
| -- isResend | boolean | X | Whether to resend text, if delivery fails Resent by default, if alternative delivery is set on console. |
| -- resendType | String | X | Alternative delivery type(SMS,LMS) Categorized by the length of template body if value is unavailable. |
| -- resendTitle | String | X | Title of alternative delivery for LMS (resent with PlusFriend ID if value is unavailable.) |
| -- resendContent | String | X | Alternative delivery content (resent with [Message body and web link button name - web link mobile link] if value is unavailable.) |
| -- resendSendNo | String | X | Sender number for alternative delivery (Alternative delivery may fail, if the sender number is not registered on the SMS service.) |
| - buttons | List | X | Additional information for buttons |
| -- ordering | Integer | X | Button sequence(required, if there is a button) |
| -- chatExtra | String | X | Meta information to send for BC(Bot for Consultation) or BT(Bot Transfer) type buttons |
| -- chatEvent | String | X | Bot event name to connect for BT(Bot Transfer) type button |
| -- relayId | String | X | Value passed via the X-Kakao-Plugin-Relay-Id header when the plugin is executed |
| -- oneClickId | String | X | Payment information used in the one click payment plugin |
| -- productId | String | X | Payment information used in the one click payment plugin |
| -- target | String | X | In the case of a web link button, out link used when adding "target":"out" attribute Send with the default in-app link |
| -- telNumber | String | X | When you press the TN (call) type button, the phone number to be transferred |
| - quickReplies | List | X | Quick reply information |
| -- ordering | Integer | X | Quick reply order(required when quick reply exists) |
| -- chatExtra | String | X | Meta information to send for BC(Bot for Consultation) or BT(Bot Transfer) type |
| -- chatEvent | String | X | Bot event name to connect for BT(Bot Transfer) type |
| -- target | String | X | In the case of a web link type, out link used when adding "target":"out" attribute Send with the default in-app link |
| - recipientGroupingKey | String | X | Recipient grouping key(up to 100 characters) |
| messageOption | Object | X | Message Option |
| - price | Integer | X | Price/amount/payment amount included in message(message to be delivered to user)(related to moment advertisement) |
| - currencyType | String | X | Use of international currency codes such as KRW, USD, EUR, which is the currency unit of the price/amount/payment amount included in the message(message to be delivered to the user)(related to moment advertisement) |
| statsId | String | X | Statistics ID(not included in the delivery search conditions, up to 8 characters) |
\s character to the end of the templateTitle and templateItemHighlight.title fields with a substitution and templateParameter, you can apply the strikethrough style[Example]
curl -X POST -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" https://kakaotalk-bizmessage.api.nhncloudservice.com/alimtalk/v2.3/appkeys/{appkey}/messages -d '{"senderKey":"{outgoing key}","templateCode":"{template code}","requestDate":"2018-10-01 00:00","recipientList":[{"recipientNo":"{incoming number}","templateParameter":{"{replacer field}":"{replacement data}"}}]}'
{
"header": {
"resultCode": Integer,
"resultMessage": String,
"isSuccessful": boolean
},
"message": {
"requestId": String,
"senderGroupingKey": String,
"sendResults": [
{
"recipientSeq": Integer,
"recipientNo": String,
"resultCode": Integer,
"resultMessage": String,
"recipientGroupingKey": String
}
]
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
| message | Object | Body area |
| - requestId | String | Request ID |
| - senderGroupingKey | String | Sender's grouping key |
| - sendResults | Object | Result of delivery request |
| -- recipientSeq | Integer | Recipient sequence number |
| -- recipientNo | String | Recipient number |
| -- resultCode | Integer | Result code of delivery request |
| -- resultMessage | String | Result message of delivery request |
| -- recipientGroupingKey | String | Recipient's grouping key |
[URL]
POST /alimtalk/v2.3/appkeys/{appkey}/raw-messages
Content-Type: application/json;charset=UTF-8
[Path Parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
[Request Body]
{
"senderKey": String,
"templateCode": String,
"requestDate": String,
"senderGroupingKey": String,
"createUser": String,
"recipientList": [
{
"recipientNo": String,
"content": String,
"templateTitle" : String,
"templateHeader" : String,
"templateItem" : {
"list" : [{
"title": String,
"description": String
}],
"summary" : {
"title": String,
"description": String
}
},
"templateItemHighlight" : {
"title": String,
"description": String,
"imageUrl": String
},
"templateRepresentLink" : {
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
},
"buttons" : [
{
"ordering": Integer,
"type": String,
"name": String,
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
"chatExtra": String,
"chatEvent": String,
"bizFormId": String,
"pluginId": String,
"relayId": String,
"oneClickId": String,
"productId": String,
"target": String,
"telNumber": String
}
],
"quickReplies" : [
{
"ordering": Integer,
"type": String,
"name": String,
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
"chatExtra": String,
"chatEvent": String,
"bizFormId": String,
"target": String
}
],
"resendParameter": {
"isResend" : boolean,
"resendType" : String,
"resendTitle" : String,
"resendContent" : String,
"resendSendNo" : String
},
"recipientGroupingKey": String
}
],
"messageOption": {
"price": Integer,
"currencyType": String
},
"statsId": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| senderKey | String | O | Sender key(40 characters) |
| templateCode | String | O | Registered delivery template code(up to 20 characters) |
| requestDate | String | X | Date and time of request(yyyy-MM-dd HH:mm) (send immediately, if it is left blank) Can be scheduled up to 60 days later |
| senderGroupingKey | String | X | Sender's grouping key(up to 100 characters) |
| createUser | String | X | Registrant(saved as user UUID when sending from console) |
| recipientList | List | O | List of recipients(up to 1,000 persons) |
| - recipientNo | String | O | Recipient number(up to 15 characters) |
| - content | String | O | Message(up to 1,300 characters) |
| - templateTitle | String | X | Title(up to 50 characters) |
| - templateHeader | String | X | Template header(up to 16 characters) |
| - templateItem | Object | X | Item |
| -- list | List | X | Item list(at least 2, up to 10) |
| --- title | String | X | Title(up to 6 characters) |
| --- description | String | X | Description(up to 23 characters) |
| -- summary | Object | X | Item summary information |
| --- title | String | X | Title(up to 6 characters) |
| --- description | String | X | Description(Only variables and monetary units, numbers, commas, and periods, up to 14 characters) |
| - templateItemHighlight | Object | X | Item highlight |
| --- title | String | X | Title(up to 30 characters, 21 characters with a thumbnail image) |
| --- description | String | X | Description(up to 19 characters, 13 with a thumbnail image) |
| --- imageUrl | String | X | Thumbnail image address |
| - templateRepresentLink | Object | X | Main link |
| -- linkMo | String | X | Mobile web link(up to 500 characters) |
| -- linkPc | String | X | PC web link(up to 500 characters) |
| -- schemeIos | String | X | iOS app link(up to 500 characters) |
| -- schemeAndroid | String | X | Android app link(up to 500 characters) |
| - buttons | List | X | List of buttons(up to 5) |
| -- ordering | Integer | X | Button sequence(required, if there is a button) |
| -- type | String | X | Button type(WL: Web link, AL: App link, DS: Delivery search, BK: Bot keyword, MD: Message delivery, BC: Bot for Consultation, BT: Bot Transfer, AC: Add channel, BF: Business form, P1: Image secure transmission plugin ID, P2: Personal information use plugin ID, P3: One-click payment plugin ID, TN: Call) |
| -- name | String | X | Button name(required if there is a button, up to 14 characters) |
| -- linkMo | String | X | Mobile web link(required for the WL type, up to 500 characters) |
| -- linkPc | String | X | PC web link(optional for the WL type, up to 500 characters) |
| -- schemeIos | String | X | iOS app link(required for the AL type, up to 500 characters) |
| -- schemeAndroid | String | X | Android app link(required for the AL type, up to 500 characters) |
| -- chatExtra | String | X | Meta information to send for BC(Bot for Consultation) or BT(Bot Transfer) type buttons |
| -- chatEvent | String | X | Bot event name to connect for BT(Bot Transfer) type button |
| -- bizFormId | Integer | X | Business form ID(required for BF type) |
| -- pluginId | String | X | Plugin ID(up to 24 characters) |
| -- relayId | String | X | Value passed via the X-Kakao-Plugin-Relay-Id header when the plugin is executed |
| -- oneClickId | String | X | Payment information used in the one click payment plugin |
| -- productId | String | X | Payment information used in the one click payment plugin |
| -- target | String | X | In the case of a web link button, out link used when adding "target":"out" attribute Send with the default in-app link |
| -- telNumber | String | X | When you press the TN (call) button, the phone number to be transferred |
| - quickReplies | List | X | Quick reply list(up to 5) |
| -- ordering | Integer | X | Quick reply order(required when quick reply exists) |
| -- type | String | X | Qucik reply type(WL: Web link, AL: App link, BK: Bot keyword, BC: Bot for Consultation, BT: Bot Transfer, BF: Business form) |
| -- name | String | X | Quick reply name(required when quick reply exists, up to 14 characters) |
| -- linkMo | String | X | Mobile web link(required for the WL type, up to 500 characters) |
| -- linkPc | String | X | PC web link(optional for the WL type, up to 500 characters) |
| -- schemeIos | String | X | iOS app link(required for the AL type, up to 500 characters) |
| -- schemeAndroid | String | X | Android app link(required for the AL type, up to 500 characters) |
| -- pluginId | String | X | Plugin ID(up to 24 characters) |
| -- target | String | X | In the case of a web link type, out link used when adding "target":"out" attribute Send with the default in-app link |
| - resendParameter | Object | X | Alternative delivery information |
| -- isResend | boolean | X | Whether to resend text, if delivery fails Resent by default, if alternative delivery is set on console. |
| -- resendType | String | X | Alternative delivery type(SMS,LMS) Categorized by the length of template message, if value is unavailable. |
| -- resendTitle | String | X | Title of alternative delivery for LMS (resent with PlusFriend ID if value is unavailable.) |
| -- resendContent | String | X | Alternative delivery content (resent with [Message body and web link button name - web link mobile link] if value is unavailable.) |
| -- resendSendNo | String | X | Sender number for alternative delivery (Alternative delivery may fail, if the sender number is not registered on the SMS service.) |
| - recipientGroupingKey | String | X | Recipient's grouping key(up to 100 characters) |
| messageOption | Object | X | Message Option |
| - price | Integer | X | Price/amount/payment amount included in message(message to be delivered to user)(related to moment advertisement) |
| - currencyType | String | X | Use of international currency codes such as KRW, USD, EUR, which is the currency unit of the price/amount/payment amount included in the message(message to be delivered to the user)(related to moment advertisement) |
| statsId | String | X | Statistics ID(not included in the delivery search conditions, up to 8 characters) |
[Example]
curl -X POST -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" https://kakaotalk-bizmessage.api.nhncloudservice.com/alimtalk/v2.3/appkeys/{appkey}/raw-messages -d '{"senderKey":"{outgoing key}","templateCode":"{template code}","requestDate":"2018-10-01 00:00","recipientList":[{"recipientNo":"{incoming number}","content":"{content}","buttons":[{"ordering":"{button sequence}","type":"{button type}","name":"{button name}","linkMo":"{mobile web link}"}]}]}'
{
"header": {
"resultCode": Integer,
"resultMessage": String,
"isSuccessful": boolean
},
"message": {
"requestId": String,
"senderGroupingKey": String,
"sendResults": [
{
"recipientSeq": Integer,
"recipientNo": String,
"resultCode": Integer,
"resultMessage": String,
"recipientGroupingKey": String
}
]
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
| message | Object | Body area |
| - requestId | String | Request ID |
| - senderGroupingKey | String | Sender's grouping key |
| - sendResults | Object | Result of delivery request |
| -- recipientSeq | Integer | Recipient sequence number |
| -- recipientNo | String | Recipient number |
| -- resultCode | Integer | Result code of delivery request |
| -- resultMessage | String | Result message of delivery request |
| -- recipientGroupingKey | String | Recipient's grouping key |
[URL]
GET /alimtalk/v2.3/appkeys/{appkey}/messages
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Typ | Description |
|---|---|---|
| appkey | String | Unique appkey |
[Header]
{
"X-Secret-Key": String
}
| Name | Typ | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
[Query parameter] No. 1 or(2, 3) is conditionally required
| Name | Typ | Required | Description |
|---|---|---|---|
| requestId | String | Conditionally required(no.1) | Request ID |
| startRequestDate | String | Conditionally required(no.2) | Start date of delivery request(yyyy-MM-dd HH:mm) |
| endRequestDate | String | Conditionally required(no.2) | End date of delivery request(yyyy-MM-dd HH:mm) |
| startCreateDate | String | Conditionally required(no.3) | Start date of registration(mm:HH dd-MM-yyyy) |
| endCreateDate | String | Conditionally required(no.3) | End date of registration(mm:HH dd-MM-yyyy) |
| recipientNo | String | X | Recipient number |
| senderKey | String | X | Sender Key |
| templateCode | String | X | Template code |
| senderGroupingKey | String | X | Sender's grouping key |
| recipientGroupingKey | String | X | Recipient's grouping key |
| messageStatus | String | X | Request status(COMPLETED -> successful, FAILED -> failed, CANCEL -> cancelled ) |
| resultCode | String | X | Delivery result(MRC01 -> Successful, MRC02 ->Failed) |
| createUser | String | X | Registrant(saved as user UUID when sending from console) |
| pageNum | Integer | X | Page number(default: 1) |
| pageSize | Integer | X | Number of queries(default: 15, Max: 1000) |
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
},
"messageSearchResultResponse" : {
"messages" : [
{
"requestId" : String,
"recipientSeq" : Integer,
"plusFriendId" : String,
"senderKey" : String,
"templateCode" : String,
"recipientNo" : String,
"content" : String,
"requestDate" : String,
"createDate" : String,
"receiveDate" : String,
"resendStatus" : String,
"resendStatusName" : String,
"messageStatus" : String,
"resultCode" : String,
"resultCodeName" : String,
"createUser" : String,
"senderGroupingKey": String,
"recipientGroupingKey": String
}
],
"totalCount" : Integer
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
| messageSearchResultResponse | Object | Body area |
| - messages | List | List of messages |
| -- requestId | String | Request ID |
| -- recipientSeq | Integer | Recipient sequence number |
| -- plusFriendId | String | PlusFriend ID |
| -- senderKey | String | Sender Key |
| -- templateCode | String | Template code |
| -- recipientNo | String | Recipient number |
| -- content | String | Body message |
| -- requestDate | String | Date and time of request |
| -- createDate | String | Registered date and time |
| -- receiveDate | String | Date and time of receiving |
| -- resendStatus | String | Status code of resending(RSC01, RSC02, RSC03, RSC04, RSC05) ([Refer to Status code of resending table] below) |
| -- resendStatusName | String | Status code name of resending |
| -- messageStatus | String | Request status(COMPLETED -> successful, FAILED -> failed, CANCEL -> cancelled ) |
| -- createUser | String | Registrant(saved as user UUID when sending from console) |
| -- resultCode | String | Result code of receiving |
| -- resultCodeName | String | Result code name of receiving |
| -- senderGroupingKey | String | Sender's grouping key |
| -- recipientGroupingKey | String | Recipient grouping key |
| - totalCount | Integer | Total Count |
[Example]
curl -X GET -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" "https://kakaotalk-bizmessage.api.nhncloudservice.com/alimtalk/v2.3/appkeys/{appkey}/messages?startRequestDate=2018-05-01%20:00&endRequestDate=2018-05-30%20:59"
[URL]
GET /alimtalk/v2.3/appkeys/{appkey}/messages/{requestId}/{recipientSeq}
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
| requestId | String | Request ID |
| recipientSeq | Integer | Recipient sequence number |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
[Example]
curl -X GET -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" "https://kakaotalk-bizmessage.api.nhncloudservice.com/alimtalk/v2.3/appkeys/{appkey}/messages/{requestId}/{recipientSeq}"
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
},
"message" : {
"requestId" : String,
"recipientSeq" : Integer,
"plusFriendId" : String,
"senderKey" : String,
"templateCode" : String,
"recipientNo" : String,
"content" : String,
"templateTitle" : String,
"templateSubtitle" : String,
"templateExtra" : String,
"templateAd" : String,
"templateHeader" : String,
"templateItem" : {
"list" : [{
"title": String,
"description": String
}],
"summary" : {
"title": String,
"description": String
}
},
"templateItemHighlight" : {
"title": String,
"description": String,
"imageUrl": String
},
"templateRepresentLink" : {
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
},
"requestDate" : String,
"receiveDate" : String,
"createDate" : String,
"resendStatus" : String,
"resendStatusName" : String,
"resendResultCode" : String,
"resendRequestId" : String,
"messageStatus" : String,
"resultCode" : String,
"resultCodeName" : String,
"createUser" : String,
"buttons" : [
{
"ordering" : Integer,
"type" : String,
"name" : String,
"linkMo" : String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
"chatExtra": String,
"chatEvent": String,
"bizFormId": String,
"pluginId": String,
"relayId": String,
"oneClickId": String,
"productId": String,
"target": String,
"telNumber": String
}
],
"quickReplies" : [
{
"ordering": Integer,
"type": String,
"name": String,
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
"chatExtra": String,
"chatEvent": String,
"bizFormId": String,
"target": String
}
],
"messageOption": {
"price": Integer,
"currencyType": String
},
"senderGroupingKey": String,
"recipientGroupingKey": String
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
| message | Object | Message |
| - requestId | String | Request ID |
| - recipientSeq | Integer | Recipient sequence number |
| - plusFriendId | String | PlusFriend ID |
| - senderKey | String | Sender Key |
| - templateCode | String | Template code |
| - recipientNo | String | Recipient number |
| - content | String | Body message |
| - templateTitle | String | Template title |
| - templateSubtitle | String | Auxiliary template phrase |
| - templateExtra | String | Additional template information |
| - templateAd | String | Request for consent of receiving within template or simple ad phrases |
| - templateHeader | String | Template header(up to 16 characters) |
| - templateItem | Object | Item |
| -- list | List | Item list(at least 2, up to 10) |
| --- title | String | Title(up to 6 characters) |
| --- description | String | Description(up to 23 characters) |
| -- summary | Object | Item summary information |
| --- title | String | Title(up to 6 characters) |
| --- description | String | Description(Only variables and monetary units, numbers, commas, and periods, up to 14 characters) |
| - templateItemHighlight | Object | Item highlight |
| --- title | String | Title(up to 30 characters, 21 characters with a thumbnail image) |
| --- description | String | Description(up to 19 characters, 13 with a thumbnail image) |
| --- imageUrl | String | Thumbnail image address |
| - templateRepresentLink | Object | Main link |
| -- linkMo | String | Mobile web link(up to 500 characters) |
| -- linkPc | String | PC web link(up to 500 characters) |
| -- schemeIos | String | iOS app link(up to 500 characters) |
| -- schemeAndroid | String | Android app link(up to 500 characters) |
| - requestDate | String | Date and time of request |
| - receiveDate | String | Date and time of receiving |
| - createDate | String | Registered date and time |
| - resendStatus | String | Status code of resending(RSC01, RSC02, RSC03, RSC04, RSC05) ([Refer to Status code of resending table] below) |
| - resendStatusName | String | Status code name of resending |
| - resendResultCode | String | Result code of resending Result code of SMS sending |
| - resendRequestId | String | Resending SMS request ID |
| - messageStatus | String | Request status(COMPLETED -> successful, FAILED -> failed, CANCEL -> cancelled ) |
| - resultCode | String | Result code of receiving |
| - resultCodeName | String | Result code name of receiving |
| - createUser | String | Registrant(saved as user UUID when sending from console) |
| - buttons | List | List of buttons |
| -- ordering | Integer | Button sequence |
| -- type | String | Button type(WL: Web link, AL: App link, DS: Delivery search, BK: Bot keyword, MD: Message delivery, BC: Bot for Consultation, BT: Bot Transfer, AC: Add channel, BF: Business form, P1: Image secure transmission plugin ID, P2: Personal information use plugin ID, P3: One-click payment plugin ID, TN: Call) |
| -- name | String | Button name |
| -- linkMo | String | Mobile web link(required for the WL type) |
| -- linkPc | String | PC web link(optional for the WL type) |
| -- schemeIos | String | iOS app link(required for the AL type) |
| -- schemeAndroid | String | Android app link(required for the AL type) |
| -- chatExtra | String | Meta information to send for BC(Bot for Consultation) or BT(Bot Transfer) type buttons |
| -- chatEvent | String | Bot event name to connect for BT(Bot Transfer) type button |
| -- bizFormId | Integer | Business form ID(required for BF type) |
| -- pluginId | String | Plugin ID(up to 24 characters) |
| -- relayId | String | Value passed via the X-Kakao-Plugin-Relay-Id header when the plugin is executed |
| -- oneClickId | String | Payment information used in the one click payment plugin |
| -- productId | String | Payment information used in the one click payment plugin |
| -- target | String | In the case of a web link button, out link used when adding "target":"out" attribute Send with the default in-app link |
| - quickReplies | List | Quick reply list(up to 5) |
| -- ordering | Integer | Quick reply order(required when quick reply exists) |
| -- type | String | Qucik reply type(WL: Web link, AL: App link, BK: Bot keyword, BC: Bot for Consultation, BT: Bot Transfer, BF: Business form) |
| -- name | String | Quick reply name(required when quick reply exists, up to 14 characters) |
| -- linkMo | String | Mobile web link(required for the WL type, for up to 500 characters) |
| -- linkPc | String | PC web link(required for the WL type, for up to 500 characters) |
| -- schemeIos | String | iOS app link(required for the AL type, for up to 500 characters) |
| -- schemeAndroid | String | Android app link(required for the AL type, for up to 500 characters) |
| -- pluginId | String | Plugin ID(up to 24 characters) |
| -- target | String | In the case of a web link type, out link used when adding "target":"out" attribute Send with the default in-app link |
| -- telNumber | String | X |
| - messageOption | Object | Message Option |
| -- price | Integer | Price/amount/payment amount included in message(message to be delivered to user)(related to moment advertisement) |
| -- currencyType | String | Use of international currency codes such as KRW, USD, EUR, which is the currency unit of the price/amount/payment amount included in the message(message to be delivered to the user)(related to moment advertisement) |
| - senderGroupingKey | String | Sender's grouping key |
| - recipientGroupingKey | String | Recipient's grouping key |
1. Guide for authentication words required to be included for Authentication Messages API
| Category | Authentication Words |
|---|---|
| Authentication Messages | auth, password, verif, にんしょう, 認証, password, authentication |
[URL]
POST /alimtalk/v2.3/appkeys/{appkey}/auth/messages
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
| X-NC-API-IDEMPOTENCY-KEY | String | X | Key used to recognize subsequent retries of the same request If a request is made with the same key for 10 minutes, the request will be failed. |
[Request body] Same as the above
[URL]
POST /alimtalk/v2.3/appkeys/{appkey}/auth/raw-messages
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
| X-NC-API-IDEMPOTENCY-KEY | String | X | Key used to recognize subsequent retries of the same request If a request is made with the same key for 10 minutes, the request will be failed. |
[Request Body] Same as the above
[URL]
GET /alimtalk/v2.3/appkeys/{appkey}/auth/messages
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
[Query parameter] Same as the above
[URL]
GET /alimtalk/v2.3/appkeys/{appkey}/auth/messages/{requestId}/{recipientSeq}
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
| requestId | String | Request ID |
| recipientSeq | Integer | Recipient sequence number |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
[Example]
curl -X GET -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" "https://kakaotalk-bizmessage.api.nhncloudservice.com/alimtalk/v2.3/appkeys/{appkey}/auth/messages/{requestId}/{recipientSeq}"
[URL]
DELETE /alimtalk/v2.3/appkeys/{appkey}/messages/{requestId}
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
| requestId | String | Request ID |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
[Query parameter]
| Name | Type | Required | Description |
|---|---|---|---|
| recipientSeq | String | X | Recipient sequence number (to cancel all deliveries of request ID, if the value is left blank) |
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
[Example]
curl -X DELETE -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" "https://kakaotalk-bizmessage.api.nhncloudservice.com/alimtalk/v2.3/appkeys/{appkey}/messages/{requestId}?recipientSeq=1,2,3"
[URL]
GET /alimtalk/v2.3/appkeys/{appkey}/message-results
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
[Query parameter]
| Name | Type | Required | Description |
|---|---|---|---|
| startUpdateDate | String | O | Start date of querying result updates(yyyy-MM-dd HH:mm) |
| endUpdateDate | String | O | End date of querying result updates(yyyy-MM-dd HH:mm) |
| alimtalkMessageType | String | X | AlimTalk message type(NORMAL, AUTH) |
| pageNum | Integer | X | Page number(default: 1) |
| pageSize | Integer | X | Number of queries(default: 15, Max: 1000) |
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
},
"messages" : [
{
"requestId" : String,
"recipientSeq" : Integer,
"requestDate" : String,
"createDate" : String,
"receiveDate" : String,
"resendStatus" : String,
"resendStatusName" : String,
"resendResultCode" : String,
"resendRequestId" : String,
"messageStatus" : String,
"resultCode" : String,
"resultCodeName" : String
}
]
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
| messages | List | List of messages |
| - requestId | String | Request ID |
| - recipientSeq | Integer | Recipient sequence number |
| - requestDate | String | Date and time of request |
| - createDate | String | Date and time of creation |
| - receiveDate | String | Date and time of receiving |
| - resendStatus | String | Status code of resending(RSC01, RSC02, RSC03, RSC04, RSC05) ([Refer to Status code of resending table] below) |
| - resendStatusName | String | Status code name of resending |
| - resendResultCode | String | Result code of resending Result code of SMS sending |
| - resendRequestId | String | ID requesting of resending SMS |
| - messageStatus | String | Request status(COMPLETED -> Successful, FAILED -> Failed, CANCEL -> Canceled) |
| - resultCode | String | Result code of receiving |
| - resultCodeName | String | Result code name of receiving |
[Example]
curl -X GET -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" "https://kakaotalk-bizmessage.api.nhncloudservice.com/alimtalk/v2.3/appkeys/{appkey}/message-results?startUpdateDate=2018-05-01%20:00&endUpdateDate=2018-05-30%20:59"
[URL]
GET /alimtalk/v2.3/appkeys/{appkey}/message-results/count
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Create it in the console. |
[Query parameter]
| Name | Type | Required | Description |
|---|---|---|---|
| startUpdateDate | String | O | Result update query start time (yyyy-MM-dd HH:mm) |
| endUpdateDate | String | O | Result update query end time (yyyy-MM-dd HH:mm) |
| alimtalkMessageType | String | X | AlimTalk message type (NORMAL, AUTH) |
{
"header": {
"resultCode": Integer,
"resultMessage": String,
"isSuccessful": boolean
},
"totalCount": Integer
}
| Name | Type | Not Null | Description |
|---|---|---|---|
| header | Object | O | Header area |
| - resultCode | Integer | O | Result code |
| - resultMessage | String | O | Result message |
| - isSuccessful | Boolean | O | Successful or not |
| totalCount | Integer | O | Total cases |
[Example]
curl -X GET -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" "https://kakaotalk-bizmessage.api.nhncloudservice.com/alimtalk/v2.3/appkeys/{appkey}/message-results/count?startUpdateDate=2018-05-01%20:00&endUpdateDate=2018-05-30%20:59"
| Name | Description |
|---|---|
| RSC01 | No target of resending |
| RSC02 | Target of resending(If sending fails, resending is performed.) |
| RSC03 | Resending in progress |
| RSC04 | Resending successful |
| RSC05 | Resending failed |
[URL]
GET /alimtalk/v2.3/appkeys/{appKey}/mass-messages
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appKey | String | Unique appkey |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Description |
|---|---|---|
| X-Secret-Key | String | Unique secret key |
[Query parameter] * One of the following is required: requestId, startRequestDate + endRequestDate, or startCreateDate + endCreateDate.
| Name | Type | Max. Length | Required | Description |
|---|---|---|---|---|
| requestId | String | - | O | Request ID |
| startRequestDate | String | - | O | Start date of delivery |
| endRequestDate | String | - | O | End date of delivery |
| startCreateDate | String | - | O | Start date of registration |
| endCreateDate | String | - | O | End date of registration |
| pageNum | optional, Integer | - | X | Page number |
| pageSize | optional, Integer | 1000 | X | Search count |
curl -X GET \
'https://kakaotalk-bizmessage.api.nhncloudservice.com/alimtalk/v2.3/appkeys/{appKey}/'"${APP_KEY}"'/mass-messages?requestId='"${REQUEST_ID}" \
-H 'Content-Type: application/json;charset=UTF-8' \
-H 'X-Secret-Key:{secretkey}'
{
"header": {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
},
"body": {
"messages": [
{
"requestId": String,
"requestDate": String,
"plusFriendId": String,
"senderKey": String,
"templateCode": String,
"masterStatusCode": String,
"content": String,
"fileId": String,
"autoSendYn": String,
"statsId": String,
"createDate": String,
"createUser": String
}
],
"totalCount": Integer
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
| body | Object | Body area |
| - messages | Object | List of messages |
| -- requestId | String | Request ID |
| -- requestDate | String | Date of request |
| -- createDate | String | Date of creation |
| -- createUser | String | Date of creation |
| -- plusFriendId | String | PlusFriend ID |
| -- senderKey | String | Sender key(40 characters) |
| -- masterStatusCode | String | Mass delivery status code(WAIT, READY, SENDREADY, SENDWAIT, SENDING, COMPLETE, CANCEL, FAIL) |
| -- content | String | Content |
| -- fileId | String | Attachment ID |
| -- templateCode | String | Template code(up to 20 characters) |
| -- autoSendYn | String | Auto sending or not |
| -- statsId | String | Statistics ID |
| -- createDate | String | Date of creation |
| -- createUser | String | User who created the request(saved as user UUID when sending from console) |
| - totalCount | Integer | Total count |
[URL]
GET /alimtalk/v2.3/appkeys/{appKey}/mass-messages/{requestId}/recipients
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appKey | String | Unique appkey |
| requestId | String | Request ID |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Description |
|---|---|---|
| X-Secret-Key | String | Unique secret key |
| Name | Type | Max. Length | Required | Description |
|---|---|---|---|---|
| requestId | String | - | O | Request ID |
| startRequestDate | String | - | X | Start date of delivery |
| endRequestDate | String | - | X | End date of delivery |
| startCreateDate | String | - | X | Start date of registration |
| endCreateDate | String | - | X | End date of registration |
| pageNum | optional, Integer | - | X | Page number |
| pageSize | optional, Integer | 1000 | X | Search count |
curl -X GET \
'https://kakaotalk-bizmessage.api.nhncloudservice.com/alimtalk/v2.3/appkeys/{appKey}/'"${APP_KEY}"'/mass-messages/recipients?requestId='"${REQUEST_ID}" \
-H 'Content-Type: application/json;charset=UTF-8' \
-H 'X-Secret-Key:{secretkey}'
{
"header": {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
},
"body": {
"recipients": [
{
"requestId": String,
"recipientSeq": Integer,
"recipientNo": String,
"requestDate": String,
"receiveDate": String,
"messageStatus": String,
"resultCode": String,
"resultCodeName": String
}
],
"totalCount": Integer
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
| body | Object | Body area |
| - messages | Object | List of messages |
| -- requestId | String | Request ID |
| -- recipientSeq | String | Recipient sequence number |
| -- recipientNo | String | Recipient number |
| -- requestDate | String | Date of request |
| -- receiveDate | String | Date of receiving |
| -- messageStatus | String | Message status |
| -- resultCode | String | Result code |
| -- resultCodeName | String | Result code content |
| - totalCount | Integer | Total count |
[URL]
GET /alimtalk/v2.3/appkeys/{appKey}/mass-messages/{requestId}/recipients/{recipientSeq}
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appKey | String | Unique appkey |
| requestId | String | Request ID |
| recipientSeq | String | Recipient sequence |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Description |
|---|---|---|
| X-Secret-Key | String | Unique secret key |
| Name | Type | Max. Length | Required | Description |
|---|---|---|---|---|
| requestId | String | - | O | Request ID |
| startRequestDate | String | - | X | Start date of delivery |
| endRequestDate | String | - | X | End date of delivery |
| startCreateDate | String | - | X | Start date of registration |
| endCreateDate | String | - | X | End date of registration |
| pageNum | optional, Integer | - | X | Page number |
| pageSize | optional, Integer | 1000 | X | Search count |
curl -X GET \
'https://kakaotalk-bizmessage.api.nhncloudservice.com/alimtalk/v2.3/appkeys/{appKey}/'"${APP_KEY}"'/mass-messages/{requestId}/recipients/1" \
-H 'Content-Type: application/json;charset=UTF-8' \
-H 'X-Secret-Key:{secretkey}'
{
"header": {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
},
"body": {
"requestId": String,
"recipientSeq": Integer,
"plusFriendId": String,
"senderKey": String,
"templateCode": String,
"recipientNo": String,
"content": String,
"templateTitle": String,
"templateSubtitle": String,
"templateExtra": String,
"templateAd": String,
"templateHeader" : String,
"templateItem" : {
"list" : [{
"title": String,
"description": String
}],
"summary" : {
"title": String,
"description": String
}
},
"templateItemHighlight" : {
"title": String,
"description": String,
"imageUrl": String
},
"templateRepresentLink" : {
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
},
"requestDate": String,
"receiveDate": String,
"createDate": String,
"resendStatus": String,
"resendStatusName": String,
"resendResultCode": String,
"resendRequestId": String,
"messageStatus": String,
"resultCode": String,
"resultCodeName": String,
"createUser": String,
"buttons" : [
{
"ordering" : Integer,
"type" : String,
"name" : String,
"linkMo" : String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
"chatExtra": String,
"chatEvent": String,
"bizFormId": Integer,
"pluginId": String,
"relayId": String,
"oneClickId": String,
"productId": String,
"target": String,
"telNumber": String
}
],
"quickReplies" : [
{
"ordering": Integer,
"type": String,
"name": String,
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
"chatExtra": String,
"chatEvent": String,
"bizFormId": Integer,
"target": String
}
],
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
| body | Object | Body area |
| - requestId | String | Request ID |
| - recipientSeq | String | Recipient sequence number |
| - plusFriendId | String | PlusFriend ID |
| - senderKey | String | Sender ID |
| - templateCode | String | Template code(up to 20 characters) |
| - recipientNo | String | Recipient number |
| - content | String | Content |
| - tempalteTitle | String | Template title(No more than 50 characters, Android: To be abbreviated if it exceeds 2 lines with more than 23 characters, iOS: To be abbreviated if it exceeds 2 lines with more than 27 characters) |
| - templateSubtitle | String | Auxiliary template phrase(No more than 50 characters, Android: To be abbreviated if it exceeds 18 characters, iOS: To be abbreviated if it exceeds 21 characters) |
| - templateExtra | String | Additional template information(Required, if template message type is[Ad Included/Mixed Purposes]) |
| - templateAd | String | Request for consent of receiving within template or simple ad phrases |
| - templateHeader | String | Template header(up to 16 characters) |
| - templateItem | Object | Item |
| -- list | List | Item list(at least 2, up to 10) |
| --- title | String | Title(up to 6 characters) |
| --- description | String | Description(up to 23 characters) |
| -- summary | Object | Item summary information |
| --- title | String | Title(up to 6 characters) |
| --- description | String | Description(Only variables and monetary units, numbers, commas, and periods, up to 14 characters) |
| - templateItemHighlight | Object | Item highlight |
| --- title | String | Title(up to 30 characters, 21 characters with a thumbnail image) |
| --- description | String | Description(up to 19 characters, 13 with a thumbnail image) |
| --- imageUrl | String | Thumbnail image address |
| - templateRepresentLink | Object | Main link |
| -- linkMo | String | Mobile web link(up to 500 characters) |
| -- linkPc | String | PC web link(up to 500 characters) |
| -- schemeIos | String | iOS app link(up to 500 characters) |
| -- schemeAndroid | String | Android app link(up to 500 characters) |
| - requestDate | String | Date of request |
| - receiveDate | String | Date of receiving |
| - createDate | String | Date of creation |
| - resendStatus | String | Status code of resending(RSC01, RSC02, RSC03, RSC04, RSC05) ([Refer to Status code of resending table] below) |
| - resendStatusName | String | Status name of resending |
| - resendResultCode | String | Result code of resending Result code of SMS sending |
| - resendRequestId | String | Resending SMS request ID |
| - messageStatus | String | Mass recipient delivery status code(READY, COMPLETED, FAILED, CANCEL) |
| - resultCode | String | Result status code |
| - resultCodeName | String | Result status name |
| - createUser | String | User who created the request(saved as user UUID when sending from console) |
| - buttons | List | List of buttons |
| -- ordering | Integer | Button sequence |
| -- type | String | Button type(WL: Web link, AL: App link, DS: Delivery search, BK: Bot keyword, MD: Message delivery, BC: Bot for Consultation, BT: Bot Transfer, AC: Add channel, BF: Business form, P1: Image secure transmission plugin ID, P2: Personal information use plugin ID, P3: One-click payment plugin ID, TN: Call) |
| -- name | String | Button name |
| -- linkMo | String | Mobile web link(required for the WL type) |
| -- linkPc | String | PC web link(optional for the WL type) |
| -- schemeIos | String | iOS app link(required for the AL type) |
| -- schemeAndroid | String | Android app link(required for the AL type) |
| -- chatExtra | String | Meta information to send for BC(Bot for Consultation) or BT(Bot Transfer) type buttons |
| -- chatEvent | String | Bot event name to connect for BT(Bot Transfer) type button |
| -- bizFormId | Integer | Business form ID(required for BF type) |
| -- pluginId | String | Plugin ID(up to 24 characters) |
| -- relayId | String | Value passed via the X-Kakao-Plugin-Relay-Id header when the plugin is executed |
| -- oneClickId | String | Payment information used in the one click payment plugin |
| -- productId | String | Payment information used in the one click payment plugin |
| -- target | String | In the case of a web link button, out link used when adding "target":"out" attribute Send with the default in-app link |
| -- telNumber | String | X |
| - quickReplies | List | Quick reply list(up to 5) |
| -- ordering | Integer | Quick reply order(required when quick reply exists) |
| -- type | String | Qucik reply type(WL: Web link, AL: App link, BK: Bot keyword, BC: Bot for Consultation, BT: Bot Transfer, BF: Business form) |
| -- name | String | Quick reply name(required when quick reply exists, up to 14 characters) |
| -- linkMo | String | Mobile web link(required for the WL type, up to 500 characters) |
| -- linkPc | String | PC web link(optional for the WL type, up to 500 characters) |
| -- schemeIos | String | iOS app link(required for the AL type, up to 500 characters) |
| -- schemeAndroid | String | Android app link(required for the AL type, up to 500 characters) |
| -- bizFormId | String | Plugin ID(up to 24 characters) |
| -- target | String | In the case of a web link type, out link used when adding "target":"out" attribute Send with the default in-app link |
[URL]
GET /alimtalk/v2.3/appkeys/{appkey}/template/categories
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
},
"categories": [
{
"name": String,
"subCategories": [
{
"code": String,
"name": String,
"groupName": String,
"inclusion": String,
"exclusion": String
}
]
}
]
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
| categories | List | List of categories |
| - name | String | Category name |
| - subCategories | List | List of subcategories |
| -- code | String | Category code(Used when registering/modifying templates) |
| -- name | String | Category name |
| -- groupName | String | Category group name |
| -- inclusion | String | Description of templates to which the category applies |
| -- exclusion | String | Description of templates to which the category does not apply |
[URL]
POST /alimtalk/v2.3/appkeys/{appkey}/senders/{senderKey}/templates
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
| senderKey | String | Sender Key |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
[Request Body]
{
"templateCode" : String,
"templateName" : String,
"templateContent" : String,
"templateMessageType": String,
"templateEmphasizeType" : String,
"templateExtra": String,
"templateTitle" : String,
"templateSubtitle" : String,
"templateHeader" : String,
"templateItem" : {
"list" : [{
"title": String,
"description": String
}],
"summary" : {
"title": String,
"description": String
}
},
"templateItemHighlight" : {
"title": String,
"description": String,
"imageUrl": String
},
"templateRepresentLink" : {
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
},
"templateImageName" : String,
"templateImageUrl" : String,
"securityFlag": Boolean,
"categoryCode": String,
"buttons" : [
{
"ordering" : Integer,
"type" : String,
"name" : String,
"linkMo" : String,
"linkPc" : String,
"schemeIos" : String,
"schemeAndroid" : String
"bizFormId" : Integer,
"pluginId": String,
"telNumber": String
}
],
"quickReplies" : [
{
"ordering" : Integer,
"type" : String,
"name" : String,
"linkMo" : String,
"linkPc" : String,
"schemeIos" : String,
"schemeAndroid" : String
"bizFormId" : Integer
"pluginId": String,
"telNumber": String
}
]
}
| Name | Type | Required | Description |
|---|---|---|---|
| templateCode | String | O | Template code(up to 20 characters) |
| templateName | String | O | Template name(up to 150 characters) |
| templateContent | String | O | Template body(up to 1,300 characters) |
| templateMessageType | String | X | Types of template message(BA: Basic, EX: Extra Information, AD: Ad Included, MI: Mixed Purposes, default: Basic) |
| templateEmphasizeType | String | X | Types of emphasized template(NONE: Basic, TEXT: Emphasized, IMAGE: Image type, ITEM_LIST: item list type, default:NONE) - TEXT: templateTitle and templateSubtitle fields are required IMAGE: templateImageName and templateImageUrl fields are required ITEM_LIST: at least one of the following is required: image, header, item highlight, or item list. |
| templateExtra | String | X | Additional template information(Required, if template message type is[Ad Included/Mixed Purposes]) |
| tempalteTitle | String | X | Template title(No more than 50 characters, Android: To be abbreviated if it exceeds 2 lines with more than 23 characters, iOS: To be abbreviated if it exceeds 2 lines with more than 27 characters) |
| templateSubtitle | String | X | Auxiliary template phrase(No more than 50 characters, Android: To be abbreviated if it exceeds 18 characters, iOS: To be abbreviated if it exceeds 21 characters) |
| templateHeader | String | X | Template header(up to 16 characters) |
| templateItem | Object | X | Item |
| - list | List | X | Item list(at least 2, up to 10) |
| -- title | String | X | Title(up to 6 characters) |
| -- description | String | X | Description(up to 23 characters) |
| - summary | Object | X | Item summary information |
| -- title | String | X | Title(up to 6 characters) |
| -- description | String | X | Description(Only variables and monetary units, numbers, commas, and periods, up to 14 characters) |
| templateItemHighlight | Object | X | Item highlight |
| - title | String | X | Title(up to 30 characters, 21 characters with a thumbnail image) |
| - description | String | X | Description(up to 19 characters, 13 with a thumbnail image) |
| - imageUrl | String | X | Thumbnail image address |
| templateRepresentLink | Object | X | Main link |
| - linkMo | String | X | Mobile web link(up to 500 characters) |
| - linkPc | String | X | PC web link(up to 500 characters) |
| - schemeIos | String | X | iOS app link(up to 500 characters) |
| - schemeAndroid | String | X | Android app link(up to 500 characters) |
| templateImageName | String | X | Image name(name of uploaded file) |
| templateImageUrl | String | X | Image URL |
| securityFlag | Boolean | X | Security template Set for security messages such as OTP If set, message text is unexposed to all devices except for the main device at the time of sending(default: false) |
| categoryCode | String | X | Template category code(Refer to API to View Template Category, default: 999999) For other categories, screened by the lowest priority. |
| buttons | List | X | List of buttons(up to 5) |
| -ordering | Integer | X | Button sequence(1~5) |
| - type | String | X | Button type(WL: Web link, AL: App link, DS: Delivery search, BK: Bot keyword, MD: Message delivery, BC: Bot for Consultation, BT: Bot Transfer, AC: Add channel, BF: Business form, P1: Image secure transmission plugin ID, P2: Personal information use plugin ID, P3: One-click payment plugin ID, TN: Call) |
| - name | String | X | Button name(required, if there's a button, up to 14 characters) |
| - linkMo | String | X | Mobile web link(required for the WL type, up to 500 characters) |
| - linkPc | String | X | PC web link(optional for the WL type, up to 500 characters) |
| - schemeIos | String | X | iOS app link(required for the AL type, up to 500 characters) |
| - schemeAndroid | String | X | Android app link(required for the AL type, up to 500 characters) |
| - bizFormId | Integer | X | Business form ID(required for BF type) |
| - pluginId | String | X | Plugin ID(up to 24 characters) |
| -- telNumber | String | X | When you press the TN (call) button, the phone number to be transferred |
| quickReplies | List | X | Quick reply list(up to 5) |
| - ordering | Integer | X | Quick reply order(required when quick reply exists) |
| - type | String | X | Qucik reply type(WL: Web link, AL: App link, BK: Bot keyword, BC: Bot for Consultation, BT: Bot Transfer, BF: Business form) |
| - name | String | X | Quick reply name(required when quick reply exists, up to 14 characters) |
| - linkMo | String | X | Mobile web link(required for the WL type, up to 500 characters) |
| - linkPc | String | X | PC web link(optional for the WL type, up to 500 characters) |
| - schemeIos | String | X | iOS app link(required for the AL type, up to 500 characters) |
| - schemeAndroid | String | X | Android app link(required for the AL type, up to 500 characters) |
| - bizFormId | Integer | X | Business form ID(required for BF type) |
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
[URL]
PUT /alimtalk/v2.3/appkeys/{appkey}/senders/{senderKey}/templates/{templateCode}
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
| senderKey | String | Sender Key |
| templateCode | String | Template code |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
[Request Body]
{
"templateName" : String,
"templateContent" : String,
"templateMessageType": String,
"templateEmphasizeType" : String,
"templateExtra": String,
"templateTitle" : String,
"templateSubtitle" : String,
"templateHeader" : String,
"templateItem" : {
"list" : [{
"title": String,
"description": String
}],
"summary" : {
"title": String,
"description": String
}
},
"templateItemHighlight" : {
"title": String,
"description": String,
"imageUrl": String
},
"templateRepresentLink" : {
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
},
"templateImageName" : String,
"templateImageUrl" : String,
"securityFlag": Boolean,
"categoryCode": String,
"buttons" : [
{
"ordering" : Integer,
"type" : String,
"name" : String,
"linkMo" : String,
"linkPc" : String,
"schemeIos" : String,
"schemeAndroid" : String
"bizFormId" : Integer,
"pluginId": String,
"telNumber": String
}
],
"quickReplies" : [
{
"ordering" : Integer,
"type" : String,
"name" : String,
"linkMo" : String,
"linkPc" : String,
"schemeIos" : String,
"schemeAndroid" : String
"bizFormId" : Integer
}
]
}
| Name | Type | Required | Description |
|---|---|---|---|
| templateName | String | O | Template name(up to 150 characters) |
| templateContent | String | O | Template body(up to 1,300 characters) |
| templateMessageType | String | X | Types of template message(BA: Basic, EX: Extra Information, AD: Ad Included, MI: Mixed Purposes, default: Basic) |
| templateEmphasizeType | String | X | Types of emphasized template(NONE: Basic, TEXT: Emphasized, IMAGE: Image type, default:NONE) - TEXT: templateTitle and templateSubtitle fields are required IMAGE: templateImageName and templateImageUrl fields are required |
| templateExtra | String | X | Additional template information(Required, if template message type is[Ad Included/Mixed Purposes]) |
| tempalteTitle | String | X | Template title(No more than 50 characters, Android: To be abbreviated if it exceeds 2 lines with more than 23 characters, iOS: To be abbreviated if it exceeds 2 lines with more than 27 characters) |
| templateSubtitle | String | X | Auxiliary template phrase(No more than 50 characters, Android: To be abbreviated if it exceeds 18 characters, iOS: To be abbreviated if it exceeds 21 characters) |
| templateHeader | String | X | Template header(up to 16 characters) |
| templateItem | Object | X | Item |
| - list | List | X | Item list(at least 2, up to 10) |
| -- title | String | X | Title(up to 6 characters) |
| -- description | String | X | Description(up to 23 characters) |
| - summary | Object | X | Item summary information |
| -- title | String | X | Title(up to 6 characters) |
| -- description | String | X | Description(Only variables and monetary units, numbers, commas, and periods, up to 14 characters) |
| templateItemHighlight | Object | X | Item highlight |
| - title | String | X | Title(up to 30 characters, 21 characters with a thumbnail image) |
| - description | String | X | Description(up to 19 characters, 13 with a thumbnail image) |
| - imageUrl | String | X | Thumbnail image address |
| templateRepresentLink | Object | X | Main link |
| - linkMo | String | X | Mobile web link(up to 500 characters) |
| - linkPc | String | X | PC web link(up to 500 characters) |
| - schemeIos | String | X | iOS app link(up to 500 characters) |
| - schemeAndroid | String | X | Android app link(up to 500 characters) |
| templateImageName | String | X | Image name(name of uploaded file) |
| templateImageUrl | String | X | Image URL |
| securityFlag | Boolean | X | Security template Set for security messages such as OTP If set, message text is unexposed to all devices except for the main device at the time of sending(default: false) |
| categoryCode | String | X | Template category code(Refer to API to View Template Category, default: 999999) For other categories, screened by the lowest priority. |
| buttons | List | X | List of buttons(up to 5) |
| - ordering | Integer | X | Button sequence(1~5) |
| - type | String | X | Button type(WL: Web link, AL: App link, DS: Delivery search, BK: Bot keyword, MD: Message delivery, BC: Bot for Consultation, BT: Bot Transfer, AC: Add channel, BF: Business form, P1: Image secure transmission plugin ID, P2: Personal information use plugin ID, P3: One-click payment plugin ID, TN: Call) |
| - name | String | X | Button name(required, if there's a button, up to 14 characters) |
| - linkMo | String | X | Mobile web link(required for the WL type, up to 500 characters) |
| - linkPc | String | X | PC web link(optional for the WL type, up to 500 characters) |
| - schemeIos | String | X | iOS app link(required for the AL type, up to 500 characters) |
| - schemeAndroid | String | X | Android app link(required for the AL type, up to 500 characters) |
| - bizFormId | Integer | X | Business form ID(required for BF type) |
| - pluginId | String | X | Plugin ID(up to 24 characters) |
| quickReplies | List | X | Quick reply list(up to 5) |
| - ordering | Integer | X | Quick reply order(required when quick reply exists) |
| - type | String | X | Qucik reply type(WL: Web link, AL: App link, BK: Bot keyword, BC: Bot for Consultation, BT: Bot Transfer, BF: Business form) |
| - name | String | X | Quick reply name(required when quick reply exists, up to 14 characters) |
| - linkMo | String | X | Mobile web link(required for the WL type, up to 500 characters) |
| - linkPc | String | X | PC web link(optional for the WL type, up to 500 characters) |
| - schemeIos | String | X | iOS app link(required for the AL type, up to 500 characters) |
| - schemeAndroid | String | X | Android app link(required for the AL type, up to 500 characters) |
| - bizFormId | Integer | X | Business form ID(required for BF type) |
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
[URL]
DELETE /alimtalk/v2.3/appkeys/{appkey}/senders/{senderKey}/templates/{templateCode}
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
| senderKey | String | Sender Key |
| templateCode | String | Template code |
[Header]
{
"X-Secret-Key": String
}
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
[URL]
POST /alimtalk/v2.3/appkeys/{appkey}/senders/{senderKey}/templates/{templateCode}/comments
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
| senderKey | String | Sender Key |
| templateCode | String | Template code |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
[Request Body]
{
"comment" : String
}
| Name | Type | Required | Description |
|---|---|---|---|
| comment | String | O | Inquiries |
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
[URL]
POST /alimtalk/v2.3/appkeys/{appkey}/senders/{senderKey}/templates/{templateCode}/comments_file
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
| senderKey | String | Sender Key |
| templateCode | String | Template code |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
[Request Body]
{
"comment" : String,
"attachments" : File
}
| Name | Type | Required | Description |
|---|---|---|---|
| comment | String | O | Inquiries |
| attachments | List |
X | List of Attachment(Up to 10) - Supported extensions ( .png, .jpg, .jpeg, .gif, .pdf, .hwp, .doc, .docx ) - Maximum size of each individual file 50mb - Maximum total size of files that can be uploaded 100mb |
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
[URL]
PUT /alimtalk/v2.3/appkeys/{appKey}/senders/{senderKey}/templates/{templateCode}/convert-add-channel
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
| senderKey | String | Sender Key |
| templateCode | String | Template code |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
[URL]
GET /alimtalk/v2.3/appkeys/{appkey}/senders/{senderKey}/templates/{templateCode}
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique app key |
| senderKey | String | Sender key |
| templateCode | String | Template code |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be generated from the console. |
| Template Status Code | Description |
|---|---|
| TSC01 | Requested |
| TSC02 | Reviewing |
| TSC03 | Approved |
| TSC04 | Rejected |
[Example]
curl -X GET -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" "https://kakaotalk-bizmessage.api.nhncloudservice.com/alimtalk/v2.3/appkeys/{appkey}/senders/{senderKey}/templates/{templateCode}"
{
"header": {
"resultCode": Integer,
"resultMessage": String,
"isSuccessful": boolean
},
"templates": {
"plusFriendId": String,
"senderKey": String,
"plusFriendType": String,
"templateCode": String,
"kakaoTemplateCode": String,
"templateName": String,
"templateMessageType": String,
"templateEmphasizeType": String,
"templateContent": String,
"templateExtra": String,
"templateAd": String,
"templateTitle": String,
"templateSubtitle": String,
"templateHeader": String,
"templateItem": {
"list": [{
"title": String,
"description": String
}],
"summary": {
"title": String,
"description": String
}
},
"templateItemHighlight": {
"title": String,
"description": String,
"imageUrl": String
},
"templateRepresentLink": {
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
},
"templateImageName": String,
"templateImageUrl": String,
"buttons": [
{
"ordering": Integer,
"type": String,
"name": String,
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
"bizFormId": Integer,
"pluginId": String,
"telNumber": String
}
],
"quickReplies": [
{
"ordering": Integer,
"type": String,
"name": String,
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
"bizFormId": Integer
}
],
"comments": [
{
"id": Integer,
"content": String,
"userName": String,
"createdAt": String,
"attachment": [{
"originalFileName": String,
"filePath": String
}],
"status": String
}
],
"status": String,
"statusName": String,
"securityFlag": Boolean,
"categoryCode": String,
"block": Boolean,
"dormant": Boolean,
"createDate": String,
"updateDate": String
}
}
| Name | Type | Not Null | Description |
|---|---|---|---|
| header | Object | O | Header area |
| - resultCode | Integer | O | Result code |
| - resultMessage | String | O | Result message |
| - isSuccessful | Boolean | O | Success status |
| templates | Object | X | Template list |
| - plusFriendId | String | O | KakaoTalk channel search ID or sender profile group name |
| - senderKey | String | O | Sender key |
| - plusFriendType | String | O | Plus Friend type (NORMAL, GROUP) |
| - templateCode | String | O | Template code |
| - kakaoTemplateCode | String | O | Original template code |
| - templateName | String | O | Template name |
| - templateMessageType | String | X | Template message type (BA: basic, EX: additional information, AD: channel addition, MI: complex) |
| - templateEmphasizeType | String | X | Template highlight type (NONE: basic, TEXT: highlight, IMAGE: image, ITEM_LIST: item list) |
| - templateContent | String | X | Template body |
| - templateExtra | String | X | Template additional information |
| - templateAd | String | X | Request for opt-in or simple advertising text within the template |
| - templateTitle | String | X | Template title |
| - templateSubtitle | String | X | Template additional text |
| - templateHeader | String | X | Template header (maximum 16 characters) |
| - templateItem | Object | X | Item |
| -- list | List | X | List of items (minimum 2, maximum 10) |
| --- title | String | X | Title (maximum 6 characters) |
| --- description | String | X | Description (maximum 23 characters) |
| -- summary | Object | X | Item summary information |
| --- title | String | X | Title (maximum 6 characters) |
| --- description | String | X | Description (variables, currency units, numbers, commas, and periods only, up to 14 characters) |
| - templateItemHighlight | Object | X | Item highlight |
| -- title | String | X | Title (up to 30 characters, 21 characters if thumbnail image available) |
| -- description | String | X | Description (up to 19 characters, 13 characters if thumbnail image available) |
| -- imageUrl | String | X | Thumbnail image address |
| - templateRepresentLink | Object | X | Representative link |
| -- linkMo | String | X | Mobile web link (up to 500 characters) |
| -- linkPc | String | X | PC web link (up to 500 characters) |
| -- schemeIos | String | X | iOS app link (up to 500 characters) |
| -- schemeAndroid | String | X | Android app link (up to 500 characters) |
| - templateImageName | String | X | Image name (uploaded file name) |
| - templateImageUrl | String | X | Image URL |
| - buttons | List | X | Button list |
| -- ordering | Integer | X | Button order (1 to 5) |
| -- type | String | X | Button type (WL: Web Link, AL: App Link, DS: Delivery Tracking, BK: Bot Keyword, MD: Message Forwarding, BC: Chat Conversion, BT: Bot Conversion, AC: Add Channel, BF: Business Form, P1: Image Security Transmission Plugin ID, P2: Personal Information Use Plugin ID, P3: One-Click Payment Plugin ID, TN: Call) |
| -- name | String | X | Button name |
| -- linkMo | String | X | Mobile web link (required field for WL type) |
| -- linkPc | String | X | PC web link (optional field for WL type) |
| -- schemeIos | String | X | iOS app link (required field for AL type) |
| -- schemeAndroid | String | X | Android app link (required field for AL type) |
| -- bizFormId | Integer | X | Business form ID (required for BF type) |
| -- pluginId | String | X | Plugin ID (up to 24 characters) |
| -- telNumber | String | X | Phone number to be sent when TN (Call) type button is pressed |
| - quickReplies | List | X | Quick link list (up to 5) |
| -- ordering | Integer | X | Quick link order (required if there is a quick link) |
| -- type | String | X | Direct link type (WL: Web link, AL: App link, BK: Bot keyword, BC: Conversion to consultation chat, BT: Conversion to bot, BF: Business form) |
| -- name | String | X | Direct link name (required if direct link is available, up to 14 characters) |
| -- linkMo | String | X | Mobile web link (required field for WL type, up to 500 characters) |
| -- linkPc | String | X | PC web link (optional field for WL type, up to 500 characters) |
| -- schemeIos | String | X | iOS app link (required field for AL type, up to 500 characters) |
| -- schemeAndroid | String | X | Android app link (required field for AL type, up to 500 characters) |
| -- bizFormId | Integer | X | Business Form ID (required for BF type) |
| - comments | List | X | Review result |
| -- id | Integer | X | Inquiry ID |
| -- content | String | X | Inquiry content |
| -- userName | String | X | Author |
| -- createAt | String | O | Registration date |
| -- attachment | List | X | Attachment |
| --- originalFileName | String | X | Attached file name |
| --- filePath | String | X | Attached file path |
| -- status | String | X | Comment status (INQ: Inquiry, APR: Approved, REJ: Rejected, REP: Reply, REQ: Under Review) |
| - status | String | O | Template status |
| - statusName | String | X | Template status name |
| - securityFlag | Boolean | X | Secure template |
| - categoryCode | String | X | Template category code |
| - block | Boolean | X | Blocked |
| - dormant | Boolean | X | Dormant |
| - createDate | String | O | Created at |
| - updateDate | String | X | Modified at |
[URL]
GET /alimtalk/v2.3/appkeys/{appkey}/senders/{senderKey}/templates
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
| senderKey | String | Sender Key |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
[Query parameter]
| Name | Type | Required | Description |
|---|---|---|---|
| templateCode | String | X | Template code |
| templateName | String | X | Template name |
| templateStatus | String | X | Template status code |
| pageNum | Integer | X | Page number(default:1) |
| pageSize | Integer | X | Number of queries(default: 15, Max: 1000) |
| Template status code | Description |
|---|---|
| TSC01 | Request |
| TSC02 | Inspecting |
| TSC03 | Approved |
| TSC04 | Rejected |
[Example]
curl -X GET -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" "https://kakaotalk-bizmessage.api.nhncloudservice.com/alimtalk/v2.3/appkeys/{appkey}/senders/{senderKey}/templates?templateStatus={template status code}"
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
},
"templateListResponse": {
"templates": [
{
"plusFriendId": String,
"senderKey": String,
"plusFriendType": String,
"templateCode": String,
"templateName": String,
"templateMessageType" : String,
"templateEmphasizeType": String,
"templateContent": String,
"templateExtra" : String,
"templateAd" : String,
"templateTitle" : String,
"templateSubtitle" : String,
"templateHeader" : String,
"templateItem" : {
"list" : [{
"title": String,
"description": String
}],
"summary" : {
"title": String,
"description": String
}
},
"templateItemHighlight" : {
"title": String,
"description": String,
"imageUrl": String
},
"templateRepresentLink" : {
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
},
"templateImageName" : String,
"templateImageUrl" : String,
"buttons": [
{
"ordering":Integer,
"type": String,
"name": String,
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
"telNumber": String
}
],
"quickReplies" : [
{
"ordering" : Integer,
"type" : String,
"name" : String,
"linkMo" : String,
"linkPc" : String,
"schemeIos" : String,
"schemeAndroid" : String
"bizFormId" : Integer
}
],
"comments": [
{
"id": Integer,
"content": String,
"userName": String,
"createdAt": String,
"attachment": [{
"originalFileName": String,
"filePath": String
}],
"status": String
}
],
"status": String,
"statusName": String,
"securityFlag": Boolean,
"categoryCode": String,
"createDate": String,
"updateDate": String
}
],
"totalCount": Integer
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
| templateListResponse | Object | Body area |
| - templates | List | Template list |
| -- plusFriendId | String | PlusFriend ID |
| -- senderKey | String | Sender Key |
| -- plusFriendType | String | PlusFriend type(NORMAL, GROUP) |
| -- templateCode | String | Template code |
| -- kakaoTemplateCode | String | Kakao's origin template code |
| -- templateName | String | Template name |
| -- templateMessageType | String | Types of template message(BA: Basic, EX: Extra Information, AD: Ad Included, MI: Mixed Purposes) |
| -- templateEmphasizeType | String | Types of emphasized template(NONE: Basic, TEXT: Emphasized, IMAGE: Image type, default:NONE) |
| -- templateContent | String | Template body |
| -- templateExtra | String | Additional template information |
| -- templateAd | String | Request for consent of receiving within template or simple ad phrases |
| -- tempalteTitle | String | Template title |
| -- templateSubtitle | String | Auxiliary template phrase |
| - templateHeader | String | Template header(up to 16 characters) |
| - templateItem | Object | Item |
| -- list | List | Item list(at least 2, up to 10) |
| --- title | String | Title(up to 6 characters) |
| --- description | String | Description(up to 23 characters) |
| -- summary | Object | Item summary information |
| --- title | String | Title(up to 6 characters) |
| --- description | String | Description(Only variables and monetary units, numbers, commas, and periods, up to 14 characters) |
| - templateItemHighlight | Object | Item highlight |
| -- title | String | Title(up to 30 characters, 21 characters with a thumbnail image) |
| -- description | String | Description(up to 19 characters, 13 with a thumbnail image) |
| -- imageUrl | String | Thumbnail image address |
| -templateRepresentLink | Object | Main link |
| -- linkMo | String | Mobile web link(up to 500 characters) |
| -- linkPc | String | PC web link(up to 500 characters) |
| -- schemeIos | String | iOS app link(up to 500 characters) |
| -- schemeAndroid | String | Android app link(up to 500 characters) |
| -- templateImageName | String | Image name(name of uploaded file) |
| -- templateImageUrl | String | Image URL |
| -- buttons | List | List of buttons |
| --- ordering | Integer | Button sequence(1~5) |
| --- type | String | Button type(WL: Web link, AL: App link, DS: Delivery search, BK: Bot keyword, MD: Message delivery, BC: Bot for Consultation, BT: Bot Transfer, AC: Add channel, BF: Business form, P1: Image secure transmission plugin ID, P2: Personal information use plugin ID, P3: One-click payment plugin ID, TN: Call) |
| --- name | String | Button name |
| --- linkMo | String | Mobile web link(required for the WL type) |
| --- linkPc | String | PC web link(optional for the WL type) |
| --- schemeIos | String | iOS app link(required for the AL type) |
| --- schemeAndroid | String | Android app link(required for the AL type) |
| --- bizFormId | Integer | X |
| --- pluginId | String | X |
| --- telNumber | String | X |
| -- quickReplies | List | X |
| --- ordering | Integer | X |
| --- type | String | X |
| --- name | String | X |
| --- linkMo | String | X |
| --- linkPc | String | X |
| --- schemeIos | String | X |
| --- schemeAndroid | String | X |
| --- bizFormId | Integer | X |
| -- comments | List | Inspection result |
| --- id | Integer | Inquiry ID |
| --- content | String | Inquiries |
| --- userName | String | Creator |
| --- createAt | String | Date of registration |
| --- attachment | List | Attachment |
| ---- originalFileName | String | Attachment file name |
| ---- filePath | String | Attachment file path |
| --- status | String | Comment status(INQ: Inquired, APR: Approved, REJ: Rejected, REP: Replied, REQ: Under inspection) |
| -- status | String | Template status |
| -- statusName | String | Template status name |
| -- securityFlag | Boolean | Whether it is a security template |
| -- categoryCode | String | Template category code |
| -- createDate | String | Date of creation |
| -- updateDate | String | Date of modification |
| - totalCount | Integer | Total count |
[URL]
GET /alimtalk/v2.3/appkeys/{appkey}/senders/{senderKey}/templates/{templateCode}/modifications
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
| senderKey | String | Sender Key |
| templateCode | String | Template code |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
[Example]
curl -X GET -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" "https://kakaotalk-bizmessage.api.nhncloudservice.com/alimtalk/v2.3/appkeys/{appkey}/senders/{senderKey}/templates/{templateCode}/modifications"
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
},
"templateModificationsResponse": {
"templates": [
{
"plusFriendId": String,
"senderKey": String,
"plusFriendType": String,
"templateCode": String,
"templateName": String,
"templateMessageType" : String,
"templateEmphasizeType": String,
"templateContent": String,
"templateExtra" : String,
"templateAd" : String,
"templateTitle" : String,
"templateSubtitle" : String,
"templateHeader" : String,
"templateItem" : {
"list" : [{
"title": String,
"description": String
}],
"summary" : {
"title": String,
"description": String
}
},
"templateItemHighlight" : {
"title": String,
"description": String,
"imageUrl": String
},
"templateRepresentLink" : {
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
},
"templateImageName" : String,
"templateImageUrl" : String,
"buttons": [
{
"ordering":Integer,
"type": String,
"name": String,
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String
}
],
"comments": [
{
"id": Integer,
"content": String,
"userName": String,
"createdAt": String,
"attachment": [{
"originalFileName": String,
"filePath": String
}],
"status": String
}
],
"status": String,
"statusName": String,
"securityFlag": Boolean,
"categoryCode": String,
"activated": boolean,
"createDate": String,
"updateDate": String
}
],
"totalCount": Integer
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
| templateModificationsResponse | Object | Body area |
| - templates | List | Template list |
| -- plusFriendId | String | PlusFriend ID |
| -- senderKey | String | Sender Key |
| -- plusFriendType | String | PlusFriend type(NORMAL, GROUP) |
| -- templateCode | String | Template code |
| -- templateName | String | Template name |
| -- templateMessageType | String | Types of template message(BA: Basic, EX: Extra Information, AD: Ad Included, MI: Mixed Purposes) |
| -- templateEmphasizeType | String | Types of emphasized template(NONE: Basic, TEXT: Emphasized, IMAGE: Image type, default:NONE) |
| -- templateContent | String | Template body |
| -- templateExtra | String | Additional template information |
| -- templateAd | String | Request for consent of receiving within template or simple ad phrases |
| -- tempalteTitle | String | Template title |
| -- templateSubtitle | String | Auxiliary template phrase |
| - templateHeader | String | Template header(up to 16 characters) |
| - templateItem | Object | Item |
| -- list | List | Item list(at least 2, up to 10) |
| --- title | String | Title(up to 6 characters) |
| --- description | String | Description(up to 23 characters) |
| -- summary | Object | Item summary information |
| --- title | String | Title(up to 6 characters) |
| --- description | String | Description(Only variables and monetary units, numbers, commas, and periods, up to 14 characters) |
| - templateItemHighlight | Object | Item highlight |
| -- title | String | Title(up to 30 characters, 21 characters with a thumbnail image) |
| -- description | String | Description(up to 19 characters, 13 with a thumbnail image) |
| -- imageUrl | String | Thumbnail image address |
| -templateRepresentLink | Object | Main link |
| -- linkMo | String | Mobile web link(up to 500 characters) |
| -- linkPc | String | PC web link(up to 500 characters) |
| -- schemeIos | String | iOS app link(up to 500 characters) |
| -- schemeAndroid | String | Android app link(up to 500 characters) |
| -- templateImageName | String | Image name(name of uploaded file) |
| -- templateImageUrl | String | Image URL |
| -- buttons | List | List of buttons |
| --- ordering | Integer | Button sequence(1~5) |
| --- type | String | Button type(WL: Web link, AL: App link, DS: Delivery search, BK: Bot keyword, MD: Message delivery, BC: Bot for Consultation, BT: Bot Transfer, AC: Add channel, BF: Business form, P1: Image secure transmission plugin ID, P2: Personal information use plugin ID, P3: One-click payment plugin ID, TN: Call) |
| --- name | String | Button name |
| --- linkMo | String | Mobile web link(required for the WL type) |
| --- linkPc | String | PC web link(optional for the WL type) |
| --- schemeIos | String | iOS app link(required for the AL type) |
| --- schemeAndroid | String | Android app link(required for the AL type) |
| -- comments | List | Inspection result |
| --- id | Integer | Inquiry ID |
| --- content | String | Inquiries |
| --- userName | String | Creator |
| --- createAt | String | Date of registration |
| --- attachment | List | Attachment |
| ---- originalFileName | String | Attachment file name |
| ---- filePath | String | Attachment file path |
| --- status | String | Comment status(INQ: Inquired, APR: Approved, REJ: Rejected, REP: Replied) |
| -- status | String | Template status |
| -- statusName | String | Template status name |
| -- securityFlag | Boolean | Whether it is a security template |
| -- categoryCode | String | Template category code |
| -- activated | Boolean | Activated or not |
| -- createDate | String | Date of creation |
| -- updateDate | String | Date of modification |
| - totalCount | Integer | Total count |
[URL]
POST /alimtalk/v2.3/appkeys/{appkey}/template-image
Content-Type: multipart/form-data
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
[Request parameter]
| Name | Type | Required | Description |
|---|---|---|---|
| file | File | O | Template image file |
[Example]
curl -X POST -H "Content-Type: multipart/form-data" -H "X-Secret-Key:{secretkey}" "https://kakaotalk-bizmessage.api.nhncloudservice.com/alimtalk/v2.3/appkeys/{appkey}/template-image" -F "file=@alimtalk-template-image.jpeg"
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
},
"templateImage" {
"templateImageName": String,
"templateImageUrl": String
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
| templateImage | Object | Body area |
| - templateImageName | String | Image name(name of uploaded file) |
| - templateImageUrl | String | Image URL |
[URL]
POST /alimtalk/v2.3/appkeys/{appkey}/template-image/item-highlight
Content-Type: multipart/form-data
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
[Request parameter]
| Name | Type | Required | Description |
|---|---|---|---|
| file | File | O | Template image file |
[Example]
curl -X POST -H "Content-Type: multipart/form-data" -H "X-Secret-Key:{secretkey}" "https://kakaotalk-bizmessage.api.nhncloudservice.com/alimtalk/v2.3/appkeys/{appkey}/template-image/item-highlight" -F "file=@alimtalk-template-image.jpeg"
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
},
"templateImage" {
"templateImageName": String,
"templateImageUrl": String
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
| templateImage | Object | Body area |
| - templateImageName | String | Image name(name of uploaded file) |
| - templateImageUrl | String | Image URL |
[URL]
POST /alimtalk/v2.3/appkeys/{appkey}/senders/{senderKey}/plugins
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
| senderKey | String | Sender Key |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
[Request Body]
{
"pluginType" : String,
"pluginId" : String,
"callbackUrl" : String
}
| Name | Type | Required | Description |
|---|---|---|---|
| pluginType | String | O | Plugin type(SECURE_IMAGE: secure image transmission, ONE_TIME_PROFILE: personal information use) |
| pluginId | String | O | Plugin ID |
| callbackUrl | String | O | The callback URL to receive when the plugin button is clicked |
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
[URL]
PUT /alimtalk/v2.3/appkeys/{appkey}/senders/{senderKey}/plugins/{pluginId}
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
| senderKey | String | Sender Key |
| pluginId | String | Plugin ID |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
[Request Body]
{
"pluginType" : String,
"callbackUrl" : String
}
| Name | Type | Required | Description |
|---|---|---|---|
| pluginType | String | O | Plugin type(SECURE_IMAGE: secure image transmission, ONE_TIME_PROFILE: personal information use) |
| callbackUrl | String | O | The callback URL to receive when the plugin button is clicked |
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
[URL]
DELETE /alimtalk/v2.3/appkeys/{appkey}/senders/{senderKey}/plugins/{pluginId}
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
| senderKey | String | Sender Key |
| pluginId | String | Plugin ID |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
}
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
[URL]
PUT /alimtalk/v2.3/appkeys/{appkey}/senders/{senderKey}/plugins
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
| senderKey | String | Sender Key |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
},
"plugins" : [
{
"pluginId": String,
"pluginType": String,
"pluginTypeName": String,
"callbackUrl": String,
"modifiable": boolean,
"deletable": boolean
}
]
}
| Name | Type | Description |
|---|---|---|
| header | Object | Header area |
| - resultCode | Integer | Result code |
| - resultMessage | String | Result message |
| - isSuccessful | Boolean | Successful or not |
| plugins | List | Plugin list |
| - pluginId | String | Plugin ID |
| - pluginType | String | Plugin type(SECURE_IMAGE: secure image transmission, ONE_TIME_PROFILE: personal information use) |
| - pluginTypeName | String | Plugin name |
| - callbackUrl | String | The callback URL to receive when the plugin button is clicked |
| - modifiable | Boolean | Modifiable |
| - deletable | Boolean | Deletable |
[URL]
POST /alimtalk/v2.3/appkeys/{appkey}/failback/appkey
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. |
[Request body]
{
"resendAppKey": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| resendAppKey | String | O | SMS service appkey to set for alternative delivery |
[Example]
curl -X POST -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" https://kakaotalk-bizmessage.api.nhncloudservice.com/alimtalk/v2.3/appkeys/{appkey}/failback/appkey -d '{"resendAppKey": "smsAppKey"}
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
}
}
[URL]
POST /alimtalk/v2.3/appkeys/{appkey}/failback
Content-Type: application/json;charset=UTF-8
[Path parameter]
| Name | Type | Description |
|---|---|---|
| appkey | String | Unique appkey |
[Header]
{
"X-Secret-Key": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| X-Secret-Key | String | O | Can be created on console. [Reference |
[Request body]
{
"senderKey": String,
"isResend": Boolean,
"resendSendNo": String
}
| Name | Type | Required | Description |
|---|---|---|---|
| senderKey | String | O | Sender Key |
| isResend | Boolean | O | Whether to resend text, if delivery fails Resent by default, if alternative delivery is set on console. |
| resendSendNo | String | O | Sender number for alternative delivery (Alternative delivery may fail, if the sender number is not registered on the SMS service.) |
[Example]
curl -X POST -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" https://kakaotalk-bizmessage.api.nhncloudservice.com/alimtalk/v2.3/appkeys/{appkey}/failback/appkey -d '{"senderKey": "0be23c29de88d6888798aeda57062516354d74ba","isResend": true,"resendSendNo": "01012341234" }
{
"header" : {
"resultCode" : Integer,
"resultMessage" : String,
"isSuccessful" : boolean
}
}