오류 코드
SMSBAT API와 상호작용할 때 오류가 발생할 수 있습니다. 우리는 기존 HTTP 응답 코드를 사용하여 API 요청의 성공 또는 실패를 나타냅니다.
일반적으로:
- 2xx 범위의 코드는 성공을 나타냅니다.
- '4xx' 범위의 코드는 제공된 정보에 따라 실패한 오류를 나타냅니다(예: 필수 매개변수가 생략되었거나 메시지 유형이 유효하지 않음 등).
- '5xx' 범위의 코드는 당사 서버에 오류가 있음을 나타냅니다.
HTTP 상태 코드
| 코드 | 상태 | 설명 |
|---|---|---|
| 200 | '알았어' | 요청이 성공했습니다. |
| 400 | '잘못된 요청' | 종종 필수 매개변수가 누락되었거나 잘못된 JSON으로 인해 요청을 수락할 수 없었습니다. |
| 401 | '무단' | 유효한 API 키가 제공되지 않았거나 인증이 실패했습니다. |
| 403 | '금지' | API 키에 요청을 수행할 권한이 없거나 계정이 정지되었습니다. |
| 404 | '찾을 수 없음' | 요청한 리소스가 존재하지 않습니다. |
| 415 | 지원되지 않는 미디어 유형 |
Content-Type 헤더가 누락되었거나 application/json으로 설정되지 않았습니다. |
| 422 | 처리할 수 없는 엔터티 |
요청의 형식은 올바르지만 의미상 오류(예: 잘못된 전화번호 형식)가 포함되어 있습니다. |
| 429 | '요청이 너무 많습니다' | 너무 많은 요청이 API에 너무 빨리 도달했습니다. 요청을 기하급수적으로 백오프하는 것이 좋습니다. |
| 500, 502, 503, 504 | '서버 오류' | SMSBAT 측에서 문제가 발생했습니다. |
오류 응답 형식
When an API request results in an error, the response body contains a JSON object with more details about the problem.
{
"status": 400,
"error": "Bad Request",
"message": "Missing required field: 'messages'",
"code": 1001
}
비즈니스 로직 오류 코드(내부 코드)
HTTP 상태 코드 외에도 특정 내부 '코드'를 반환하여 실패의 정확한 원인을 식별하는 데 도움을 줄 수 있습니다.
| 내부 코드 | 설명 | 권장 조치 |
|---|---|---|
| 1001 | 잘못된 요청 형식 |
요청 본문이 유효한 JSON인지 확인하세요. |
| 1002 | '필수 필드 누락' | 누락된 필드를 확인하려면 응답의 message 속성을 확인하세요. |
| 1003 | '잘못된 전화번호' | 수신자 번호가 E.164 형식인지 확인하세요(예: '380501234567'). |
| 1004 | 등록되지 않은 알파 이름 |
'from' 매개변수에 귀하의 계정에 대해 승인되지 않은 알파 이름이 포함되어 있습니다. |
| 1005 | '균형 부족' | 귀하의 계정에는 메시지 캠페인을 처리할 만큼 충분한 자금이 없습니다. |
| 1006 | 잘못된 메시지 유형 |
type 매개변수는 지원되는 유형(예: sms, viber_promo) 중 하나여야 합니다. |
| 1007 | '템플릿을 찾을 수 없음' | 요청한 Viber/OTP 템플릿 ID가 잘못되었거나 승인되지 않았습니다. |
| 1008 | 잘못된 캐러셀 항목 |
Viber 캐러셀에는 2~5개의 항목이 포함되어야 합니다. |
[!팁] 여기에 나열되지 않은 오류 코드가 발생하거나 실수로 오류가 반환되었다고 생각되는 경우 [email protected]에 문의하여 정확한 응답 페이로드와 헤더를 제공해 주시기 바랍니다.