YoukaRequestError para fallos HTTP y de validación, y YoukaTaskError para tareas asíncronas que terminaron en un estado no exitoso. Ambas extienden Error e incluyen campos estructurados para que puedas ramificar según el código, el estado y si es reintentable.
YoukaRequestError
Se lanza para errores HTTP, fallos de validación de la solicitud y respuestas malformadas.
Campos
string
Código de error legible por máquina, por ejemplo
INVALID_REQUEST, UNAUTHORIZED,
UPLOAD_FAILED.string
Descripción legible por humanos.
number
Código de estado HTTP, si está disponible.
boolean
true si el SDK considera que merece la pena reintentar el error (límites de tasa, errores
transitorios del servidor, repetición idempotente en curso).unknown
Detalles proporcionados por el servidor, normalmente una lista de incidencias de Zod para errores de validación.
Códigos comunes
YoukaTaskError
Se lanza desde client.tasks.wait(...), client.projects.wait(...) y client.exports.wait(...) cuando la tarea o exportación subyacente termina en failed, cancelled o timed-out.
Campos
'TASK_FAILED' | 'TASK_CANCELLED' | 'TASK_TIMED_OUT'
Se corresponde directamente con el estado terminal de la tarea.
string
O bien el mensaje de error de la tarea proporcionado por el servidor, o un fallback generado.
TaskStatus
El estado terminal de la tarea.
RestTask
La carga útil completa de la tarea en el momento del fallo. Útil para logs y
mensajes de error orientados al usuario.
Patrón de reintento
Combinaretryable con una clave de idempotencia para construir un bucle de reintento seguro:
Interrupción y cancelación
Interrumpir una solicitud lanza unAbortError estándar — no un YoukaRequestError. Compruébalo explícitamente:
Qué sigue
- Tasks — helpers de espera y sondeo avanzado de tareas
- Authentication — opciones del constructor y señales
- API errors — los mismos códigos en HTTP en bruto
