Интеграция
Встраивание в iframe
Ссылку link из POST /playGame.do можно открыть во вкладке браузера или показать внутри <iframe> на вашем сайте. Браузер покажет iframe, только если ваш сайт входит в список разрешённых источников iframe проекта; здесь описано, как его задать.
Как это работает#
Каждая страница игры отдаётся с заголовком Content-Security-Policy: frame-ancestors. Он всегда разрешает собственные страницы платформы и добавляет источники, настроенные для вашего проекта. Страница, встроенная с любого другого источника, блокируется браузером (пустая рамка и сообщение о frame-ancestors в консоли).
<iframe src="LINK_FROM_PLAYGAME" allow="autoplay; fullscreen" style="border:0;width:100%;height:100%"></iframe>Правила списка#
- До 16 источников на проект.
- Каждая запись —
https://-источник: схема, хост и необязательный порт, ничего больше. Голый хост (casino.example) принимается и сохраняется какhttps://casino.example; завершающий/и регистр нормализуются; дубликаты и пустые строки отбрасываются. - С ошибкой
INVALID_FRAME_ORIGINSотклоняются: больше 16 записей, шаблоны (*.casino.example), другие схемы (http://), пути, query, fragment, учётные данные, хосты без точки (localhost) и записи длиннее 253 символов. - Список, сохранённый в админ-панели, заменяет заданный в конфигурации платформы для вашего проекта; пустой сохранённый список не разрешает ни одного сайта.
- Поддомены — отдельные источники: если используете и
https://casino.example, иhttps://www.casino.example, перечислите оба.
Где задать#
В админ-панели откройте Projects → ваш проект → Integration → Iframe domains, введите по одному источнику в строке и сохраните. Менять список могут владелец платформы и ваши сотрудники с правом manage credentials; остальные только просматривают. Изменение применяется к новым загрузкам страниц игры примерно за 15 секунд, каждое изменение записывается в журнал аудита.
Тот же список доступен через API админки (GET и PUT /admin/api/v2/projects/{partner}/frame-origins, тело {"origins": ["https://casino.example"]}), для которого нужна сессия администратора.
Ошибки#
| Код | HTTP | Когда |
|---|---|---|
INVALID_FRAME_ORIGINS | 400 | Отправленный список нарушает правила выше. |
INVALID_REQUEST | 400 | В теле запроса к API админки есть поля, кроме origins. |