Обзор API SalesFinder
Базовый URL
https://api.salesfinder.ru
Актуальная версия API: 2025_09
Полная документация доступна по адресу: api.salesfinder.ru/docs
Доступность API
API SalesFinder доступен на тарифе Pro (20 000 руб./мес.).
- API доступен только для основного аккаунта (не для суб-пользователей)
- Требуется активная подписка на тарифе Pro
- Соблюдайте rate limit: не чаще 1 запроса в 5 секунд на аккаунт
Аутентификация
Получение токена
POST /api/2025_09/auth/login
Content-Type: application/json
{
"email": "user@example.org",
"password": "password"
}
Ответ: JWT-токен формата Bearer eyJ0eXAiOiJKV1QiLCJhbGc...
| Параметр | Значение |
|---|---|
| Метод авторизации | Bearer Token в заголовке Authorization |
| Срок жизни токена | 3 часа |
| Refresh | +1 час к текущему токену |
| Формат | JWT (JSON Web Token) |
Обновление токена
POST /api/2025_09/auth/refresh
Authorization: Bearer {token}
Продлевает текущий токен на 1 час.
Завершение сессии
POST /api/2025_09/auth/logout
Authorization: Bearer {token}
Инвалидирует текущую сессию.
Формат запросов
Все эндпоинты используют метод POST. Заголовки:
Content-Type: application/json
Authorization: Bearer {token}
Пагинация
| Параметр | Тип | Описание |
|---|---|---|
take | integer | Количество записей в ответе |
skip | integer | Смещение (offset) для пагинации |
Фильтрация
Фильтры передаются в формате массива:
filter[filters][0][field]=price
filter[filters][0][operator]=gt
filter[filters][0][value]=1000
filter[filters][1][field]=sales
filter[filters][1][operator]=gt
filter[filters][1][value]=100
Поддерживаемые операторы: gt (больше), lt (меньше), = (равно).
Сортировка
sort[0][field]=revenue
sort[0][dir]=desc
Направления: asc (по возрастанию), desc (по убыванию).
Формат ответов
Все ответы имеют единый JSON-формат:
{
"success": true,
"data": { ... },
"message": "OK",
"details": null
}
| Поле | Тип | Описание |
|---|---|---|
success | boolean | Успешность запроса |
data | object/array | Данные ответа |
message | string | Текстовое сообщение |
details | object/null | Дополнительные детали (при ошибках) |
Rate Limiting
Не чаще 1 запроса в 5 секунд на аккаунт. При превышении лимита запросы будут отклонены.
Рекомендации:
- Встраивайте задержку
time.sleep(5)между запросами - Используйте экспоненциальный backoff при ошибках 429
- Кешируйте данные локально
Полный каталог эндпоинтов
Авторизация
| Метод | Эндпоинт | Описание |
|---|---|---|
| POST | /api/2025_09/auth/login | Получение JWT-токена |
| POST | /api/2025_09/auth/logout | Завершение сессии |
| POST | /api/2025_09/auth/refresh | Продление токена |
Управление магазинами
| Метод | Эндпоинт | Описание |
|---|---|---|
| POST | /api/2025_09/get_user_keys | Список подключённых магазинов |
| POST | /api/2025_09/create_user_keys | Добавить новый магазин |
| POST | /api/2025_09/update_user_keys | Обновить настройки магазина |
| POST | /api/2025_09/destroy_user_keys | Удалить магазин |
Репрайсер — Управление сценариями
| Метод | Эндпоинт | Описание |
|---|---|---|
| POST | /api/2025_09/repricer/get_script_list | Список всех сценариев |
| POST | /api/2025_09/repricer/create_compensation | Создать сценарий компенсации СПП |
| POST | /api/2025_09/repricer/create_competitor_spp | Создать сценарий отслеживания конкурентов |
| POST | /api/2025_09/repricer/store_competitor_plus | Создать расширенный сценарий конкурентов |
| POST | /api/2025_09/repricer/destroy_script | Удалить сценарий |
Репрайсер — Управление товарами
| Метод | Эндпоинт | Описание |
|---|---|---|
| POST | /api/2025_09/repricer/get_product_list | Список товаров магазина |
| POST | /api/2025_09/repricer/update_product | Обновить цену товара |
| POST | /api/2025_09/repricer/get_sku_dynamic_list | Динамика цен управляемых товаров |
| POST | /api/2025_09/repricer/get_sku_history_list | Лог событий репрайсера |
Внешняя аналитика — Категории
| Метод | Эндпоинт | Описание |
|---|---|---|
| POST | /api/2025_09/ext-analitic/show_category | Список категорий |
| POST | /api/2025_09/ext-analitic/category_report | Отчёт по категории |
| POST | /api/2025_09/ext-analitic/category_overview_all | Общие показатели категории |
| POST | /api/2025_09/ext-analitic/get_category_product | Товары в категории |
| POST | /api/2025_09/ext-analitic/get_category_brand | Бренды в категории |
| POST | /api/2025_09/ext-analitic/get_category_seller | Продавцы в категории |
Внешняя аналитика — Товары
| Метод | Эндпоинт | Описание |
|---|---|---|
| POST | /api/2025_09/product/info | Статические данные товара |
| POST | /api/2025_09/product/overview | Суммарные показатели товара |
| POST | /api/2025_09/product/days | Детализация по дням |
| POST | /api/2025_09/product/categories | Категории и позиции товара |
| POST | /api/2025_09/product/stores | Данные по складам |
| POST | /api/2025_09/product/keywords | Поисковые запросы и позиции |
Поддерживаемые маркетплейсы
| Маркетплейс | Код | Внешняя аналитика | Внутренняя аналитика | Репрайсер |
|---|---|---|---|---|
| Wildberries | wb | Да | Да | Да |
| Ozon | ozon | Да | Да | Да |
Примеры интеграции
Python — Базовый клиент
import httpx
import time
class SalesFinderClient:
BASE_URL = "https://api.salesfinder.ru/api/2025_09"
def __init__(self, email: str, password: str):
self.token = None
self._login(email, password)
def _login(self, email: str, password: str):
resp = httpx.post(
f"{self.BASE_URL}/auth/login",
json={"email": email, "password": password}
)
resp.raise_for_status()
self.token = resp.json()["data"]["token"]
def _headers(self):
return {
"Authorization": f"Bearer {self.token}",
"Content-Type": "application/json"
}
def get_category_products(self, category_id: int, take: int = 100):
time.sleep(5) # Rate limit
resp = httpx.post(
f"{self.BASE_URL}/ext-analitic/get_category_product",
headers=self._headers(),
json={"category_id": category_id, "take": take}
)
return resp.json()["data"]
def get_product_keywords(self, product_id: int):
time.sleep(5)
resp = httpx.post(
f"{self.BASE_URL}/product/keywords",
headers=self._headers(),
json={"product_id": product_id}
)
return resp.json()["data"]
curl — Быстрая проверка
# 1. Получить токен
TOKEN=$(curl -s -X POST https://api.salesfinder.ru/api/2025_09/auth/login \
-H "Content-Type: application/json" \
-d '{"email":"user@example.com","password":"pass"}' \
| jq -r '.data.token')
# 2. Запросить данные по категории
curl -X POST https://api.salesfinder.ru/api/2025_09/ext-analitic/show_category \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json"
Требования для интеграции с Platrum Spider
Для полноценной интеграции SalesFinder с Platrum Spider необходим тариф Pro (20 000 руб./мес.). API даёт доступ к 24+ эндпоинтам: управление ценами, аналитика категорий и товаров, мониторинг конкурентов.