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

Ключи

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, публичный ключ тоже считается. Истёкшие ключи в лимит не входят; в списке они остаются с пометкой «Истёк», пока вы их не удалите.

Срок секретного ключа продлить нельзя, права выпущенного ключа изменить нельзя. Порядок замены такой, чтобы бот ни на минуту не остался без доступа:

  1. Выпустите новый секретный ключ с нужными правами и сроком.
  2. Подключите его в боте или на сервере и проверьте запрос.
  3. Удалите старый ключ.

Удаление ключа действует в течение минуты.

Если ключ попал в чужие руки (например, его опубликовали в репозитории или он был в адресе запроса), не ждите срока: выпустите новый и сразу удалите старый.