본문으로 건너뛰기

API 문서 · 안정성

오류 코드

통일된 오류 본문과 전체 오류 코드.

모든 오류는 동일한 구조를 사용합니다(오른쪽 예제 참고). 아래 표는 API가 반환할 수 있는 error.code와 HTTP 상태 코드입니다. 하나의 상태 코드에 여러 오류 코드가 대응할 수 있습니다.

HTTPcode상황재시도권장 조치
400invalid_requestJSON 형식 오류, Content-Type이 application/json이 아님, 또는 Idempotency-Key 누락 / 길이 초과. 요청 본문이 1 MB를 넘으면 413불가요청을 수정해 다시 전송
401invalid_api_keyKey가 없거나 폐기, 만료, 비활성화됨불가콘솔에서 Key 상태 확인
401unauthenticated콘솔 세션에 로그인하지 않았거나 세션이 만료됨불가다시 로그인
402quota_exceeded계정의 사용 가능 한도 부족, 예치 상한이 max_budget 초과(param은 max_budget), 또는 에셋 저장 공간 가득 참불가한도를 충전하거나 max_budget을 조정하거나 에셋을 정리한 뒤 재시도
402key_limit_exceededKey의 누적 또는 일일 한도 부족불가Key 한도를 조정한 뒤 재시도
403permission_deniedKey에 scope가 없거나, 모델이 Key 허용 목록에 없거나, 계정에 해당 모델 권한이 없음불가콘솔에서 Key 권한을 추가하거나 운영팀에 모델 활성화 요청
403csrf_failed콘솔 요청에 CSRF 토큰이 없거나 만료됨불가페이지를 새로고침한 뒤 재시도
403account_suspended계정이 정지됨불가운영팀에 문의
404not_found리소스가 없거나 본인 소유가 아님불가ID가 올바른지 확인
404not_available글로벌 사이트에서만 제공하는 기능으로 이 사이트에서는 사용할 수 없음불가해당 기능을 제공하는 사이트 이용
403terms_required최신 충전 약관에 동의하지 않음불가충전 약관을 읽고 동의한 뒤 재시도
409idempotency_conflict멱등 키는 같지만 요청 본문이 다름불가새 요청에는 새 멱등 키 사용
409conflict리소스 상태 충돌불가최신 상태를 다시 조회한 뒤 진행
409group_not_empty그룹에 아직 에셋이 있음불가그룹 내 에셋을 먼저 옮기거나 삭제
422invalid_parameter파라미터가 잘못되었거나 지원하지 않는 조합(임의로 버리지 않음)불가기능표를 참고해 파라미터 수정
422asset_not_ready에셋이 아직 처리 중가능상태가 available이 된 뒤 재시도
422authorization_required실존 인물 에셋에 유효한 승인이 없음불가실존 인물 승인 완료 후 재시도
429rate_limitedKey의 RPM 초과, 또는 계정 / Key의 동시 실행 한도 초과가능Retry-After에 따라 백오프 후 재시도
500internal_error플랫폼 내부 오류가능같은 멱등 키로 재시도

retryable이 true이면 백오프 후 재시도할 수 있습니다. 작업 생성을 재시도할 때는 반드시 같은 Idempotency-Key를 사용하세요.

접수 이후에 발생한 실패(예: 일시적으로 사용 가능한 경로가 없음)는 API 오류로 반환되지 않고 작업의 error.code에 나타납니다. 작업 실패 코드를 참고하세요.

오류 응답
HTTP/1.1 422 Unprocessable Entity
X-Request-Id: req_xxx

{
  "error": {
    "code": "asset_not_ready",
    "message": "에셋 asset_xxx가 아직 처리 중입니다. 상태가 available로 바뀐 뒤 다시 시도하세요",
    "param": "inputs[0].asset_id",
    "retryable": true,
    "request_id": "req_xxx"
  }
}