오류 레퍼런스

표준화된 오류 형식과 가장 흔한 오류 코드.

형식

엔드포인트와 관계없이 모든 오류는 동일한 JSON 구조를 따릅니다:

json
{
  "error": {
    "code": "insufficient_credits",
    "message": "Solde de credits insuffisant ou budget mensuel du projet depasse.",
    "request_id": "9480fe92-f68e-4731-b98e-d35a5e8b9819",
    "details": {}
  }
}

request_id는 여러 서비스에 걸쳐 요청을 처음부터 끝까지 식별합니다 — 예기치 않은 오류로 문의하실 때 제공해 주시면 유용합니다.

자주 발생하는 코드

HTTP코드의미
401missing_api_keyAuthorization 헤더가 없습니다.
401invalid_api_key유효하지 않거나, 폐기되었거나, 만료된 API 키입니다.
403insufficient_scope이 카테고리에 필요한 범위를 키가 가지고 있지 않습니다.
403not_a_member귀하는 이 조직에 속해 있지 않습니다.
403csrf_check_failed보안 헤더가 누락되었습니다(세션 쿠키, API 키 사용 시에는 해당 없음).
404model_not_foundrouting_strategy "manual"에 카탈로그에 없는 model을 지정했습니다.
404no_model_available요청한 조건에 맞는 모델이 없습니다.
402insufficient_credits크레딧 잔액이 부족하거나 프로젝트의 월간 예산을 초과했습니다.
409conflict요청한 작업과 현재 상태가 호환되지 않습니다(예: 에이전트 대화가 idle 상태가 아님).
422validation_error요청 본문이 유효하지 않습니다(필드 누락, 잘못된 타입 등).
429rate_limit_exceeded이 키에 대한 요청이 너무 많습니다 — 속도 제한 문서를 참고하세요.
503all_providers_unavailable모든 후보 제공업체가 실패했습니다(라우팅 및 장애 조치 참고).

SDK에서

공식 SDK는 각 HTTP 상태 범위를 타입이 지정된 오류 클래스(AuthenticationError, PermissionDeniedError, NotFoundError, InsufficientCreditsError, ConflictError, ValidationError, RateLimitError, ServerError)로 변환하며, 모두 메시지 외에 .code, .status, .requestId, .details를 제공합니다. JavaScript SDK / Python SDK를 참고하세요.