---
title: "Завести зону склада"
method: POST
path: "/api/v1/stock/warehouses/{id}/zones"
tags: ["Stock warehouses"]
---

# Завести зону склада

`POST /api/v1/stock/warehouses/{id}/zones`

## Request

- Base URL: `https://erp.akeda.ru`
- URL: `https://erp.akeda.ru/api/v1/stock/warehouses/{id}/zones`
- 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

Зона — подчинённый склад, поэтому в ответе обычная карточка склада с parent_id родителя. Клиент присылает только название: код зоны подбирает сервер, потому что номер деактивированной зоны остаётся занятым, а две вкладки взяли бы один и тот же. Зона внутри зоны не заводится — это 409 с кодом zone_allocation_invalid.

## Path parameters

- `id` string, uuid, required

## Headers

- `X-Tenant` string, required

## Request body

- StockWarehouseZoneInput
  - `name` string, required: Название зоны; код зоны присваивает сервер

## Response `201`

Созданная зона

- StockWarehouse
  - `id` string, uuid, required
  - `code` string, required
  - `name` string, required
  - `parent_id` string, uuid, required
  - `address` object, required
  - `responsible_employee_id` string, uuid, required
  - `is_active` boolean, required
  - `sort_order` integer, required
  - `zones_enabled` boolean, required: Внутри склада работают зоны — приход разрешён только в подчинённую зону
  - `needs_allocation` boolean, required: На самом зональном складе ещё лежит остаток, оставшийся с момента включения зон
  - `inbound_mode` 'documents' | 'external_receipt' | 'external_transit' | 'transfer_transit', required: documents — приход обычными складскими документами; external_receipt — склад внешней стороны: приход даёт только её приёмка, поступление и входящее перемещение запрещены; external_transit — склад товаров в пути к площадке (заводит подключение магазина); transfer_transit — склад «В пути на <склад>» перемещения с приёмкой (ERP-2179): приход — только отправка, расход — приёмка, возврат или списание недостачи по отправке
  - `transfer_receipt` boolean, required: «Приход перемещением — с приёмкой» (ERP-2179): перемещение на склад уходит на его склад «в пути», на склад товар кладёт приёмка по перемещению. Меняется действиями transfer-receipt/enable и disable
  - `transit_warehouse_id` string, uuid, required
  - `transit_for_id` string, uuid, required
  - `bins_mode` 'off' | 'soft' | 'strict', required: Ячейки в этом месте хранения: off — ячеек нет; soft — ячейка необязательна, товар без ячейки считается не размещённым; strict — документ обязан назвать ячейку
  - `bins_count` integer, required: Сколько в этом месте активных ячеек
  - `business_id` string, uuid, required
  - `company_ids` UUID[], required: Пустой список означает доступность склада всем активным юрлицам кабинета
  - `agent_contact_id` string, uuid
  - `agent_contract_id` string, uuid
  - `default_for_company_ids` UUID[]: Юрлица, у которых этот склад выбран складом по умолчанию в политике склада (ERP-2423). Только в списке складов; нет таких юрлиц — поля нет
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, 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)
