Как настроить отправку уведомлений о состоянии бюджета аккаунтов Google Ads в Telegram и на почту
Делимся скриптом, который проверяет остаток денежных средств на отдельных аккаунтах Google Ads. Скрипт отправляет уведомление на почту и в Telegram — это поможет вовремя пополнить счёт.
Первая версия статьи вышла в 2019 году. Обновление информации и доработку кода выполнил Дмитрий Конарев, Upper-Junior PPC Specialist агентства Netpeak.
Важно: скрипт работает только с аккаунтами Google Ads по предоплате.
Пост и скрипт создан и доработан по материалам телеграм-канала Скрипты Google Ads, скриптов на GitHub (1, 2).
Артем Бородатюк о бизнесе и том, как он меняет мир Андрей Чумаченко о маркетинге, управлении собой и агентством Читать ЧитатьПодписывайтесь на Telegram-каналы основателей Netpeak
Как подключить скрипт
1. Копируем скрипт и вставляем его в аккаунт.
2. Добавляем скрипт.
3. Перед запуском обязательно изменяем значения в первом блоке.
- days — количество дней, на которое должно хватить остатка. То есть, если денег меньше, чем на семь дней, вы получите уведомление;
- email — указываем почту/почты, на которые должны приходить уведомления. Важно: почтовые адреса нужно указывать в кавычках;
- names — заменить ‘Nick’, ‘Name’ на свои значения (используется в теме письма при отправке) ;
- labelName: ActiveP — ярлык для аккаунтов, которые нужно контролировать.
4. Создаем бота для Telegram.
- открываем телеграмм, находим бота:
- придумываем имя и username. Рекомендую назвать одним значением, например Name_Bot. Вместо Name подставьте свое название;
- вводим своё название для бота;
- забиваем в строку username такое же название;
- если высветит ошибку «Sorry, this username is already taken. Please try something different», нужно выбрать другое название;
- если все верно, получаем ответ:
- открываем нашего бота, отправляем ему любое сообщение;
- после этого переходим по ссылке в браузере https://api.telegram.org/bot<ТОКЕН>/getUpdates. Здесь вместо <ТОКЕН> вставьте значение из ответа бота;
- видим ответ. Копируем цифры: \"chat:{\"id\":ХХХХХХХХХ
Не всегда показывается ID Chat. Если ID Chat не появился в окне браузера, то необходимо в Bot_Father сделать функцию /revoke и отправить повторно любое сообщение боту. После этого необходимо снова перейти в браузере по ссылке, заменив <ТОКЕН> на новое значение, полученное после функции /revoke.
- вставляем полученные значения в переменные в скрипте (следующий пункт).
5. Измените значения во втором блоке скрипта (в самом низу):
- TOKEN— номер токена;
- CHAT_ID— номер чата.
6. Авторизуйте скрипт.
7. Поставьте запуск скрипта по удобному вам расписанию.
8. Итог — вот такие уведомления на почту:
Так выглядят сообщения в Telegram:
Код скрипта
var CONFIG = { // Указать минимальное количество дней до окончания средств на аккаунте для отправки уведомления. days: 7, // Указать почты для отправки уведомлений, через запятую, если больше одной email: [\\\'email@gmail.com\\\', \\\'email2@gmail.com\\\'], // Указать ники/имена кому отправляется письмо, через запятую, если больше одного names: [\\\'Nick\\\', \\\'Nick2\\\'], } function main() { var accountName = AdWordsApp.currentAccount().getName() ; var budgets = AdWordsApp.budgetOrders().withCondition(\\\'Status = ACTIVE\\\').get() ; try { var budget = budgets.next() ; if (budget.getSpendingLimit() !== null) { var startDate = timeFormat(budget.getStartDateTime()) ; var cost = AdWordsApp.currentAccount().getStatsFor(startDate, today()).getCost() ; var limit = budget.getSpendingLimit() ; var last7DaysCostByDay = (AdWordsApp.currentAccount().getStatsFor(\"LAST_7_DAYS\").getCost() / 7).toFixed() ; var remainingDays = rDays(limit, cost, last7DaysCostByDay) ; var adjustments = AdWordsApp.budgetOrders().get().next().getTotalAdjustments() ; var budgetNow = (limit - cost).toFixed() ; if (budgetNow < 0) { var budgetNow = 0; } else { var budgetNow = budgetNow; } Logger.log([accountName, budgetNow, last7DaysCostByDay, remainingDays, adjustments]) ; var messageHeader = CONFIG.names + \\\' / Заканчивается бюджет на аккаунте: \\\' + accountName; var messageBody = \\\'Аккаунт \\\' + accountName + \\\' . Текущий остаток = \\\' + budgetNow + \\\'. Расход в день = \\\' + last7DaysCostByDay + \\\' в валюте аккаунта. \\\' + \\\'Денег хватит на \\\' + remainingDays + \\\' дня/дней. В аккаунте заканчиваются средства. Необходимо предупредить PM.\\\'; if (remainingDays < CONFIG.days) { MailApp.sendEmail(CONFIG.email, messageHeader, messageBody) ; sendTelegramMessage(messageHeader + \\\'. \\\' + messageBody) ; } } } catch (e) { Logger.log(e) ; var messageHeader = \\\'Ошибка выполнения скрипта Контроль бюджетов\\\'; var messageBody = \\\'Необходимо проверить работу скрипта Контроль бюджетов \\\' + accountName + \\\' \\\' + e; MailApp.sendEmail(CONFIG.email, messageHeader, messageBody) ; sendTelegramMessage(messageHeader + \\\'. \\\' + messageBody) ; } } function timeFormat(date) { var year = date.year.toString() ; var month = date.month.toString() ; var day = date.day.toString() ; if (month.length == 1) { month = \"0\" + month; } if (day.length == 1) { day = \"0\" + day; } return [year, month, day].join(\"\") ; } function today() { var date = new Date() ; var timeZone = AdWordsApp.currentAccount().getTimeZone() ; var format = \\\'yyyyMMdd\\\'; return Utilities.formatDate(date, timeZone, format) ; } function rDays(limit, cost, last7DaysCostByDay) { var remainingDays = ((limit - cost) / last7DaysCostByDay).toFixed() ; if (remainingDays < 1 || remainingDays == \"Infinity\" || remainingDays == \"-Infinity\" || remainingDays == -0) { remainingDays = 0; } return remainingDays; } function sendTelegramMessage(text) { var CONFIG2 = { TOKEN: \\\'TOKEN\\\', CHAT_ID: \\\'ID_CHAT_BOT\\\' }; var telegramUrl = \\\'https://api.telegram.org/bot\\\' + CONFIG2.TOKEN + \\\'/sendMessage?chat_id=\\\' + CONFIG2.CHAT_ID + \\\'&text=\\\'; var message = encodeURIComponent(text) ; var sendMessageUrl = telegramUrl + message; var options = { method: \\\'POST\\\', contentType: \\\'application/json\\\' }; UrlFetchApp.fetch(sendMessageUrl, options) ; }
Комментарии:
Как сделать креативный мобильный баннер. Зачем нужны особенные баннеры для мобильных? Что делать с картинкой? Что делать с текстом? Что делать с другими рекламными форматами? Дополнительные элементы. Обо всем этом детально и спримерами...
15 03 2025 16:17:24
Продвижение казахстанского онлайн-издания, новостника informburo.kz....
14 03 2025 7:14:17
Влияет ли значение показателя отказов на ранжирование сайта в поисковых системах и стоит ли переживать из-за высоких показателей отказов? Узнать больше....
13 03 2025 13:49:58
В мае прошлого года Google анонсировал выход нового Core Web Vitals. Что это и как будет работать рассмотрим в статье...
12 03 2025 13:12:34
О ловушке медиа, Стивене Пинкере и почему в любой ситуации важно оставаться оптимистом....
11 03 2025 6:39:18
Подборка корпоративных медиа, попав на страницы которых, не хочется их покидать....
10 03 2025 3:28:17
Что учитывать при продвижении недвижимости, клиник красоты, магазинов косметики, сайтов по продаже семян, шин?...
09 03 2025 18:42:44
Как связать данные, полученные из множества различных источников, и визуализировать их в виде удобных интеpaктивных отчетов...
08 03 2025 13:56:22
Чтобы перенаправить рекламу не на свой домен, арбитражники используют редирект в Яндексе при работе с партнерскими ссылками...
07 03 2025 15:10:43
Небольшая wiki о программатик-баинг и RTB. Объяснение алгоритма, обзор рынка, мнения экспертов....
06 03 2025 7:57:14
Киев, Одесса, Харьков, Днепр и другие города — в офис и обратно IT-специалисты добираются от 10 минут до более чем полутора часа. В дороге они слушают музыку, подкасты, читают книги. Узнать больше!...
05 03 2025 19:14:51
Как грамотно раскрутить пиццерию. Сняли фильтр и достигли хороших результатов....
04 03 2025 13:30:53
Триггер — способ ненавязчивого воздействия на потенциального клиента путем использования психологических приемов в текстах, заголовках и остальном контенте...
03 03 2025 23:13:22
Продвигаем медицинский проект. Кроме цифр рассказываем, что и как делали...
02 03 2025 14:49:47
Самопомощь по тревоге во время карантина и экономического кризиса...
01 03 2025 17:39:16
Инструмент позволяет создавать ролики длительностью от 6 до 16 секунд. Созданные видеоматериалы можно размещать не только в рекламных кампаниях, но и на сайте или в email-рассылке. ...
28 02 2025 17:35:34
Cтоимость просмотра в Google Ads дешевле как минимум в два раза по сравнению со Smart TV...
27 02 2025 15:37:34
Таблица общих для Google и Яндекс микроформатов инсайде...
26 02 2025 22:33:12
Инструкция о том, как создать новую кампанию в Bing Ads или импортировать существующую из Google Рекламы? Как добавить способ оплаты? Читайте о первых шагах настройки рекламы в Bing...
25 02 2025 18:44:25
Что такое теневой бан, что о нем известно, как выйти из-под него. Плюс мнение SMM-эксперта Нели Серебро...
24 02 2025 7:33:54
Оценить эффективность рекламной кампании с учетом специфики и целей конкретного клиента помогут персональные сводки...
23 02 2025 10:18:20
кмс Google: как достичь поставленной цели с помощью рекламы? Делимся советам по настройке КМС-кампаний....
22 02 2025 5:26:17
Сбор ключевых запросов с помощью программы Кей Коллектор: показываем и рассказываем пошагово с демонстрацией процесса настройки с сервисом Яндекс.Вордстат. Читать дальше!...
21 02 2025 21:31:20
Полтора года работы и 32 тысячи привлеченных подписчиков. Рассказываем о плюсах и минусах продвижения телеграм-канала....
20 02 2025 19:27:48
Подробно об оплате аккаунтов и налогообложении рекламы в Украине, России, Казахстане....
19 02 2025 14:56:47
Мы собрали 30+ Телеграм-каналов, где вы найдете только полезную и актуальную информацию про маркетинг, SEO, SMM, веб-аналитику и развитие бизнеса...
18 02 2025 16:39:21
Бизнесу следует позаботиться о том, чтобы представить отзывы на всех площадках (как минимум на тех, которые есть на трех страницах выдачи), где только может искать информацию пользователь. Узнать больше!...
17 02 2025 19:29:59
О том, как рассчитать коэффициент ROI (ROMI) для выявления эффективности и прибыльности рекламных кампаний...
16 02 2025 11:32:28
О работе внутреннего и внешнего контент-маркетолога: необходимые знания и навыки для старта, плюшки и головная боль. Все здесь....
15 02 2025 2:20:30
Как трафик CDN повлиял на систему интернет-магазина — палим кейсы...
14 02 2025 13:25:16
Ошибка на странице 404 может выглядеть креативно. Страница не найдена и не может быть найдена, потому что она в розыске, утеряна, украдена ниндзей, путь заснежен и дороги дальше нет, а принцесса находится в другом замке. О чем это?...
13 02 2025 10:43:51
Как быстро определить, что ваш подрядчик плохо работает с рекламной кампанией....
12 02 2025 9:51:21
От того, что такое оффер до лучших стратегий и избежания ошибок...
11 02 2025 3:24:43
Многие расширения Google Chrome предназначены для изучения иностранных языков, позволяют сохранять историю переводов и отдельные слова в словарь для дальнейшего запоминания....
10 02 2025 22:26:41
Сортировка мусора, использование велосипедов вместо автомобилей, озеленение города... В Украине, как правило, так представляют экофрендли бизнес. Зарубежные компании идут дальше....
09 02 2025 19:10:30
Владельцы айфонов в странах арабского мира легче расстаются с деньгами за приложения. Вот почему арабская локаль в App Store так привлекательна...
08 02 2025 8:40:24
Предположим, что оптимизация в аккаунте похожа на реальный мир и рассмотрим несколько примеров :)...
07 02 2025 23:19:37
Опыт сотрудника отдела маркетинга Netpeak. Дочке Маше — 10 лет, сыну Егору — почти 4 года. Мы по-прежнему не очень продуктивны в таких условиях, но все же накопили больше опыта, чем те люди, которые сейчас внезапно столкнулись с удаленной работой...
06 02 2025 6:15:19
Образ гармонии, почерк и потребности — рецензия на книгу Яна Чихольда «Облик книги»....
05 02 2025 20:17:58
Данные по более 26 млн кликов в 23 тематиках и 402 городах Украины...
04 02 2025 23:39:10
Как сэкономить на рекламе мобильных приложений в Facebook...
03 02 2025 22:11:13
Как стать заметнее для поисковых роботов Яндекс и Google...
02 02 2025 22:46:16
3D принтер — заработок миллионеров будущего! Тех, кто сейчас смог купить и начал заниматься ими или использует их в бизнесе, ждет объемный успех через каких-нибудь 3-5 лет....
01 02 2025 2:16:36
При создании проекта и выбора доменного имени важно взвесить плюсы и минусы использования домена с историей...
31 01 2025 10:38:33
11 типов расширений и результат их внедрения на примере запущенных рекламных кампаний...
30 01 2025 9:28:13
Как создавать интеpaктивные рассылки-сайты и чем они хороши...
29 01 2025 8:20:17
Делимся советами по оптимизации рассылок. Важны новые форматы писем, предварительное тестирование, смена тем письма, ярче CTA. Все это в сочетании с понятностью и искренностью не заставит ждать хороший CTR...
28 01 2025 10:54:59
Callback от Ringostat: пример того, как увеличить конверсии с помощью формы заказа обратного звонка...
27 01 2025 18:56:22
Четыре способа исключить нерелевантные места размещения видеорекламы, а также полезные списки минус-слов и детских YouTube-каналов....
26 01 2025 19:14:35
Минусовки это не только про эстраду. Какой метод кросс-минусовки ключевых слов лучше?...
25 01 2025 16:51:12
Еще:
понять и запомнить -1 :: понять и запомнить -2 :: понять и запомнить -3 :: понять и запомнить -4 :: понять и запомнить -5 :: понять и запомнить -6 :: понять и запомнить -7 ::