# Документация к API внешних интеграций, для продавцов

Методы API для продавцов

### Общие данные

1. Для отправки любых запросов требуется получить у администратора маркетплейса (МП) логин и пароль для авторизации.
2. Каждый запрос проходит basic-авторизацию, поля ответа фильтруются по id продавца (мерчанта) которому были выданы доступы та где это необходимо.
3. Ответ всегда приходит в формате json если не указано иное

### Заказы

#### Запрос

GET /merchant-api/orders

Для получения списка отправлений в запросе возможен (но необязателен) массив filters с ключами по которым следует сделать выборку.&#x20;

<br>

<table data-header-hidden><thead><tr><th width="202"></th><th width="169.33333333333331"></th><th></th></tr></thead><tbody><tr><td>Ключ</td><td>Значения</td><td>Описание</td></tr><tr><td>page</td><td><p>(array):</p><p>number (int)</p><p>size (int)</p></td><td><p>Массив для работы с пагинацией:</p><p>Номер страницы</p><p>Кол-во элементов на странице</p></td></tr><tr><td>status</td><td>int</td><td>Идентификатор статусов (<a href="https://docs.google.com/document/d/1RuOKVRlE339BAGttyxvieb5qm3mBfxv5lFxpjvYZmG8/edit?usp=sharing">см Статусная модель доставки</a>)</td></tr><tr><td>payment_status</td><td>int</td><td>Идентификатор статусов (<a href="https://docs.google.com/document/d/1RuOKVRlE339BAGttyxvieb5qm3mBfxv5lFxpjvYZmG8/edit?usp=sharing">см Статусная модель доставки</a>)</td></tr><tr><td>is_canceled</td><td>int (0|1)</td><td>Флаг только “отмененные/не отмененные заказы”</td></tr><tr><td>is_problem</td><td>int (0|1)</td><td>Флаг только “проблемные заказы”</td></tr><tr><td>number</td><td>string</td><td>Номер заказа который видет мерчант</td></tr><tr><td>store_id</td><td>int</td><td>Идентификатор склада отаправки</td></tr></tbody></table>

#### Ответ

В ответном массиве data приходит список Отправлений мерчанта подходящую под фильтр в запросе:

<br>

<table data-header-hidden><thead><tr><th width="255"></th><th width="115.33333333333331"></th><th></th></tr></thead><tbody><tr><td>Ключ</td><td>Значение</td><td>Описание</td></tr><tr><td>id</td><td><br></td><td>Системный идентификатор заказа</td></tr><tr><td>delivery_id</td><td><br></td><td>Системный идентификатор доставки</td></tr><tr><td>number</td><td>string</td><td>Номер заказа который видит мерчант</td></tr><tr><td>store_id</td><td>int</td><td>Идентификатор склада</td></tr><tr><td>cargo_id</td><td>int</td><td>Системный идентификатор груза</td></tr><tr><td>delivery_service_zero_mile</td><td>string</td><td><p>Дата “Нулевой мили”</p><p>“2022-06-07T16:30:00.000000Z”</p></td></tr><tr><td>psd</td><td>string</td><td><p>Дата “ПСД”</p><p>“2022-06-07T16:30:00.000000Z”</p></td></tr><tr><td>fsd</td><td>string</td><td><p>Дата “ФСД”</p><p>“2022-06-07T16:30:00.000000Z”</p></td></tr><tr><td>created_at</td><td>string</td><td><p>Дата создания заказа, например</p><p>“13.06.2023 13:51”</p></td></tr><tr><td>status</td><td>int</td><td><p>Статус заказа</p><p>(<a href="https://docs.google.com/document/d/1RuOKVRlE339BAGttyxvieb5qm3mBfxv5lFxpjvYZmG8/edit?usp=sharing">см Статусная модель доставки</a>)</p></td></tr><tr><td>status_at</td><td>string</td><td><p>Дата последней смены статуса</p><p>“13.06.2023 13:51”</p></td></tr><tr><td>payment_status</td><td>int</td><td><p>Статус оплаты заказа</p><p>(<a href="https://docs.google.com/document/d/1RuOKVRlE339BAGttyxvieb5qm3mBfxv5lFxpjvYZmG8/edit?usp=sharing">см Статусная модель доставки</a>)</p></td></tr><tr><td>payment_status_at</td><td>string</td><td><p>Дата последней смены статуса оплаты</p><p>“13.06.2023 13:51”</p></td></tr><tr><td>is_canceled</td><td>bool</td><td>Флаг отмененного заказа</td></tr><tr><td>is_canceled_at</td><td>string</td><td><p>Дата отмены</p><p>“13.06.2023 13:51”</p></td></tr><tr><td>is_problem</td><td>bool</td><td>Флаг проблемного заказа</td></tr><tr><td>is_problem_at</td><td>string</td><td><p>Дата отметки “проблемный”</p><p>“13.06.2023 13:51”</p></td></tr><tr><td>cost</td><td>float</td><td>Общая стоимость заказа</td></tr><tr><td>width, height, length, weight</td><td>float</td><td>Ширина, высота, длина, вес отправления</td></tr><tr><td>required_shipping_at</td><td>string</td><td>Запрашиваемая дата доставки</td></tr><tr><td>updated_at</td><td>string</td><td><p>Дата последнего обновление модели</p><p>“13.06.2023 13:51”</p></td></tr><tr><td>assembly_problem_comment</td><td>string</td><td>Комментарий при сборке заказа</td></tr><tr><td>problem_reason_id</td><td>int</td><td>Идентификатор проблемного заказа</td></tr><tr><td>basketItems</td><td>array</td><td>Массив со списком товаров в заказзе</td></tr><tr><td>delivery</td><td>array</td><td>Объект с информацией о доставке</td></tr></tbody></table>

<br>

**Элемент списка товаров в заказе (массив basketItems):**

<table data-header-hidden><thead><tr><th width="186"></th><th width="104.33333333333331"></th><th></th></tr></thead><tbody><tr><td>Ключ</td><td>Значение</td><td>Описание</td></tr><tr><td>id</td><td>int</td><td>Системный идентификатор товара в корзине</td></tr><tr><td>basket_id</td><td>int</td><td>Системный идентификатор корзины</td></tr><tr><td>offer_id</td><td>int</td><td>Идентификатор оффера</td></tr><tr><td>type</td><td>int</td><td>Тип товара (1 - товар, 2 - услуга, 3 - подарочный сертификат)</td></tr><tr><td>name</td><td>string</td><td>Название товара</td></tr><tr><td>qty</td><td>int</td><td>Количество экземпляров</td></tr><tr><td>price</td><td>float</td><td>Цена на витрине</td></tr><tr><td>cost</td><td>float</td><td>Цена с учетом скидок</td></tr><tr><td>bonus_spent</td><td>int</td><td>Потрачено бонусов</td></tr><tr><td>bonus_discount</td><td>int</td><td>Бонусов начислено</td></tr><tr><td>created_at</td><td>string</td><td>Дата создания записи</td></tr><tr><td>updated_at</td><td>string</td><td>Дата обновления записи</td></tr><tr><td>referrer_id</td><td>?id</td><td>Идентификатор реферального партнера</td></tr><tr><td>bundle_id</td><td>?id</td><td>Идентификатор бандла</td></tr><tr><td>product</td><td>array</td><td>Объект с информацией о товаре</td></tr><tr><td>id</td><td>int</td><td>Системный идентификатор</td></tr><tr><td>weight, width, height, length</td><td>string</td><td>Характеристики ШВГ и вес</td></tr><tr><td>is_explosive</td><td>bool</td><td>Флаг взрывоопасного товара</td></tr><tr><td>categories</td><td>array</td><td>массив с идентификаторами категорий товара</td></tr></tbody></table>

**Объект с информацией о доставке в доставке (массив delivery):**

<table data-header-hidden><thead><tr><th width="221"></th><th width="122.33333333333331"></th><th></th></tr></thead><tbody><tr><td>Ключ</td><td>Значение</td><td>Описание</td></tr><tr><td>id</td><td>int</td><td>Системный идентификатор доставки</td></tr><tr><td>order_id</td><td>int</td><td>Системный идентификатор заказа</td></tr><tr><td>delivery_method</td><td>int</td><td>Метод доставки (1- доставка курьером, 2 - ПВЗ, 3 - Постомат)</td></tr><tr><td>delivery_service</td><td>int</td><td>Системный идентификатор ЛО</td></tr><tr><td>status</td><td>int</td><td>Статус доставки (<a href="https://docs.google.com/document/d/1RuOKVRlE339BAGttyxvieb5qm3mBfxv5lFxpjvYZmG8/edit?usp=sharing">см Статусная модель доставки</a>)</td></tr><tr><td>status_xml_id</td><td>string</td><td>Идентификатор статуса доставки у ЛО</td></tr><tr><td>payment_status</td><td>int</td><td>Статус оплаты доставки (<a href="https://docs.google.com/document/d/1RuOKVRlE339BAGttyxvieb5qm3mBfxv5lFxpjvYZmG8/edit?usp=sharing">см Статусная модель доставки</a>)</td></tr><tr><td>payment_status_at</td><td>string</td><td>Дата оплаты</td></tr><tr><td>is_canceled</td><td>bool</td><td>Флаг отмененной доставки</td></tr><tr><td>is_canceled_at</td><td>string</td><td>Дата отмены</td></tr><tr><td>is_problem</td><td>bool</td><td>Флаг проблемной доставки</td></tr><tr><td>is_problem_at</td><td>string</td><td>Дата проблемы</td></tr><tr><td>xml_id</td><td>string</td><td>Идентификатор доставки у ЛО</td></tr><tr><td>tracknumber</td><td>string</td><td>Трек-номер</td></tr><tr><td>barcode</td><td>string</td><td>Штрих-код</td></tr><tr><td>error_xml_id</td><td>string</td><td>Ошибка со стороны ЛО</td></tr><tr><td>tariff_id</td><td>int</td><td>Идентификатор тарифа</td></tr><tr><td>point_id</td><td>int</td><td>Идентификатор ПВЗ</td></tr><tr><td>number</td><td>string</td><td>Номер доставки видимый Мерчанту</td></tr><tr><td>delivery_address</td><td>array</td><td>Объект с информацией об адресе доставки</td></tr><tr><td>receiver_name</td><td>string</td><td>Имя получателя</td></tr><tr><td>receiver_phone</td><td>string</td><td>Телефон получателя</td></tr><tr><td>cost</td><td>float</td><td>Стоимость доставки</td></tr><tr><td>width,height,length,weight,</td><td>string</td><td>Характеристики ШВГ и вес</td></tr><tr><td>delivery_at</td><td>string</td><td>Время, когда заказ был доставлен</td></tr><tr><td>delivery_time_code</td><td>string</td><td>Желаемое время доставки (окно), формат ЧЧ-ЧЧ</td></tr><tr><td>delivery_time_start</td><td>string</td><td>Желаемое дата и время доставки “c”</td></tr><tr><td>delivery_time_end</td><td>string</td><td>Желаемое дата и время доставки “до”</td></tr><tr><td>dt</td><td>int</td><td>ДТ</td></tr><tr><td>pdd</td><td>string</td><td>ПДД</td></tr><tr><td>status_at</td><td>string</td><td>Время последнего изменения статуса</td></tr><tr><td>status_xml_id_at</td><td>string</td><td>Время последнего изменения статуса ЛО</td></tr><tr><td>order</td><td>array</td><td>Объект с информацией о заказе</td></tr></tbody></table>

\ <br>

**Объект с информацией о доставке в заказе (массив order):**

<table data-header-hidden><thead><tr><th width="213"></th><th width="109.33333333333331"></th><th></th></tr></thead><tbody><tr><td>Ключ</td><td>Значение</td><td>Описание</td></tr><tr><td>id</td><td>int</td><td>Системный идентификатор заказа</td></tr><tr><td>number</td><td>string</td><td>Видимый мерчанту номер заказа</td></tr><tr><td>basket_id</td><td>int</td><td>Системный идентификатор корзины</td></tr><tr><td>type</td><td>int</td><td>Тип товара (1 - товар, 2 - услуга, 3 - подарочный сертификат)</td></tr><tr><td>customer_id</td><td>int</td><td>Системный идентификатор покупателя</td></tr><tr><td>receiver_name</td><td>string</td><td>Имя получателя</td></tr><tr><td>receiver_phone</td><td>string</td><td>Телефон получателя</td></tr><tr><td>receiver_email</td><td>string</td><td>email получателя</td></tr><tr><td>cost</td><td>float</td><td>Сумма заказа со скидкой</td></tr><tr><td>price</td><td>float</td><td>Сумма заказа без скидкой</td></tr><tr><td>delivery_price</td><td>float</td><td>Стоимость доставки</td></tr><tr><td>delivery_cost</td><td>float</td><td>Стоимость доставки со скидкой</td></tr><tr><td>spent_bonus</td><td>int</td><td>потрачено бонусов</td></tr><tr><td>added_bonus</td><td>int</td><td>Начислено бонусов</td></tr><tr><td>delivery_type</td><td>int</td><td>Метод доставки (1- доставка курьером, 2 - ПВЗ, 3 - Постомат)</td></tr><tr><td>status</td><td>int</td><td>Статус заказа (<a href="https://docs.google.com/document/d/1RuOKVRlE339BAGttyxvieb5qm3mBfxv5lFxpjvYZmG8/edit?usp=sharing">см Статусная модель доставки</a>)</td></tr><tr><td>status_at</td><td>string</td><td>Дата обновления статуса</td></tr><tr><td>payment_status</td><td>int</td><td>Статус оплаты заказа(<a href="https://docs.google.com/document/d/1RuOKVRlE339BAGttyxvieb5qm3mBfxv5lFxpjvYZmG8/edit?usp=sharing">см Статусная модель доставки</a>)</td></tr><tr><td>payment_status_at</td><td>string</td><td>Дата обновления статуса оплаты</td></tr><tr><td>is_problem</td><td>bool</td><td>Флаг проблемного заказа</td></tr><tr><td>is_problem_at</td><td>string</td><td>Дата проблемы</td></tr><tr><td>is_canceled</td><td>bool</td><td>Флаг отмененного заказа</td></tr><tr><td>is_canceled_at</td><td>string</td><td>Дата отмены</td></tr><tr><td>is_require_check</td><td>bool</td><td>Флаг что требуется проверка</td></tr><tr><td>manager_comment</td><td>string</td><td>Комментарий менеджера</td></tr><tr><td>confirmation_type</td><td>int</td><td>Тип подтверждения заказа </td></tr><tr><td>created_at</td><td>string</td><td>Дата создания записи</td></tr><tr><td>updated_at</td><td>string</td><td>Дата обновления записи</td></tr><tr><td>cancel_reason_id</td><td>int</td><td>Идентификатор причины отмены</td></tr><tr><td>cancel_text</td><td>string</td><td>Комментарий отмены</td></tr><tr><td>problem_reason_id</td><td>int</td><td>Идентификатор причины проблемы</td></tr></tbody></table>

<br>

Пример запроса: /merchant-api/orders?sort=desc\&filters\[status]=26\&page\[number]=1\&page\[size]=5

### Информация о конкретном заказе

GET /merchant-api/orders/\[номер заказа]

Отдает информацию о конкретном заказе.

<br>

### Возвраты

#### Запрос

GET /merchant-api/returns

Отдает список возвратов. Во входных параметрах доступен массив filters с добавлением в него полей необходимых для фильтрации списка

#### Ответ

<br>

<table data-header-hidden><thead><tr><th width="285.3333333333333"></th><th width="114"></th><th></th></tr></thead><tbody><tr><td>Ключ</td><td>Значение</td><td>Описание</td></tr><tr><td>id</td><td>int</td><td>Системный идентификатор возврата</td></tr><tr><td>number</td><td>string</td><td>Видимый всем номер возврата</td></tr><tr><td>return_status_date</td><td>string</td><td>Дата изменения статуса</td></tr><tr><td>return_route</td><td>array</td><td>Объект с информацией о маршруте возврата</td></tr><tr><td>return_method</td><td>array</td><td>Объект с информацией о методе возврата</td></tr><tr><td>delivery_service</td><td>array</td><td>Объект с информацией об ЛО </td></tr><tr><td>return_date</td><td>string</td><td>Дата возврата</td></tr><tr><td>return_timeslot</td><td>string</td><td>Желаемый таймслот для возврата</td></tr><tr><td>point_id</td><td>int</td><td>Идентификатор ПВЗ</td></tr><tr><td>store_id</td><td>int</td><td>Идентификатор склада</td></tr><tr><td>delivery_service_order_number</td><td>string</td><td>Номер заказа в ЛО</td></tr><tr><td>delivery_service_claim_number</td><td>string</td><td>Номер заявки в ЛО</td></tr><tr><td>delivery_cost</td><td>float</td><td>Стоимость доставки</td></tr><tr><td>return_from_address</td><td>array</td><td>Объект с информацией об адресе отправителя</td></tr><tr><td>items</td><td>array</td><td>Объект с информацией о возвращаемых товарах</td></tr><tr><td>returnStatus</td><td>array</td><td>Объект с информацией о статусе возврата</td></tr></tbody></table>

<br>

Пример запроса

<http://127.0.0.1:8000/merchant-api/returns?sort=desc\\&filters\\[order\\_id]=57\\&page\\[number]=1\\&page\\[size]=5>

### Получение информации о конкретном возврате&#x20;

GET /merchant-api/returns/\[номер возврата]

Отдает информацию о конкретном возврате.&#x20;

### Список покупателей

GET /merchant-api/clients

Отдает список покупателей.&#x20;

Доступные параметры для фильтрации:

<table data-header-hidden><thead><tr><th width="199.33333333333331"></th><th width="196"></th><th></th></tr></thead><tbody><tr><td>Ключ</td><td>Значения</td><td>Описание</td></tr><tr><td>status</td><td>array</td><td>int- идентификаторы статусов согласно статусной модели покупателей</td></tr><tr><td>phone</td><td>string</td><td>номер телефона пользовтеля</td></tr><tr><td>fullName</td><td>string</td><td>ФИО</td></tr><tr><td>gender</td><td>?int</td><td><p>Пол покупателя:</p><p>1- Женский</p><p>2- Мужской</p><p>(не заполнено) - любой</p></td></tr><tr><td>createdBetween</td><td>array</td><td>Массив строк дат периода создания заказа, дата в формате “ГГГГ-ММ-ДД”</td></tr><tr><td>isReferral</td><td>bool или int(0|1)</td><td>Флаг реферального партнера</td></tr></tbody></table>

<br>

Пример запроса:

/merchant-api/clients?filter%5BcreatedBetween%5D%5B%5D=2023-05-01\&filter%5BcreatedBetween%5D%5B%5D=2023-06-01

<br>

Пример ответа:

{"status":"success","message":null,"data":\[{"register\_date":"17.05.2023 10:17","full\_name":"Guest","phone":"+79999999947","email":null,"status":"Активный"},{"register\_date":"15.05.2023 15:04","full\_name":"Guest","phone":"+79999552351","email":null,"status":"Активный"}]}

### Информация о конкретном получателе

GET /merchant-api/clients/\[id клиента]

Отдает информацию о конкретном клиенте.&#x20;

### Список категорий

GET /merchant-api/categories

Выводит список категорий

<br>

### Список атрибутов товаров в категории

GET /merchant-api/categories\[id категории]/properties

<br>

### Список товаров

GET /merchant-api/products

Выводит список товаров. Параметры с полями для фильтрации в разработке

### Информация о товаре

GET /merchant-api/products/\[id товара]

Выводит информацию о конкретном товаре

### Импорт товара

POST /merchant-api/products

Формат json, может быть вложенным массивом items до 100 элементов (в разработке)

<br>

Параметры:

<table data-header-hidden><thead><tr><th width="197.33333333333331"></th><th width="254"></th><th></th></tr></thead><tbody><tr><td>Ключ</td><td>Значение</td><td>Описание</td></tr><tr><td>name</td><td>string обязательное</td><td>Название</td></tr><tr><td>brand_id</td><td>int обязательное</td><td>id бренда</td></tr><tr><td>category_id</td><td>int обязательное</td><td>id категории</td></tr><tr><td>vendor_code</td><td>string может быть null</td><td>Артикул</td></tr><tr><td>xml_id</td><td>string обязательное</td><td>Внешний код</td></tr><tr><td>barcode</td><td>string обязательное</td><td>Штрих-код</td></tr><tr><td>weight</td><td>int необязательное</td><td>Вес</td></tr><tr><td>width</td><td>int необязательное</td><td>Ширина(см)</td></tr><tr><td>height</td><td>int необязательное</td><td>Высота(см)</td></tr><tr><td>length</td><td>int необязательное</td><td>Длина(см)</td></tr><tr><td>packaged_width</td><td>int необязательное</td><td>Ширина в упаковке (см)</td></tr><tr><td>packaged_height</td><td>int необязательное</td><td>Высота в упаковке (см)</td></tr><tr><td>packaged_length</td><td>int необязательное</td><td>Длина в упаковке (см)</td></tr><tr><td>packaged_weight</td><td>int необязательное</td><td>Вес в упаковке(гр)</td></tr><tr><td>gas</td><td>bool обязательное</td><td>Газ</td></tr><tr><td>explosive</td><td>bool обязательное</td><td>Взрывоопасное</td></tr><tr><td>has_battery</td><td>bool обязательное</td><td>Имеет аккумулятор</td></tr><tr><td>fragile</td><td>bool обязательное</td><td>Хрупкое</td></tr><tr><td>description</td><td>string обязательное</td><td>Описание</td></tr><tr><td>description_video</td><td>string может быть null</td><td>Ссылка на видео</td></tr><tr><td>need_special_case</td><td>string может быть null</td><td>Специальная упаковка</td></tr><tr><td>need_special_store</td><td>string может быть null</td><td>Специальные условия хранения</td></tr><tr><td>days_to_return</td><td>int может быть null</td><td>Дней на возврат</td></tr></tbody></table>

По умолчанию статус товара “Не согласовано” (1). Администратор маркетплейса может поменять статус по умолчанию через константу “DEFAULT\_PRODUCT\_APPROVAL\_STATUS” в .env файле. Константа может принимать значения соответствующие этим статусам (integer):

“Не согласовано” - 1, “Отправлено” - 2, “На рассмотрении” - 3, “Отклонено” - 4, “Согласовано” - 5, “Сформировано” - 6

В ответе приходит id оффера и товара, пример:

{"product\_id": 1058,"offer\_id": 1101}

### Список офферов

GET /merchant-api/offers

Возвращает список офферов мерчанта

### Информация об оффере

GET /merchant-api/offers/\[id оффера]

Возвращает информацию об оффере

<br>

### Добавление оффера

POST  /merchant-api/offers

Формат json, может быть вложенным массивом items до 100 элементов (в разработке)

<br>

Параметры:

<table data-header-hidden><thead><tr><th width="177.33333333333331"></th><th width="237"></th><th></th></tr></thead><tbody><tr><td>Ключ</td><td>Значение</td><td>Описание</td></tr><tr><td>product_id</td><td>int Обязательно</td><td>id товара</td></tr><tr><td>price</td><td>int Обязательно</td><td>цена</td></tr><tr><td>sale_status</td><td>int Обязательно</td><td>Идентификатор статуса согласно статусной модели оффера</td></tr><tr><td>sale_at</td><td>string Необязательно</td><td>дата начала продажи</td></tr><tr><td>stocks</td><td><p>array</p><p>store_id int</p><p>qty int</p></td><td><p>массив складов с остатками.</p><p>Идентификатор склада</p><p>Остатки</p></td></tr></tbody></table>

Статусная модель оффера id:

1 = В продаже

2 = Предзаказ

3 = Снято с продажи

4 = Доступен к продаже

5 = Недоступен к продаже<br>

Пример запроса:

{"product\_id":"1061","price":100,"sale\_status":1,"sale\_at":"","stocks":\[{"store\_id":"1","qty":100},{"store\_id":"11","qty":200},{"store\_id":"10","qty":20}]}

<br>

Ответ:

{"offer\_id": 1106}

### Обновление оффера

POST  /merchant-api/offers\[id оффера]

Параметры аналогичны запросу на создание оффера

### Массовое обновление цен

POST /merchant-api/prices/set-prices

Массово обновляет цены офферам

<br>

Параметры:

<table data-header-hidden><thead><tr><th width="174.33333333333331"></th><th width="237"></th><th></th></tr></thead><tbody><tr><td>Ключ</td><td>Значение</td><td>Описание</td></tr><tr><td>(array) prices</td><td><p><br></p><p>(int) offer_id обязательно</p><p>(int) price обязательно</p></td><td><p>Массив</p><p>Идентификатор оффера</p><p>Цена</p></td></tr></tbody></table>

<br>

Пример запроса:

{"prices":\[{"offer\_id":350,"price":200},{"offer\_id":973,"price":200}]}

<br>

### Массовое обновление остатков

POST /merchant-api/stocks/set-stocks

Массово обновляет остатки оффера на складах

<br>

Параметры:

<table data-header-hidden><thead><tr><th width="184.33333333333331"></th><th></th><th></th></tr></thead><tbody><tr><td>Ключ</td><td>Значение</td><td>Описание</td></tr><tr><td>(array) stocks</td><td><p><br></p><p>(int) offer_id обязательно</p><p>(int) store_id обязательно</p><p>(int) product_id обязательно</p><p>(int) qty обязательно</p></td><td><p>Массив</p><p>Идентификатор оффера</p><p>Идентификатор склада</p><p>Идентификатор товара</p><p>Количество остатков</p></td></tr></tbody></table>

<br>

### Загрузка файлов/изображений

Изображения загружаются не непосредственно в файловый микросервис

POST \[микросервис file-ms]/merchant-api/files

<br>

Параметры:

| Ключ   | Значение           | Описание                  |
| ------ | ------------------ | ------------------------- |
| file   | file обязательно   | загружаемый файл          |
| folder | string обязательно | Папка, например “catalog” |

<br>

В ответе получаем идентификатор загруженного файла

\ <br>

### Добавление изображения к товару

POST /merchant-api/products/\[id товара]/add-image

Добавляет изображение к товару

<br>

Параметры:

<table data-header-hidden><thead><tr><th width="227.33333333333331"></th><th></th><th></th></tr></thead><tbody><tr><td>Ключ</td><td>Значение</td><td>Описание</td></tr><tr><td>id</td><td>int обязательно</td><td>идентификатор файла</td></tr><tr><td>type</td><td>int обязательно</td><td><p>Тип файла</p><p>2 - фото для каталога</p><p>3 - фото для галереи</p><p>4 - фото в описание товара</p></td></tr></tbody></table>

<br>

Пример запроса:

{ "id": "47049","type": 2}

<br>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://lennuftechwiki.gitbook.io/lennuftechwiki/tekhnicheskaya-dokumentaciya/dokumentaciya-k-api-vneshnikh-integracii-dlya-prodavcov.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
