Saltar al contenido principal
← Referencia de la API

Errores

Todos los errores tienen el mismo sobre: { "error": "<code>", "message": "…", "details": { … } }. Ramifica según error, nunca según message; details.path nombra el campo cuando hay uno que falla.

Las rutas, los nombres de campo, los códigos de error, los nombres de cabecera y los ejemplos de código se quedan en inglés: son el contrato.

Cuándo reintentar

429 y 503 vienen con una cabecera Retry-After: espera esos segundos y envía de nuevo la misma solicitud. 504 solve_timeout puede funcionar al reintentar con un trabajo más pequeño. Todo 4xx distinto de 429 es un problema de la propia solicitud y vuelve a fallar sin cambios.

Códigos

CódigoEstadoSignificado
invalid_request400El cuerpo o un parámetro está mal formado: no es JSON, no es un objeto o un campo tiene una forma incorrecta.
idempotency_key_required400La llamada de pedido no tiene una cabecera Idempotency-Key válida.
quote_invalid400El token del presupuesto no pertenece a este presupuesto, ha caducado o fue modificado, o se mezclaron prueba y producción.
unknown_workflow400La tienda no tiene ningún workflow con este id.
workflow_disabled400El workflow existe pero está desactivado.
mode_mismatch400El modo enviado no es el modo de este workflow.
unknown_mode400El modo enviado no es un modo conocido.
unsupported_mode400El modo del workflow todavía no está disponible en este servicio.
limit_exceeded400Demasiadas o demasiado pocas filas, demasiadas piezas o una pieza fuera de los límites de tamaño de la tienda.
outside_catalog_slice400Un material no se ofrece en este workflow.
unknown_reference400Un material, un canto u otro artículo del catálogo es desconocido o está desactivado.
required_field_missing400Falta un campo que la tienda marcó como obligatorio.
unauthorized401La clave falta, está mal formada, es desconocida o revocada, o una clave de prueba ha caducado.
project_token_required401Una llamada de proyecto necesita la cabecera del token de proyecto.
project_token_invalid401La cabecera del token de proyecto está mal formada o se envió dos veces.
quota_exceeded402Se ha agotado la cuota mensual de presupuestos de la tienda.
customer_context_required403Un grupo de clientes distinto del predeterminado necesita la clave secreta, es decir, una llamada desde tu servidor.
origin_not_allowed403El origen de la página no está en la lista de la clave pública.
sandbox_expired403La tienda sandbox ha caducado y es de solo lectura.
not_found404No existe esa ruta, presupuesto, pedido o proyecto, o pertenece a otra tienda.
not_configured404La tienda todavía no ha publicado una configuración.
idempotency_conflict409Este Idempotency-Key ya se usó para un presupuesto distinto.
quote_already_redeemed409Este presupuesto ya se ha pedido.
quote_requote409El presupuesto se firmó con una clave que se ha rotado desde entonces: solicita un presupuesto nuevo.
too_large413El cuerpo de la solicitud es mayor de lo que acepta la ruta.
unsupported_media_type415El cuerpo no se envió como application/json.
plan_incomplete400 / 422Algunas piezas no caben en ningún tablero, así que no hay nada que presupuestar.
project_not_reorderable422El proyecto guardado no contiene una lista de corte a la que se pueda poner precio.
rate_limited429Se alcanzó un límite de frecuencia: espera los segundos de Retry-After.
busy429La cola del solver está llena: reintenta tras los segundos de Retry-After.
test_limit429Las claves de prueba alcanzaron su tope diario de presupuestos o pedidos.
sandbox_order_limit429La tienda sandbox alcanzó su tope de pedidos del periodo.
project_limit429La tienda ya guarda el número o el tamaño máximo de proyectos guardados.
internal500Un error inesperado por nuestra parte.
service_unavailable503Una parte del servicio no respondió: inténtalo de nuevo más tarde.
config_invalid503No se puede cargar la configuración de la tienda.
tenant_unconfigured503La tienda no tiene ninguna clave activa de firma de presupuestos.
final_engine_unavailable503Este workflow presupuesta con el motor max, que no está disponible aquí.
solve_timeout504El plan tardó demasiado.

Códigos de precio

Estos códigos proceden del motor de precios. Responden 400 en POST /cfg/v1/quote y en un nuevo pedido; en POST /cfg/v1/preview la llamada tiene éxito y el código llega en priceError, de modo que la vista previa en vivo puede mostrar el plan aunque no se pueda calcular el precio.

invalid_config · invalid_job · invalid_request · unknown_workflow · workflow_disabled · unknown_mode · mode_unavailable · unsupported_mode · unknown_reference · item_disabled · outside_catalog_slice · unpriced_item · no_strategy · unpriced_sheet · cut_length_unattributable · plan_incomplete · bonded_unpriced · bonded_not_allowed · template_value_invalid · machining_length_missing · machining_invalid · unknown_customer_group · shipping_unavailable · delivery_below_minimum · weight_unavailable · rule_budget · amount_overflow

Aquí no hay un botón «probar» a propósito: la clave secreta pertenece a tu servidor, nunca a un navegador. La tienda demo muestra la incrustación y el traspaso del pedido funcionando de principio a fin.

Información legalCondiciones del configurador (EN) ·Contrato de encargo de tratamiento (EN) ·Aviso de privacidad para compradores ·Licencias de terceros (EN)