SlideShare a Scribd company logo
Зачем интернет маркетологу
понимать что такое API
Разбираем устройство API Google Ads
Алексей Селезнёв
Докладчик
Чем я занимаюсь
Развиваю отдел
аналитики в
Netpeak
Веду youtube и
telegram канал
R4marketing
Разрабатываю R
пакеты для
интернет
маркетинга
Преподаю на онлайн
курсах Язык R для
интернет маркетинга и
Язык R для
пользователей Excel
Про Netpeak
Netpeak — компания, которая стремится развивать рынок интернет-маркетинга.
Вне зависимости от того, станете вы нашим клиентом или нет, мы готовы помогать
в обучении для достижения бизнес-целей вашего проекта.
Работаем на рынке
интернет-маркетинга
с 2006 года
2000+
успешных проектов
200+
сертифицированных
специалистов
8 офисов в
5 странах мира
Наши разработки:
Мы делаем прибыльнее
бизнес наших клиентов:
В группе компаний Netpeak
создаются лучшие продукты
для профессионалов рынка.
Практически все лидеры
рынка интернет-маркетинга
используют Serpstat, Ringostat,
Netpeak Software и другие
продукты, которые были
созданы в Netpeak Group.
О чём мы
будем
говорить
Какие языки программирования
популярны среди маркетологов
Разбираемся с Google Ads API, и
его отличиями от AdWords API
Рассмотрим новый R пакет
rgoogleads, и примеры кода на R
Что такое API и зачем он нужен
маркетологу
Что такое API
Зачем это интернет маркетологу?
Построение сквозной аналитики за счёт
сбора данных из различных систем
Понимание предметной области при
написании технических заданий
Автоматизация рутинных
ежедневных операций
Какие языки программирования популярны в
интернет маркетинге
Имеет огромное количество
готовых пакетов под решение
практически любой задачи
R - Функциональное
программирование
Имеет огромное количество
готовых пакетов под решение
практически любой задачи
Python - Объектно ориентированное
программирование
●Краткий обзор Google
Ads API
Обзор Google Ads API:
Что необходимо для начала работы
Проект в Google Cloud
OAuth клиент
Токен разработчика Google Ads
Обзор Google Ads API:
Запрашиваем токен разработчика
1. Создаём управляющий аккаунт
2. Переходим в меню Инструменты > Центр API
3. Заполняем сведения о разработчике
4. Подаём заявку на базовый доступ к API
5. Общаемся с поддержкой Google Ads API
6. При необходимости подаём заявку на
стандартный доступ к API
Обзор Google Ads API:
Создаём проект и OAuth клиент в Google Cloud
1. Заходим в Google Cloud Console
2. Создаём проект
3. Создаём окно авторизации. Главное меню > APIs
& Services > OAuth consent screen
4. Создаём OAuth клиент. Credentials > Create
Credentials > OAuth Client ID > Desktop App >
Create
5. Сохраняем OAuth клиент в виде JSON файла
6. Активируем Google Ads API. Library > Google Ads
API > Enable
Обзор Google Ads API:
Структура API
Обзор Google Ads API:
Отчётность, методы и данные запроса
Основные методы запроса данных
1. search - постраничный запрос данных
2. searchStream - получение всего объёма данных
в одном запросе
Данные запроса
1. developer_token - постраничный запрос данных
2. login_customer_id - id управляющего аккаунта
3. access_token - токен доступа
4. query - GAQL запрос
Обзор Google Ads API:
Google Ads Query Language
Пример GAQL запрос:
SELECT
campaign.id,
campaign.name,
campaign.status,
metrics.impressions
FROM campaign
WHERE campaign.status = 'PAUSED'
AND metrics.impressions > 1000
ORDER BY campaign.id
Структура GAQL запроса
● SELECT - Какие поля, сегменты и метрики необходимо
получить
● FROM- Из какого ресурса необходимо запросить данные
● WHERE - Условия фильтрации
● ORDER BY - Сортировка данных
● LIMIT - Ограничение на количество строк в отчёте
● PARAMETERS - Дополнительные параметры
Google Ads Query Builder
●Миграция с Google
AdWords API
Миграция с Google AdWords API
● Нет необходимости менять автоионизационные данные, токен
разработчика, id и secret приложения будут работать так же и с Google
Ads API
● В AdWords API отчёты были выделены в отдельную службу, в Google Ads
API отчёты являются частью одного сервиса, вам достаточно включить в
отчёты необходимые поля с метриками которые требуется получить
● В AdWords API существовали типы отчётов, в Google Ads API их нет,
вместо типов отчётов теперь представлен огромный набор ресурсов.
● У AdWords API и Google Ads API разный формат ответа от API.
● В Google Ads API отсутствует параметр includeZeroImpressions, вместо
него вы можете использовать фильтр metrics.impressions > 0
●rgoogleads
●R пакет для работы с
Google Ads API
rgoogleads: возможности пакета
● Авторизация в API Google Ads
● Загрузка списка аккаунтов верхнего уровня
● Загрузка всей иерархии аккаунтов из
управляющих аккаунтов
● Загрузка объектов рекламного кабинета:
кампании, группы объявлений, объявления и т.д.
● Загрузка статистических данных из рекламных
аккаунтов
● Загрузка метаданных ресурсов, полей ресурсов,
сегментов и метрик
rgoogleads: авторизация
Конфигурация процесса авторизации
● функция gads_auth_configure()
● аргументы:
○ path - путь к json файлу OAuth
клиента
○ app - OAuth клиент созданный с
помощью httr::oauth_app()
Авторизация
● функция gads_auth()
● аргументы:
○ email - Google аккаунт
○ developer_token - токен
разработчика Google Ads
rgoogleads: опции пакета
Установка опций в текущей R сессии
● gads_set_customer_id() - идентификатор рекламного
аккаунта
● gads_set_login_customer_id() - идентификатор
управляющего аккаунта
rgoogleads: информация об аккаунтах
Загрузка информации об аккаунтах
● gads_get_accessible_customers() - получить список
аккаунтов верхнего уровня, доступных под Google
аккаунтом, под которым была пройдена авторизация
● gads_get_account_hierarchy() - получить все подчинённые
аккаунты, по указанному управляющему аккаунту.
Учитываются все уровни вложенности аккаунтов.
rgoogleads: объекты рекламного кабинета
Загрузка объектов рекламного кабинета
● gads_get_campaigns() - загрузка списка кампаний
● gads_get_ad_groups() - загрузка списка групп объявлений
● gads_get_ads() - загрузка списка объявлений
● gads_get_ad_group_criterions() - загрузка списка ключевых
слов из группы объявлений
rgoogleads: загрузка статистики
Загрузка статистики из рекламного кабинета
● gads_get_report() - загрузка отчётов
Аргументы:
● resource - ресурс, по которому будем запрашивать статистику
● fields - список полей, которые необходимо загрузить включая поля ресурса, сегменты и
метрики
● where - условия фильтрации данных
● order_by - поля сортировки данных
● date_from, date_to - позволяют задать отчётный период, формат ГГГГ
-ММ-ДД
● customer_id - идентификатор рекламного аккаунта, не обязателен если был задан опцией
● login_customer_id - идентификатор управляющего аккаунта, не обязателен если был задан
опцией
rgoogleads: пример кода
Загрузка статистики по группам объявлений
# установка пакета
install.packages('rgoogleads')
# подключение
library(rgoogleads)
# авторизация
gads_auth_configure(path = 'D:/ga_auth/app.json')
gads_auth(email = 'me@gmail.com')
# опции
gads_set_login_customer_id('111-111-1111')
gads_set_customer_id('222-333-4444')
# запрос статистики
group_report <- gads_get_report(
resource = "ad_group",
fields = c("ad_group.campaign", "ad_group.id", "ad_group.name", "ad_group.status", "metrics.clicks", metrics.cost_micros"),
date_from = "2021-06-02",
date_to = Sys.Date() - 1,
where = "ad_group.status = 'ENABLED'",
order_by = c("metrics.clicks DESC", "metrics.cost_micros"))
●Миграция с RAdwords
на rgoogleads
Миграция с RAdwords на rgoogleads
RAdwords
library(RAdwords)
# авторизация
adwords_auth <- doAuth()
# составляем запрос
query <- statement(
select = c('CampaignName',
'Date',
'Clicks'),
report = 'CAMPAIGN_PERFORMANCE_REPORT',
start = '2021-06-01',
end = '2021-06-30'
)
# загрузка данных
data1 <- getData(
clientCustomerId = '676-642-7440',
statement = query,
google_auth = adwords_auth
)
rgoogleads
library(rgoogleads)
# авторизация
gads_auth_configure(path = 'D:/ga_auth/app.json')
gads_auth(email = 'alsey.netpeak@gmail.com')
# загрузка данных
data2 <- gads_get_report(
resource = 'campaign',
fields = c('campaign.name',
'segments.date',
'metrics.clicks'),
date_from = '2021-06-01',
date_to = '2021-06-30',
customer_id = '676-642-7440',
login_customer_id = '175-410-7253'
)
Преимущества rgoogleads перед RAdwords
● rgoogleads работает с Google Ads API v8 (релиз от 09.06.2021), RAdwords
работает с Google AdWords API v201809. Google AdWords API прекратит работу
27.04.2022.
● rgoogleads для авторизации использует пакет gargle, что даёт гораздо больше
гибкости по сравнению с тем, как устроен процесс авторизации в RAdwords.
● в rgoogleads есть вшитый токен разработчика Google Ads.
● Большинство функций rgoogleads имеют аргумент cl, который позволяет
осуществлять загрузку данных в многопоточном режиме.
● rgoogleads имеет функции для загрузки списков аккаунтов, в отличие от
RAdwords.
● rgoogleads имеет отдельные функции для загрузки основных объектов
рекламных кабинетов.
● Синтаксис rgoogleads более понятный и лаконичный, за счёт того, что запрос
данных не разделён на отдельные функции.
● У rgoogleads нет проблем при загрузке названий содержащих кириллицу.
Полезные ссылки
● Баг репорты пакета rgoogleads можно оставлять тут.
● Тут можно следить за обновлениями пакета.
● Краткая справка с примерами кода находится тут.
● А это ссылка на страницу пакета на CRAN.
/R4marketing /R4marketing
29
29
Буду рад ответить
на ваши вопросы
+38 (048) 73-73-501
a.seleznev@netpeak.net
AlexeySeleznev
Медиа об онлайн бизнесе
и не только
netpeak.net/ru/blog
Алексей Селезнёв
Head of Analytics Dept. at Netpeak

More Related Content

PDF
Воркшоп: Анализ показателя качества ключевых слов в Google Ads API с помощью ...
PDF
Как маркетологу избавиться от рутины с помощью языка R и наконец-то заняться ...
PPTX
Алексей Селезнёв. Как работать с API Google Analytics на языке R
PDF
Как работать с API Google Analytics на языке R
PDF
Google Analytics: Итоги 2013
PDF
! реализовать настройки га 14 sergeev-etarget2011
PDF
! реализовать настройки га 14 sergeev-etarget2011
PDF
Reporting tips & tricks (russian)
Воркшоп: Анализ показателя качества ключевых слов в Google Ads API с помощью ...
Как маркетологу избавиться от рутины с помощью языка R и наконец-то заняться ...
Алексей Селезнёв. Как работать с API Google Analytics на языке R
Как работать с API Google Analytics на языке R
Google Analytics: Итоги 2013
! реализовать настройки га 14 sergeev-etarget2011
! реализовать настройки га 14 sergeev-etarget2011
Reporting tips & tricks (russian)

Similar to Зачем интернет маркетологу понимать что такое API. Разбираем устройство API Google Ads (20)

PDF
Сбор данных из Facebook Marketing API на языке R
PDF
Мастер-класс по Google Analytics
PDF
iMetrics 2012. Станислав Видяев - Google Russia. Настройка, обзор системы, но...
PDF
OAuth 2.0 refresher (russian)
PPTX
Что новенького в Google Analytics Suite?
PDF
Google Analytics: кейсы по настройке и отслеживанию ключевых параметров © Ст...
PDF
AdWords Scripts (russian)
PDF
Analytics Deck Ukraine Jan2010
PDF
Как мы настраивали отслеживание REAL ROI при продаже софта
PDF
Как маркетологу автоматизировать свою работу с помощью языка R
PDF
Google Analytics Загрузка данных о расходах
PPTX
Google analytics
PPTX
Сергей Довганич и Валентин Елисеев, Convert&Microsoft — «Musthave инструмент...
PDF
Ecommerce веб-аналитика
PPT
Отслеживание эффективности контекстной рекламы. Google Analytics
PDF
1'st part
PDF
Веб-аналитика на практике
PDF
Api update rundown (russian)
PDF
Олег Рудаков "Google analytics api и скрипты google docs получение автоматизи...
Сбор данных из Facebook Marketing API на языке R
Мастер-класс по Google Analytics
iMetrics 2012. Станислав Видяев - Google Russia. Настройка, обзор системы, но...
OAuth 2.0 refresher (russian)
Что новенького в Google Analytics Suite?
Google Analytics: кейсы по настройке и отслеживанию ключевых параметров © Ст...
AdWords Scripts (russian)
Analytics Deck Ukraine Jan2010
Как мы настраивали отслеживание REAL ROI при продаже софта
Как маркетологу автоматизировать свою работу с помощью языка R
Google Analytics Загрузка данных о расходах
Google analytics
Сергей Довганич и Валентин Елисеев, Convert&Microsoft — «Musthave инструмент...
Ecommerce веб-аналитика
Отслеживание эффективности контекстной рекламы. Google Analytics
1'st part
Веб-аналитика на практике
Api update rundown (russian)
Олег Рудаков "Google analytics api и скрипты google docs получение автоматизи...
Ad

More from Алексей Селезнёв (20)

PDF
Как настроить запуск R скриптов по расписанию с помощью GitHub Actions
PDF
Chat GPT для дата аналитика. Примеры успешных и не успешных кейсов
PDF
14. мета пакет.pdf
PDF
12.wrapping-apis.pdf
PDF
10.release_on_cran.pdf
PDF
PDF
PDF
Add data to r package
PDF
integration_between_rstudio_and_github.pdf
PDF
create_package_1.pdf
PDF
Бекенды dplyr
PDF
PDF
Многопоточность в R
PDF
Как настроить запуск R скриптов по расписанию с помощью GitHub Actions
Chat GPT для дата аналитика. Примеры успешных и не успешных кейсов
14. мета пакет.pdf
12.wrapping-apis.pdf
10.release_on_cran.pdf
Add data to r package
integration_between_rstudio_and_github.pdf
create_package_1.pdf
Бекенды dplyr
Многопоточность в R
Ad

Зачем интернет маркетологу понимать что такое API. Разбираем устройство API Google Ads

  • 1. Зачем интернет маркетологу понимать что такое API Разбираем устройство API Google Ads Алексей Селезнёв Докладчик
  • 2. Чем я занимаюсь Развиваю отдел аналитики в Netpeak Веду youtube и telegram канал R4marketing Разрабатываю R пакеты для интернет маркетинга Преподаю на онлайн курсах Язык R для интернет маркетинга и Язык R для пользователей Excel
  • 3. Про Netpeak Netpeak — компания, которая стремится развивать рынок интернет-маркетинга. Вне зависимости от того, станете вы нашим клиентом или нет, мы готовы помогать в обучении для достижения бизнес-целей вашего проекта. Работаем на рынке интернет-маркетинга с 2006 года 2000+ успешных проектов 200+ сертифицированных специалистов 8 офисов в 5 странах мира Наши разработки: Мы делаем прибыльнее бизнес наших клиентов: В группе компаний Netpeak создаются лучшие продукты для профессионалов рынка. Практически все лидеры рынка интернет-маркетинга используют Serpstat, Ringostat, Netpeak Software и другие продукты, которые были созданы в Netpeak Group.
  • 4. О чём мы будем говорить Какие языки программирования популярны среди маркетологов Разбираемся с Google Ads API, и его отличиями от AdWords API Рассмотрим новый R пакет rgoogleads, и примеры кода на R Что такое API и зачем он нужен маркетологу
  • 6. Зачем это интернет маркетологу? Построение сквозной аналитики за счёт сбора данных из различных систем Понимание предметной области при написании технических заданий Автоматизация рутинных ежедневных операций
  • 7. Какие языки программирования популярны в интернет маркетинге Имеет огромное количество готовых пакетов под решение практически любой задачи R - Функциональное программирование Имеет огромное количество готовых пакетов под решение практически любой задачи Python - Объектно ориентированное программирование
  • 9. Обзор Google Ads API: Что необходимо для начала работы Проект в Google Cloud OAuth клиент Токен разработчика Google Ads
  • 10. Обзор Google Ads API: Запрашиваем токен разработчика 1. Создаём управляющий аккаунт 2. Переходим в меню Инструменты > Центр API 3. Заполняем сведения о разработчике 4. Подаём заявку на базовый доступ к API 5. Общаемся с поддержкой Google Ads API 6. При необходимости подаём заявку на стандартный доступ к API
  • 11. Обзор Google Ads API: Создаём проект и OAuth клиент в Google Cloud 1. Заходим в Google Cloud Console 2. Создаём проект 3. Создаём окно авторизации. Главное меню > APIs & Services > OAuth consent screen 4. Создаём OAuth клиент. Credentials > Create Credentials > OAuth Client ID > Desktop App > Create 5. Сохраняем OAuth клиент в виде JSON файла 6. Активируем Google Ads API. Library > Google Ads API > Enable
  • 12. Обзор Google Ads API: Структура API
  • 13. Обзор Google Ads API: Отчётность, методы и данные запроса Основные методы запроса данных 1. search - постраничный запрос данных 2. searchStream - получение всего объёма данных в одном запросе Данные запроса 1. developer_token - постраничный запрос данных 2. login_customer_id - id управляющего аккаунта 3. access_token - токен доступа 4. query - GAQL запрос
  • 14. Обзор Google Ads API: Google Ads Query Language Пример GAQL запрос: SELECT campaign.id, campaign.name, campaign.status, metrics.impressions FROM campaign WHERE campaign.status = 'PAUSED' AND metrics.impressions > 1000 ORDER BY campaign.id Структура GAQL запроса ● SELECT - Какие поля, сегменты и метрики необходимо получить ● FROM- Из какого ресурса необходимо запросить данные ● WHERE - Условия фильтрации ● ORDER BY - Сортировка данных ● LIMIT - Ограничение на количество строк в отчёте ● PARAMETERS - Дополнительные параметры Google Ads Query Builder
  • 16. Миграция с Google AdWords API ● Нет необходимости менять автоионизационные данные, токен разработчика, id и secret приложения будут работать так же и с Google Ads API ● В AdWords API отчёты были выделены в отдельную службу, в Google Ads API отчёты являются частью одного сервиса, вам достаточно включить в отчёты необходимые поля с метриками которые требуется получить ● В AdWords API существовали типы отчётов, в Google Ads API их нет, вместо типов отчётов теперь представлен огромный набор ресурсов. ● У AdWords API и Google Ads API разный формат ответа от API. ● В Google Ads API отсутствует параметр includeZeroImpressions, вместо него вы можете использовать фильтр metrics.impressions > 0
  • 17. ●rgoogleads ●R пакет для работы с Google Ads API
  • 18. rgoogleads: возможности пакета ● Авторизация в API Google Ads ● Загрузка списка аккаунтов верхнего уровня ● Загрузка всей иерархии аккаунтов из управляющих аккаунтов ● Загрузка объектов рекламного кабинета: кампании, группы объявлений, объявления и т.д. ● Загрузка статистических данных из рекламных аккаунтов ● Загрузка метаданных ресурсов, полей ресурсов, сегментов и метрик
  • 19. rgoogleads: авторизация Конфигурация процесса авторизации ● функция gads_auth_configure() ● аргументы: ○ path - путь к json файлу OAuth клиента ○ app - OAuth клиент созданный с помощью httr::oauth_app() Авторизация ● функция gads_auth() ● аргументы: ○ email - Google аккаунт ○ developer_token - токен разработчика Google Ads
  • 20. rgoogleads: опции пакета Установка опций в текущей R сессии ● gads_set_customer_id() - идентификатор рекламного аккаунта ● gads_set_login_customer_id() - идентификатор управляющего аккаунта
  • 21. rgoogleads: информация об аккаунтах Загрузка информации об аккаунтах ● gads_get_accessible_customers() - получить список аккаунтов верхнего уровня, доступных под Google аккаунтом, под которым была пройдена авторизация ● gads_get_account_hierarchy() - получить все подчинённые аккаунты, по указанному управляющему аккаунту. Учитываются все уровни вложенности аккаунтов.
  • 22. rgoogleads: объекты рекламного кабинета Загрузка объектов рекламного кабинета ● gads_get_campaigns() - загрузка списка кампаний ● gads_get_ad_groups() - загрузка списка групп объявлений ● gads_get_ads() - загрузка списка объявлений ● gads_get_ad_group_criterions() - загрузка списка ключевых слов из группы объявлений
  • 23. rgoogleads: загрузка статистики Загрузка статистики из рекламного кабинета ● gads_get_report() - загрузка отчётов Аргументы: ● resource - ресурс, по которому будем запрашивать статистику ● fields - список полей, которые необходимо загрузить включая поля ресурса, сегменты и метрики ● where - условия фильтрации данных ● order_by - поля сортировки данных ● date_from, date_to - позволяют задать отчётный период, формат ГГГГ -ММ-ДД ● customer_id - идентификатор рекламного аккаунта, не обязателен если был задан опцией ● login_customer_id - идентификатор управляющего аккаунта, не обязателен если был задан опцией
  • 24. rgoogleads: пример кода Загрузка статистики по группам объявлений # установка пакета install.packages('rgoogleads') # подключение library(rgoogleads) # авторизация gads_auth_configure(path = 'D:/ga_auth/app.json') gads_auth(email = 'me@gmail.com') # опции gads_set_login_customer_id('111-111-1111') gads_set_customer_id('222-333-4444') # запрос статистики group_report <- gads_get_report( resource = "ad_group", fields = c("ad_group.campaign", "ad_group.id", "ad_group.name", "ad_group.status", "metrics.clicks", metrics.cost_micros"), date_from = "2021-06-02", date_to = Sys.Date() - 1, where = "ad_group.status = 'ENABLED'", order_by = c("metrics.clicks DESC", "metrics.cost_micros"))
  • 26. Миграция с RAdwords на rgoogleads RAdwords library(RAdwords) # авторизация adwords_auth <- doAuth() # составляем запрос query <- statement( select = c('CampaignName', 'Date', 'Clicks'), report = 'CAMPAIGN_PERFORMANCE_REPORT', start = '2021-06-01', end = '2021-06-30' ) # загрузка данных data1 <- getData( clientCustomerId = '676-642-7440', statement = query, google_auth = adwords_auth ) rgoogleads library(rgoogleads) # авторизация gads_auth_configure(path = 'D:/ga_auth/app.json') gads_auth(email = 'alsey.netpeak@gmail.com') # загрузка данных data2 <- gads_get_report( resource = 'campaign', fields = c('campaign.name', 'segments.date', 'metrics.clicks'), date_from = '2021-06-01', date_to = '2021-06-30', customer_id = '676-642-7440', login_customer_id = '175-410-7253' )
  • 27. Преимущества rgoogleads перед RAdwords ● rgoogleads работает с Google Ads API v8 (релиз от 09.06.2021), RAdwords работает с Google AdWords API v201809. Google AdWords API прекратит работу 27.04.2022. ● rgoogleads для авторизации использует пакет gargle, что даёт гораздо больше гибкости по сравнению с тем, как устроен процесс авторизации в RAdwords. ● в rgoogleads есть вшитый токен разработчика Google Ads. ● Большинство функций rgoogleads имеют аргумент cl, который позволяет осуществлять загрузку данных в многопоточном режиме. ● rgoogleads имеет функции для загрузки списков аккаунтов, в отличие от RAdwords. ● rgoogleads имеет отдельные функции для загрузки основных объектов рекламных кабинетов. ● Синтаксис rgoogleads более понятный и лаконичный, за счёт того, что запрос данных не разделён на отдельные функции. ● У rgoogleads нет проблем при загрузке названий содержащих кириллицу.
  • 28. Полезные ссылки ● Баг репорты пакета rgoogleads можно оставлять тут. ● Тут можно следить за обновлениями пакета. ● Краткая справка с примерами кода находится тут. ● А это ссылка на страницу пакета на CRAN. /R4marketing /R4marketing
  • 29. 29 29 Буду рад ответить на ваши вопросы +38 (048) 73-73-501 a.seleznev@netpeak.net AlexeySeleznev Медиа об онлайн бизнесе и не только netpeak.net/ru/blog Алексей Селезнёв Head of Analytics Dept. at Netpeak