SearchBooster API: что можно и чего нельзя
Что обычно умеет API поискового сервиса, какие ограничения встречаются во всей категории и какие вопросы задать до начала интеграции.
Когда виджета недостаточно и поиск встраивают в собственный интерфейс, начинается работа с API. Ниже — что обычно доступно в этом классе сервисов, где встречаются ограничения и что выяснить до начала работ.
Конкретные методы и лимиты у каждого вендора свои и меняются. Сверяйтесь с актуальной документацией; здесь — карта того, что в ней искать.
Что обычно можно
Передавать каталог. Загрузка позиций пакетом, обновление отдельной карточки, удаление. Формат чаще всего JSON, иногда выгрузка по расписанию с вашего адреса.
Искать. Запрос с текстом и фильтрами, ответ со списком позиций и оценками соответствия. Основной метод, ради которого всё делается.
Получать подсказки. Отдельный быстрый метод для строки ввода: он должен отвечать за десятки миллисекунд.
Управлять правилами. Синонимы, закрепление позиций, скрытие. Иногда только через интерфейс, а не через API.
Забирать статистику. Запросы, число результатов, переходы. Полезно для собственных отчётов.
Чего обычно нельзя
Ограничения, типичные для категории:
- Забрать индекс целиком. Векторы и внутренние структуры остаются у вендора.
- Менять алгоритм ранжирования. Доступны параметры и правила, но не сама формула.
- Обновлять каталог без ограничений по частоте. Есть лимиты на число обращений.
- Хранить сколь угодно длинную историю. Глубина статистики ограничена тарифом.
- Получить мгновенное применение правок. Обычно есть задержка на переиндексацию.
Что выяснить до начала работ
- Лимиты: сколько обращений в секунду и в сутки, что происходит при превышении.
- Время применения изменений каталога: секунды, минуты или часы.
- Формат ошибок и поведение при недоступности сервиса.
- Есть ли тестовое окружение отдельно от боевого.
- Как версионируется API и как предупреждают об изменениях.
- Какие данные уходят на сторону сервиса и где они хранятся.
- Что вы сможете забрать при расторжении договора.
Третий пункт важнее, чем кажется: ваш сайт должен продолжать работать, когда сервис недоступен.
Что предусмотреть в своей интеграции
- Запасной путь. Сервис не ответил — показывайте штатный поиск платформы, а не пустую страницу.
- Тайм-аут. Ожидание ответа дольше секунды на поиске равносильно отказу.
- Повторы с задержкой. При ошибке загрузки каталога, а не бесконечным циклом.
- Очередь обновлений. Чтобы массовая правка цен не упёрлась в лимит обращений.
- Логирование запросов. Своё, независимое от статистики вендора.
Последнее пригодится в двух случаях: при споре о качестве и при переходе к другому вендору.
Виджет или API
Виджет ставится за часы и не требует разработки, но выглядит как отдельное окно. API даёт полный контроль над интерфейсом и требует разработчика.
Практичный порядок: пилот на виджете, интеграция через API после того, как решение подтвердилось. Разбор подключения виджета — как запустить внутренний поиск по сайту и не сломать вёрстку.
Вывод и следующий шаг
API поисковых сервисов дают загрузку каталога, поиск, подсказки и статистику, но не отдают индекс и не позволяют менять алгоритм. Главное, что нужно предусмотреть на своей стороне, — поведение при недоступности сервиса.
Следующий шаг: запросите у вендора документацию и лимиты до начала разработки. Половина сюрпризов вылезает именно там.
Частые вопросы
Нужен ли API, если есть виджет?
Нет, если устраивает готовый интерфейс. API нужен для встраивания поиска в собственную вёрстку.
Как часто можно обновлять каталог?
Зависит от лимитов вендора. Уточните их до проектирования обмена, иначе упрётесь в них на первой массовой выгрузке.
Что делать, если сервис недоступен?
Переключаться на штатный поиск платформы. Это обязательный запасной путь, а не опция.
Можно ли забрать свои данные?
Каталог у вас и так есть. Уточняйте судьбу синонимов, правил и статистики.
Насколько быстро должен отвечать поиск?
Подсказки — десятки миллисекунд, полный поиск — доли секунды. Замеряйте на своих данных, а не по обещаниям.
Нужен ли отдельный ключ для тестов?
Да, и это стоит выяснить сразу. Тестировать на боевом ключе означает портить свою же статистику.