Friend Talk API
- Print
- PDF
Friend Talk API
- Print
- PDF
Article summary
Did you find this summary helpful?
Thank you for your feedback
Basic information
API URL
https://sens.apigw.ntruss.com/friendtalk/v2
Go to SENS Friend Talk API Swagger
API Header
Category | Mandatory | Description |
---|---|---|
Content-Type | Mandatory | Specify the request body content type as application/json (POST) |
x-ncp-apigw-timestamp | Mandatory | This is the number of milliseconds that have elapsed since January 1, 1970 00:00:00 UTC. Request is considered invalid if the timestamp differs from the current time by more than 5 minutes |
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 that encrypts the body of the example above with secret key mapped to the access key ID Use the HMAC-SHA256 encryption algorithm |
Go to Guide for how to generate NAVER Cloud Platform authentication key and signature
Message
Send message
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
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
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"
}
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
plusFriendId | Mandatory | String | Name of Kakao Talk 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 you send an ad message (isAd: true), you must comply with the obligation to indicate that an ad message is being sent when SMS failover is in operation |
messages.countryCode | Optional | String | Recipient country code | default: 82 |
messages.to | Mandatory | String | Recipient number | |
messages.content | Mandatory | String | Friend Talk message content | |
messages.buttons | Optional | Array of Object | Friend Talk 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 Kakao Talk Channels where failover is configured Default: Follow the failover settings of Kakao Talk Channel |
messages.failoverConfig | Optional | Object | Failover settings | See the items below. |
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: Kakao Talk Channel name |
messages.failoverConfig.content | Optional | String | Failover SMS content | Default: Friend Talk 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 use mandatory fields in the request body, no spaces are allowed (only applicable when adding)
- SMS failover works if the Biz Message reception result code is not successful, and SMS alternative delivery through the failover feature is not performed for codes with the prefix B.
Status | Error text | Desc |
---|---|---|
0000 | - | Normal delivery |
3022 | NoSendAvailableTimeException | Outside the time available for sending messages (Friend Talk/marketing messages can be sent from 8:00 AM to 8:50 PM KST) |
Bxxx | See the Biz Message reception result code below | See the Biz Message reception result code below |
- When sending an ad message, use the 080 call block service of the SMS service set in SMS failover.
- SMS failover fails if the 080 call block service is not available for the configured SMS service.
- If
failoverConfig.content
is not specified, the ad text is automatically inserted when SMS failover is used.[Ad] {Message content} Free unsubscribe number 08012345678
- If you specify
failoverConfig.content
separately, the ad text won't be inserted. Add it yourself when sending the ad message. - If you send SMS messages that do not comply with the obligation to display advertisements, you may be required to provide an explanation later.
- When sending a wide image, you can send text + link button (1 button) + image.
- When adding two or more buttons, the message will fail to be sent. (Invalid parameter request)
- The text is 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"
}
]
}
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
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 country code | default: 82 |
messages.to | Mandatory | String | Recipient number | |
messages.content | Mandatory | String | Friend Talk 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 |
Get message delivery request
Get 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
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
serviceId | Mandatory | String | Service ID | Service ID issued when registering the project |
Parameters
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
requestId | Mandatory | String | Request ID | Delivery request ID |
plusFriendId | Mandatory | String | Kakao channel | Name of the registered channel |
requestStartTime | Mandatory | String | Query start time | yyyy-MM-dd'T'HH:mm:ss |
requestEndTime | Mandatory | String | Query end time | yyyy-MM-dd'T'HH:mm:ss |
completeStartTime | Mandatory | String | Delivery completion start time | yyyy-MM-dd'T'HH:mm:ss |
completeEndTime | Mandatory | String | Delivery completion end time | 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 recipient number | Number excluding hyphens (-) |
pageIndex | Optional | Integer | Page number | default: 0 |
pageSize | Optional | Integer | Page size | Default: 20, Max: 100 When querying including requestId, Default: 100 |
Note
- You can only see the history of messages sent within the last 30 days.
- One of the following must be specified: requestId, requestStartTime + requestEndTime, or completeStartTime + completeEndTime.
- requestStartTime + requestEndTime and completeStartTime + completeEndTime can't be used at the same time.
- The query range of requestStartTime to requestEndTime is limited to a maximum of 31 days.
- The query range of completeStartTime to completeEndTime is limited to a maximum of 24 hours.
- If the query condition does not include a requestId, plusFriendId is required.
Headers
Request body
None
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"
}
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
requestId | Optional | String | Delivery request ID | Displayed only when queried by 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 country code | default: 82 |
messages.to | Mandatory | String | Recipient number | |
messages.content | Mandatory | String | Friend Talk message content | |
messages.plusFriendId | Mandatory | String | Name of Kakao Talk 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 * Undergoing processing in the message delivery server after successful sending request * messageCode and messageDesc are not searched. fail - Failure |
messages.messageStatusDesc | Mandatory | String | Delivery result status content | |
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 Error code 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 Error code 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 (starts from 0) | |
itemCount | Mandatory | Integer | Number of messages in the pages retrieved | |
hasMore | Mandatory | Boolean | It indicates whether there is a next page |
Response status
HTTP Status | Desc |
---|---|
200 | OK (search completed) |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
500 | Internal Server Error |
Get message delivery result
Searches 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
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
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
None
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"
}
}
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
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 Kakao Talk Channel ((formerly) Plus Friend ID) | |
templateCode | Mandatory | String | Template code | |
countryCode | Optional | String | Recipient country code | default: 82 |
to | Mandatory | String | Recipient number | |
content | Mandatory | String | Friend Talk 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 * Undergoing processing in the message delivery server after successful sending request * messageCode and messageDesc are not searched. fail - Failure |
messageStatusDesc | Mandatory | String | Delivery result status content | |
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 Error code 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 Error code 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 | The failover settings are not valid |
E4001 | The failover settings information is omitted |
E4002 | The failover SMS service is not configured |
E4003 | The failover SMS type (SMS, LMS) is not configured |
E4004 | The failover SMS caller ID is not configured. |
E4005 | The failover SMS title is not configured |
E4006 | The failover SMS content is not configured |
E4007 | The failover SMS recipient number is not configured |
E4008 | The failover SMS service is not available |
E4009 | The failover SMS caller ID is not authenticated |
E4010 | The failover SMS free 080 unsubscribing service is not available |
E4999 | Failover settings parsing error (required to contact Support) |
E5000 | Internal error (required to contact Support) |
Response status
HTTP Status | Desc |
---|---|
200 | OK (search completed) |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
500 | Internal Server Error |
Reserved message
Get reserved message status
Get 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
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
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 the reserved delivery requests (requestId) |
Headers
Request body
None
Response body
{
"reserveId": "string",
"reserveTimeZone": "string",
"reserveTime": "string",
"reserveStatus": "string"
}
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
reserveId | Mandatory | String | Reserved message ID | Message identifier that is returned when searching 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 | Reservation 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) |
Response status
HTTP Status | Desc |
---|---|
200 | OK (search completed) |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
500 | Internal Server Error |
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
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
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 the reserved delivery requests (requestId) |
Headers
Request body
None
Response body
None
Response status
HTTP Status | Desc |
---|---|
204 | No Content (deletion completed) |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
500 | Internal Server Error |
Kakao Talk Channel
Get channel
Get Kakao Talk 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
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
serviceId | Mandatory | String | Service ID | Service ID issued when registering the project |
Parameters
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
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
None
Response body
[
{
"createTime": "string",
"updateTime": "string",
"serviceId": "string",
"channelId": "string",
"channelName": "string",
"channelStatus": "string",
"useSmsFailover": "boolean"
}
]
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
createTime | Mandatory | String | Creation 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 | Kakao Talk Channel ID | |
channelName | Mandatory | String | Kakao Talk Channel name | |
channelStatus | Mandatory | String | Kakao Talk 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 Friend Talk.
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
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
serviceId | Mandatory | String | Service ID | Service ID issued when registering the project |
Headers
Request parameter
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
plusFriendId | Mandatory | String | Name of Kakao Talk Channel ((formerly) Plus Friend ID) | |
imageFile | Mandatory | File | Image files | - Common * JPG and PNG only * 500 KB or less - General * Recommended size: 720 px x 720 px * Upload only images that are at least 500 px wide and have an aspect ratio of 2:1 or greater and less than 3:4 - Wide * Size limit: 800 px x 600 px * Upload only images that are 4:3 aspect ratio |
isWide | Optional | Boolean | Wide image status | When uploading a wide image, it is sent as a wide Friend Talk message *default: false |
Response body
{
"imageId":"string",
"imageName":"string",
"imageUrl":"string",
"isWide":"boolean",
"createTime":"string"
}
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
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 |
Get image list
Get 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
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
serviceId | Mandatory | String | Service ID | Service ID issued when registering the project |
Headers
Parameters
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
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
None
Response body
{
"items": [
{
"imageId": "string",
"imageName": "string",
"imageUrl": "string",
"isWide": "boolean",
"createTime": "string"
}
],
"pageIndex": "integer",
"pageSize": "integer",
"itemCount": "integer",
"totalCount": "integer"
}
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
items | Mandatory | Array of Object | Image data list | See image data |
pageIndex | Mandatory | Integer | Page index | |
pageSize | Mandatory | Integer | Page size | |
itemCount | Mandatory | Integer | Number of items retrieved | |
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 |
Get single image
Get a 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
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
serviceId | Mandatory | String | Service ID | Service ID issued when registering the project |
imageId | Mandatory | String | Image ID | ID of uploaded image |
Headers
Request body
None
Response body
{
"imageId":"string",
"imageName":"string",
"imageUrl":"string",
"isWide":"boolean",
"createTime":"string"
}
Image data
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
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 images
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
Category | Mandatory | Type | Description | Note |
---|---|---|---|---|
serviceId | Mandatory | String | Service ID | Service ID issued when registering the project |
imageId | Mandatory | String | Image ID | ID of uploaded image |
Headers
Request body
None
Response body
None
Response status
HTTP Status | Desc |
---|---|
204 | No Content (deletion completed) |
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 | Invalid outgoing profile key |
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 format of 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 Kakao Talk Channel (check from the Kakao Talk Channel operation tool) |
1022 | DeactivatedProfile | Closed Kakao Talk Channel (check from the Kakao Talk Channel operation tool) |
1023 | DeletedProfile | Deleted Kakao Talk Channel (check from the Kakao Talk Channel operation tool) |
1024 | DeletingProfile | Deletion-pending Kakao Talk Channel (check from the Kakao Talk Channel operation tool) |
1025 | SpammedProfile | Message-blocked Kakao Talk Channel (check from the Kakao Talk Channel operation tool) |
1026 | UnableUseMessageType | The request was made with response_method unavailable for the msg_type (image Alim Talk (AI) can't be sent in real time) |
1027 | - | Message delivery failure due to channel message restriction status |
1030 | InvalidParameterException | Invalid parameter request |
1033 | - | Template type and message type mismatch |
2000 | FailedToCheckFriendshipException | Error when checking the friend relationship with the Talk Channel (system error) |
2003 | FailedToSendMessageByNoFriendshipException | Message delivery failure (if Kakao Talk Channel is not added in the test server) |
2004 | FailedToMatchTemplateException | Error when checking template match (internal Kakao error) |
2005 | FailedToReadImageException | Error reading image meta information from Kakao |
2006 | FailedToMatchSerialNumberPrefixPattern | Serial number format mismatch |
3000 | UnexceptedExcetpion | Occurrence of an unexpected error |
3005 | AckTimeoutException | A message was sent, but the read receipt was not confirmed (success uncertain) |
3006 | FailedToSendMessageException | Message delivery 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 (exceeding 1000 characters for text type, 400 characters for image type) |
3015 | TemplateNotFoundException | Template not found |
3016 | NoMatchedTemplateException | Message content does not match the template. |
3018 | NoSendAvailableException | Message could not be sent. |
3019 | MessageNoUserException | Not a Talk user |
3020 | MessageUserBlockedAlimTalkException | Alim Talk blocked |
3021 | MessageNotSupportedKakaotalkException | Minimum support version for Talk not met |
3022 | NoSendAvailableTimeException | Outside the time available for sending messages (Friend Talk/marketing messages can be sent from 08:00 to 20:00.) |
3023 | MessageInvalidVideoException | Unable to send the video embedded in the message (the video address or thumbnail image address is incorrect or the thumbnail image does not meet the specifications) |
3024 | MessageInvaildImageException | The image contained in the message can't be sent. |
3025 | ExceedMaxVariableLengthException | Variable character limit exceeded |
3026 | Button chat_extra(event)-InvalidExtra(EventName)Exception '([A-Za-z0-9_]{1,50})' | Inquiry/bot switching 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) |
- | ||
3030 | NoMatchedTemplateWithMessageTypeException | Message type does not match the template highlight type. |
3031 | NoMatchedTemplateHeaderException | Header does not match the template. |
3032 | ExceedMaxHeaderLengthException | Header length limit exceeded (16 characters) |
3033 | NoMatchedTemplateItemHighlightException | Item highlight does not match the template. |
3034 | ExceedMaxItemHighlightTitleLengthException | Item highlight title length limit exceeded (30 characters with no images, 21 characters with images) |
3035 | ExceedMaxItemHighlightDescriptionLengthException | Item highlight description length limit exceeded (19 characters with no images, 14 characters with images) |
3036 | NoMatchedTemplateItemListException | Item list does not match the template. |
3037 | ExceedMaxItemDescriptionLengthException | Item's description length limit exceeded in the item list (23 characters) |
3038 | NoMatchedTemplateItemSummaryException | Item summary information does not match the template |
3039 | ExceedMaxItemSummaryDescriptionLengthException | Item summary information's description length limit exceeded (14 characters) |
3040 | InvalidItemSummaryDescriptionException | Item summary information's description includes characters that are not allowed (inclusion of characters other than currency symbol/code, number, comma, period, and space) |
3041 | MessageInvalidWideItemListLengthException | Wide item list count minimum, maximum mismatch |
3042 | NoMatchedTemplateRepresentLinkException | Representative link does not match template |
3046 | ExceedMaxAdditionalContentLengthException | Additional information maximum length limit error |
3047 | ExceedMaxCommerceTitleLengthException | Commerce information, product name maximum length limit error |
3050 | MessageNotSupportedUnsubscribeException | Opt-out specifications (N type) not supported |
3051 | InvalidateCarouselItemMinException or InvalidateCarouselItemMaxException | Carousel item list count minimum, maximum mismatch |
3052 | CarouselMessageLengthOverLimitException | Carousel item message length exceeded |
3056 | WideItemListTitleLengthOverLimitException | Wide item list title length limit error |
3058 | CarouselHeaderLengthOverLimitException | Carousel header length limit error |
3059 | MessageNotSupportedCouponException | Coupon specifications not supported |
4000 | ResponseHistoryNotFoundException | Message delivery result not found |
4001 | UnKnownMessageStatusError | Unknown message status |
7011 | - | Serial number pattern error |
7014 | - | Message validity timeout error |
8512 | - | Recipient type not found |
8514 | - | request_id not found |
8520 | - | Unsupported product type 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 | The admin is checking an unknown problem that occurred in the system | The admin is checking a problem that occurred in the system |
B000 | Prepare to relay failed | Failure of preliminary work for forwarding to the relay company |
B001 | Request to relay failed | Relay company delivery failure |
B002 | Filtering for request to relay failed | Filtered due to invalid request |
B003 | Invalid phone number format | Invalid caller ID format |
B004 | Quota Exceed | Quota exceeded |
B005 | Message processing timeout exceed | The difference between the message request time and processing time is outside the allowable range |
B400 | Invalid Request | Message format error |
B999 | Unexpected server error | Unexpected error |
Was this article helpful?