Ключи
API отдаёт данные одного стримера, того, кто выпустил ключ. Запросить чужие данные нельзя. Ключи выпускаются в кабинете, приложение создавать не нужно.
Какой ключ нужен
Заголовок раздела «Какой ключ нужен»Боту, серверу и скрипту подходит секретный ключ. Статическому сайту, который показывает данные посетителям, нужен публичный ключ: его можно вставить в код страницы. Он открывает только профиль, цели и статистику. Список донатов читается секретным ключом, на сервере или в боте.
Где получить
Заголовок раздела «Где получить»В кабинете Донатти: меню аватара → «Разработчикам». Приложение создавать не нужно.
- Секретный ключ
dnt_pat_…— для бота и сервера. «Выпустить секретный ключ»: название, права (profile:read,donations:read,goals:read,stats:read) и срок — 30, 90 или 365 дней. Значение показывается один раз — сохраните его в секретах программы. Никогда не вставляйте секретный ключ в код страницы сайта. - Публичный ключ
dnt_pk_…— для сайта. Открывает только профиль, цели и статистику, без срока. «Выпустить публичный ключ» с адресами сайтов (Origin): из браузера ключ принимается только с них, список меняется в окне «Настроить ключ». Ключ один; его значение можно снова скопировать в разделе. Ключ виден посетителям сайта: проверка Origin ограничивает браузеры, но не делает ключ секретным.
Действующих ключей у стримера — не больше 20, публичный ключ тоже считается; истёкшие не считаются.
Ключ передаётся только заголовком Authorization: Bearer <ключ>. Ключ в адресе запроса
(?access_token=) отклоняется с 400 token_in_query; cookie не используются.
В разделе два блока:
- боту или серверу: «Секретные ключи», кнопка «Выпустить секретный ключ». В окне введите название, отметьте права и срок, затем нажмите «Выпустить ключ»;
- сайту: «Публичный ключ», кнопка «Выпустить публичный ключ». Укажите адрес сайта и нажмите «Выпустить ключ». Адреса меняются позже: «Настроить ключ», затем «Сохранить адреса».
Права секретного ключа
Заголовок раздела «Права секретного ключа»| Право | Что открывает |
|---|---|
profile:read |
ник, имя, аватар и ссылка на страницу доната |
donations:read |
все донаты с полным текстом, суммами, источниками, целями, медиа и статусом модерации |
goals:read |
цели сбора и собранные суммы |
stats:read |
топ донатеров и сумма за период |
Отметьте только то, что нужно боту. donations:read открывает и отклонённые модерацией донаты: фильтры ваших виджетов к API не применяются. Как безопасно выводить донаты на стрим, написано в быстром старте для бота.
Где хранить
Заголовок раздела «Где хранить»Секретный ключ кладут в переменную окружения или в настройки бота, на сервер. Его нельзя вставлять в код сайта, репозиторий, чат или OBS: с ним любой прочитает ваши данные, пока ключ не истёк или не удалён.
Публичный ключ можно держать в коде сайта. Он работает только с адресов сайтов (Origin), которые вы указали в его настройках. Адрес ограничивает браузеры, но не делает ключ секретным: ключ видят посетители. Без указанных адресов ключ не работает вовсе.
Сколько ключей
Заголовок раздела «Сколько ключей»Публичный ключ один. Действующих ключей у стримера не больше 20, публичный ключ тоже считается. Истёкшие ключи в лимит не входят; в списке они остаются с пометкой «Истёк», пока вы их не удалите.
Заменить секретный ключ
Заголовок раздела «Заменить секретный ключ»Срок секретного ключа продлить нельзя, права выпущенного ключа изменить нельзя. Порядок замены такой, чтобы бот ни на минуту не остался без доступа:
- Выпустите новый секретный ключ с нужными правами и сроком.
- Подключите его в боте или на сервере и проверьте запрос.
- Удалите старый ключ.
Удаление ключа действует в течение минуты.
Если ключ попал в чужие руки (например, его опубликовали в репозитории или он был в адресе запроса), не ждите срока: выпустите новый и сразу удалите старый.