응답 코드 해석
비즈고 API는 세 가지 레이어에서 코드를 반환합니다.
각 코드의 위치와 의미를 이해하면 에러를 정확하게 진단하고 처리할 수 있습니다.
{
"common": {
"authCode": "A000",
"authResult": "Success"
},
"data": {
"code": "0000",
"message": "success",
"data": {
"destinations": [
{
"to": "01000000000",
"msgKey": "MSG-20260403-001",
"reportCode": "1000",
"reportResult": "success"
}
]
}
}
}
| 위치 | 설명 |
|---|
common.authCode | 인증 레이어 결과 (API 키 유효성, 권한) |
data.code | 요청 처리 레이어 결과 (발송 요청 수신 여부) |
data.data.destinations[].reportCode | 실제 발송 결과 (이통사·채널 처리 결과) |
API 요청 자체의 인증 성공 여부를 나타냅니다. A000이 아니면 요청이 처리되지 않은 것입니다.
| authCode | 의미 | 권장 처리 |
|---|
A000 | 인증 성공 | 정상 처리 |
A010 | API 키 없음 | Authorization 헤더 확인 |
A020 | Rate Limit 초과 | Retry-After 대기 후 재시도 |
A030 | API 키 만료 / 비활성 | 콘솔에서 키 상태 확인 |
A040 | 권한 없음 | 해당 채널 사용 계약 확인 |
A050 | IP 차단 | 허용 IP 등록 여부 확인 |
요청 본문이 올바르게 처리되었는지 나타냅니다.
| data.code | 의미 | 권장 처리 |
|---|
0000 | 요청 정상 수신 | msgKey 저장 후 리포트 대기 |
1001 | destinations 필드 오류 | 수신자 번호·형식 확인 |
1002 | messageFlow 필드 오류 | 채널 파라미터 확인 |
1003 | 필수 파라미터 누락 | 요청 스키마 검토 |
1010 | 발신번호 미등록 | 콘솔에서 발신번호 등록 |
1011 | 발신번호 차단 | 이통사 차단 여부 확인 |
1020 | 알림톡 템플릿 불일치 | 템플릿 코드·변수 확인 |
1021 | 알림톡 템플릿 미승인 | 카카오 심사 대기 또는 재신청 |
1030 | RCS 브랜드 미등록 | RCS 브랜드 등록 확인 |
1040 | 잔액 부족 | 충전 후 재시도 |
9999 | 내부 서버 오류 | 잠시 후 재시도, 지속 시 문의 |
실제로 수신자에게 전달된 결과입니다. 채널별로 코드 체계가 다릅니다.
| reportCode | 의미 | 권장 처리 |
|---|
1000 | 발송 성공 | 정상 처리 |
2000 | 수신자 없음 (결번) | 번호 유효성 검증 |
2001 | 전원 꺼짐 / 장기 미수신 | 재시도 또는 포기 |
2002 | 수신 거부 | 수신 거부 목록에 추가 |
2003 | 번호 이동 실패 | 수신자 번호 업데이트 필요 |
3000 | Fallback 발동 | 다음 채널로 자동 전환됨 (정상) |
4000 | 채널 일시 장애 | Fallback 발동 또는 재시도 |
4001 | 채널 타임아웃 | Fallback 발동 또는 재시도 |
9000 | 알 수 없는 오류 | 비즈고 문의 |
| reportCode | 의미 | 권장 처리 |
|---|
3100 | 카카오 앱 미설치 | SMS Fallback 확인 |
3101 | 채널 차단 (수신 거부) | Fallback 또는 SMS 발송 |
3102 | 템플릿 불일치 | 템플릿 내용·변수 검토 |
3104 | 광고 수신동의 없음 | 수신동의 상태 확인 |
| reportCode | 의미 | 권장 처리 |
|---|
5100 | RCS 미지원 단말 | SMS/LMS Fallback 확인 |
5101 | RCS 서비스 미가입 | Fallback 발동 정상 |
5102 | 메시지베이스 오류 | messagebaseId 확인 |
{
"common": { "authCode": "A000", "authResult": "Success" },
"data": {
"code": "0000",
"message": "success",
"data": {
"destinations": [
{
"to": "01012345678",
"msgKey": "MSG-20260403-00123",
"reportCode": "1000",
"reportResult": "success"
}
]
}
}
}
{
"common": { "authCode": "A000", "authResult": "Success" },
"data": {
"code": "0000",
"data": {
"destinations": [
{
"to": "01012345678",
"msgKey": "MSG-20260403-00124",
"reportCode": "3100",
"reportResult": "fallback",
"fallback": {
"channel": "sms",
"reportCode": "1000",
"reportResult": "success"
}
}
]
}
}
}
{
"common": {
"authCode": "A020",
"authResult": "Rate limit exceeded"
}
}
요청 시 authCode 확인
└─ A000 아님 → 인증 오류 처리 (재시도/점검)
data.code 확인
└─ 0000 아님 → 요청 파라미터 오류 처리
발송 후 reportCode 확인
└─ 1000 → 성공
└─ 3000 → Fallback 발동 (다음 채널 reportCode 확인)
└─ 2xxx → 수신자 문제 (번호 업데이트)
└─ 4xxx → 채널 장애 (재시도)