GET
/api/mod/ventas/{espacio}/inventory/availability¿Hay stock para este pedido?
La misma consulta que hace el agente antes de ofrecer: si hay suficiente de un producto para una cantidad. Con el stock en Productos, pregunta allí.
- PERMISOlee (vale cualquier clave)
- CRÉDITOSno gasta
- AUTENTICACIÓNBearer bth_…
PARÁMETROS
| CAMPO | TIPO | REQUERIDO | QUÉ ES |
|---|---|---|---|
| espacio | string | SÍ | El id del espacio (sale en GET /api/companies). Tiene que tener el módulo Ventas. |
| producto | string, query | SÍ | El SKU o el nombre del producto. |
| cantidad | int, query | no | Por defecto 1. |
RESPUESTA 200
| CAMPO | TIPO | QUÉ ES |
|---|---|---|
| estado | string | Ver estados. |
| sku · nombre | string | null | El artículo que reconoció. |
| cantidad_disponible | string | null | Lo que hay, texto decimal. |
| cantidad_pedida | string | null | Lo que preguntaste. |
| unidad | string | null | La unidad. |
ESTADOS DE DISPONIBILIDAD
| CAMPO | TIPO | QUÉ ES |
|---|---|---|
| disponible | se puede vender | Hay de sobra para lo pedido. |
| stock_bajo | se puede vender | Alcanza, pero el stock está en su umbral o por debajo. |
| insuficiente | no alcanza | Existe, pero hay menos de lo pedido. |
| agotado | no alcanza | Existe, con cantidad 0. |
| no_rastreado | sin datos | No está en el inventario. No bloquea la venta: no se sabe. |
ERRORES DE ESTA RUTA · SIEMPRE {"detail": …}
| STATUS | CUÁNDO | DETAIL LITERAL |
|---|---|---|
| 403 | El espacio no tiene el módulo Ventas | módulo no habilitado para este espacio. |
| 422 | Falta un campo obligatorio o uno no es de su tipo (detail es una lista) | — |
| 502 | Con el inventario en Productos: Productos no respondió | Productos: … |
Y los de cualquier ruta —clave inválida, cuenta no al día, IP, límites—, en Errores, límites y créditos.
CONVIENE SABER
- Busca primero por SKU exacto, luego por nombre exacto y luego por parte del nombre o de sus alias.