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

Инструменты и примеры

Справочники: события и метрики, iOS SDK, Flutter SDK. Практический пример: подтверждённая корзина и GA4. Проверка по симптому: диагностика интеграции.

Готовые примеры​

ПримерЧто проверяетсяИнструкция
Web SDK ZIPРеальный bundle, каталог и player на зарегистрированном originWeb SDK
API ZIPНепустой fixture, запрос к API, карточка эфира и открытие Web SDK player на реальных данныхAPI Quickstart
iOS ZIPСборка app, entrypoint и player с выданным SDKNative iOS
Flutter ZIPiOS host, native preview и product actionsFlutter на iOS

iOS и Flutter ZIP относятся к опубликованным iOS-версиям. Android SDK и Flutter на Android — отдельные поставки: платформы и формат подключения. Для расширенного commerce-сценария получите комплект SDK с регистрацией и примером; фрагмент адаптера не заменяет этот комплект.

Архивы содержат код приложения или страницы и README. Приватные SDK, credentials и клиентские данные в них не входят. Для SDK-примеров нужен доступ к указанной версии пакета; для реального контента — параметры проекта. API fixture явно отделён от реального запроса.

Файлы для интеграции​

  • OpenAPI YAML — машиночитаемая схема публичных API-методов.
  • OpenAPI viewer — чтение схемы в браузере.
  • Postman collection — запросы со служебными значениями вместо данных production-клиентов.
  • CSS-пример бейджа — необязательный вариант оформления для собственного интерфейса.

OpenAPI определяет публичные поля и обязательные параметры. Руководства описывают порядок интеграции и смысл ответов API.

Быстрая локальная проверка​

Скачайте API starter, распакуйте его и проверьте синтетический ответ с Node.js 22+:

node request-streams.mjs --fixture streams.fixture.json

Ожидается запись stream-vod-1 со строковым товарным ID 0001001. Fixture проверяет обработку данных, не сеть или playback. Реальный cURL/Node.js-запрос с timeout и отдельной проверкой HTTP/envelope приведён в Quickstart. Повторы с общим deadline — в rate limiting. Browser origin регистрируется до сетевой проверки в браузере.

Postman​

После импорта создайте локальное окружение:

ПеременнаяЗначение
baseUrlhttps://app.shopstory.live
applicationIdЗначение, выданное для вашего проекта
feedProductIdТестовый ID из принятого фида
translationIdID тестовой трансляции из /v3/streams

Не публикуйте environment-файл и не записывайте в коллекцию cookies, пароли или access tokens. applicationId не является секретом. Реальные клиентские идентификаторы в общедоступном примере не нужны.

Автоматическая проверка клиента​

Автоматический contract test должен проверять:

  1. Тело ответа содержит JSON с числовым полем status верхнего уровня.
  2. Клиент различает транспортную HTTP-ошибку и бизнес-ошибку внутри конверта.
  3. availableStreams и plannedStreams обрабатываются как массивы.
  4. Пустая выдача отображается как отдельное состояние интерфейса.
  5. Идентификаторы сохраняются строками.
  6. Незнакомое необязательное поле не ломает десериализацию.
  7. Timeout или недоступность ShopStory не блокируют основной интерфейс клиента.

В тестах используйте выданный тестовый контур или локальные fixtures. Не связывайте CI с конкретным production-эфиром или фиксированным количеством записей.

Проверка Mobile SDK​

Postman и OpenAPI проверяют HTTP-контракт. Нативную интеграцию проверяйте отдельно для версии пакета из integration handoff:

  1. feedProductId остаётся строкой между каталогом мобильного приложения, SDK и commerce-системой.
  2. SDK передаёт приложению типизированное product action с идентификатором выбранного товара.
  3. Выбранное действие открывает native PDP либо, для прямой корзины, приложение проверяет актуальный остаток и изменяет корзину в системе ритейлера.
  4. Состояние плеера и событие аналитики не определяют результат операции.
  5. Ошибка SDK или commerce API не блокирует PDP, navigation и checkout.

Web callback(boolean) относится только к Web SDK. Mobile host получает типизированное действие. Его обработка описана в руководстве для соответствующей версии пакета. Доступ к пакету и клиентские routes выдаются отдельно; документированные версии опубликованы. Публичный контракт: Mobile SDK.

Проверка OpenAPI​

Подключите спецификацию к линтеру и генератору типов. После генерации клиента отдельно проверяйте body.status, no_active_stream и пустые массивы.

Подходящие инструменты:

Закрепите версию генератора и проверяйте diff сгенерированного клиента при code review.

Данные для обращения​

В обращении на support@shopstory.live укажите:

  • endpoint и очищенные query-параметры;
  • HTTP-код и status из JSON;
  • время с часовым поясом;
  • URL страницы и origin для CORS-проблемы;
  • браузер, ОС и короткие шаги воспроизведения.

Перед отправкой удалите cookies, заголовки авторизации, пароли фида, персональные данные и содержимое клиентской корзины.