도메인 |
---|
https://api-alimtalk.cloud.toast.com |
chatExtra
, chatEvent
, target
필드가 추가되었습니다.chatExtra
, chatEvent
, target
필드가 추가되었습니다.[URL]
POST /friendtalk/v2.2/appkeys/{appkey}/messages
Content-Type: application/json;charset=UTF-8
[Path parameter]
이름 | 타입 | 설명 |
---|---|---|
appkey | String | 고유의 앱키 |
[Header]
{
"X-Secret-Key": String
}
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
X-Secret-Key | String | O | 콘솔에서 생성할 수 있습니다. |
X-NC-API-IDEMPOTENCY-KEY | String | X | 중복 메시지 발송 요청 기준 key 10분간 동일한 key로 요청 시 해당 요청을 실패 처리합니다. |
[Request body]
{
"senderKey": String,
"requestDate": String,
"senderGroupingKey": String,
"createUser": String,
"recipientList": [{
"recipientNo": String,
"content": String,
"imageSeq": Integer,
"imageLink": String,
"buttons": [
{
"ordering": Integer,
"type": String,
"name": String,
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
"chatExtra": String,
"chatEvent": String,
"target": String
}
],
"resendParameter": {
"isResend": boolean,
"resendType": String,
"resendTitle": String,
"resendContent": String,
"resendSendNo": String,
"resendUnsubscribeNo": String
},
"isAd": Boolean,
"recipientGroupingKey": String
}],
"statsId": String
}
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
senderKey | String | O | 발신 키(40자) |
requestDate | String | X | 요청 일시(yyyy-MM-dd HH:mm), 필드를 보내지 않을 경우, 즉시 발송 |
senderGroupingKey | String | X | 발신 그룹핑 키(최대 100자) |
createUser | String | X | 등록자(콘솔에서 발송 시 사용자 UUID로 저장) |
recipientList | List | O | 수신자 목록(최대 1000명) |
- recipientNo | String | O | 수신 번호 |
- content | String | O | 내용(최대 1000자) 이미지 발송 시, 최대 400자 와이드 이미지 발송 시, 최대 76자 |
- imageSeq | Integer | X | 이미지 번호 |
- imageLink | String | X | 이미지 링크 |
- buttons | List | X | 버튼 와이드 이미지 발송 시, 링크 버튼 최대 2개 |
-- ordering | Integer | X | 버튼 순서(버튼이 있는 경우 필수) |
-- type | String | X | 버튼 타입(WL:웹 링크, AL:앱 링크, BK:봇 키워드, MD:메시지 전달) |
-- name | String | X | 버튼 이름(버튼이 있는 경우 필수) |
-- linkMo | String | X | 모바일 웹 링크(WL 타입일 경우 필수 필드) |
-- linkPc | String | X | PC 웹 링크(WL 타입일 경우 선택 필드) |
-- schemeIos | String | X | iOS 앱 링크(AL 타입일 경우 필수 필드) |
-- schemeAndroid | String | X | 안드로이드 앱 링크(AL 타입일 경우 필수 필드) |
-- chatExtra | String | X | BC(상담톡 전환) / BT(봇 전환) 타입 버튼 시, 전달할 메타정보 |
-- chatEvent | String | X | BT(봇 전환) 타입 버튼 시, 연결할 봇 이벤트명 |
-- target | String | X | 웹 링크 버튼일 경우, "target":"out" 속성 추가 시 아웃 링크 기본 인앱 링크로 발송 |
- resendParameter | Object | X | 대체 발송 정보 |
-- isResend | boolean | X | 발송 실패 시, 문자 대체 발송 여부 콘솔에서 대체 발송 설정 시, 기본으로 재발송됩니다. |
-- resendType | String | X | 대체 발송 타입(SMS,LMS) 값이 없을 경우, 템플릿 본문 길이에 따라 타입이 구분됩니다. |
-- resendTitle | String | X | LMS 대체 발송 제목 (값이 없을 경우, 플러스친구 ID로 재발송됩니다.) |
-- resendContent | String | X | 대체 발송 내용 (값이 없을 경우, [메시지 본문과 웹링크 버튼명 - 웹링크 Mobile 링크]으로 재발송됩니다.) |
-- resendSendNo | String | X | 대체 발송 발신 번호 (SMS 서비스에 등록된 발신 번호가 아닐 경우, 대체 발송에 실패할 수 있습니다.) |
-- resendUnsubscribeNo | String | X | 대체 발송 080 수신 거부 번호 (SMS 서비스에 등록된 080 수신 거부 번호가 아닐 경우, 대체 발송에 실패할 수 있습니다.) |
- isAd | Boolean | X | 광고 여부(기본값 true) |
- recipientGroupingKey | String | X | 수신자 그룹핑 키(최대 100자) |
statsId | String | X | 통계 ID(발신 검색 조건에는 포함되지 않습니다, 최대 8자) |
(광고)내용[무료 수신거부]080XXXXXXX
[예시]
curl -X POST -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" https://api-alimtalk.cloud.toast.com/friendtalk/v2.2/appkeys/{appkey}/messages -d '{"senderKey":"9e0afe2c12aaaaaaaaaa7520052880b555f1a60a","requestDate":"yyyy-MM-dd HH:mm","recipientList":[{"recipientNo":"010-0000-0000","imageSeq":1,"imageLink":"https://toast.com","content":"내용","buttons":[{"ordering":1,"type":"WL","name":"버튼1","linkMo":"https://toast.com","linkPc":"https://toast.com"}]}]}'
{
"header": {
"resultCode": Integer,
"resultMessage": String,
"isSuccessful": boolean
},
"message": {
"requestId": String,
"senderGroupingKey": String,
"sendResults": [
{
"recipientSeq": Integer,
"recipientNo": String,
"resultCode": Integer,
"resultMessage": String,
"recipientGroupingKey": String
}
]
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
- resultCode | Integer | 결과 코드 |
- resultMessage | String | 결과 메시지 |
- isSuccessful | Boolean | 성공 여부 |
message | Object | 본문 영역 |
- requestId | String | 요청 ID |
- senderGroupingKey | String | 발신 그룹핑 키 |
- sendResults | Object | 발송 요청 결과 |
-- recipientSeq | Integer | 수신자 시퀀스 번호 |
-- recipientNo | String | 수신 번호 |
-- resultCode | Integer | 발송 요청 결과 코드 |
-- resultMessage | String | 발송 요청 결과 메시지 |
-- recipientGroupingKey | String | 수신자 그룹핑 키 |
[URL]
GET /friendtalk/v2.2/appkeys/{appkey}/messages
Content-Type: application/json;charset=UTF-8
[Path parameter]
이름 | 타입 | 설명 |
---|---|---|
appkey | String | 고유의 앱키 |
[Header]
{
"X-Secret-Key": String
}
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
X-Secret-Key | String | O | 콘솔에서 생성할 수 있습니다. |
[Query parameter] 1번 or(2번, 3번) 조건 필수
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
requestId | String | 조건 필수(1번) | 요청 ID |
startRequestDate | String | 조건 필수(2번) | 발송 요청 날짜 시작 값(yyyy-MM-dd HH:mm) |
endRequestDate | String | 조건 필수(2번) | 발송 요청 날짜 끝 값(yyyy-MM-dd HH:mm) |
startCreateDate | String | 조건 필수(3번) | 등록 날짜 시작값(yyyy-MM-dd HH:mm) |
endCreateDate | String | 조건 필수(3번) | 등록 날짜 끝값(yyyy-MM-dd HH:mm) |
recipientNo | String | X | 수신 번호 |
senderKey | String | X | 발신키 |
senderGroupingKey | String | X | 발신 그룹핑 키 |
recipientGroupingKey | String | X | 수신자 그룹핑 키 |
messageStatus | String | X | 요청 상태(COMPLETED: 성공, FAILED: 실패 ) |
resultCode | String | X | 발송 결과(MRC01: 성공 MRC02: 실패 ) |
createUser | String | X | 등록자(콘솔에서 발송 시 사용자 UUID로 저장) |
pageNum | Integer | X | 페이지 번호(Default: 1) |
pageSize | Integer | X | 조회 건수(Default: 15, Max: 1000) |
{
"header": {
"resultCode": Integer,
"resultMessage": String,
"isSuccessful": boolean
},
"messageSearchResultResponse": {
"messages": [
{
"requestId": String,
"recipientSeq": Integer,
"plusFriendId": String,
"senderKey": String,
"recipientNo": String,
"requestDate": String,
"createDate": String,
"receiveDate": String,
"content": String,
"messageStatus": String,
"resendStatus": String,
"resendStatusName": String,
"resultCode": String,
"resultCodeName": String,
"createUser": String,
"senderGroupingKey": String,
"recipientGroupingKey": String
}
],
"totalCount": Integer
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
- resultCode | Integer | 결과 코드 |
- resultMessage | String | 결과 메시지 |
- isSuccessful | Boolean | 성공 여부 |
messageSearchResultResponse | Object | 본문 영역 |
- messages | List | 메시지 리스트 |
-- requestId | String | 요청 ID |
-- recipientSeq | Integer | 수신자 시퀀스 번호 |
-- plusFriendId | String | 플러스친구 ID |
-- senderKey | String | 발신 키 |
-- recipientNo | String | 수신 번호 |
-- requestDate | String | 요청 일시 |
-- createDate | String | 등록 일시 |
-- receiveDate | String | 수신 일시 |
-- content | String | 본문 |
-- messageStatus | String | 요청 상태(COMPLETED: 성공, FAILED: 실패 ) |
-- resendStatus | String | 재발송 상태 코드 |
-- resendStatusName | String | 재발송 상태 코드명 |
-- resultCode | String | 수신 결과 코드 |
-- resultCodeName | String | 수신 결과 코드명 |
-- createUser | String | 등록자(콘솔에서 발송 시 사용자 UUID로 저장) |
-- senderGroupingKey | String | 발신 그룹핑 키 |
-- recipientGroupingKey | String | 수신자 그룹핑 키 |
- totalCount | Integer | 총개수 |
[예시]
curl -X GET -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" "https://api-alimtalk.cloud.toast.com/friendtalk/v2.2/appkeys/{appkey}/messages?startRequestDate=2018-05-01%2000:00&endRequestDate=2018-05-30%2023:59"
이름 | 설명 |
---|---|
RSC01 | 재발송 미대상 |
RSC02 | 재발송 대상(발송 결과 실패 시, 재발송이 진행됩니다.) |
RSC03 | 재발송 중 |
RSC04 | 재발송 성공 |
RSC05 | 재발송 실패 |
[URL]
GET /friendtalk/v2.2/appkeys/{appkey}/messages/{requestId}/{recipientSeq}
Content-Type: application/json;charset=UTF-8
[Path parameter]
이름 | 타입 | 설명 |
---|---|---|
appkey | String | 고유의 앱키 |
[Header]
{
"X-Secret-Key": String
}
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
X-Secret-Key | String | O | 콘솔에서 생성할 수 있습니다. |
[Query parameter]
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
requestId | String | O | 요청 ID |
recipientSeq | Integer | O | 수신자 시퀀스 번호 |
[예시]
curl -X GET -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" "https://api-alimtalk.cloud.toast.com/friendtalk/v2.2/appkeys/{appkey}/messages/{requestId}/{recipientSeq}"
{
"header": {
"resultCode": Integer,
"resultMessage": String,
"isSuccessful": boolean
},
"message": {
"requestId": String,
"recipientSeq": Integer,
"plusFriendId": String,
"senderKey": String,
"recipientNo": String,
"requestDate": String,
"createDate": String,
"receiveDate": String,
"content": String,
"messageStatus": String,
"resendStatus": String,
"resendStatusName": String,
"resendResultCode": String,
"resendRequestId": String,
"resultCode": String,
"resultCodeName": String,
"createUser": String,
"imageSeq": Integer,
"imageName": String,
"imageUrl": String,
"imageLink": String,
"wide": Boolean,
"buttons": [
{
"ordering": Integer,
"type": String,
"name": String,
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
"chatExtra": String,
"chatEvent": String,
"target": String
}
],
"isAd": Boolean,
"senderGroupingKey": String,
"recipientGroupingKey": String
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
- resultCode | Integer | 결과 코드 |
- resultMessage | String | 결과 메시지 |
- isSuccessful | Boolean | 성공 여부 |
message | Object | 메시지 |
- requestId | String | 요청 ID |
- recipientSeq | Integer | 수신자 시퀀스 번호 |
- plusFriendId | String | 플러스친구 ID |
- senderKey | String | 발신 키 |
- recipientNo | String | 수신 번호 |
- requestDate | String | 요청 일시 |
- createDate | String | 등록 일시 |
- receiveDate | String | 수신 일시 |
- content | String | 본문 |
- messageStatus | String | 요청 상태(COMPLETED: 성공, FAILED: 실패 ) |
- resendStatus | String | 재발송 상태 코드 |
- resendStatusName | String | 재발송 상태 코드명 |
- resendResultCode | String | 재발송 결과 코드 SMS 결과 코드 |
- resendRequestId | String | 재발송 SMS 요청 ID |
- resultCode | String | 수신 결과 코드 |
- resultCodeName | String | 수신 결과 코드명 |
- createUser | String | 등록자(콘솔에서 발송 시 사용자 UUID로 저장) |
- imageSeq | Integer | 이미지 번호 |
- imageName | String | 이미지명(업로드한 파일명) |
- imageUrl | String | 이미지 URL |
- imageLink | String | 이미지 링크 |
- wide | boolean | 와이드 이미지 여부 |
- buttons | List | 버튼 리스트 |
-- ordering | Integer | 버튼 순서 |
-- type | String | 버튼 타입(WL: 웹 링크, AL: 앱 링크, BK: 봇 키워드, MD: 메시지 전달) |
-- name | String | 버튼 이름 |
-- linkMo | String | 모바일 웹 링크(WL 타입일 경우 필수 필드) |
-- linkPc | String | PC 웹 링크(WL 타입일 경우 선택 필드) |
-- schemeIos | String | iOS 앱 링크(AL 타입일 경우 필수 필드) |
-- schemeAndroid | String | 안드로이드 앱 링크(AL 타입일 경우 필수 필드) |
-- chatExtra | String | BC(상담톡 전환) / BT(봇 전환) 타입 버튼 시, 전달할 메타정보 |
-- chatEvent | String | BT(봇 전환) 타입 버튼 시, 연결할 봇 이벤트명 |
-- target | String | 웹 링크 버튼일 경우, "target":"out" 속성 추가 시 아웃 링크 기본 인앱 링크로 발송 |
- isAd | Boolean | 광고 여부 |
- senderGroupingKey | String | 발신 그룹핑 키 |
- recipientGroupingKey | String | 수신자 그룹핑 키 |
[URL]
DELETE /friendtalk/v2.2/appkeys/{appkey}/messages/{requestId}
Content-Type: application/json;charset=UTF-8
[Path parameter]
이름 | 타입 | 설명 |
---|---|---|
appkey | String | 고유의 앱키 |
requestId | String | 요청 ID |
[Header]
{
"X-Secret-Key": String
}
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
X-Secret-Key | String | O | 콘솔에서 생성할 수 있습니다. |
[Query parameter]
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
recipientSeq | String | X | 수신자 시퀀스 번호 (입력하지 않으면 요청 ID의 모든 발송 건을 취소) |
{
"header": {
"resultCode": Integer,
"resultMessage": String,
"isSuccessful": boolean
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
- resultCode | Integer | 결과 코드 |
- resultMessage | String | 결과 메시지 |
- isSuccessful | Boolean | 성공 여부 |
[예시]
curl -X DELETE -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" "https://api-alimtalk.cloud.toast.com/friendtalk/v2.2/appkeys/{appkey}/messages/{requestId}?recipientSeq=1,2,3"
[URL]
GET /friendtalk/v2.2/appkeys/{appkey}/message-results
Content-Type: application/json;charset=UTF-8
[Path parameter]
이름 | 타입 | 설명 |
---|---|---|
appkey | String | 고유의 앱키 |
[Header]
{
"X-Secret-Key": String
}
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
X-Secret-Key | String | O | 콘솔에서 생성할 수 있습니다. |
[Query parameter]
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
startUpdateDate | String | O | 결과 업데이트 조회 시작 시간(yyyy-MM-dd HH:mm) |
endUpdateDate | String | O | 결과 업데이트 조회 종료 시간(yyyy-MM-dd HH:mm) |
pageNum | Integer | X | 페이지 번호(기본: 1) |
pageSize | Integer | X | 조회 건수(기본: 15) |
{
"header": {
"resultCode": Integer,
"resultMessage": String,
"isSuccessful": boolean
},
"messageSearchResultResponse": {
"messages": [
{
"requestId": String,
"recipientSeq": Integer,
"plusFriendId": String,
"senderKey": String,
"recipientNo": String,
"requestDate": String,
"receiveDate": String,
"content": String,
"messageStatus": String,
"resendStatus": String,
"resendStatusName": String,
"resultCode": String,
"resultCodeName": String,
"senderGroupingKey": String,
"recipientGroupingKey": String
}
],
"totalCount": Integer
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
- resultCode | Integer | 결과 코드 |
- resultMessage | String | 결과 메시지 |
- isSuccessful | Boolean | 성공 여부 |
messageSearchResultResponse | Object | 본문 영역 |
- messages | List | 메시지 리스트 |
-- requestId | String | 요청 ID |
-- recipientSeq | Integer | 수신자 시퀀스 번호 |
-- plusFriendId | String | 플러스친구 ID |
-- senderKey | String | 발신 키 |
-- recipientNo | String | 수신 번호 |
-- requestDate | String | 요청 일시 |
-- receiveDate | String | 수신 일시 |
-- content | String | 본문 |
-- messageStatus | String | 요청 상태(COMPLETED -> 성공, FAILED -> 실패, CANCEL -> 취소 ) |
-- resendStatus | String | 재발송 상태 코드 |
-- resendStatusName | String | 재발송 상태 코드명 |
-- resultCode | String | 수신 결과 코드 |
-- resultCodeName | String | 수신 결과 코드명 |
-- senderGroupingKey | String | 발신 그룹핑 키 |
-- recipientGroupingKey | String | 수신자 그룹핑 키 |
- totalCount | Integer | 총개수 |
[예시]
curl -X GET -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" "https://api-alimtalk.cloud.toast.com/friendtalk/v2.2/appkeys/{appkey}/message-results?startUpdateDate=2018-05-01%20:00&endUpdateDate=2018-05-30%20:59"
[URL]
GET /friendtalk/v2.2/appkeys/{appKey}/mass-messages
Content-Type: application/json;charset=UTF-8
[Path parameter]
이름 | 타입 | 설명 |
---|---|---|
appKey | String | 고유의 앱키 |
[Header]
{
"X-Secret-Key": String
}
이름 | 타입 | 설명 |
---|---|---|
X-Secret-Key | String | 고유의 비밀 키 |
[Query parameter] * requestId 또는 startRequestDate + endRequestDate 또는 startCreateDate + endCreateDate는 필수입니다.
이름 | 타입 | 최대 길이 | 필수 | 설명 |
---|---|---|---|---|
requestId | String | - | O | 요청 ID |
startRequestDate | String | - | O | 발송 날짜 시작 |
endRequestDate | String | - | O | 발송 날짜 종료 |
startCreateDate | String | - | O | 등록 날짜 시작 |
endCreateDate | String | - | O | 등록 날짜 종료 |
pageNum | optional, Integer | - | X | 페이지 번호 |
pageSize | optional, Integer | 1000 | X | 검색 수 |
curl -X GET \
'https://api-alimtalk.cloud.toast.com/friendtalk/v2.2/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,
"masterStatusCode": String,
"content": String,
"buttons": [
{
"ordering": Integer,
"type": String,
"name": String,
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
"chatExtra": String,
"chatEvent": String,
"target": String
}
],
"isAd": Boolean,
"imageSeq": Integer,
"imageLink": String,
"fileId": String,
"autoSendYn": String,
"statsId": String,
"createDate": String,
"createUser": String
}
],
"totalCount": Integer
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
- resultCode | Integer | 결과 코드 |
- resultMessage | String | 결과 메시지 |
- isSuccessful | Boolean | 성공 여부 |
body | Object | 본문 영역 |
- messages | Object | 메시지 리스트 |
-- requestId | String | 요청 ID |
-- requestDate | String | 요청 날짜 |
-- plusFriendId | String | 플러스 친구 ID |
-- senderKey | String | 전송자 ID |
-- masterStatusCode | String | 대량 발송 상태 코드(WAIT, READY, SENDREADY, SENDWAIT, SENDING, COMPLETE, CANCEL, FAIL) |
-- content | String | 내용 |
-- buttons | List | 버튼 순서 |
--- ordering | String | 버튼 순서 |
--- type | String | 버튼 종류 - WL: 웹링크 - AL: 앱링크 - DS: 배송 조회 - BK: 봇 키워드 - MD: 메시지 전달 - BC: 상담톡 전환 - BT: 봇 전환 - AC: 채널 추가[광고 추가/복합형만] |
--- name | String | 버튼 이름 |
--- linkMo | String | 모바일 웹 링크(WL 타입일 경우 필수 필드) |
--- linkPc | String | PC 웹 링크(WL 타입일 경우 선택 필드) |
--- schemeIos | String | iOS 앱 링크(AL 타입일 경우 필수 필드) |
--- schemeAndroid | String | 안드로이드 앱 링크(AL 타입일 경우 필수 필드) |
--- chatExtra | String | BC: 상담톡 전환시 전달할 메타 정보 BT: 봇 전환 시 전달할 메타 정보 |
--- chatEvent | String | BT: 봇 전환 시 연결할 봇 이벤트명 |
--- target | String | 웹 링크 버튼일 경우, "target":"out" 속성 추가 시 아웃 링크 기본 인앱 링크로 발송 |
-- isAd | Boolean | 광고 여부 |
-- imageSeq | Integer | 이미지 순서 |
-- imageLink | Boolean | 이미지 URL |
-- fileId | String | 첨부 파일 ID |
-- autoSendYn | String | 자동 발송 여부 |
-- statsId | String | 통계 ID |
-- createDate | String | 생성 날짜 |
-- createUser | String | 생성 사용자(콘솔에서 발송 시 사용자 UUID로 저장) |
- totalCount | Integer | 총개수 |
[URL]
GET /friendtalk/v2.2/appkeys/{appKey}/mass-messages/{requestId}/recipients
Content-Type: application/json;charset=UTF-8
[Path parameter]
이름 | 타입 | 설명 |
---|---|---|
appKey | String | 고유의 앱키 |
requestId | String | 요청 ID |
[Header]
{
"X-Secret-Key": String
}
이름 | 타입 | 설명 |
---|---|---|
X-Secret-Key | String | 고유의 비밀 키 |
이름 | 타입 | 최대 길이 | 필수 | 설명 |
---|---|---|---|---|
requestId | String | - | O | 요청 ID |
startRequestDate | String | - | X | 발송 날짜 시작 |
endRequestDate | String | - | X | 발송 날짜 종료 |
startCreateDate | String | - | X | 등록 날짜 시작 |
endCreateDate | String | - | X | 등록 날짜 종료 |
pageNum | optional, Integer | - | X | 페이지 번호 |
pageSize | optional, Integer | 1000 | X | 검색 수 |
curl -X GET \
'https://api-alimtalk.cloud.toast.com/friendtalk/v2.2/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
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
- resultCode | Integer | 결과 코드 |
- resultMessage | String | 결과 메시지 |
- isSuccessful | Boolean | 성공 여부 |
body | Object | 본문 영역 |
- recipients | List | 수신자 리스트 |
-- requestId | String | 요청 ID |
-- recipientSeq | Integer | 수신자 시퀀스 번호 |
-- recipientNo | String | 수신 번호 |
-- requestDate | String | 요청 날짜 |
-- receiveDate | String | 수신 날짜 |
-- messageStatus | String | 대량 수신자 발송 상태 코드(READY, COMPLETED, FAILED, CANCEL) |
-- resultCode | String | 수신 결과 코드 |
-- resultCodeName | String | 수신 결과 코드명 |
- totalCount | Integer | 총개수 |
[URL]
GET /friendtalk/v2.2/appkeys/{appKey}/mass-messages/{requestId}/recipients/{recipientSeq}
Content-Type: application/json;charset=UTF-8
[Path parameter]
이름 | 타입 | 설명 |
---|---|---|
appKey | String | 고유의 앱키 |
requestId | String | 요청 ID |
recipientSeq | String | 수신자 순서 |
[Header]
{
"X-Secret-Key": String
}
이름 | 타입 | 설명 |
---|---|---|
X-Secret-Key | String | 고유의 비밀 키 |
이름 | 타입 | 최대 길이 | 필수 | 설명 |
---|---|---|---|---|
requestId | String | - | O | 요청 ID |
startRequestDate | String | - | X | 발송 날짜 시작 |
endRequestDate | String | - | X | 발송 날짜 종료 |
startCreateDate | String | - | X | 등록 날짜 시작 |
endCreateDate | String | - | X | 등록 날짜 종료 |
curl -X GET \
'https://api-alimtalk.cloud.toast.com/friendtalk/v2.2/appkeys/{appKey}/'"${APP_KEY}"'/mass-messages/recipients/${RECIPIENT_SEQ}?requestId='"${REQUEST_ID}" \
-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,
"recipientNo": String,
"requestDate": String,
"receiveDate": String,
"content": String,
"messageStatus": String,
"resendStatus": String,
"resendStatusName": String,
"resendRequestId": String,
"resendResultCode": String,
"resultCode": String,
"resultCodeName": String,
"imageSeq": Integer,
"imageLink": String,
"buttons": [
{
"ordering": Integer,
"type": String,
"name": String,
"linkMo": String,
"linkPc": String,
"schemeIos": String,
"schemeAndroid": String,
"chatExtra": String,
"chatEvent": String,
"target": String
}
],
"isAd": Boolean,
"createDate": String
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
- resultCode | Integer | 결과 코드 |
- resultMessage | String | 결과 메시지 |
- isSuccessful | Boolean | 성공 여부 |
body | Object | 본문 영역 |
- requestId | String | 요청 ID |
- recipientSeq | Integer | 수신자 시퀀스 번호 |
- plusFriendId | String | 플러스 친구 ID |
- senderKey | String | 발신 키(40자) |
- recipientNo | String | 수신 번호 |
- requestDate | String | 요청 날짜 |
- receiveDate | String | 수신 날짜 |
- content | String | 본문 |
- messageStatus | String | 대량 수신자 발송 상태 코드(READY, COMPLETED, FAILED, CANCEL) |
- resendStatus | String | 대체 발송 상태 코드(RSC01, RSC02, RSC03, RSC04, RSC05) ([아래 대체 발송 상태 표] 참고) |
- resendStatusName | String | 대체 발송 상태 코드명 |
- resendRequestId | String | 대체 발송 SMS 요청 ID |
- resendResultCode | String | 대체 발송 결과 코드 SMS 결과 코드 |
- resultCode | String | 수신 결과 코드 |
- resultCodeName | String | 수신 결과 코드명 |
- imageSeq | Integer | 이미지 순서 |
- imageLink | Integer | 이미지 URL |
- buttons | List | 버튼 순서 |
-- ordering | String | 버튼 순서 |
-- type | String | 버튼 종류 - WL: 웹링크 - AL: 앱링크 - DS: 배송 조회 - BK: 봇 키워드 - MD: 메시지 전달 - BC: 상담톡 전환 - BT: 봇 전환 - AC: 채널 추가[광고 추가/복합형만] |
-- name | String | 버튼 이름 |
-- linkMo | String | 모바일 웹 링크(WL 타입일 경우 필수 필드) |
-- linkPc | String | PC 웹 링크(WL 타입일 경우 선택 필드) |
-- schemeIos | String | iOS 앱 링크(AL 타입일 경우 필수 필드) |
-- schemeAndroid | String | 안드로이드 앱 링크(AL 타입일 경우 필수 필드) |
-- chatExtra | String | BC: 상담톡 전환시 전달할 메타 정보 BT: 봇 전환 시 전달할 메타 정보 |
-- chatEvent | String | BT: 봇 전환 시 연결할 봇 이벤트명 |
-- target | String | 웹 링크 버튼일 경우, "target":"out" 속성 추가 시 아웃 링크 기본 인앱 링크로 발송 |
- isAd | Boolean | 광고 여부 |
- createDate | String | 생성 날짜 |
[URL]
POST /friendtalk/v2.2/appkeys/{appkey}/images
Content-Type: multipart/form-data
[Path parameter]
이름 | 타입 | 설명 |
---|---|---|
appkey | String | 고유의 앱키 |
[Header]
{
"X-Secret-Key": String
}
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
X-Secret-Key | String | O | 콘솔에서 생성할 수 있습니다. |
[Request parameter]
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
image | File | O | 이미지 |
wide | boolean | X | 와이드 이미지 여부(Default: false) |
[예시]
curl -X POST -H "Content-Type: multipart/form-data" -H "X-Secret-Key:{secretkey}" "https://api-alimtalk.cloud.toast.com/friendtalk/v2.2/appkeys/{appkey}/images" -F "image=@friend-ricecake02.jpeg"
{
"header": {
"resultCode": Integer,
"resultMessage": String,
"isSuccessful": boolean
},
"image": {
"imageSeq": Integer,
"imageUrl": String,
"imageName": String
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
- resultCode | Integer | 결과 코드 |
- resultMessage | String | 결과 메시지 |
- isSuccessful | Boolean | 성공 여부 |
image | Object | 본문 영역 |
- imageSeq | Integer | 이미지 번호(친구톡 메시지 발송 시 사용) |
- imageUrl | String | 이미지 URL |
- imageName | String | 이미지명(업로드한 파일명) |
[URL]
GET /friendtalk/v2.2/appkeys/{appkey}/images
Content-Type: application/json;charset=UTF-8
[Path parameter]
이름 | 타입 | 설명 |
---|---|---|
appkey | String | 고유의 앱키 |
[Header]
{
"X-Secret-Key": String
}
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
X-Secret-Key | String | O | 콘솔에서 생성할 수 있습니다. |
[Query parameter]
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
pageNum | Integer | X | 페이지 번호(기본: 1) |
pageSize | Integer | X | 조회 건수(기본: 15) |
[예시]
curl -X GET -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" "https://api-alimtalk.cloud.toast.com/friendtalk/v2.2/appkeys/{appkey}/images?pageNum=1&pageSize=15"
{
"header": {
"resultCode": Integer,
"resultMessage": String,
"isSuccessful": boolean
},
"imagesResponse": {
"images": [
{
"imageSeq": Integer,
"imageUrl": String,
"imageName": String,
"wide": String,
"createDate": String
}
],
"totalCount": Integer
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
- resultCode | Integer | 결과 코드 |
- resultMessage | String | 결과 메시지 |
- isSuccessful | Boolean | 성공 여부 |
imagesResponse | Object | 본문 영역 |
- image | Object | 본문 영역 |
-- imageSeq | Integer | 이미지 번호(친구톡 메시지 발송 시 사용) |
-- imageUrl | String | 이미지 URL |
-- imageName | String | 이미지명(업로드한 파일명) |
-- wide | boolean | 와이드 이미지 여부 |
-- createDate | String | 생성 일자 |
- totalCount | Integer | 총개수 |
[URL]
DELETE /friendtalk/v2.2/appkeys/{appkey}/images
Content-Type: application/json;charset=UTF-8
[Path parameter]
이름 | 타입 | 설명 |
---|---|---|
appkey | String | 고유의 앱키 |
[Header]
{
"X-Secret-Key": String
}
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
X-Secret-Key | String | O | 콘솔에서 생성할 수 있습니다. |
[Query parameter]
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
imageSeq | String | O | 이미지 번호 |
[예시]
curl -X DELETE -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" "https://api-alimtalk.cloud.toast.com/friendtalk/v2.2/appkeys/{appkey}/images?imageSeq=1,2,3"
{
"header": {
"resultCode": Integer,
"resultMessage": String,
"isSuccessful": boolean
}
}
이름 | 타입 | 설명 |
---|---|---|
header | Object | 헤더 영역 |
- resultCode | Integer | 결과 코드 |
- resultMessage | String | 결과 메시지 |
- isSuccessful | Boolean | 성공 여부 |
[URL]
POST /friendtalk/v2.2/appkeys/{appkey}/failback/appkey
Content-Type: application/json;charset=UTF-8
[Path parameter]
이름 | 타입 | 설명 |
---|---|---|
appkey | String | 고유의 앱키 |
[Header]
{
"X-Secret-Key": String
}
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
X-Secret-Key | String | O | 콘솔에서 생성할 수 있습니다. |
[Request body]
{
"resendAppKey": String
}
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
resendAppKey | String | O | 대체 발송으로 설정할 SMS 서비스 앱키 |
[예시]
curl -X POST -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" https://api-alimtalk.cloud.toast.com/friendtalk/v2.2/appkeys/{appkey}/failback/appkey -d '{"resendAppKey": "smsAppKey"}
{
"header": {
"resultCode": Integer,
"resultMessage": String,
"isSuccessful": boolean
}
}
[URL]
POST /friendtalk/v2.2/appkeys/{appkey}/failback
Content-Type: application/json;charset=UTF-8
[Path parameter]
이름 | 타입 | 설명 |
---|---|---|
appkey | String | 고유의 앱키 |
[Header]
{
"X-Secret-Key": String
}
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
X-Secret-Key | String | O | 콘솔에서 생성할 수 있습니다. |
[Request body]
{
"senderKey": String,
"isResend": Boolean,
"resendSendNo": String,
"resendUnsubscribeNo": String
}
이름 | 타입 | 필수 | 설명 |
---|---|---|---|
senderKey | String | O | 발신 키 |
isResend | Boolean | O | 발송 실패 시, 문자 대체발송 여부 Console에서 대체 발송 설정 시, default로 재발송 됩니다. |
resendSendNo | String | O | 대체 발송 발신번호 (SMS 상품에 등록된 발신번호가 아닐 경우, 대체발송이 실패할 수 있습니다.) |
resendUnsubscribeNo | String | X | 대체 발송 080 수신거부번호 (SMS 상품에 등록된 080수신거부번호가 아닐 경우, 대체발송이 실패할 수 있습니다.) |
[예시]
curl -X POST -H "Content-Type: application/json;charset=UTF-8" -H "X-Secret-Key:{secretkey}" https://api-alimtalk.cloud.toast.com/friendtalk/v2.2/appkeys/{appkey}/failback/appkey -d '{"senderKey": "9e0afe2c12aaaaaaaaaa7520052880b555f1a60a","isResend": true,"resendSendNo": "01012341234", "resendUnsubscribeNo": "0801234567" }
{
"header": {
"resultCode": Integer,
"resultMessage": String,
"isSuccessful": boolean
}
}