Friend Talk API
- Print
- PDF
Friend Talk API
- Print
- PDF
Article Summary
Share feedback
Thanks for sharing your feedback!
Basic information
API URL
https://sens.apigw.ntruss.com/friendtalk/v2
Go to SENS FriendTalk API Swagger
API Header
Item | Mandatory | Description |
---|---|---|
Content-Type | Mandatory | Specifies the request Body Content Type as application/json (POST) |
x-ncp-apigw-timestamp | Mandatory | Time elapsed in milliseconds since January 1, 1970, 00:00:00 UTC If the time difference compared to the API Gateway server is more than 5 minutes, then the request is considered invalid. |
x-ncp-iam-access-key | Mandatory | This is the Access Key ID issued by the portal or Sub Account |
x-ncp-apigw-signature-v2 | Mandatory | Signature of the Body in the previous example encrypted with SecretKey mapped to Access Key ID HmacSHA256 is used as the HMAC encryption algorithm. |
Go to the creation guide of NAVER Cloud Platform authentication key and Signature
Messages
Send messages
Sends a message.
Request URL
POST https://sens.apigw.ntruss.com/friendtalk/v2/services/{serviceId}/messages
Content-Type: application/json; charset=utf-8
x-ncp-apigw-timestamp: {Timestamp}
x-ncp-iam-access-key: {Sub Account Access Key}
x-ncp-apigw-signature-v2: {API Gateway Signature}
Path Variables
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
serviceId | Mandatory | String | Service ID | Service ID issued when registering the project |
Headers
Request Body
{
"plusFriendId":"string",
"messages":[
{
"isAd":"string",
"countryCode":"string",
"to":"string",
"content":"string",
"buttons":[
{
"type":"string",
"name":"string",
"linkMobile":"string",
"linkPc":"string",
"schemeIos":"string",
"schemeAndroid":"string"
}
],
"image":{
"imageId":"string",
"imageLink":"string"
},
"useSmsFailover": "boolean",
"failoverConfig": {
"type": "string",
"from": "string",
"subject": "string",
"content": "string"
}
}
],
"reserveTime": "yyyy-MM-dd HH:mm",
"reserveTimeZone": "string"
}
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
plusFriendId | Mandatory | String | Name of KakaoTalk Channel ((formerly) Plus Friend ID) | |
messages | Mandatory | Object | Message information | See items below (messages.XXX) Up to 100 |
messages.isAd | Optional | Boolean | Ad message status | default: true If sending as an ad message (isAd: true), When operating SMS Failover, you must comply with the obligation to mark the transmission of advertisement messages. |
messages.countryCode | Optional | String | Recipient's country code | default: 82 |
messages.to | Mandatory | String | Recipient's number | |
messages.content | Mandatory | String | FriendTalk message content | |
messages.buttons | Optional | Array of Object | FriendTalk message button | See Button information |
messages.buttons.type | Mandatory | String | Button type | See the following template button information. |
messages.buttons.name | Mandatory | String | Button name | See the following template button information. |
messages.image | Optional | Object | Image information | See Upload image |
messages.image.imageId | Mandatory | String | ID of uploaded image | |
messages.image.imageLink | Mandatory | String | Image link | |
messages.useSmsFailover | Optional | Boolean | SMS Failover use status | Available only on KakaoTalk Channels where Failover is set. Default: follows the Failover settings of KakaoTalk Channel. |
messages.failoverConfig | Optional | Object | Failover settings | See the following items. |
messages.failoverConfig.type | Optional | String | Failover SMS message type | SMS or LMS Default: automatically applied according to the content length (SMS if 90 bytes or less, LMS if it exceeds 90 bytes) |
messages.failoverConfig.from | Optional | String | Failover SMS caller ID | Default: caller ID selected when setting up Failover Failover does not work when using an unauthorized caller ID. |
messages.failoverConfig.subject | Optional | String | Failover SMS title | Used when operating in LMS type Default: KakaoTalk Channel name |
messages.failoverConfig.content | Optional | String | Failover SMS content | Default: FriendTalk message content (excluding button) |
reserveTime | Optional | String | Reserved date and time | Reserved date and time for message delivery (yyyy-MM-dd HH:mm) |
reserveTimeZone | Optional | String | Time zone of reserved date and time | Time zone of reserved date and time (default: Asia/Seoul) * List of supported time zones * Use the TZ database name value |
- If you are using the Mandatory field in the request Body, blanks are not allowed. (Only in case of addition)
- SMS Failover operates when the Biz Message reception result code shows not successful. For codes with the prefix "B," SMS replacement cannot be sent through the Failover function.
Status | Error text | Desc |
---|---|---|
0000 | - | Normal delivery |
3022 | NoSendAvailableTimeException | Outside the time for sending messages (FriendTalk/marketing messages can be sent from 08:00 to 20:50.) |
Bxxx | See the Biz Message reception result code below | See the Biz Message reception result code below |
- When sending advertising messages, you can use the 080 call block service of the configured SMS service in SMS Failover.
- SMS Failover will fail if the 080 call block service is not available for the configured SMS service.
- If you use
failoverConfig.content
without specifying it separately, the advertisement marking is automatically inserted during SMS Failover.[Advertisement]{message content} Free call block number 08012345678
- If you specify
failoverConfig.content
separately, you do not need to insert advertisement marking. When sending an ad message, you must add it yourself. - If sending SMS messages that do not comply with the advertisement marking obligation, an explanation may be required later.
- When sending a wide image, you can send text + link button (1 pc) + image.
- If adding more than 2 buttons, message delivery fails. (Invalid parameter request)
- Texts are limited to 76 characters.
Button information
Type | Name | Mandatory item |
---|---|---|
WL | Web link | linkMobile, linkPc (URL starting with http:// or https://) |
AL | App link | schemeIos, schemeAndroid |
BK | Bot keyword | |
MD | Send message | |
AC | Add Channel |
Response Body
{
"requestId":"string",
"requestTime":"string",
"statusCode":"string",
"statusName":"string",
"messages":[
{
"messageId":"string",
"countryCode":"string",
"to":"string",
"content":"string",
"requestStatusCode":"string",
"requestStatusName":"string",
"requestStatusDesc":"string",
"useSmsFailover":"boolean"
}
]
}
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
requestId | Mandatory | String | Delivery request ID | |
requestTime | Mandatory | DateTime | Delivery request time | yyyy-MM-dd'T'HH:mm:ss.SSS |
statusCode | Mandatory | String | Request status code | 202 - Success Others - Failure * Follows the HTTP Status specification. |
statusName | Mandatory | String | Request status name | success - Success processing - Being processed reserved - Being reserved fail - Failure |
messages.messageId | Mandatory | String | Message ID | |
messages.countryCode | Optional | String | Recipient's country code | default: 82 |
messages.to | Mandatory | String | Recipient's number | |
messages.content | Mandatory | String | FriendTalk message content | |
messages.requestStatusCode | Mandatory | String | Delivery request status code | A000 - Success Other codes - Failure (reason for failure specified in the Desc category) |
messages.requestStatusName | Mandatory | String | Delivery request status name | success - Success fail - Failure |
messages.requestStatusDesc | Mandatory | String | Delivery request status content | |
messages.useSmsFailover | Mandatory | Boolean | SMS Failover use status |
Response Status
HTTP Status | Desc |
---|---|
202 | Accepted (delivery request completed) |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
500 | Internal Server Error |
Search for message delivery request
Search for the message delivery request.
Request URL
GET https://sens.apigw.ntruss.com/friendtalk/v2/services/{serviceId}/messages?requestId=
x-ncp-apigw-timestamp: {Timestamp}
x-ncp-iam-access-key: {Sub Account Access Key}
x-ncp-apigw-signature-v2: {API Gateway Signature}
Path Variables
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
serviceId | Mandatory | String | Service ID | Service ID issued when registering the project |
Parameters
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
requestId | Mandatory | String | Request ID | Delivery request ID |
plusFriendId | Mandatory | String | Kakao Channel | Registered Channel name |
requestStartTime | Mandatory | String | Start time of search | yyyy-MM-dd'T'HH:mm:ss |
requestEndTime | Mandatory | String | End time of search | yyyy-MM-dd'T'HH:mm:ss |
completeStartTime | Mandatory | String | Start time to complete delivery | yyyy-MM-dd'T'HH:mm:ss |
completeEndTime | Mandatory | String | End time to complete delivery | yyyy-MM-dd'T'HH:mm:ss |
messageId | Optional | String | Message ID | |
requestStatusName | Optional | String | Request status | success, fail |
messageStatusName | Optional | String | Request status | success, processing, fail |
to | Optional | String | Message received number | Numbers without hyphens (-) |
pageIndex | Optional | Integer | Page number | default: 0 |
pageSize | Optional | Integer | Page size | default: 20, max: 100 When viewing including requestId, default: 100 |
Note
- History of delivering messages can only be viewed within the last 30 days.
- Either requestId or requestStartTime + requestEndTime or completeStartTime + completeEndTime is required.
- requestStartTime + requestEndTime and completeStartTime + completeEndTime cannot be used simultaneously.
- The query range from requestStartTime to requestEndTime is limited to a maximum of 31 days.
- The query range from completeStartTime to completeEndTime is limited to a maximum of 24 hours.
- If requestId is not included in the query conditions, plusFriendId is required.
Headers
Request Body
N/A
Response Body
{
"requestId": "string",
"statusCode": "string",
"statusName": "string",
"messages": [
{
"requestTime": "string",
"messageId": "string",
"countryCode": "string",
"to": "string",
"content": "string",
"plusFriendId": "string",
"completeTime": "string",
"requestStatusCode": "string",
"requestStatusName": "string",
"requestStatusDesc": "string",
"messageStatusCode": "string",
"messageStatusName": "string",
"messageStatusDesc": "string",
"isWide": "boolean",
"isAd": "boolean",
"useSmsFailover": "boolean",
"failover": {
"smsServiceId": "string",
"requestId": "string",
"messageId": "string",
"requestStatusCode": "string",
"requestStatusName": "string",
"requestStatusDesc": "string",
"messageStatus": "string",
"messageStatusCode": "string",
"messageStatusName": "string",
"messageStatusDesc": "string"
}
}
],
"pageSize": "integer",
"pageIndex": "integer",
"itemCount": "integer",
"hasMore": "boolean"
}
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
requestId | Optional | String | Delivery request ID | Only exposed when you query with requestId |
statusCode | Mandatory | String | Request status code | 202 - Success Others - Failure * Follows the HTTP Status specification. |
statusName | Mandatory | String | Request status name | success - Success processing - Being delivered reserved - Being reserved fail - Failure |
messages.requestTime | Mandatory | DateTime | Delivery request time | yyyy-MM-dd'T'HH:mm:ss.SSS |
messages.messageId | Mandatory | String | Message ID | |
messages.countryCode | Optional | String | Recipient's country code | default: 82 |
messages.to | Mandatory | String | Recipient's number | |
messages.content | Mandatory | String | FriendTalk message content | |
messages.plusFriendId | Mandatory | String | Name of KakaoTalk Channel ((formerly) Plus Friend ID) | |
messages.completeTime | Optional | DateTime | Delivery reporting (processing completion) time | yyyy-MM-dd'T'HH:mm:ss |
messages.requestStatusCode | Mandatory | String | Delivery request status code | A000 - Success Other codes - Failure (reason for failure specified in the Desc category) |
messages.requestStatusName | Mandatory | String | Delivery request status name | success - Success fail - Failure |
messages.requestStatusDesc | Mandatory | String | Delivery request status content | |
messages.messageStatusCode | Mandatory | String | Delivery result status code | 0000 - Success Other codes - Failure (reason for failure specified in the Desc category) |
messages.messageStatusName | Mandatory | String | Delivery result status name | success - Success processing - Being processed * Being processed in the message delivery server after successful sending request * Fail to search messageCode, messageDesc fail - Failure |
messages.messageStatusDesc | Mandatory | String | Delivery result status description | |
messages.isWide | Mandatory | Boolean | Wide status | |
messages.isAd | Mandatory | Boolean | Ad message status | |
messages.useSmsFailover | Mandatory | Boolean | SMS Failover use status | |
messages.failover | Optional | Object | SMS Failover | |
messages.failover.smsServiceId | Optional | String | SMS Failover service ID | |
messages.failover.requestId | Optional | String | SMS Failover delivery request ID | |
messages.failover.messageId | Optional | String | SMS Failover delivery message ID | |
messages.failover.requestStatusCode | Optional | String | SMS Failover delivery request status code | See the Errors table. |
messages.failover.requestStatusName | Optional | String | SMS Failover delivery request status name | success - Success fail - Failure |
messages.failover.requestStatusDesc | Optional | String | SMS Failover delivery request status content | |
messages.failover.messageStatus | Optional | String | SMS Failover delivery request status | READY: ready PROCESSING: being processed COMPLETED: processing completed |
messages.failover.messageStatusCode | Optional | String | SMS Failover delivery device received status result code | See the Errors table. |
messages.failover.messageStatusName | Optional | String | SMS Failover delivery device received result name | |
messages.failover.messageStatusDesc | Optional | String | SMS Failover delivery device received content | |
pageSize | Mandatory | Integer | Page size | |
pageIndex | Mandatory | Integer | Page index (starting from 0) | |
itemCount | Mandatory | Integer | The number of messages within the viewed page | |
hasMore | Mandatory | Boolean | Indicates whether there is a next page |
Response Status
HTTP Status | Desc |
---|---|
200 | OK (successfully searched) |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
500 | Internal Server Error |
Search for message delivery result
Search for the message delivery result.
Request URL
GET https://sens.apigw.ntruss.com/friendtalk/v2/services/{serviceId}/messages/{messageId}
x-ncp-apigw-timestamp: {Timestamp}
x-ncp-iam-access-key: {Sub Account Access Key}
x-ncp-apigw-signature-v2: {API Gateway Signature}
Path Variables
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
serviceId | Mandatory | String | Service ID | Service ID issued when registering the project |
messageId | Mandatory | String | Message ID | Message identifier that is returned when the message is sent |
Headers
Request Body
N/A
Response Body
{
"messageId":"string",
"requestId":"string",
"requestTime":"string",
"completeTime":"string",
"plusFriendId":"string",
"countryCode":"string",
"to":"string",
"content":"string",
"requestStatusCode":"string",
"requestStatusName":"string",
"requestStatusDesc":"string",
"messageStatusCode":"string",
"messageStatusName":"string",
"messageStatusDesc":"string",
"isWide":"boolean",
"isAd":"boolean",
"imageId":"string",
"imageName":"string",
"imageUrl":"string",
"imageLink":"string",
"useSmsFailover":"boolean",
"failover": {
"smsServiceId":"string",
"requestId":"string",
"requestStatusCode":"string",
"requestStatusName":"string",
"requestStatusDesc":"string",
"messageId":"string",
"messageStatus":"string",
"messageStatusCode":"string",
"messageStatusName":"string",
"messageStatusDesc":"string"
}
}
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
messageId | Mandatory | String | Message ID | |
requestId | Mandatory | String | Delivery request ID | |
requestTime | Mandatory | DateTime | Delivery request time | yyyy-MM-dd'T'HH:mm:ss.SSS |
completeTime | Optional | DateTime | Delivery reporting (processing completion) time | yyyy-MM-dd'T'HH:mm:ss |
plusFriendId | Mandatory | String | Name of KakaoTalk Channel ((formerly) Plus Friend ID) | |
templateCode | Mandatory | String | Template code | |
countryCode | Optional | String | Recipient's country code | default: 82 |
to | Mandatory | String | Recipient's number | |
content | Mandatory | String | FriendTalk message content | |
requestStatusCode | Mandatory | String | Delivery request status code | A000 - Success Other codes - Failure (reason for failure specified in the Desc category) |
requestStatusName | Mandatory | String | Delivery request status name | success - Success fail - Failure |
requestStatusDesc | Mandatory | String | Delivery request status content | |
messageStatusCode | Mandatory | String | Delivery result status code | 0000 - Success Other codes - Failure (reason for failure specified in the Desc category) |
messageStatusName | Mandatory | String | Delivery result status name | success - Success processing - Being processed * Being processed in the message delivery server after successful sending request * Fail to search messageCode, messageDesc fail - Failure |
messageStatusDesc | Mandatory | String | Delivery result status description | |
isWide | Mandatory | Boolean | Wide status | |
isAd | Mandatory | Boolean | Ad message status | |
imageId | Optional | String | Image ID | |
imageName | Optional | String | Image name | |
imageUrl | Optional | String | Image URL | |
imageLink | Optional | String | Image link | |
useSmsFailover | Mandatory | Boolean | SMS Failover use status | |
failover | Optional | Object | SMS Failover use status | |
failover.smsServiceId | Optional | String | SMS Failover service ID | |
failover.requestId | Optional | String | SMS Failover delivery request ID | |
failover.requestStatusCode | Optional | String | SMS Failover delivery request status code | See the Errors table. |
failover.requestStatusName | Optional | String | SMS Failover delivery request status name | success - Success fail - Failure |
failover.requestStatusDesc | Optional | String | SMS Failover delivery request status content | |
failover.messageId | Optional | String | SMS Failover delivery message ID | |
failover.messageStatus | Optional | String | SMS Failover delivery request status | READY: ready PROCESSING: being processed COMPLETED: processing completed |
failover.messageStatusCode | Optional | String | SMS Failover delivery device received status result code | See the Errors table. |
failover.messageStatusName | Optional | String | SMS Failover delivery device received result name | |
failover.messageStatusDesc | Optional | String | SMS Failover delivery device received content |
Failover request status code
requestStatusCode | Desc |
---|---|
0 | Succeeded |
E4000 | Failover setting is not valid. |
E4001 | Failover settings information is omitted. |
E4002 | Failover SMS service is not configured. |
E4003 | Failover SMS type (SMS, LMS) is not configured. |
E4004 | Failover SMS caller ID is not configured. |
E4005 | Failover SMS title is not configured. |
E4006 | Failover SMS content is not set. |
E4007 | Failover SMS recipient number is not set. |
E4008 | Failover SMS service is not available. |
E4009 | Failover SMS caller ID is not authenticated. |
E4010 | Failover SMS free 080 unsubscribing service is not available. |
E4999 | Failover settings parsing error (need to contact Customer Support) |
E5000 | Internal error (need to contact Customer Support) |
Response Status
HTTP Status | Desc |
---|---|
200 | OK (successfully searched) |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
500 | Internal Server Error |
Reserved message
Search for reserved message status
Search for the reservation status of message delivery.
GET https://sens.apigw.ntruss.com/friendtalk/v2/services/{serviceId}/reservations/{reserveId}/reserve-status
x-ncp-apigw-timestamp: {Timestamp}
x-ncp-iam-access-key: {Sub Account Access Key}
x-ncp-apigw-signature-v2: {API Gateway Signature}
Path Variables
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
serviceId | Mandatory | String | Service ID | Service ID issued when registering the project |
reserveId | Mandatory | String | Reserved message ID | Message identifier that is returned when searching for the reserved delivery requests (requestId) |
Headers
Request Body
N/A
Response Body
{
"reserveId": "string",
"reserveTimeZone": "string",
"reserveTime": "string",
"reserveStatus": "string"
}
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
reserveId | Mandatory | String | Reserved message ID | Message identifier that is returned when searching for the reserved delivery requests (requestId) |
reserveTime | Mandatory | String | Reserved date and time | Reserved date and time for message delivery (yyyy-MM-dd HH:mm) |
reserveTimeZone | Mandatory | String | Time zone of reserved date and time | Time zone of reserved date and time (default: Asia/Seoul) * List of supported time zones * Use the TZ database name value |
reserveStatus | Mandatory | String | Reserved status | READY - Waiting to be sent PROCESSING - Requesting to send CANCELED - Delivery canceled FAIL - Delivery request failure DONE - Successful delivery request STALE - Delivery request failure (timeout) |
Cancel reserved message
Cancel the reserved message delivery.
DELETE https://sens.apigw.ntruss.com/friendtalk/v2/services/{serviceId}/reservations/{reserveId}
x-ncp-apigw-timestamp: {Timestamp}
x-ncp-iam-access-key: {Sub Account Access Key}
x-ncp-apigw-signature-v2: {API Gateway Signature}
Path Variables
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
serviceId | Mandatory | String | Service ID | Service ID issued when registering the project |
reserveId | Mandatory | String | Reserved message ID | Message identifier that is returned when searching for the reserved delivery requests (requestId) |
Headers
Request Body
N/A
Response Body
N/A
Response Status
HTTP Status | Desc |
---|---|
204 | No Content (successfully deleted) |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
500 | Internal Server Error |
KakaoTalk Channel
Search Channel
Search KakaoTalk Channels.
GET https://sens.apigw.ntruss.com/friendtalk/v2/services/{serviceId}/channels
x-ncp-apigw-timestamp: {Timestamp}
x-ncp-iam-access-key: {Sub Account Access Key}
x-ncp-apigw-signature-v2: {API Gateway Signature}
Path Variables
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
serviceId | Mandatory | String | Service ID | Service ID issued when registering the project |
Parameters
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
pageSize | Optional | Integer | Page size | Default: 100 (Only numbers between 1 and 100 can be entered.) |
pageIndex | Optional | Integer | Page index | default: 0 |
Headers
Request Body
N/A
Response Body
[
{
"createTime": "string",
"updateTime": "string",
"serviceId": "string",
"channelId": "string",
"channelName": "string",
"channelStatus": "string",
"useSmsFailover": "boolean"
}
]
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
createTime | Mandatory | String | Created time | format: LocalDateTime |
updateTime | Optional | String | Edited time | format: LocalDateTime |
serviceId | Mandatory | String | Service ID | Service ID issued when registering the project |
channelId | Mandatory | String | KakaoTalk Channel ID | |
channelName | Mandatory | String | KakaoTalk Channel name | |
channelStatus | Mandatory | String | KakaoTalk Channel status | - Normal: ACTIVE - Deleted: DELETED - Being deleted permanently: DELETING_PERMANENTLY - Deleted permanently: PERMANENTLY_DELETED - Blocked: BLOCKED - Deletion pending: PENDING_DELETE |
useSmsFailover | Mandatory | Boolean | Use status of alternative SMS delivery |
Response Status
HTTP Status | Desc |
---|---|
200 | OK |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
429 | Too Many Requests |
500 | Internal Server Error |
Image
Upload image
This uploads the image to be used for sending FriendTalk.
Images are stored for one year, after which they are automatically deleted and cannot be used.
Request URL
POST https://sens.apigw.ntruss.com/friendtalk/v2/services/{serviceId}/images
Content-Type: multipart/form-data; boundary=a29b1180-70f5-42f7-afbe-0d68a15f2370
x-ncp-apigw-timestamp: {Timestamp}
x-ncp-iam-access-key: {Sub Account Access Key}
x-ncp-apigw-signature-v2: {API Gateway Signature}
Path Variables
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
serviceId | Mandatory | String | Service ID | Service ID issued when registering the project |
Headers
Request Parameter
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
plusFriendId | Mandatory | String | Name of KakaoTalk Channel ((formerly) Plus Friend ID) | |
imageFile | Mandatory | File | Image files | - Common * jpg and png only * Under 500 KB - General * Recommended size: 720 px x 720 px * Only JPG and PNG files with a width of 500 px or more and a width:height ratio of at least 2:1 not exceeding 3:4 can be uploaded. - Wide * Size limit: 800 px x 600 px * Only width * height ratio of 4:3 can be uploaded |
isWide | Optional | Boolean | Wide image status | When uploading a wide image, it is sent as a wide FriendTalk message * defealt: false |
Response Body
{
"imageId":"string",
"imageName":"string",
"imageUrl":"string",
"isWide":"boolean",
"createTime":"string"
}
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
imageId | Mandatory | Strng | Image ID | |
imageName | Mandatory | String | Image file name | |
imageUrl | Mandatory | String | Image URL | |
isWide | Mandatory | Boolean | Wide status | |
createTime | Mandatory | DateTime | Image uploading time |
Response Status
HTTP Status | Desc |
---|---|
200 | OK (successfully uploaded) |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
500 | Internal Server Error |
View image list
This searches the list of uploaded images.
Request URL
GET https://sens.apigw.ntruss.com/friendtalk/v2/services/{serviceId}/images
x-ncp-apigw-timestamp: {Timestamp}
x-ncp-iam-access-key: {Sub Account Access Key}
x-ncp-apigw-signature-v2: {API Gateway Signature}
Path Variables
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
serviceId | Mandatory | String | Service ID | Service ID issued when registering the project |
Headers
Parameters
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
pageIndex | Optional | Integer | Page index | default: 0 |
pageSize | Optional | Integer | Page size | Default: 20 (Only numbers between 1 and 100 can be entered.) |
Request Body
N/A
Response Body
{
"items": [
{
"imageId": "string",
"imageName": "string",
"imageUrl": "string",
"isWide": "boolean",
"createTime": "string"
}
],
"pageIndex": "integer",
"pageSize": "integer",
"itemCount": "integer",
"totalCount": "integer"
}
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
items | Mandatory | Array of Object | List of image data | See Image data |
pageIndex | Mandatory | Integer | Page index | |
pageSize | Mandatory | Integer | Page size | |
itemCount | Mandatory | Integer | Number of searched items | |
totalCount | Mandatory | Integer | Total count |
Response Status
HTTP Status | Desc |
---|---|
200 | OK (successfully searched) |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
500 | Internal Server Error |
View single image
This searches single uploaded image.
Request URL
GET https://sens.apigw.ntruss.com/friendtalk/v2/services/{serviceId}/images/{imageId}
x-ncp-apigw-timestamp: {Timestamp}
x-ncp-iam-access-key: {Sub Account Access Key}
x-ncp-apigw-signature-v2: {API Gateway Signature}
Path Variables
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
serviceId | Mandatory | String | Service ID | Service ID issued when registering the project |
imageId | Mandatory | String | Image ID | ID of uploaded image |
Headers
Request Body
N/A
Response Body
{
"imageId":"string",
"imageName":"string",
"imageUrl":"string",
"isWide":"boolean",
"createTime":"string"
}
Image data
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
imageId | Mandatory | Strng | Image ID | |
imageName | Mandatory | String | Image file name | |
imageUrl | Mandatory | String | Image URL | |
isWide | Mandatory | Boolean | Wide status | |
createTime | Mandatory | DateTime | Image uploading time |
Response Status
HTTP Status | Desc |
---|---|
200 | OK (successfully searched) |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
500 | Internal Server Error |
Delete image
This deletes uploaded images.
Request URL
DELETE https://sens.apigw.ntruss.com/friendtalk/v2/services/{serviceId}/images/{imageId}
x-ncp-apigw-timestamp: {Timestamp}
x-ncp-iam-access-key: {Sub Account Access Key}
x-ncp-apigw-signature-v2: {API Gateway Signature}
Path Variables
Item | Mandatory | Type | Description | Remarks |
---|---|---|---|---|
serviceId | Mandatory | String | Service ID | Service ID issued when registering the project |
imageId | Mandatory | String | Image ID | ID of uploaded image |
Headers
Request Body
N/A
Response Body
N/A
Response Status
HTTP Status | Desc |
---|---|
204 | No Content (successfully deleted) |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
500 | Internal Server Error |
Errors
Biz Message reception result code
Status | Error text | Desc |
---|---|---|
0000 | - | Normal delivery |
1001 | NoJsonBody | Request Body is not in Json format. |
1002 | InvalidHubPartnerKey | Invalid partner key |
1003 | InvalidSenderKey | Outgoing profile key is invalid. |
1004 | NoValueJsonElement | Name not found in Request Body (Json) |
1005 | SenderNotFound | Outgoing profile not found |
1006 | DeletedSender | Deleted outgoing profile |
1007 | StoppedSender | Blocked outgoing profile |
1011 | ContractNotFound | Contract information not found |
1012 | InvalidUserKeyException | Invalid formatted user key request |
1013 | InvalidAppLink | Invalid app connection |
1014 | InvalidBizNum | Invalid business registration number |
1015 | TalkUserIdNotFonud | Invalid app user id request |
1016 | BizNumNotEqual | Mismatched business registration number |
1020 | InvalidReceiveUserException | No valid user identifier value |
1021 | BlockedProfile | Blocked KakaoTalk Channel (check in KakaoTalk Channel operation tool.) |
1022 | DeactivatedProfile | Closed KakaoTalk Channel (check in KakaoTalk Channel operation tool.) |
1023 | DeletedProfile | Deleted KakaoTalk Channel (check in KakaoTalk Channel operation tool.) |
1024 | DeletingProfile | Deletion-pending KakaoTalk Channel (check from the KakaoTalk Channel operation tool) |
1025 | SpammedProfile | Message-blocked KakaoTalk Channel (check from the KakaoTalk Channel operation tool) |
1030 | InvalidParameterException | Invalid parameter request |
1033 | - | Template type and message type mismatch |
2003 | FailedToSendMessageByNoFriendshipException | Message transmission failure (if KakaoTalk Channel is not added in the test server) |
2004 | FailedToMatchTemplateException | Error when checking template match (Kakao internal error) |
2006 | FailedToMatchSerialNumberPrefixPattern | Serial number format mismatch |
3000 | UnexceptedExcetpion | An unexpected error occurred. |
3005 | AckTimeoutException | A message was sent, but the read receipt was not confirmed (success uncertain). |
3006 | FailedToSendMessageException | Message transmission failed due to Kakao's internal system error. |
3008 | InvalidPhoneNumberException | Phone number error |
3010 | JsonParsseExcetpion | Json parsing error |
3011 | MessageNotFoundException | Message does not exist. |
3012 | SerialNumberDuplicatedException | Message serial number is duplicated. (A unique value must be assigned for the message serial number.) |
3013 | MessageEmptyException | Blank message |
3014 | MessageLengthOverLimitException | Message length limit error (text type exceeds 1000 characters, image type exceeds 400 characters.) |
3015 | TemplateNotFoundException | Template not found |
3016 | NoMatchedTemplateException | Message content does not match the template. |
3018 | NoSendAvailableException | Message could not be sent. |
3020 | SeenInfoNotFoundException | Message verification information not found |
3022 | NoSendAvailableTimeException | Outside the time available for sending messages (FriendTalk/marketing messages can be sent from 08:00 to 20:00.) |
3024 | MessageInvaildImageException | The image contained in the message cannot be sent. |
3025 | ExceedMaxVariableLengthException | Variable character limit exceeded |
3026 | Button chat_extra(event)-InvalidExtra(EventName)Exception '([A-Za-z0-9_]{1,50})' | Consultation/bot conversion button extra, event character limit exceeded |
3027 | NoMatchedTemplateButtonException | Button content does not match the template. |
3028 | NoMatchedTemplateTitleException | Message highlighting title does not match the template. |
3029 | ExceedMaxTitleLengthException | Message highlighting title length limit exceeded (50 characters) |
3031 | - | Text type mismatch |
4000 | ResponseHistoryNotFoundException | Message delivery result not found |
4001 | UnKnownMessageStatusError | Unknown message status |
7011 | - | Serial number pattern error |
7014 | - | Message valid timeout error |
8512 | - | Recipient type not found |
8514 | - | request_id not found |
8520 | - | Product type not supported error |
8521 | - | Message type not supported error |
8522 | - | Test type not supported error |
8523 | - | Response method not supported error |
8530 | - | Recipient list size error |
8999 | - | Internal server error |
9998 | The service is not currently provided. | The admin is checking a problem that occurred in the system. |
9999 | Admin is checking an unknown problem that occurred in the system. | Admin is checking a problem in the system |
B000 | Prepare to relay failed | Preparation for transmission to relay company failed |
B001 | Request to relay failed | Transmission to relay company failed |
B002 | Filtering for request to relay failed | Filtered due to invalid request |
B003 | Invalid phone number format | Invalid calling number format |
B004 | Quota Exceed | Over quota |
B005 | Message processing timeout exceed | Difference between message request time and processing time exceeds acceptable range |
B400 | Invalid Request | Message format error |
B999 | Unexpected server error | Unexpected error |
Was this article helpful?