WyliОткрыть приложение

Справочник API

Публичный SDK. Ясные границы доступа.

Разделы и содержание

Браузерный SDK

После загрузки /wyli.js доступен объект window.wyli. Вызывайте методы, когда тег подключения уже загрузился.

МетодЧто делает
event(name, props)Отправляет именованное событие. Название: 1–100 символов; параметры: объект, по умолчанию пустой. Не используйте массив или null.
identify(id)Задаёт обезличенный ID длиной 1–200 символов. Не передавайте контактные данные или секреты.
start()Начинает запуск, возвращает Promise. Нужен после согласия при data-consent="required"; повторный вызов использует тот же запуск.
status()Возвращает текущие статусы подключений: loading, ready, error или disabled. До запуска объект может быть пустым.
getVisitorId()Возвращает текущий обезличенный идентификатор, если он создан или задан. До запуска он может отсутствовать.
getSessionContext()Возвращает доступный контекст визита. Идентификатор записи присутствует только если соответствующая сессия действительно создана SDK.
feedback(surveyId)Асинхронно открывает подходящий опубликованный опрос и возвращает true при открытии, иначе false. Учитывает запуск, DNT/GPC и путь страницы.

События до завершения инициализации могут попасть в ограниченную очередь; не вызывайте их до согласия. Отсутствие ошибок вызова не подтверждает обработку события сервером.

Минимальный сценарий

// После загрузки SDK и согласия посетителя:
await window.wyli.start();
window.wyli.identify('customer_7f3a');
window.wyli.event('lead_created', {form: 'callback'});
const connectionState = window.wyli.status();

Идентификатор в примере вымышленный. identify() связывает действия с заданным ID, но не подтверждает личность посетителя. Содержание getSessionContext() также не служит доказательством личности или наличия готовой записи.

API кабинета владельца

Эти методы управляют входом и подключением сайтов. Они требуют действующей сессии владельца, кроме самого входа. Отчёты и записи открываются в соответствующих разделах приложения.

Метод и путьНазначение
POST /api/loginВход владельца. Используйте экран входа приложения; он устанавливает защищённую сессию.
POST /api/logoutЗавершение текущей сессии.
GET /api/meТекущий вошедший пользователь.
GET /api/sitesСписок сайтов и состояние их подключения.
POST /api/sitesСоздание подключения с названием name и адресом domain.
POST /api/sites/:id/retryПовторная попытка подключения существующего сайта.
GET /api/healthСостояние доступности подключённых сервисов для владельца.

Изменяющие запросы проверяют точный Origin кабинета. Методы, принимающие JSON, требуют Content-Type: application/json и ограничивают тело запроса 8 KiB. Без сессии возвращается 401. Публичный ключ сайта не заменяет сессию владельца.

Не переносите cookie сессии или пароль в код сайта, ссылку, журнал событий или опубликованный пример. Внутренние идентификаторы подключений не являются публичным контрактом SDK.

Ответы и экспорт опросов

Результаты доступны владельцу в обратной связи. Экспорт выбранной версии доступен по GET /api/feedback/surveys/:id/export с параметрами revision и offset; требуется та же сессия владельца.

Одна порция CSV содержит до 1000 ответов начиная с выбранного смещения. Это не экспорт всей истории. Следующая порция использует следующее непересекающееся смещение; максимальное допустимое смещение — 100000.

Перейдите от описания к своему сайту.

Открыть приложение