지정된 CDR의 발신자에게 직접 입력한 메시지 내용으로 문자(SMS/LMS)를 발송하는 API입니다.
1. API 개요
처리 과정
1.
요청된 CDR 정보 검증
2.
발신자 휴대폰 번호 확인
3.
메시지 타입(SMS/LMS) 검증
4.
문자 발송 요청 처리
5.
발송 결과 반환
2. 사전 조건 / 권한
이 API를 사용하기 위해 다음 조건이 필요합니다.
•
콜브릿지(Call Bridge) 계정 생성
•
API Access Token 발급
•
문자 발송 서비스 활성화
3. API 정보
Method / Endpoint
Header
이름 | 타입 | 필수 | 기본값 | 설명 |
Authorization | string | O | Bearer {ACCESS_TOKEN} 형식으로 전달 | |
Content-Type | string | O | application/json |
4. Request
Request Body
이름 | 타입 | 필수 | 기본값 | 설명 |
agentId | Long | O | - | 에이전트 ID (양수) |
cdrId | String | O | - | 문자 발송 대상 CDR ID |
messageType | String | O | - | 메시지 타입 (SMS, LMS) |
title | String | X | null | 메시지 제목 (LMS인 경우 필수, 최대 40자) |
content | String | O | - | 문자 메시지 내용 (최대 2000자) |
Request Example
cURL
curl -X POST "https://bnd.happytalk.io/api/openapi/messages/send-direct" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"agentId": 123,
"cdrId": "10017698",
"messageType": "LMS",
"title": "안내 메시지",
"content": "안녕하세요. 해피톡 고객센터입니다. 상담이 완료되었습니다."
}'
JavaScript
복사
5. Response
Response 정보
•
Status Code: 200 OK
•
Content-Type: application/json
Response Body Example
json
{
"code": "OK",
"timestamp": 1735437506000,
"message": "문자 발송이 완료되었습니다",
"data": {
"siteId": "921004321466",
"cdrId": "10017698",
"agentId": 123,
"messageType": "SMS",
"phoneNumber": "010****5678",
"result": "SUCCESS",
"requestedAt": "2026-01-27T15:30:00Z"
}
}
JavaScript
복사
Resonse Field명
이름 | 타입 | 필수 | 기본값 | 설명 |
code | String | O | - | 응답 코드 |
timestamp | Long | O | - | 응답 일시 (Unix timestamp) |
message | String | X | - | 응답 메시지 |
data | Object | O | - | 문자 발송 결과 데이터 |
data
이름 | 타입 | 필수 | 기본값 | 설명 |
siteId | String | O | - | 사이트 ID |
cdrId | String | O | - | 문자 발송 대상 CDR ID |
agentId | Long | O | - | 에이전트 ID |
messageType | String | O | - | 메시지 타입 (SMS, LMS) |
phoneNumber | String | O | - | 수신자 전화번호 (마스킹 처리) |
result | String | O | - | 문자 발송 결과 (SUCCESS) |
requestedAt | String | O | - | 문자 발송 요청 시각 (ISO 8601) |
6. 에러 / 예외처리
오류 발생 시 code와 message 필드에 상세 정보가 반환됩니다.
HTTP 상태명 | Error Code | Message | 설명 |
400 Bad Request | BAD_REQUEST | CDR ID 형식이 올바르지 않습니다 | CDR ID 형식 오류 |
400 Bad Request | BAD_REQUEST | 휴대폰 번호가 아닙니다 | CDR의 발신번호가 휴대폰 번호가 아닌 경우 |
400 Bad Request | BAD_REQUEST | LMS 발송 시 제목은 필수입니다 | messageType이 LMS인데 title이 없는 경우 |
401 Unauthorized | UNAUTHORIZED | Invalid credentials | API Key 미전송 또는 인증 실패 |
403 Forbidden | FORBIDDEN | 문자 발송 서비스가 신청되지 않았습니다 | 사이트에 문자 발송 서비스 미신청 |
404 Not Found | NOT_FOUND | CDR을 찾을 수 없습니다 | 존재하지 않는 CDR |
404 Not Found | NOT_FOUND | 발신 가능한 번호가 없습니다 | 발신 번호 미설정 |
500 Internal Server Error | INTERNAL_SERVER_ERROR | 문자 발송에 실패했습니다 | 문자 발송 처리 중 오류 |
