SOLAPI REST API 소개
이 문서는 SOLAPI의 REST API Reference를 제공합니다.
Representational State Transfer의 약자로, API 연동 규격을 명확하게 정의하고 쉽게 구현할 수 있는 아키텍처 스타일입니다.
자세한 내용은 Wikipedia를 참고하세요.
API 요청 규격 및 보안
대부분의 SOLAPI REST API 는 사용하기 위해서 인증 과정이 필요합니다.
Content-Type | 데이터 형식 | 문자 인코딩 | Authorization |
---|---|---|---|
application/json | JSON | UTF-8 | HMAC_SHA256 |
Resource URL 구성
https://api.solapi.com/<ServiceName>/<Version>/<ResourcePath></ResourcePath>
URL 구성 요소
구성 요소 | 예시 | 설명 |
---|---|---|
ServiceName | messages, balance, images | 서비스 종류 |
Version | v4 | API 버전 |
ResourcePath | /send, /list, ... | 특정 리소스 경로 |
Query Operator 가이드
Operator(오퍼레이터) 는 SOLAPI의 고급 검색 기능으로, URL Query Parameter를 사용할 때 정교한 필터링을 가능하게 합니다.
- API를 통해 SOLAPI 서비스를 효과적으로 활용하려면 오퍼레이터 사용법 숙지해야합니다.
eq
오퍼레이터가 지원되지 않는 필드에서는 기본 오퍼레이터도 사용할 수 없습니다.
오퍼레이터 종류
오퍼레이터[?] | 기능 | 주요 사용 케이스 | 설명 |
---|---|---|---|
*(기본값) | Equal | 정확한 값 매칭 | eq와 동일한 동작 |
eq | Equal | 상태, ID 검색 | 값과 정확히 일치 |
ne | Not Equal | 특정 값 제외 | 값과 일치하지 않음 |
like | Like | 텍스트 검색 | 값을 포함 |
gte | Greater Than or Equal | 날짜 범위 (시작) | 크거나 같음 |
lte | Less Than or Equal | 날짜 범위 (끝) | 작거나 같음 |
gt | Greater Than | 날짜 이후 | 초과 |
lt | Less Than | 날짜 이전 | 미만 |
in | In | 다중 선택 | 여러 값 중 하나와 일치 |
기능별 오퍼레이터 사용법이 상이할 수 있습니다. 메시지 조회시 여기를 참조하세요.
실제 사용 예시
https://api.solapi.com/messages/v4/list?
title[like]=공지&
title[ne]=공지사항&
status=COMPLETE&
dateCreated[gte]=2024-01-01&
dateCreated[lt]=2024-02-01&
type[in]=["SMS","LMS"]
위 쿼리의 의미
쿼리 파라미터 | 오퍼레이터[?] | 설명 |
---|---|---|
title[like]=공지 | like | 제목에 '공지'가 포함된 메시지 |
title[ne]=공지사항 | ne | 제목이 '공지사항'이 아닌 메시지 |
status=COMPLETE | eq | 발송 완료된 메시지 |
dateCreated[gte]=2024-01-01 | gte | 2024년 1월 1일 이후 생성 |
dateCreated[lt]=2024-02-01 | lt | 2024년 2월 1일 이전 생성 |
type[in]=["SMS","LMS"] | in | SMS 또는 LMS 타입 |
오류 처리
HTTP Status Code: 200
{
"statusCode": "2000",
"statusMessage": "정상 발송",
"data": {}
}
HTTP Status Code: 4xx / 5xx
{
"errorCode": "4000",
"errorMessage": "잘못된 요청입니다."
}
각 API별 상세한 오류 코드는 Message Status Codes 문서를 참고하세요.