Предложите байеру подключить аккаунт к внешнему инструменту — возражение прилетит раньше, чем вы договорите: какой доступ ему нужен и что он с ним сделает. Возражение правильное. Большинство интеграций отвечают на него экраном OAuth и списком разрешений, который принимают не читая.
Есть другой способ вынести данные из аккаунта Google Ads, и это штатная возможность самого Google Ads.
Что такое скрипт на самом деле
В разделе «Инструменты и настройки» есть пункт «Скрипты». Он принимает JavaScript и выполняет его внутри аккаунта, на инфраструктуре самого Google, по расписанию, которое вы выбираете, — минимальный полезный шаг это час. Код работает с доступом того, кому принадлежит аккаунт, потому что выполняется в его аккаунте. Никто снаружи не аутентифицируется: снаружи никого нет.
Именно это свойство и делает схему интересной для мониторинга. Скрипт читает то, что аккаунт знает о себе, — показы, клики, расход, конверсии, статусы кампаний и объявлений, ограничения по политике — и отправляет цифры на URL. С точки зрения внешнего инструмента аккаунт это клиент, который к нему постит, а не ресурс, в который он лезет. Инструмент не хранит доступов и не может зайти в аккаунт, потому что заходить некуда.
Что это даёт на практике
Установка — это вставка файла. Скопировать в аккаунт, поставить расписание, запустить один раз. Ни разрешений на проверку, ни сервисного аккаунта, ни ожидания администратора MCC.
Данные — собственные данные аккаунта. Скрипт читает те же отчёты, что и интерфейс, поэтому цифры, за которыми вы следите, и цифры, которые вы увидите, открыв аккаунт, — одни и те же. Ничего не выводится из кликов и не восстанавливается по тегу.
Отзыв доступа — это удаление. Выключить интеграцию значит удалить файл из аккаунта. Внешний инструмент в этом не участвует, и забыть про какую-то галочку в чужих настройках невозможно.
Лендингов это не касается вообще. Скрипт читает рекламный аккаунт, а не трафик. На ваших страницах нет ни сниппета, ни куки, ни лишнего запроса между объявлением и оффером.
Где это заканчивается
Границ две, и инструмент, который их прячет, с вами нечестен.
Расписание принадлежит Google, а не вам. Часовой скрипт выполняется примерно раз в час. Для «аккаунт перестал тратить» и «одобрения провалились» этого достаточно с запасом — оба события разворачиваются часами, — но это не поток в реальном времени. Любое обещание мгновенного обнаружения, построенное на скриптах, обещает что-то другое.
Новую версию придётся вставлять заново. Файл живёт в аккаунте — именно поэтому до него никто чужой не дотянется, и ровно поэтому никто чужой его не обновит. Когда у скрипта появляется новая возможность, аккаунты со старым файлом продолжают работать и продолжают отчитываться о том, что умеют, а в каждый нужно вставить новый файл руками. Двадцать аккаунтов — это вечер. Триста — это проект, и знать о нём лучше заранее.
Чего это не делает само по себе
Чтение — одно направление. Если инструмент ещё и действует — ставит объявление на паузу, останавливает кампанию, меняет бюджет, — этому действию тоже надо где-то выполняться, и со скриптом ответ тот же: оно выполняется в аккаунте, из очереди, которую собственный скрипт аккаунта заберёт на следующем проходе.
Это честное описание сделки. Ничто снаружи не может подействовать на аккаунт напрямую, а значит, и по ошибке тоже не может, — но всё, что происходит, происходит по расписанию аккаунта, а не по расписанию того, кто нажал кнопку.
Такова форма подхода: ни доступов, ни OAuth, ни кода на ваших страницах, а взамен — частота, измеряемая часом, а не секундой, и файл, который принадлежит вам и потому требует вашего обслуживания.