Saltar al contenido principal

Errores y comportamiento de reintento

Las respuestas que no son exitosas usan este envoltorio:
{
  "error": {
    "code": "SOME_CODE",
    "message": "Human-readable explanation",
    "issues": []
  }
}

Guía de reintento

  • Reintenta los fallos de transporte.
  • Reintenta escrituras idempotentes con la misma Idempotency-Key.
  • Vuelve a leer el estado duradero después del trabajo asíncrono en lugar de asumir que la primera respuesta está completa.

Reglas prácticas

  • Trata los fallos del lado del servidor como candidatos a reintento solo cuando la escritura original usó una clave de idempotencia estable.
  • Considera las URLs nuevas de descarga de exportación como temporales y vuelve a leerlas desde GET /exports/{exportId} cuando sea necesario.
  • Si una mutación ya está en curso o entra en conflicto con el estado actual, inspecciona el code devuelto y reintenta solo cuando la operación siga siendo lógicamente segura.

Clientes legibles por máquina

El SDK de Node.js y la CLI incluidos normalizan los errores en objetos estructurados con:
  • code
  • message
  • status
  • retryable
Esto permite ramificar la lógica de automatización de forma segura sin tener que analizar cadenas de texto libres.