Skip to content

Errores y códigos de estado · Developers

Códigos HTTP devueltos por la API pública de Dailybot, su significado y cómo recuperarse.

La API de Dailybot devuelve códigos HTTP estándar en cada respuesta. Las respuestas exitosas caen en el rango 2xx; los errores del cliente en 4xx; los del servidor en 5xx. Cada cuerpo de error sigue la misma forma: un `detail` en el nivel raíz y errores de validación opcionales por campo bajo `errors`.

Envoltura de la respuesta de error

Toda respuesta que no sea 2xx es un objeto JSON con al menos un campo `detail`. Los errores de validación (400 en endpoints de escritura) incluyen adicionalmente un mapa `errors` por campo. Los rate limits (429) devuelven un header `Retry-After` junto con el cuerpo JSON.

{
  "detail": "Human-readable summary of what went wrong.",
  "errors": {
    "field_name": ["Field-level validation message."]
  }
}

Códigos de estado devueltos por la API pública

EstadoCuándo lo obtienesCómo recuperarte
200 OKGET, PATCH exitoso, o un POST que devuelve el recurso.Nada que hacer — éxito.
201 CreatedPOST exitoso que crea un recurso nuevo.El recurso está en el body; anota el `uuid`.
202 AcceptedPetición aceptada para procesamiento async (send-message, send-email, trigger de workflow).Haz polling o suscríbete a un webhook para saber cuándo se completa.
204 No ContentDELETE o PATCH exitoso sin body de respuesta.Nada que parsear; éxito.
400 Bad RequestError de validación. El campo `errors` contiene mensajes por campo.Corrige el payload y reintenta. Nunca reintentes a ciegas.
401 UnauthorizedCredencial faltante, expirada o inválida.Confirma tu API key o refresca tu sesión Bearer del CLI con `dailybot login`.
403 ForbiddenCredencial válida pero sin permisos para esta acción, o endpoint CLI-only.Revisa la matriz de paridad en [/es/developers/authentication#parity-guarantee](/es/developers/authentication#parity-guarantee).
404 Not FoundEl recurso no existe, o el llamante no puede verlo en esta organización.Verifica el UUID y el scope de la credencial.
409 ConflictLa escritura entra en conflicto con el estado actual.Relee el recurso, elige el siguiente estado correcto, reintenta.
422 Unprocessable EntityPayload sintácticamente válido pero semánticamente inválido.Lee `detail` — el mensaje identifica el campo problemático.
429 Too Many RequestsRate limit excedido.Respeta el header `Retry-After`. Ver [/es/developers/rate-limits](/es/developers/rate-limits).
500 Internal Server ErrorError inesperado del lado de Dailybot.Reintenta con exponential backoff. Si persiste, contacta a soporte.
502 / 503 / 504Caída upstream o ventana de mantenimiento.Reintenta con exponential backoff.

Política de reintentos

Reintenta solo en 429, 502, 503, 504 y 5xx idempotentes. Nunca reintentes un 4xx a ciegas — el error está de tu lado. Para 429, honra `Retry-After`; para 5xx, usa exponential backoff (empieza en 250 ms, tope en 30 s, agrega jitter).