API 사용 전 꼭 확인해야 할 기본 정보
SMS/LMS/MMS 문자 발송을 위한 모든 API 엔드포인트
동일한 내용을 최대 1,000명에게 동시 전송
POST https://api.jeonhao.com/send/서로 다른 내용을 각각 최대 500명에게 전송
POST https://api.jeonhao.com/send_mass/최근 메시지 전송 이력 및 상태 확인
POST https://api.jeonhao.com/list/개별 수신자별 전송 결과 상세 확인
POST https://api.jeonhao.com/sms_list/사용 가능한 SMS/LMS/MMS 건수 확인
POST https://api.jeonhao.com/remain/예약된 메시지 전송 취소 (발송 5분 전까지)
POST https://api.jeonhao.com/cancel/동일한 내용의 메시지를 최대 1,000명에게 동시에 전송합니다.
POST https://api.jeonhao.com/send/| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| key | 필수 | String | API 인증 키 |
| user_id | 필수 | String | 사용자 ID |
| sender | 필수 | String | 발신번호 (사전 등록 필수, 최대 16바이트) |
| receiver | 필수 | String | 수신번호 (콤마로 구분, 최대 1,000개) 예: 01012345678,01087654321 |
| msg | 필수 | String | 메시지 내용 (1~2,000바이트) |
| msg_type | 선택 | String | 메시지 타입: SMS, LMS, MMS 미지정 시 90바이트 초과 시 자동으로 LMS 전환 |
| title | 선택 | String | LMS/MMS 제목 (1~44바이트) |
| destination | 선택 | String | 수신자명 (콤마로 구분) receiver와 동일한 순서로 매칭 |
| rdate | 선택 | String | 예약 날짜 (YYYYMMDD 형식) 예: 20241115 |
| rtime | 선택 | String | 예약 시간 (HHMM 형식) 예: 1430 (오후 2시 30분) |
| image1, image2, image3 | 선택 | File | MMS 이미지 파일 (JPEG, PNG, GIF) |
| testmode_yn | 선택 | String | 테스트 모드 (Y: 실제 발송 없음, 과금 없음) |
| 필드 | 타입 | 설명 |
|---|---|---|
| result_code | Integer | 결과 코드 (1: 성공, -99: 실패) |
| message | String | 결과 메시지 |
| msg_id | String | 메시지 고유 ID (전송 내역 조회에 사용) |
| success_cnt | Integer | 성공 건수 |
| error_cnt | Integer | 실패 건수 |
| msg_type | String | 최종 전송된 메시지 타입 (SMS, LMS, MMS) |
key=abcdefghijklmnop123456 user_id=hong sender=0212345678 receiver=01012345678,01087654321,01011112222 msg=안녕하세요. 전하오 문자 발송 서비스입니다. msg_type=SMS
{
"result_code": 1,
"message": "성공",
"msg_id": "202411091430123456",
"success_cnt": 3,
"error_cnt": 0,
"msg_type": "SMS"
}서로 다른 내용의 메시지를 각각 최대 500명에게 전송합니다.
POST https://api.jeonhao.com/send_mass/| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| key | 필수 | String | API 인증 키 |
| user_id | 필수 | String | 사용자 ID |
| sender | 필수 | String | 발신번호 (사전 등록 필수) |
| cnt | 필수 | Integer | 전송할 메시지 개수 (1~500) |
| rec_1 ~ rec_500 | 필수 | String | 각 수신번호 예: rec_1=01012345678, rec_2=01087654321 |
| msg_1 ~ msg_500 | 필수 | String | 각 메시지 내용 (rec_N과 매칭) |
| msg_type | 선택 | String | 메시지 타입 (SMS, LMS, MMS) 중요: 모든 메시지가 동일한 타입이어야 함 |
| rdate, rtime | 선택 | String | 예약 날짜/시간 |
key=abcdefghijklmnop123456 user_id=hong sender=0212345678 cnt=3 rec_1=01012345678 msg_1=홍길동님, 회의 시간이 오후 2시로 변경되었습니다. rec_2=01087654321 msg_2=김철수님, 제출하신 서류가 승인되었습니다. rec_3=01011112222 msg_3=이영희님, 내일 미팅 일정을 확인해주세요. msg_type=LMS
{
"result_code": 1,
"message": "성공",
"msg_id": "202411091430567890",
"success_cnt": 3,
"error_cnt": 0,
"msg_type": "LMS"
}최근 전송한 메시지의 이력을 조회합니다.
POST https://api.jeonhao.com/list/| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| key | 필수 | String | API 인증 키 |
| user_id | 필수 | String | 사용자 ID |
| page | 선택 | Integer | 페이지 번호 (기본값: 1) |
| page_size | 선택 | Integer | 페이지당 결과 수 (30~500, 기본값: 30) |
| start_date | 선택 | String | 조회 시작 날짜 (YYYYMMDD) |
| limit_day | 선택 | Integer | 조회 기간 (일 단위) |
최근 전송 내역이 배열 형태로 반환됩니다. 각 항목은 다음 필드를 포함합니다:
개별 수신자별 전송 결과를 상세하게 확인합니다.
POST https://api.jeonhao.com/sms_list/| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| key | 필수 | String | API 인증 키 |
| user_id | 필수 | String | 사용자 ID |
| mid | 필수 | String | 조회할 메시지 ID (list API에서 획득) |
각 수신자별 상세 정보가 배열로 반환됩니다:
사용 가능한 SMS/LMS/MMS 건수를 확인합니다.
POST https://api.jeonhao.com/remain/| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| key | 필수 | String | API 인증 키 |
| user_id | 필수 | String | 사용자 ID |
💡 포인트 잔액을 기준으로 각 메시지 타입별 발송 가능 건수가 계산됩니다.
예약된 메시지 전송을 취소합니다. (발송 5분 전까지만 가능)
POST https://api.jeonhao.com/cancel/| 파라미터 | 필수 | 타입 | 설명 |
|---|---|---|---|
| key | 필수 | String | API 인증 키 |
| user_id | 필수 | String | 사용자 ID |
| mid | 필수 | String | 취소할 메시지 ID (send API에서 획득) |
| 필드 | 타입 | 설명 |
|---|---|---|
| result_code | Integer | 결과 코드 (1: 취소 성공, -99: 취소 실패) |
| message | String | 결과 메시지 |
API 응답 코드 및 에러 처리 가이드
| 코드 | 의미 | 설명 |
|---|---|---|
| 1 | 성공 | API 요청이 정상적으로 처리되었습니다 |
| -99 | 전송 실패 | 메시지 전송에 실패했습니다. message 필드를 확인하세요 |
| -100 | 인증 실패 | API 키 또는 사용자 ID가 올바르지 않습니다 |
| -101 | 잔액 부족 | 포인트가 부족하여 메시지를 전송할 수 없습니다 |
| -102 | 발신번호 미등록 | 발신번호가 사전 등록되지 않았습니다 |
| -103 | 필수 파라미터 누락 | 필수 파라미터가 누락되었습니다 |
| -104 | 수신번호 오류 | 수신번호 형식이 올바르지 않습니다 |
| -105 | 메시지 길이 초과 | 메시지 내용이 허용 길이를 초과했습니다 |
| -106 | 전송 건수 초과 | 1회 전송 가능한 최대 건수를 초과했습니다 |
| -107 | 예약 시간 오류 | 예약 시간 형식이 올바르지 않거나 과거 시간입니다 |
원하시는 언어로 바로 시작해 보세요
const response = await fetch('https://api.jeonhao.com/send/', {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
},
body: new URLSearchParams({
key: 'YOUR_API_KEY',
user_id: 'YOUR_USER_ID',
sender: '0212345678',
receiver: '01012345678,01087654321',
msg: '안녕하세요, 전하오입니다.',
msg_type: 'SMS'
})
});
const data = await response.json();
console.log(data);
// { result_code: 1, message: '성공', msg_id: '12345678' }평균 300ms 이내의 빠른 API 응답으로 실시간 메시징 구현
API Key 기반의 안전한 인증 시스템과 HTTPS 통신
코드 예제와 함께 제공되는 친절한 API 레퍼런스
회원가입 후 즉시 API 키를 발급받아 개발을 시작할 수 있습니다.
이메일로 간편하게 가입하세요
대시보드에서 API 키를 생성하세요
API를 호출하여 메시지를 발송하세요
다양한 언어를 위한 공식 SDK를 제공합니다
npm install @jeonhao/sdkpip install jeonhaocomposer require jeonhao/sdkmaven: jeonhao-sdk