---
title: "Завести ячейки пачкой по шаблону"
method: POST
path: "/api/v1/stock/warehouses/{id}/bins/generate"
tags: ["Stock warehouses"]
---

# Завести ячейки пачкой по шаблону

`POST /api/v1/stock/warehouses/{id}/bins/generate`

## Request

- Base URL: `https://erp.akeda.ru`
- URL: `https://erp.akeda.ru/api/v1/stock/warehouses/{id}/bins/generate`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-Api-Key`
  - OAuth 2 (authorization code, authorization URL `https://erp.akeda.ru/oauth2/authorize`, token URL `https://erp.akeda.ru/oauth2/token`, scopes: `akeda:delegate`)
  - HTTP bearer

Разворачивает шаблон в коды ячеек — все сочетания значений уровней, например «А-03-2», — и заводит их одним действием. Ячейки с уже занятыми кодами пропускаются и возвращаются счётчиком skipped, поэтому повтор того же запроса ничего не дублирует. За один вызов — не больше 5000 ячеек; сверх этого 400 с кодом bin_limit.

## Path parameters

- `id` string, uuid, required

## Headers

- `X-Tenant` string, required

## Request body

- StockBinTemplate
  - `separator` string: Разделитель между уровнями; пустая строка — уровни пишутся слитно
  - `levels` StockBinTemplateLevel[], required: Уровни кода по порядку, например ряд, стеллаж и полка; первый уровень меняется медленнее остальных
    - `from` string, required: Начало диапазона: целое число без знака либо одна буква — латинская или кириллическая, кроме Ё
    - `to` string, required: Конец диапазона того же вида, что и начало: число либо буква того же алфавита и регистра
    - `pad` integer: До скольких знаков дополнять число нулями слева. Если не задано, а начало записано с ведущим нулём (01), ширина берётся из этой записи

## Response `200`

Сколько ячеек заведено и сколько пропущено

- StockBinGenerateResult
  - `created` integer, required: Сколько ячеек заведено
  - `skipped` integer, required: Сколько кодов пропущено, потому что такие ячейки в этом месте уже есть

## Other responses

- `400`: Некорректный запрос или нарушение бизнес-правила
- `401`: Сессия, ключ или кабинет не подтверждены
- `403`: Текущая роль не имеет требуемого права
- `404`: Запись не найдена или не видима текущему пользователю
- `409`: Конфликт версии, идемпотентности или бизнес-состояния

---

[API](https://skmtc.dev/akeda/apis/akeda-erp-client-api.md) · [All operations](https://skmtc.dev/akeda/apis/akeda-erp-client-api/llms.txt) · [OpenAPI document](https://skmtc.dev/akeda/apis/akeda-erp-client-api/revisions/a99574d597cc?raw)
