For the complete documentation index, see llms.txt. This page is also available as Markdown.

Как работать с API динамических доменов AdBlock

Инструменты AdBlock становятся всё более сложными, создавая серьёзные проблемы для издателей, стремящихся максимизировать доход от онлайн-рекламы. Чтобы помочь смягчить эти проблемы, этот API позволяет издателям динамически настраивать свои скрипты в зависимости от активных доменов, значительно снижая риск того, что контент будет заблокирован программами AdBlock.

Обеспечивая показ рекламы через регулярно ротируемые домены, издатели могут:

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

  • Улучшать пользовательский опыт: Доставлять рекламный контент без перебоев, не вызывая обнаружение AdBlock.

  • Автоматизировать управление доменами: Избавиться от ручных обновлений благодаря автоматизированному 7-дневному жизненному циклу домена.

Новые домены генерируются каждые 3 дня и доступны через API. Срок жизни доменов составит 6 дней.

  • 3 дня активно

  • 3 дня устаревший

После истечения срока жизни домен будет деактивирован. Из соображений производительности рекомендуется кэшировать домен в течение 24 часов перед запросом нового домена из API.

Этот API доступен только для Встроенный скрипт Popunders и In-Stream видео зон.

Требования

Чтобы использовать этот API, издателям необходимо:

  • Выполнить GET-запрос к конечной точке: https://ads.exoclick.com/adblock-domains.php

  • В ответе вы получите новый домен для показа рекламы

  • Затем вы должны изменить конечную точку syndication, используемую в теге вашей рекламной зоны, на новую, указанную в ответе API.

Шаги по внедрению

1

Получить активный домен

Чтобы динамически получить активный домен, вам нужно выполнить вызов API server-to-server. Это важно, потому что вызовы API могут быть заблокированы, если они выполняются на стороне клиента.

Вот пример вызова server-to-server на PHP:

А вот ожидаемый ответ от API:

2

Обновите ваш скрипт

Используйте домен полученный от конечной точки для обновления домена, используемого в вашей рекламной зоне. Исходный домен зависит от рекламного формата:

  • Для In-Stream видео зон измените VAST Tag:

    • До : https://s.magsrv.com/v1/vast.php?t={random}&idzone={zoneId}

    • После : https://newsub.newdomain.com/v1/vast.php?t={random}&idzone={zoneId}

  • Для зон Popunder измените syndication_host в встроенном скрипте:

    • До : s.pemsrv.com

    • После : newsub.newdomain.com

Обнаружение AdBlock

Чтобы определить, включено ли у пользователя расширение adblock, вам необходимо разместить ads.js на стороне издателя (ваш собственный домен/CDN) и включить его в самом начале вашего тега body тега.

Не нужно запрашивать https://www.exoclick.com/ads.js напрямую.

Создайте свой собственный ads.js файл:

  1. Создайте файл с именем ads.js в общедоступном пути на вашем сайте (например /js/ads.js).

  2. Добавьте в этот файл следующий код.

  3. Загружайте этот файл со своей страницы до логики интеграции рекламы.

Содержимое файла-примера:

Затем добавьте следующую строку в самом начале вашего тега body тега:

Этот скрипт будет заблокирован AdBlock, если клиент использует его, из-за наличия ключевых слов "exoclick" и "ads". После загрузки этого скрипта фрагмент JS попытается прочитать определённую переменную. Если переменная не определена или недоступна, мы можем определить, что скрипт был заблокирован.

Примеры интеграции

В этих двух примерах мы используем fetchAdblockDomain.php в качестве имени server-to-server вызова для получения домена AdBlock.

In-Stream

Чтобы использовать динамические домены с In-Stream, обязательно включите VAST-плеер внутрь скрипта, иначе плеер загрузит рекламную зону In-Stream по умолчанию вместо использования обновлённого домена. В этом примере мы используем HTML5-плеер Fluidplayer.

Popunder

Устранение неполадок

Домен не возвращён

Иногда конечная точка может возвращать пустые домены.

Всегда записывайте ответ конечной точки в лог во время отладки, чтобы выявить возможные проблемы. Если success равен false, обратитесь в службу поддержки.

Возвращается домен по умолчанию, несмотря на включённый AdBlock

Вот некоторые распространённые причины, по которым ваш скрипт может использовать домен по умолчанию, несмотря на включённый AdBlock:

  • ads.js не размещён на стороне издателя. Эта интеграция требует отдачи ads.js с вашего собственного домена (например /js/ads.js). Прямой запрос https://www.exoclick.com/ads.js не поддерживается.

  • домен по умолчанию отображается до домена AdBlock. Убедитесь, что скрипт, вставляющий рекламную зону на вашем сайте всегда дожидается server-to-server вызова. В зависимости от цепочки выполнения домен по умолчанию может быть добавлен на сайт до того, как будет возвращён домен AdBlock, что помешает вашему сайту вставить обновлённый домен.

Для получения дополнительной помощи свяжитесь со службой поддержки здесь.

Последнее обновление

Это было полезно?