Развернуть
JavaScript SDK
Обновлено 12 декабря 2025
Для подключения скрипта JS-SDK необходимо выполнить следующие шаги:
1. Подготовка данных
При инициализации необходимо передать объект со следующими параметрами:
| Параметр | Обязательность | Тип | Описание | Пример |
|---|---|---|---|---|
sessionId | 1 | string | Внутренний идентификатор сессии или пользователя партнера, нужен для последующего нахождения АТ сервером партнера | - |
clientId | 1 | string | Идентификатор приложения партнера | 40c1d5da-1532-11eb-adc1-0242ac120002 |
partnerProfileUrl | 1 | string | URL сервера партнера для запросов на сервер ЕЛК проксируемых через сервер партнера | https://zvuk.com/ |
blockId | 1 | string | Id блока на поверхности партнера, куда будет отрисована группа виджетов ЕЛК | sbid_388149487965860015 |
pathToJson | 1 | string | Путь до json-файла с разметкой | https://id.sber.ru/profile/external_partners/elk |
themeColorLight | 0-1 | object | Цвета партнера для светлой темы | |
themeColorDark | 0-1 | object | Цвета партнера для темной темы | |
isDarkMode | 0-1 | boolean | Используется ли темная тема (необходимо для партнеров с дефолтно-темной темой) | false |
headersELK | 0-1 | [String: String] | Авторизационные хедеры Партнера (ключ, значение) | |
ShowELK | 0-1 | function | Функция callback Показ главного экрана ЕЛК | |
HideELK | 0-1 | function | Функция callback Скрытие главного экрана ЕЛК, в виду ошибки | |
ClickELK | 0-1 | function | Функция callback Событие клика на виджет ЕЛК | |
WidgetStatusELK | 0-1 | function | Функция callback Событие изменения статуса виджета ЕЛК | |
WidgetErrorELK | 0-1 | function | Функция callback Передача в приложение партнера кодов ошибок к сервера партнера | Есть код ошибки в заголовке: WidgetErrorELK (widgetName: "Прайм", httpStatusCode: 401, partnerErrorCode: [Значение x-elk-error-code]) Нет кода ошибки в заголовке: WidgetErrorELK (widgetName: "Прайм", httpStatusCode: 401, partnerErrorCode: "NULL") |
themeColorLight/themeColorDark
Объект с цветами для светлой темы:
{
"main": "#1f1f1f",
"accent": "#ffffff",
"secondary": "#576875",
"theme": "#576875",
"warning": "#e3621b"
}
main- основной цвет (цвет фона виджета)accent- цвет основных текстовых элементовsecondary- цвет вторичных текстовых элементовtheme- тематический цвет (цвет телефона в виджетах userinfo и т.п.)warning- цвет информационных сообщений для привлечения внимания пользователя (например, текстовка "Ожидает оплаты")
2. Добавить в HTML тег со ссылкой на скрипт:
<script src="https://id.sber.ru/profile/external_partners/WEB_PROFILE.und.js" async></script>
3. Добавить в HTML блоки из группы section для размещения виджетов с соответствующими id:
<div id="sbid_38814948796580015"></div>
3. Вызвать скрипт и передать в него подготовленные данные:
new ELK({sessionId, clientId, partnerProfileUrl, isDarkMode, themeColorLight, themeColorDark, blockId, pathToJson});
4. (Опционально) Для работы с методами скрипта, присвоить инстанс скрипта переменной и вызывать через переменную методы:
const ELK_INSTANCE = new ELK({sessionId, clientId, partnerProfileUrl, isDarkMode, themeColorLight, themeColorDark, blockId, pathToJson});
ELK_INSTANCE.toggleTheme();
Перечень доступных методов можно посмотреть в разделе Методы JS-SDK.