Manejo de errores
El formato y la estructura de un error y el catálogo completo de códigos, con su estado HTTP y cuándo ocurre cada uno, están en Códigos de error. Esta página cubre cómo reaccionar ante un error una vez identificado.
Errores del lado del cliente
Algunas operaciones, como las de archivos, involucran sistemas además de la API de Kivox; por ejemplo, el proveedor de almacenamiento de objetos. Cuando esto aplica, un SDK puede envolver el error en un tipo propio que identifica en qué sistema y en qué etapa ocurrió el fallo, en vez de propagar el error de la API sin ese contexto.
El detalle de este tipo de error, incluyendo cada valor posible de stage, está en SDK de TypeScript. Cada SDK documenta sus propios tipos de error, si los tiene, en su página bajo SDKs.
Cuándo reintentar
El detalle de cada código dentro de estas categorías está en Códigos de error.
Idempotencia
No reintente automáticamente una operación que ya pudo haber ejecutado un efecto externo, como el envío de un mensaje, sin verificar primero si esa operación se completó.
El envío de mensajes admite un encabezado Idempotency-Key para este propósito exacto, descrito en Streaming y eventos.
Para operaciones sobre archivos, el SDK de TypeScript expone un control de reintento separado para las solicitudes hacia el almacenamiento de objetos, distinto del reintento hacia la API de Kivox. Ver SDK de TypeScript.