Saltar al contenido
NotHolyDocs

Guías

Errores

Formato de los errores, códigos de estado y qué errores conviene reintentar.

Ver en Markdown

Los errores usan el formato del endpoint al que llamaste.

Formatos de OpenAI:

JSON
{"error": {"message": "not enough credits for this request. Add credits in the console", "type": "insufficient_quota", "code": "insufficient_credits"}}

Messages:

JSON
{"type": "error", "error": {"type": "rate_limit_error", "message": "too many requests per minute for this key"}}
EstadoCódigo¿Reintentar?Qué hacer
400invalid_request, unsupported_parameterNoCorrige el cuerpo
401invalid_api_keyNoRevisa la clave
402insufficient_credits, key_budget_exceededNoAgrega créditos o sube el presupuesto de la clave
403key_not_allowed, account_suspendedNoRevisa los modelos de la clave o contacta a soporte
403consent_requiredNoQuien creó la clave rechazó o retiró el consentimiento para el procesamiento en Estados Unidos y China. Puede aceptarlo en la consola
404model_not_found, not_foundNoRevisa el ID
413request_too_largeNoEnvía menos
429rate_limit_exceeded, concurrency_limit_exceeded, capacity_busySíEspera los segundos de retry-after
500internal_errorSí, con backoffReporta el x-request-id si se repite
502, 504upstream_error, upstream_timeoutSí, con backoff
503model_unavailableSíReintenta con backoff (retry-after viene definido mientras el servicio se reinicia) o usa otro modelo

retry-after viene en segundos enteros y nunca supera 60. Las solicitudes fallidas no se cobran.

Reintentos seguros

En las solicitudes sin streaming, envía un encabezado Idempotency-Key. Un reintento con la misma clave dentro de las 24 horas devuelve la primera respuesta, con x-notholy-idempotent-replay: true, y no se vuelve a cobrar.

curl
curl https://api.notholy.com/v1/chat/completions \
  -H "Authorization: Bearer $NOTHOLY_API_KEY" \
  -H "Idempotency-Key: report-42-summary" \
  -H "Content-Type: application/json" \
  -d '{"model": "notholy-specter", "messages": [{"role": "user", "content": "One-line summary of an open redirect."}]}'

Los SDK oficiales ya reintentan los 429 y 5xx con backoff.

Siguientes pasos