Перейти к основному содержимому

Подключение магазинов через API

API-эндпоинты управления магазинами

SalesFinder предоставляет 4 эндпоинта для программного управления подключениями магазинов.

Список подключённых магазинов

POST /api/2025_09/get_user_keys
Authorization: Bearer {token}

Возвращает все подключённые магазины с их статусами и параметрами.

Добавить магазин

POST /api/2025_09/create_user_keys
Authorization: Bearer {token}
Content-Type: application/json

Подключает новый магазин маркетплейса.

Обновить настройки магазина

POST /api/2025_09/update_user_keys
Authorization: Bearer {token}
Content-Type: application/json

Обновляет API-токены или настройки существующего подключения.

Удалить магазин

POST /api/2025_09/destroy_user_keys
Authorization: Bearer {token}
Content-Type: application/json

Удаляет подключение магазина.

Необходимые данные по маркетплейсам

Wildberries

ПараметрОписание
API-токен WBГенерируется в личном кабинете продавца Wildberries

Один параметр — API-токен. Доступ к данным о продажах, заказах и остатках.

Получение токена:

  1. Войдите в личный кабинет продавца WB
  2. НастройкиДоступ к API
  3. Создайте новый токен с необходимыми правами
  4. Скопируйте сгенерированный токен

Ozon

ПараметрОписание
API-токен OzonГенерируется в личном кабинете продавца
Client IDИдентификатор клиента (выдаётся вместе с токеном)

Два параметра — API-токен и Client ID.

Получение токена:

  1. Войдите в личный кабинет продавца Ozon
  2. НастройкиSeller API
  3. Создайте новый ключ API
  4. Скопируйте Client ID и API-ключ
Безопасность

Токены отображаются только один раз при создании. Сохраните их в надёжном месте. При утере придётся генерировать новые.

Лимиты по тарифам

ТарифМагазиновAPI-доступ
Start2Нет
Business4Нет
Pro8Да
Ограничение

Программное управление магазинами (эндпоинты create_user_keys, update_user_keys, destroy_user_keys) доступно только через API на тарифе Pro.

Процесс подключения

1. auth/login           → Получить JWT-токен
2. create_user_keys → Добавить магазин (WB/Ozon токен)
3. Ожидание синхронизации (от минут до нескольких часов)
4. get_user_keys → Проверить статус подключения
5. Аналитика и репрайсер готовы к работе

Что доступно после подключения

  • Данные о продажах — выручка, количество заказов, динамика
  • Остатки на складах — текущие остатки по всем складам
  • Заказы — история и статусы
  • Цены — текущие и история изменений
  • Репрайсинг — автоматическое обновление цен

Пример: Python-клиент

class SalesFinderStores:
BASE_URL = "https://api.salesfinder.ru/api/2025_09"

def __init__(self, token: str):
self.token = token

def _request(self, endpoint: str, data: dict = None):
import httpx, time
time.sleep(5)
resp = httpx.post(
f"{self.BASE_URL}/{endpoint}",
headers={
"Authorization": f"Bearer {self.token}",
"Content-Type": "application/json"
},
json=data or {}
)
return resp.json()

def list_stores(self):
"""Список всех подключённых магазинов."""
return self._request("get_user_keys")

def add_wb_store(self, wb_token: str, name: str = "WB Store"):
"""Подключить магазин Wildberries."""
return self._request("create_user_keys", {
"marketplace": "wb",
"token": wb_token,
"name": name
})

def add_ozon_store(self, ozon_token: str, client_id: str, name: str = "Ozon Store"):
"""Подключить магазин Ozon."""
return self._request("create_user_keys", {
"marketplace": "ozon",
"token": ozon_token,
"client_id": client_id,
"name": name
})

def remove_store(self, store_id: int):
"""Удалить подключение магазина."""
return self._request("destroy_user_keys", {
"id": store_id
})

Безопасность

  • Токены хранятся в зашифрованном виде на серверах SalesFinder
  • Используются для чтения данных, кроме операций репрайсера (запись цен)
  • Доступ к токенам имеет только основной аккаунт
  • При отзыве токена на маркетплейсе SalesFinder теряет доступ