문자 API 연동 안내
- API는 Full rest api 방식으로 제공되므로 별도 모듈 설치를 필요로 하지 않습니다.
- API 사용을 위해 [API 토큰 관리] 페이지에서 token 발급을 해야 합니다.
- API 토큰 관리에 등록된 토큰과 서버 ip에서만 발송 가능합니다.
API Request 공통사항
Request URL
https://apis.ssodaa.com{API POST URL}
아래 제공되는 api 호출시 사용되는 URL 입니다. api별 POST URL을 조합하여 request 합니다.
필수 요청 Header
https://apis.ssodaa.com{API POST URL} 아래 제공되는 api 호출시 사용되는 URL 입니다. api별 POST URL을 조합하여 request 합니다.
키 | 값 | 설명 |
---|---|---|
x-api-key | 쏘다에서 발급받은 api키 | [API 토큰 관리] 에서 tokey_key 와 api_key 를 발급받을 수 있습니다. |
Content-Type | 아래 안내된 Content-Type | Content-Type과 Charset을 반드시 확인해주세요. |
등록된 발신번호 조회
POST URL | /sms/sendphone/list |
---|---|
Content-Type | application/json; charset=utf-8 |
Request
키 | 타입 | 필수 | 설명 |
---|---|---|---|
token_key | String | O | 회원 토큰 |
Response
키 | 타입 | 설명 | ||
---|---|---|---|---|
code | String | 결과 코드 (성공시: 200) | ||
error | String | 실패시 오류 메시지 | ||
content | message | String | API Request 성공 메시지 | |
sendphones | Array | 발신번호 리스트 | ||
number | String | 등록된 발신번호 | ||
auth_type | String | 발신번호 인증 유형 ('휴대전화 본인인증' / '서류인증') | ||
request_date | String | 등록 요청일 | ||
confirm_date | String | 승인일 | ||
blocked_date | String | 차단된 경우 차단일 |
발송하기
단문은 80byte 까지 가능합니다.장문은 2,000byte 까지 가능합니다.
mms시 첨부파일이 여러개인 경우 각각의 mms로 나뉘어 발송됩니다. (ex: 2개 첨부시 mms 2건 발송)
POST URL | /sms/send/sms |
---|---|
Content-Type | application/json; charset=utf-8 |
Request
키 | 타입 | 필수 | 설명 |
---|---|---|---|
token_key | String | O | 회원 토큰 |
msg_type | String | O | 메시지 타입 sms: 단문 (본문 내용이 80byte를 초과하는 경우 자동으로 장문 문자로 발송. 파일 첨부 불가) mms: 멀티 (mms로 설정하여 이미지 미첨부 발송시 자동으로 일반 문자(단문 or 장문)로 발송) |
dest_phone | String | O | 수신번호 (파이프로 구분하여 다량 발송 가능) |
send_phone | String | O | 발신번호 (등록된 발신번호만 사용 가능) |
subject | String | X | mms인 경우 메시지 제목 |
msg_body | String | O |
메시지 내용 광고성 문자 여부(msg_ad) 가 'Y'인 경우 메시지 내용에 반드시 업체명이 입력 되어야 함. '(광고)', '무료거부번호 (unsub_phone)' 자동 기입됨. |
send_time | String | X | 예약 발송시 발송 원하는 시간 입력 (ex: 2023-04-09 16:30:00) |
msg_ad | String | X |
광고성 문자 발송 여부 (Y/N) msg_ad 가 'N'로 광고성 문자가 발송된 경우 과태료가 발생할 수 있으므로, 광고문자의 경우 반드시 msg_ad 를 'N'으로 설정하여 080 무료거부번호를 포함해야 함. 'Y'로 설정시 문자 내용에 '(광고)', '무료거부번호(unsub_phone)' 자동 기입됨. msg_ad 가 'Y'인 경우 msg_body 는 51 byte 로 제한하며, 초과시 lms로 자동 발송 |
unsub_phone | String | X | msg_ad 가 'Y'인 경우(광고성 문자 발송) 무료거부번호 입력 (ex: 080-0000-0000) 비워두는 경우 쏘다 제공 무료 080번호 자동 표기됨 |
attached_file | String | X | mms인 경우 이미지 URL (파이프로 구분하여 다량 첨부 가능) 첨부가능 이미지 : jpg, jpeg / 첨부가능 용량 : 최대 60 kb 가능 |
Response
키 | 타입 | 설명 | ||
---|---|---|---|---|
code | String | 결과 코드 (성공시: 200) | ||
error | String | 실패시 오류 메시지 | ||
content | message | String | API Request 성공 메시지 | |
sent_messages | Array | 수신 메시지 정보 | ||
msg_id | String | 발송된 메시지 고유 코드 | ||
dest_phone | String | 메시지 수신 번호 | ||
reserv | String | 예약여부 (Y/N) | ||
sent_time | String | 예약시간 | ||
send_phone | String | 발신번호 (등록된 발신번호만 사용 가능) |
잔여 포인트 조회
POST URL | /sms/remaining/amount |
---|---|
Content-Type | application/json; charset=utf-8 |
Request
키 | 타입 | 필수 | 설명 |
---|---|---|---|
token_key | String | O | 회원 토큰 |
Response
키 | 타입 | 설명 | |
---|---|---|---|
code | String | 결과 코드 (성공시: 200) | |
error | String | 실패시 오류 메시지 | |
content | message | String | API Request 성공 메시지 |
point | Integer | 현재 보유 포인트 | |
sms_amount | Integer | sms 발송 가능 건수 | |
lms_amount | Integer | lms 발송 가능 건수 | |
mms_amount | Integer | mms 발송 가능 건수 |
발송 내역 리스트
POST URL | /sms/sent/list |
---|---|
Content-Type | application/json; charset=utf-8 |
Request
키 | 타입 | 필수 | 설명 |
---|---|---|---|
token_key | String | O | 회원 토큰 |
page | String | X | 노출 페이지 번호 (기본값: 1) |
msg_type | String | X | 조회할 문자메시지 타입 (sms / mms) |
status | Integer | X | 상태값 (0: 대기 / 1: 성공 / 2: 실패) |
where | String | X | 검색 조건 설정 (dest_phone: 수신번호 / send_phone: 발송번호 / msg_body: 내용) |
keyword | String | X | 검색 키워드 |
start_date | String | X | 조회 시작일 (yyyy-mm-dd) |
end_date | String | X | 조회 종료일 (yyyy-mm-dd) |
limit | Integer | X | 페이지당 노출 개수 (기본값: 15) |
Response
키 | 타입 | 설명 | ||
---|---|---|---|---|
code | String | 결과 코드 (성공시: 200) | ||
error | String | 실패시 오류 메시지 | ||
content | message | String | API Request 성공 메시지 | |
totalResult | Integer | 확인된 전체 발송 수 | ||
paging | Object | 페이징 정보 | ||
thisPageTotalResult | Integer | 현재 페이지의 전체 데이터 개수 | ||
displayPageAnchor | String | 하단 페이징에 노출될 페이지 번호 (','로 구분된 String) | ||
nowPage | Integer | 현재 페이지 번호 | ||
totalPage | Integer | 전체 페이지 번호 | ||
firstPage | Integer | 첫번째 페이지 번호 | ||
prevPage | Integer | 이전 페이지 번호 | ||
nextPage | Integer | 다음 페이지 번호 | ||
lastPage | Integer | 마지막 페이지 번호 | ||
result | Array | 발송 목록 | ||
number | String | 노출될 데이터의 고유 번호 | ||
msg_id | String | 메시지의 고유 코드 | ||
datetime | String | 발송 요청일 | ||
msg_type | String | 메시지 타입 (sms / lms / mms) | ||
status | String | 상태 (대기중 / 성공 / 실패) | ||
error_msg | String | 발송 실패한 경우 오류 메시지 | ||
dest_phone | String | 수신 번호 | ||
send_phone | String | 발신 번호 | ||
subject | String | lms / mms인 경우 제목 | ||
msg_body | String | 메시지 본문 | ||
attached_file | String | 첨부된 파일 (다수의 파일인 경우 파이프로 구분하여 반환) |
예약 발송 내역 리스트
POST URL | /sms/sent/reserved/list |
---|---|
Content-Type | application/json; charset=utf-8 |
Request
키 | 타입 | 필수 | 설명 |
---|---|---|---|
token_key | String | O | 회원 토큰 |
page | String | X | 노출 페이지 번호 |
msg_type | String | X | 조회할 문자메시지 타입 (sms / mms) |
status | Integer | X | 상태값 (0: 대기 / 1: 성공 / 2: 실패) |
where | String | X | 검색 조건 설정 (dest_phone: 수신번호 / send_phone: 발송번호 / msg_body: 내용) |
keyword | String | X | 검색 키워드 |
start_date | String | X | 조회 시작일 (yyyy-mm-dd) |
end_date | String | X | 조회 종료일 (yyyy-mm-dd) |
limit | Integer | X | 페이지당 노출 개수 (기본값: 15) |
Response
키 | 타입 | 설명 | ||
---|---|---|---|---|
code | String | 결과 코드 (성공시: 200) | ||
error | String | 실패시 오류 메시지 | ||
content | message | String | API Request 성공 메시지 | |
totalResult | Integer | 확인된 전체 발송 수 | ||
paging | Object | 페이징 정보 | ||
thisPageTotalResult | Integer | 현재 페이지의 전체 데이터 개수 | ||
displayPageAnchor | String | 하단 페이징에 노출될 페이지 번호 (','로 구분된 String) | ||
nowPage | Integer | 현재 페이지 번호 | ||
totalPage | Integer | 전체 페이지 번호 | ||
firstPage | Integer | 첫번째 페이지 번호 | ||
prevPage | Integer | 이전 페이지 번호 | ||
nextPage | Integer | 다음 페이지 번호 | ||
lastPage | Integer | 마지막 페이지 번호 | ||
result | Array | 발송 목록 | ||
number | String | 노출될 데이터의 고유 번호 | ||
msg_id | String | 메시지의 고유 코드 | ||
datetime | String | 발송 요청일 | ||
msg_type | String | 메시지 타입 (sms / lms / mms) | ||
sendtime | String | 발송 예약 시간 | ||
status | String | 상태 (대기중 / 성공 / 실패) | ||
error_msg | String | 발송 실패한 경우 오류 메시지 | ||
dest_phone | String | 수신 번호 | ||
send_phone | String | 발신 번호 | ||
subject | String | lms / mms인 경우 제목 | ||
msg_body | String | 메시지 본문 | ||
attached_file | String | 첨부된 파일 (다수의 파일인 경우 파이프로 구분하여 반환) |