Recetas de productos
POST
Crear varias recetas de una vez
POST /api/recipes/create-recipes
Descripción
Registra hasta 100 recetas nuevas en una sola llamada, cada una con sus ingredientes y sub-recetas.
Detalles
Valida todo el lote antes de guardar: si una sola receta o uno de sus componentes tiene un problema no se crea nada y la respuesta indica la posición y el campo de cada error. Cada receta lleva al menos un ingrediente o una sub-receta, y cada ingrediente usa una unidad de su misma medida base. Las recetas nacen activas y permite una prueba previa que valida sin guardar nada.
Permisos requeridos
catalog.module
Request
| Nombre | Tipo | Requerido | Reglas |
|---|---|---|---|
| dryRun | bool | No |
default:0
|
| items | array | Sí | — |
| items[].ref | string | No |
max:60
|
| items[].name | string | Sí |
min:1
max:150
|
| items[].internalName | string | No |
max:150
|
| items[].description | string | No |
max:2000
|
| items[].quantity | string | Sí |
decimal
min_value:0
|
| items[].unitId | int | Sí |
min_value:1
|
| items[].lines | array | Sí | — |
| items[].lines[].inventoryItemId | int | Sí |
min_value:1
|
| items[].lines[].quantity | string | Sí |
decimal
min_value:0
|
| items[].lines[].unitId | int | Sí |
min_value:1
|
| items[].subRecipes | array | No | — |
| items[].subRecipes[].subRecipeId | int | Sí |
min_value:1
|
| items[].subRecipes[].quantity | string | Sí |
decimal
min_value:0
|
Ejemplo de request
curl -X POST https://restofy.pro/api/recipes/create-recipes \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <accessToken>" \
-d '{
"items": [
{
"name": "string",
"quantity": "string",
"unitId": 1,
"lines": [
{
"inventoryItemId": 1,
"quantity": "string",
"unitId": 1
}
]
}
]
}'
Los valores son demo: reemplázalos por datos reales del negocio.