> For the complete documentation index, see [llms.txt](https://wiki.indeepa.com/repricer/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.indeepa.com/repricer/vzaimodeistvie-s-indeepa-cherez-api/kak-peredavat-nastroiki-iz-svoei-sistemy-v-repraisery-indeepa-po-api.md).

# Как передавать настройки из своей системы в репрайсеры INDEEPA по API

**Для кого:** для технических специалистов и менеджеров, которые настраивают автоматическую передачу цен, остатков, себестоимости и других параметров из своей системы в INDEEPA.

#### Как работает интеграция

Вы размещаете JSON-массив с данными о товарах на своём API-эндпоинте. INDEEPA периодически обращается к указанному URL, получает значения и после проверки применяет их в выбранном репрайсере.

#### Частота обновления

Для репрайсеров Ozon, WB и ЯМ плановый запрос выполняется каждые **2 часа**. Изменение на вашем сервере может появиться в INDEEPA не сразу, а в течение ближайшего цикла синхронизации. Эндпоинт должен быть доступен круглосуточно.

## Перед началом

* Подготовьте URL эндпоинта, с которого INDEEPA сможет получать данные.
* Настройте доступ по Bearer-токену.
* Сформируйте валидный JSON-массив с товарами и нужными полями.
* Определите маркетплейс: Ozon, WB или ЯМ.
* Заранее перечислите дополнительные поля, которых нет в стандартной структуре.

{% hint style="danger" %}
**Безопасность токена**

Передавайте токен только в официальном чате поддержки INDEEPA. Не размещайте его в открытых документах и не показывайте на скриншотах. Для интеграции лучше использовать отдельный токен, который можно заменить или отозвать без влияния на другие системы.
{% endhint %}

### Шаг 1. Подготовьте эндпоинт

Эндпоинт должен возвращать валидный JSON-массив. Каждый элемент массива — отдельный товар. Пример URL:

<table data-header-hidden><thead><tr><th valign="top"></th></tr></thead><tbody><tr><td valign="top">https://your-domain.com/api/products.json</td></tr></tbody></table>

Доступ к данным защищается Bearer-токеном. Точный формат заголовка авторизации и дополнительные технические требования подтверждаются при подключении.

## Шаг 2. Подготовьте структуру данных

Используйте названия полей в том виде, в котором они указаны ниже. Для дробных значений используйте точку: 150.50. Количество передавайте целым числом: 100.

{% hint style="info" %}
**Общие требования к данным**

Дополнительные поля можно не передавать. Заполняйте только значения, которые планируете использовать в INDEEPA. JSON должен быть валидным: со всеми закрывающими скобками, кавычками и запятыми. Нестандартные поля согласуйте до подключения через [чат поддержки](/repricer/sluzhba-podderzhki/kak-obratitsya-v-sluzhbu-podderzhki.md).
{% endhint %}

### Ozon

<table data-header-hidden data-search="false"><thead><tr><th></th><th></th><th></th><th></th></tr></thead><tbody><tr><td><strong>Поле</strong></td><td><strong>Тип</strong></td><td><strong>Обязательность</strong></td><td><strong>Что передавать</strong></td></tr><tr><td><strong>Article</strong></td><td>String</td><td>Обязательно</td><td>Артикул товара — OfferId.</td></tr><tr><td><strong>CostPrice</strong></td><td>Float</td><td>Необязательно</td><td>Себестоимость товара.</td></tr><tr><td><strong>RetailPrice</strong></td><td>Float</td><td>Необязательно</td><td>Базовая цена.</td></tr><tr><td><strong>WarehouseName</strong></td><td>String</td><td>Необязательно</td><td>Название склада.</td></tr><tr><td><strong>Stock</strong></td><td>Integer</td><td>Необязательно</td><td>Количество товара на складе.</td></tr><tr><td><strong>Comment</strong></td><td>String</td><td>Необязательно</td><td>Комментарий или внутренний идентификатор.</td></tr></tbody></table>

**Пример JSON-массива для Ozon**

<figure><img src="https://770539834-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC4bKZVtgehGGY1O19rud%2Fuploads%2F568SRVSbUJVnDepjKdut%2F%D0%A0%D0%B8%D1%81%D1%83%D0%BD%D0%BE%D0%BA1.png?alt=media&amp;token=da0e47ab-ae05-4fc0-9773-059b2e6b1286" alt=""><figcaption></figcaption></figure>

### WB

Для идентификации товара передайте NmId или VendorCode.

<table data-header-hidden data-search="false"><thead><tr><th></th><th></th><th></th><th></th></tr></thead><tbody><tr><td><strong>Поле</strong></td><td><strong>Тип</strong></td><td><strong>Обязательность</strong></td><td><strong>Что передавать</strong></td></tr><tr><td><strong>NmId</strong></td><td>Integer</td><td>Один из двух</td><td>Артикул товара WB.</td></tr><tr><td><strong>VendorCode</strong></td><td>String</td><td>Один из двух</td><td>Артикул поставщика; можно использовать вместо NmId.</td></tr><tr><td><strong>ChrtId</strong></td><td>String</td><td>Необязательно</td><td>Идентификатор характеристики или размера товара.</td></tr><tr><td><strong>CostPrice</strong></td><td>Float</td><td>Необязательно</td><td>Себестоимость товара.</td></tr><tr><td><strong>WarehouseName</strong></td><td>String</td><td>Необязательно</td><td>Название склада.</td></tr><tr><td><strong>Stock</strong></td><td>Integer</td><td>Необязательно</td><td>Количество товара на складе.</td></tr><tr><td><strong>MinPrice</strong></td><td>Integer</td><td>Необязательно</td><td>Минимальная цена.</td></tr><tr><td><strong>MaxPrice</strong></td><td>Integer</td><td>Необязательно</td><td>Базовая или максимальная цена.</td></tr></tbody></table>

**Пример JSON-массива для WB**

<figure><img src="https://770539834-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC4bKZVtgehGGY1O19rud%2Fuploads%2FizAPvpnt9JcEG9Y2TDmt%2F%D0%A0%D0%B8%D1%81%D1%83%D0%BD%D0%BE%D0%BA2.png?alt=media&amp;token=cf744bd0-69ed-47cb-b39d-123adc058720" alt=""><figcaption></figcaption></figure>

### Яндекс.Маркет

<table data-header-hidden data-search="false"><thead><tr><th></th><th></th><th></th><th></th></tr></thead><tbody><tr><td><strong>Поле</strong></td><td><strong>Тип</strong></td><td><strong>Обязательность</strong></td><td><strong>Что передавать</strong></td></tr><tr><td><strong>OfferId</strong></td><td>String</td><td>Обязательно</td><td>Артикул товара в ЯМ.</td></tr><tr><td><strong>CostPrice</strong></td><td>Integer</td><td>Необязательно</td><td>Себестоимость товара.</td></tr><tr><td><strong>WarehouseName</strong></td><td>String</td><td>Необязательно</td><td>Название склада.</td></tr><tr><td><strong>Stock</strong></td><td>Integer</td><td>Необязательно</td><td>Количество товара на складе.</td></tr><tr><td><strong>MinPrice</strong></td><td>Integer</td><td>Необязательно</td><td>Минимальная цена.</td></tr><tr><td><strong>MaxPrice</strong></td><td>Integer</td><td>Необязательно</td><td>Базовая или максимальная цена.</td></tr><tr><td><strong>AdditionalField</strong></td><td>String</td><td>Необязательно</td><td>Дополнительная информация, согласованная при подключении.</td></tr></tbody></table>

**Пример JSON-массива для ЯМ**

<figure><img src="https://770539834-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC4bKZVtgehGGY1O19rud%2Fuploads%2FljlDdvN8qfEGJFQTGV8O%2F%D0%A0%D0%B8%D1%81%D1%83%D0%BD%D0%BE%D0%BA3.png?alt=media&amp;token=3c5088b5-f078-44b9-8261-6fefc3ae8076" alt=""><figcaption></figcaption></figure>

## Шаг 3. Отправьте запрос в поддержку

Отправьте запрос в [службу поддержку](https://wiki.indeepa.com/2.0/sluzhba-podderzhki/kak-obratitsya-v-sluzhbu-podderzhki) INDEEPA. В запросе укажите:

* **Подключение интеграции по API**.
* **URL вашего эндпоинта**, чтобы наша система знала, откуда забирать данные.\
  Пример: <https://your-domain.com/api/products.json>
* **Токен доступа (Bearer Authentication)**. Это современный метод защиты доступа к вашему API с помощью токена (специального ключа). При каждом запросе система автоматически передает этот токен, что позволяет убедиться, что только авторизованные пользователи (в данном случае — наш сервис) могут получить доступ к вашим данным.\
  Пример: a1b2c3d4-e5f6-7890-xxxx-xxxxxxxxxxxx
* **Маркетплейс.** От этого зависит формат данных и процесс подтверждения.\
  Пример: Wildberries/ Ozon/ Яндекс Маркет
* **Необходимые поля**. Какие стандартные и дополнительные поля нужно использовать.

## Шаг 4. Дождитесь тестового запроса

После получения данных специалисты INDEEPA:

1. добавят подключение к вашему эндпоинту;
2. выполнят тестовый запрос;
3. проверят, что JSON получен и распознан;
4. сообщат результат в том же чате.

**Дальнейшие действия зависят от вашего маркетплейса.**

## Подключение "Данных интеграции API"

### Если вы подключаете OZON

1. Специалисты напишут в чат и пришлют ссылку на отчёт.

<figure><img src="https://770539834-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC4bKZVtgehGGY1O19rud%2Fuploads%2Fm4onnLNOFlEpD9dVvilV%2F%D0%A0%D0%B8%D1%81%D1%83%D0%BD%D0%BE%D0%BA4.png?alt=media&amp;token=0d385bae-8aee-4377-b5a1-03177925b193" alt=""><figcaption></figcaption></figure>

2. Вы переходите по ссылке и проверяете: корректно ли система распознала артикулы, цены, остатки.
3. Если всё верно — отвечаете в чат: **«Данные подтверждены, можно активировать»**.
4. После вашего подтверждения специалисты активируют интеграцию.
5. Данные будут обновляться автоматически каждые **2 часа**. Вы можете в любой момент посмотреть в отчете, когда последний раз были получены и применены данные.

### Если вы подключаете WB

1. Специалисты напишут в чат и пришлют ссылку на отчёт.

<figure><img src="https://770539834-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC4bKZVtgehGGY1O19rud%2Fuploads%2FC89kNON8k4l8f6TkZjng%2F%D0%A0%D0%B8%D1%81%D1%83%D0%BD%D0%BE%D0%BA5.png?alt=media&amp;token=f9759ac0-0b36-4370-8c09-d52e77022d18" alt=""><figcaption></figcaption></figure>

2. Вы переходите по ссылке и проверяете: корректно ли система распознала артикулы, цены, остатки.
3. Если всё верно, активируете применение данных **самостоятельно** в личном кабинете:

* Перейдите в настройки на кабинет;

<figure><img src="https://770539834-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC4bKZVtgehGGY1O19rud%2Fuploads%2FOQGb0qATsrRhcvCSLboJ%2F%D0%A0%D0%B8%D1%81%D1%83%D0%BD%D0%BE%D0%BA6.png?alt=media&amp;token=d3a2d106-0ff6-43d8-9781-fad8ea1df865" alt=""><figcaption></figcaption></figure>

* В столбце **«Индивидуальные условия»** вы увидите дату последнего забора информации.

<figure><img src="https://770539834-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC4bKZVtgehGGY1O19rud%2Fuploads%2FRhYdTTYJ0Wh56x5kdQ2D%2F%D0%A0%D0%B8%D1%81%D1%83%D0%BD%D0%BE%D0%BA7.png?alt=media&amp;token=bf9f4a6d-2ab9-4308-ba7b-fd50d27521b2" alt=""><figcaption></figcaption></figure>

* Для активации полученных данных поставьте галочку **«Использовать данные интеграции АПИ»** и нажмите **«Сохранить»**.

<figure><img src="https://770539834-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC4bKZVtgehGGY1O19rud%2Fuploads%2FigmtG9o6KAtKl5WPQCUO%2F%D0%A0%D0%B8%D1%81%D1%83%D0%BD%D0%BE%D0%BA8.png?alt=media&amp;token=3a0422ba-99ad-4848-9441-53a23e02e575" alt=""><figcaption></figcaption></figure>

4. Данные будут обновляться автоматически каждые **2 часа**. Вы можете в любой момент посмотреть в отчете, когда последний раз были получены и применены данные.

{% hint style="info" %}
Вы можете в любой момент снять галочку «Использовать данные интеграции АПИ» — данные продолжат забираться, но не будут применяться, пока вы снова не активируете опцию.
{% endhint %}

**Отчет доступен для просмотра через репрайсер (альтернатива прямой ссылке):**

* Перейдите в раздел **«Настройки» → «Расширения»**.
* Активируйте ползунок напротив расширения **«Информация. Расширения для проверки настроек передачи данных по API»**.

<figure><img src="https://770539834-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC4bKZVtgehGGY1O19rud%2Fuploads%2FHywXMXQR65gTgXZ3ZrFm%2F%D0%A0%D0%B8%D1%81%D1%83%D0%BD%D0%BE%D0%BA35.png?alt=media&amp;token=017ad399-325a-4247-875f-dc544721b58f" alt=""><figcaption></figcaption></figure>

* Перейдите во вкладку **«Товары»** и найдите нужный артикул, нажмите правой кнопкой мыши в пустом поле его строки и выберите **«Настройки передачи данных по API**». Это позволит увидеть дату и время последнего обновления, а также при необходимости открыть массив данных для анализа.

<figure><img src="https://770539834-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC4bKZVtgehGGY1O19rud%2Fuploads%2FvoDym2nqvMP578zssuj3%2F%D0%A0%D0%B8%D1%81%D1%83%D0%BD%D0%BE%D0%BA36.png?alt=media&amp;token=2ded0793-f7ae-4539-b6aa-7b0622df1479" alt=""><figcaption></figcaption></figure>

### Если вы подключаете Яндекс.Маркет

1. Специалисты напишут в чат: **«Данные получены»** и попросят подтвердить корректность (текстовым описанием или скриншотом).
2. Вы проверяете информацию и, если всё верно, отвечаете: **«Данные подтверждены, можно активировать»**.
3. После вашего подтверждения специалисты активируют интеграцию.
4. Данные будут обновляться автоматически каждые **2 часа**.

{% hint style="warning" %}
На данный момент для Яндекс Маркет отчёт для мониторинга истории обновлений находится в разработке. Отслеживать дату последнего изменения данных через интерфейс пока невозможно. Если вам критично видеть эту информацию — напишите в поддержку, мы предоставим данные вручную по запросу.
{% endhint %}

## ЧАСТО ЗАДАВАЕМЫЕ ВОПРОСЫ (FAQ)

***

<details>

<summary><strong>Как часто вы будете запрашивать данные?</strong></summary>

Система запрашивает данные каждые 2 часа. Эндпоинт должен быть доступен 24/7 для внеплановых синхронизаций при ручных обновлениях или изменении настроек.

</details>

<details>

<summary><strong>Можно ли отдавать данные только для части товаров?</strong></summary>

Да. Вы можете включить в JSON-массив только те товары, которые хотите отслеживать или обновлять через API. По таким товарам будут действовать настройки, заданные вручную в репрайсере. Товары, отсутствующие в выгрузке, не будут затронуты нашей системой.

</details>

<details>

<summary><strong>Что делать, если у товара нет остатка (Stock = 0)?</strong></summary>

Если товар закончился, передавайте "Stock": 0. Не удаляйте товар из массива совсем, если хотите, чтобы система знала, что он «в наличии, но закончился», а не «перестал существовать».

</details>

<details>

<summary><strong>Можно ли использовать один эндпоинт для нескольких маркетплейсов?</strong></summary>

Технически — да, если структура данных позволяет однозначно определить товар. Однако мы рекомендуем создавать отдельные эндпоинты (разные URL) для каждого маркетплейса (Ozon, WB, ЯМ), чтобы избежать путаницы с полями и упростить отладку.

</details>

<details>

<summary><strong>Что если мне нужно передать поле, которого нет в стандартном списке?</strong></summary>

Напишите об этом в запросе в техническую поддержку: укажите название поля, его тип и для чего оно нужно. Наши специалисты проверят возможность и согласуют формат. Не добавляйте кастомные поля без согласования — они могут быть проигнорированы системой.

</details>
