Skip to main content
Cada respuesta de RyzeAPI tiene un formato predecible. Comprender este formato es el primer paso para manejar errores de manera robusta en tu código.

Formato general de respuesta

Todas las respuestas comienzan con el campo success, que indica si la operación fue exitosa.
Campos comunes en respuestas exitosas:
El envoltorio de error tiene solo success + error.message. No hay un campo numérico code ni errorType. La diferenciación programática debe hacerse mediante el status HTTP combinado con el contenido de error.message.

Códigos HTTP

Mensajes literales por categoría

La diferenciación granular entre errores se hace a través del texto de error.message. A continuación, los mensajes que puedes encontrar.
La causa raíz proveniente de Chatwoot siempre se incluye después de Detail: para diagnóstico.
El 503 de Typebot solo aparece en POST /api/typebot/set/:instance y POST /api/typebot/start/:instance. Los endpoints list, find y delete responden incluso sin el bridge.

Webhooks: errores de entrega

Los webhooks fallidos no devuelven un error síncrono, se persisten en una cola con:
  • status: pending / delivered / failed
  • attempts, max_attempts (predeterminado 5)
  • last_error: mensaje completo
  • next_retry_at: timestamp del próximo reintento
Backoff exponencial: Después de max_attempts, el estado pasa a failed y la fila permanece como Dead Letter Queue (auditoría/replay manual). Detalles en Eventos.

Buenas prácticas

Siempre verifica success antes de asumir que el contenido es válido.
El status HTTP es la fuente de verdad, payloads diferentes pueden tener el mismo error.message.
Reintenta 429 con backoff exponencial; respeta el límite global de 100/min.
No reintentes 4xx en general (excepto 408, 429).
Para 503 en Chatwoot, reconoce que el módulo Chatwoot no está habilitado en el servidor y deja de reintentar, regístralo para el operador.

Errores de validación de schema

Cuando envías un body con formato incorrecto (campo requerido faltante, tipo incompatible, etc.), la API devuelve 400 con un texto descriptivo:
No analices el texto de forma fina, valida tu body antes de enviarlo usando los schemas documentados en cada endpoint.

Siguiente

Autenticación

Detalles sobre tokens y ownership.

Límite de velocidad

Límites por minuto y cómo reaccionar a 429.