• Главная

Авторизационные токены. Получить токен яндекс директ


API Директа — Авторизационные токены — Технологии Яндекса

Получение токена вручную

На этапе отладки приложения вы можете вручную получить так называемый отладочный токен от имени тестового пользователя. См. раздел Отладочный токен документации Яндекс.OAuth.

Получение токена в автоматическом режиме

При переходе к работе с данными реальных пользователей необходимо реализовать в приложении удобный для пользователей механизм получения токена. Чтобы получить токен, приложение должно перенаправить пользователя на специальную страницу Яндекс.OAuth — страницу запроса доступа. Пользователь авторизуется на Яндексе (под своим логином в Директе) и подтверждает доступ приложения к своим данным — нажимает кнопку «Разрешить». Яндекс.OAuth генерирует токен и передает его приложению в автоматическом режиме.

Яндекс.OAuth поддерживает несколько вариантов передачи токена, которые подходят для разных типов приложений: десктопная программа, мобильное приложение, веб-сервис и др. Процедура получения токена подробно описана в документации Яндекс.OAuth.

См. также пример на PHP, пример на Python.

Внимание. Независимо от того, получен ли токен вручную или автоматически, он дает возможность управлять реальными рекламными материалами пользователя.

Какой режим получения токена выбрать?

В некоторых случаях допустимо использовать токен, полученный вручную, и после перехода к работе с данными реальных пользователей. Например:

  • если с приложением работает небольшое количество пользователей — представителей одного рекламодателя;

  • если приложение не взаимодействует с пользователем — например, скрипт обновляет ставки в автоматическом режиме.

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

tech.yandex.ru

R клиент для работы с API Яндекса, загрузка данных из Яндекс.Директ и Яндекс.Метрики в R.

R клиент для работы с API Яндекса, загрузка данных из Яндекс.Директ и Яндекс.Метрики в R.

Project maintained by selesnow Hosted on GitHub Pages — Theme by mattgraham

Menu:

Search:

Ссылки

Содержание

краткое описание.

Пакет ryandexdirect предназначен для загрузки данных из Яндекс Директ и Яндекс Метрики в R, с помощью функций данного пакета вы можете работать с перечисленными ниже сервисами и службами API Яндекса с помощью готовых функций, не углубляясь при этом в документацию по работе с этими API сервисами.

  • Сервис Reports - Предназначен для получения статистики по аккаунту рекламодателя.
  • Logs API Яндекс Метрики - Logs API позволяет получать неагрегированные данные, собираемые Яндекс.Метрикой. Данный API предназначен для пользователей сервиса, которые хотят самостоятельно обрабатывать статистические данные и использовать их для решения уникальных аналитических задач.
  • API Директа версии 4 и Live 4 - Через API внешние приложения добавляют и редактируют кампании, объявления, фразы, задают ставки, получают статистику показов.
  • API Директа версии 5 - Через API внешние приложения добавляют и редактируют кампании, объявления, фразы, задают ставки, получают статистику показов.

установка пакета ryandexdirect.

Установка пакета осуществляется из репозитория GitHub, для этого сначала требуется установить и подключить пакет devtools.

install.packages("devtools")

library(devtools)

После чего можно устанавливать пакет ryandexdirect.

установка на Windows осуществляется с помощью следующей команды

install_github('selesnow/ryandexdirect')

установка на iOS, Linux, Ubuntu осуществляется с помощью следующей команды

install_github('selesnow/ryandexdirect', subdir = "utf8")

Авторизация в API Яндекс Директ

Получение токена

Для генерации токена в пакете есть две функции, yadirAuth и yadirGetToken. Получить токен можно с помощью любой из этих функций, но я рекомендую использовать yadirAuth, функция yadirGetToken считается устарвшей начиная с ryandexdirect 3.0.0.

Разница между ними состоит в том, что yadirGetToken просто генерирует токен и перенаправляет вас на страницу где вы можете его скопировать, а yadirAuth первый раз направляет вас на старницу где будет сгенерирован код для получения токена, после чего сама запрашивает токен и сохраняет в файл, в дальнейшем сама его обновляет и работает с сохранённым файлом.

Вы можете передавать токен в виде строки в агрумент Token при работе с любой из функций, но этот метод является устаревшим и не эффективным способом работы с функциями пакета ryandexdirect.

В версии 3.5.0 в пакет была добавлена новая функция для прохождения аутентификации в API yadirAuth, но отдельно вызывать её для получения токена больше не требуется, при любом обращении к API если вы в используемой функции явно не указываете никакой токен, любая функция пакета сначала будет искать файл с сохранёнными учётными данными в рабочей директории, или в папке которую вы укажите в аргументе AgencyAccount, если файл найден то учётные данные будут загружены из него, если файл не был найден то будет открыт браузер и вам потребуется разрешить приложению ryandexdirect доступ к своему рекламному аккауну, далее будет сформирован код авторизации, который вам необходимо вставить в R консоль в ответ на запрос “Enter authorize code:”, после чего функция сама сохранит учётные данные в файл с именем login.yadirAuth.RData, где вместо login будет подставлен логин аккаунта к которому вы предоставили доступ, это необходимо для сохранения токенов полученных для разных аккаунтов. При следующих обращениях, все функции пакета будут запрашивать токен из сохранённого файла.

Пример кода для прохождения авторизации

aut <- yadirAuth(Login = "Ваш логин в яндексе", NewUser = TRUE, TokenPath = "token_yandex")

Обновление токена

При каждом обращении к API проверяется количество дней до того как используемый токен станет просроченным, если остаётся менее 30 дней токен автоматически будет обновлён, и файл с учётными данными перезаписан.

Аргументы функции yadirAuth

  • Login - имя пользователя или электронный адрес на Яндексе, с которого есть доступ к нужному вам рекламному аккаунту
  • NewUser - логическое выражаение TRUE или FALSE, признак того, что у пользователя обязательно нужно запросить разрешение на доступ к аккаунту (даже если пользователь уже разрешил доступ данному приложению). Получив этот параметр, Яндекс.OAuth предложит пользователю разрешить доступ приложению и выбрать нужный аккаунт Яндекса. Параметр полезен, например, если вы хотите переключиться на другой аккаунт. По умолчанию установлено значение FALSE.
  • TokenPath - путь к папке, в которой будут сохраняться учётные данные, по умолчанию это рабочая директория, но можно указывать любой путь, как абсолютный например ”C:/my_r_files/tokens”, так и относительны “tokens”, при использовании относительного пути в рабочей директории будет создана папка с установленным вами названием, и в неё будут сохраняться файлы с расширением .RData в которых хранящие учётные данные.

Ещё раз обращаю внимание на то, что хоть вы в любой момент при желании можете пройти аутентификацию в API Яндекс Директ с помощью функции yadirAuth, но это действие не является обязательным, т.к. при использовании любой функции пакета будет запущен поиск файла с учётными данными, и если файл не будет найден, то автоматически будет запущен процесс авторизации и запроса токена.

Авторизация с помощью функции yadirGetToken()

Функция для получения токена для доступа к API Яндекс.Директ, полученый токен используется во всех остальных функциях. После запуска функции откроется окна браузера, перед запуском функции необходимо авторизироваться в яндексе под логином через который есть доступ к аккаунтту Яндекс.Директ.

Как получить токен доступа к API Яндекс Директ

Можно получить токен воспользовавшись кнопкой

Получить токен доступа к API!

Если у вас не отображается кнопка перейдите на страницу официльной документации ryandexdirect по этой ссылке.

аргументы, общие для всех функций

Во всех функции пакета существуют общие аргументы, в дальнейшем эти аргументы рассматриваться в описании функций не будут.

  • Login / Logins - Логин или вектор содержащий логины клиентов агентского аккаунта, в этот аргумент необходимо указывать логин в случае если вы запрашиваете данные из обычного рекламного аккаунта Яндекс Директ, или же логин клиентского аккаунта привязаного к вашему агентскому аккаунту, в таком случае в рабочей директории будет создан отдельный файл под каждый рекламный аккаунт, в котором будут хранится нужные для работы учётные данные.
  • Token - С версии 3.0.0 этот аргумент больше не является обязательным, вы по прежнему можете передавать в него токены в виде строки, полученные с помощью функции yadirGetToken, так же можете передавать объекты учётных данных полученные с помощью новой функции yadirAuth, либо просто опустить данный агрумент.
  • AgencyAccount - В случае если вы работаете с агентского аккаунта в этот аргумент необходимо передавать логин вашего агентского аккаунта, для каждого агентского аккаунта с которым вы работаете так же будет создан отдельный файл для хранения учётных данных.
  • TokenPath - Путь к папке в которой хранятся все файлы с учётными данными, по умолчанию все функции пакета пытаются найти нужный файл с хранящимися учётными данными в текущей рабочей директории, но вы можете указывать абсолютный или условный путь к совершенно любой попке на вашем ПК, в которой вы хотите хранить все учётные данные ваших аккаунтов Яндекс Директ. Пример условного пути TokenPath = “yandex_token”, в таком случае в рабочей директории будет создана папка yandex_token в которую и будут сохраняться все учётные данные, указав этот путь во всех функциях пакета вам не понадобится повторно запрашивать токены.

Работа с обычным рекламным аккаунтом

Таким образом при работе с обычным рекламным аккаунтом вам необходимо передавать логин этого аккаунта в аргументе Login или Logins. При запуске любой функции в первую очередь будет запущен процесс поиска учётных данных для заданного логина в папке, название или путь к которой указан в аргументе TokenPath. Если файл с учётными данными для заданного логина был найден то работа функции будет продолжена без вашего вмешательства, если учётные данные для данного логина ещё не были получены, или были получены но вы не указали путь к папке в которой данный файл был сохранён то автоматически будет запущен веб браузер и вам потребуется пройти авторизацию и разрешить доступ пакету ryandexdirect к вашему рекламному аккаунту, учётные данные при этом будут сохранены в локальный файл и при дальнейшей работе будут загружаться именно из файла.

Работа с агентским аккаунтом

Для получения статистики по рекламным аккаунтам прикреплённым к агентскому аккаунту необходимо использовать аргумент AgencyAccount, в который необходимо передать логин или почту для вашего агентского аккаунта, а в аргумент Login / Logins передавать логин клиента, или вектор содержащий логины клиентов данного агентского аккаунта, по которым вы хотите запросить какие либо данные или совершить ещё какие либо действия.

Авторизация в данном случае будет проходить по агентскому аккаунту.

Загрузка статистики из рекламных и агентских аккаунтов Яндкс Директс помощью сервиса Reports

yadirGetReport(ReportType = "CAMPAIGN_PERFORMANCE_REPORT", DateRangeType = "LAST_MONTH", DateFrom = NULL, DateTo = NULL, FieldNames = c("CampaignName","Impressions","Clicks","Cost"), FilterList = NULL, IncludeVAT = "NO", IncludeDiscount = "NO", Login = NULL, Token = NULL)

Основная функция пакета с помощь которой вы можете выгружать данные статистики из сервиса Reports Яндекс Директ, ниже приведено подробное описание функции.

Аргументы:

ReportType - Тип отчёта, принимает на вход строку с одним из возможных значений:

Тип отчетаОписаниеДобавляется группировка данныхНе допускаются поля
ACCOUNT_PERFORMANCE_REPORTСтатистика по аккаунту рекламодателяСм. раздел Допустимые поля(https://tech.yandex.ru/direct/doc/reports/fields-list-docpage/)
CAMPAIGN_PERFORMANCE_REPORTСтатистика по кампаниямCampaignIdСм. раздел Допустимые поля(https://tech.yandex.ru/direct/doc/reports/fields-list-docpage/)
ADGROUP_PERFORMANCE_REPORTСтатистика по группам объявленийAdGroupIdСм. раздел Допустимые поля(https://tech.yandex.ru/direct/doc/reports/fields-list-docpage/)
AD_PERFORMANCE_REPORTСтатистика по объявлениямAdIdAudienceTargetId, Criteria, CriteriaId, DynamicTextAdTargetId, ImpressionShare, Keyword, Query, RlAdjustmentId, SmartBannerFilterId
CRITERIA_PERFORMANCE_REPORTСтатистика по условиям показаAdGroupId, CriteriaId, CriteriaTypeAdFormat, AdId, Placement, Query
CUSTOM_REPORTСтатистика с произвольными группировкамиImpressionShare, Query
SEARCH_QUERY_PERFORMANCE_REPORTСтатистика по поисковым запросамAdGroupId, QueryСм. раздел Допустимые поля(https://tech.yandex.ru/direct/doc/reports/fields-list-docpage/)

DateRangeType - Тип периода отчёта, принимает на вход строку с одним из следующих значений.

  • TODAY — текущий день;
  • YESTERDAY — вчера;
  • LAST_3_DAYS, LAST_5_DAYS, LAST_7_DAYS, LAST_14_DAYS, LAST_30_DAYS, LAST_90_DAYS, LAST_365_DAYS — указанное количество предыдущих дней, не включая текущий день;
  • THIS_WEEK_MON_TODAY — текущая неделя начиная с понедельника, включая текущий день;
  • THIS_WEEK_SUN_TODAY — текущая неделя начиная с воскресенья, включая текущий день;
  • LAST_WEEK — прошлая неделя с понедельника по воскресенье;
  • LAST_BUSINESS_WEEK — прошлая рабочая неделя с понедельника по пятницу; На схеме:

  • LAST_WEEK_SUN_SAT — прошлая неделя с воскресенья по субботу;
  • THIS_MONTH — текущий месяц;
  • LAST_MONTH — предыдущий месяц;
  • ALL_TIME — вся доступная статистика, включая текущий день;
  • CUSTOM_DATE — произвольный период. При выборе этого значения необходимо указать даты начала и окончания периода в параметрах DateFrom и DateTo.
  • AUTO — период, за который статистика могла измениться. Период выбирается автоматически в зависимости от того, произошла ли в предыдущий день корректировка статистики. Подробнее см. в разделе Как получить актуальную статистику.

DateFrom и DateTo - Начальная и конечная дата отчётного периода, необходимо указывать только в случае если в аргументе DateRangeType вы указали CUSTOM_DATE.

FieldNames - Строковый вектор содержащий названия полей которые вы хотите в результате получить, список доступных всех полей находится тут, при этом не все поля и типы отчётов совместимы между собой, если в результате запроса вы получили ошибку 400 проверьте все ли поля в вашем запросе между собой совместимы с помощью этой таблицы

Подробное описание всех полей можно посмотреть по этой ссылке.

FilterList - Строковый вектор с описанием всех фильтров которые вы хотите применить к своим данным, пример FilterList = c(“Clicks GREATER_THAN 99”,”Impressions LESS_THAN 1000”), в данном случае вы получите таблицу агрегированные значения в которых имеют более 99 кликов и при этом менее 1000 показов, все перечисленные условия имеют между собой логическую связь “И”.

IncludeVAT - Включать ли НДС в денежные суммы в отчете. Если рекламодатель работает в у. е. Директа, допускается только значение YES. Принимает значения “YES” и “NO”.

IncludeDiscount - Учитывать ли скидку для денежных сумм в отчете. Если рекламодатель работает в у. е. Директа, допускается только значение NO. Принимает значения “YES” и “NO”.

Login - Строковое вектор содержащий логины на Яндексе по которым необходимо получить данные.

Token - Токен дотупа к API, необязательный аргумент, можно передать токен в виде строки (пример “abcdef1234567”), можно передавать объект полученный с помощью функции yadirAuth, можно опустить этот аргумент, в таком случае сначала будет запущен поиск файла с учётными данными в рабочей директории или в папке путь к которой указан в аргументе “TokenPath”, если файл был найден то токен будет загружен из него, если файл не найден то будет открыт браузер и вам необходимо будет пройти аутентификацию.

Загрузка общей статистики по рекламным кампаниям

yadirGetSummaryStat(campaignIDS = NULL, dateStart = Sys.Date() - 10, dateEnd = Sys.Date(), currency = "USD", token = NULL)

Функция возвращает дата фрейм с общей статистикой в разрезе рекламных кампаний и дат. Данная функция считается устаревшей начиная с версии пакета 3.0.0, вместо неё рекомендуется использовать функцию yadirGetReport, примеры кода для загрузки статистики доступны в конце статьи.

Структура возвращаемого функцией yadirGetSummaryStat дата фрейма:
ПолеТип данныхОписание
DatePOSIXctДата, за которую приведена статистика.
CampaignIDFactorИдентификатор кампании.
SumSearchnumСтоимость кликов на поиске.
GoalConversionSearchnumДоля целевых визитов в общем числе визитов при переходе с поиска, в процентах.
GoalCostSearchnumЦена достижения цели Яндекс.Метрики при переходе с поиска.
ClickSearchintКоличество кликов на поиске.
ShowsSearchintКоличество показов на поиске.
SessionDepthSearchnumГлубина просмотра сайта при переходе с поиска.
SumContextnumСтоимость кликов в Рекламной сети Яндекса.
GoalConversionContextnumДоля целевых визитов в общем числе визитов при переходе из Рекламной сети Яндекса, в процентах.
GoalCostContextnumЦена достижения цели Яндекс.Метрики при переходе из Рекламной сети Яндекса.
ClicksContextintКоличество кликов в Рекламной сети Яндекса.
ShowsContextintКоличество показов в Рекламной сети Яндекса.
SessionDepthContextnumГлубина просмотра сайта при переходе из Рекламной сети Яндекса.

Загрузка списка рекламных кампаний из аккаунта яндекс директ

yadirGetCampaignList(Logins = NULL, States = c("OFF","ON","SUSPENDED","ENDED","CONVERTED","ARCHIVED"),Types = c("TEXT_CAMPAIGN","MOBILE_APP_CAMPAIGN","DYNAMIC_TEXT_CAMPAIGN"), Statuses = c("ACCEPTED","DRAFT","MODERATION","REJECTED"), StatusesPayment = c("DISALLOWED","ALLOWED"), Token = NULL)

Функция возвращает дата фрейм со списком рекламных кампаний и некоторых их параметров по логину.

Аргументы:

Login - Вектор с логинами на Яндексе

States - На вход принимает текстовый вектор, используется для для фильтрации кампаний в указанных состояниях. Описание состояний см. в разделе Статус и состояние кампании., допустимые значения ( “ARCHIVED” | “CONVERTED” | “ENDED” | “OFF” | “ON” | “SUSPENDED” ), пример использования (c(“ON”,”SUSPENDED”,”CONVERTED”))

  • Допустимые значения: ARCHIVED, CONVERTED, ENDED, OFF, ONSUSPENDED
  • Пример использования: States = c(“ON”,”SUSPENDED”,”CONVERTED”)

Types - На вход принимает текстовый вектор, используется для фильтрации кампаний по типам, См. Тип кампании.

  • Допустимые значения: TEXT_CAMPAIGN, MOBILE_APP_CAMPAIGN, DYNAMIC_TEXT_CAMPAIGN
  • Пример использования: Types = c(“TEXT_CAMPAIGN”, “DYNAMIC_TEXT_CAMPAIGN”)

Statuses - На вход принимает текстовый вектор, используется для фильтрации кампаний по указанными статусами. Описание статусов см. в разделе Статус и состояние кампании.*

  • Допустимые значения: ACCEPTED, DRAFT, MODERATION, REJECTED
  • Пример использования: Statuses = c(“DRAFT”, “REJECTED”)

StatusesPayment - На вход принимает текстовый вектор, используется для фильтрации кампаний по указанным статусам оплаты. Описание статусов см. в разделе Статус и состояние кампании..*

  • Допустимые значения: DISALLOWED, ALLOWED
  • Пример использования: Statuses = c(“DISALLOWED”, “ALLOWED”)

Token - Токен дотупа к API, необязательный аргумент, можно передать токен в виде строки (пример “abcdef1234567”), можно передавать объект полученный с помощью функции yadirAuth, можно опустить этот аргумент, в таком случае сначала будет запущен поиск файла с учётными данными в рабочей директории или в папке путь к которой указан в аргументе “TokenPath”, если файл был найден то токен будет загружен из него, если файл не найден то будет открыт браузер и вам необходимо будет пройти аутентификацию.

Структура возвращаемого функцией yadirGetCampaignList дата фрейма:
ПолеТип данныхОписание
IdchrИдентификатор кампании.
NamechrНазвание кампании.
TypeFactorТип кампании ("TEXT_CAMPAIGN" | "MOBILE_APP_CAMPAIGN" | "DYNAMIC_TEXT_CAMPAIGN" | "UNKNOWN").
StatusFactorСтатус кампании ( "ACCEPTED" | "DRAFT" | "MODERATION" | "REJECTED" | "UNKNOWN" ).
StateFactorСостояние кампании ( "ARCHIVED" | "CONVERTED" | "ENDED" | "OFF" | "ON" | "SUSPENDED" | "UNKNOWN" ).
DailyBudgetAmountnumДневной бюджет кампании в валюте рекламодателя.
DailyBudgetModechrDISTRIBUTED — распределять дневной бюджет равномерно на весь день. STANDARD — дневной бюджет может исчерпаться, а показы завершиться ранее окончания дня.
CurrencyFactorВалюта кампании. Совпадает с валютой рекламодателя для всех кампаний.
StartDateDateДата начала показов объявлений.
ImpressionsintКоличество показов за время существования кампании.
ClicksintКоличество кликов за время существования кампании.
ClientInfochrНазвание клиента. Значение по умолчанию — наименование из настроек рекламодателя.
loginchrЛогин пользователя на Яндексе.

Загрузка списка групп объявлений агентского из рекламного аккаунта яндекс директ

yadirGetAdGroups(CampaignIds = NULL,Login = NULL, Token = NULL)

Функция возвращает дата фрейм со списком групп объявлений и некоторых их параметров по логину.

Аргументы:

CampaignIds - Вектор с ID рекламных кампаний, по которым необходимо загрузить список групп объявлений

Login - Логин на Яндексе

Token - Токен дотупа к API, необязательный аргумент, можно передать токен в виде строки (пример “abcdef1234567”), можно передавать объект полученный с помощью функции yadirAuth, можно опустить этот аргумент, в таком случае сначала будет запущен поиск файла с учётными данными в рабочей директории или в папке путь к которой указан в аргументе “TokenPath”, если файл был найден то токен будет загружен из него, если файл не найден то будет открыт браузер и вам необходимо будет пройти аутентификацию.

Структура возвращаемого функцией yadirGetAdGroups дата фрейма:
ПолеТип данныхОписание
IdnumИдентификатор группы объявлений.
NameFactorНазвание группы.
CampaignIdintИдентификатор кампании.
TypeFactorТип группы объявлений. См. Тип группы.
SubtypeFactorПодтип группы объявлений. Для групп с типом, отличным от DYNAMIC_TEXT_AD_GROUP, возвращается значение NONE.
StatusFactorСтатус группы. См. Статус группы.
ServingStatusFactorСтатус возможности показов группы. См. Статус возможности показов группы.
NegativeKeywordschrМинус-фразы, общие для всех ключевых фраз группы объявлений.
TrackingParamsFactorET-параметры для отслеживания источников переходов на сайт, которые добавляются в ссылку всех объявлений группы (не более 1024 символов). Могут содержать подстановочные переменные. Например: from=direct&ad={ad_id} Параметр можно указать для группы любого типа, однако в настоящее время он используется только для групп динамических объявлений. Для других типов групп указанные GET-параметры в ссылку не добавляются.
RegionIdsFactorИдентификаторы регионов, для которых показы включены или выключены. Идентификатор 0 — показывать во всех регионах. Минус перед идентификатором региона — выключить показы в данном регионе. Например [1,-219] — показывать для Москвы и Московской области, кроме Черноголовки.
RestrictedRegionIdschrИдентификаторы регионов, в которых объявления не будут показаны в связи с законодательными ограничениями.
MobileAppAdGroupStoreUrlchrСсылка на приложение в магазине приложений AppStore или Google Play (не более 1024 символов). Должна содержать протокол. Недоступна для изменения.
MobileAppAdGroupTargetDeviceTypechr На каких устройствах показывать объявления: DEVICE_TYPE_MOBILE — смартфоны; DEVICE_TYPE_TABLET — планшеты.
MobileAppAdGroupTargetCarrierchrПо каким типам подключения к интернету показывать объявления: WI_FI_ONLY — только по Wi-FI; WI_FI_AND_CELLULAR — по мобильной связи и Wi-Fi.
MobileAppAdGroupTargetOperatingSystemVersionchrМинимальная версия операционной системы, на которой может быть показано объявление. Например, 2.3. Примечание. Если минимальная версия ОС в магазине приложений выше, чем заданная в параметре, то объявления будут показаны только для версий ОС как в магазине приложений или выше.
MobileAppAdGroupAppIconModerationStatuschrРезультат модерации иконки мобильного приложения: ACCEPTED — принята модерацией; MODERATION — находится на модерации; REJECTED — отклонена.
MobileAppAdGroupAppIconModerationStatusClarificationchrТекстовое пояснение к статусу и/или причины отклонения на модерации.
MobileAppAdGroupAppOperatingSystemTypechrТип операционной системы (определяется автоматически на основании данных из магазина приложений): IOS — iOS; ANDROID — Android; OS_TYPE_UNKNOWN — данные из магазина приложений еще не получены.
MobileAppAdGroupAppAvailabilityStatuschrДоступно ли приложение в магазине приложений: AVAILABLE — доступно; NOT_AVAILABLE — недоступно; UNPROCESSED — данные из магазина приложений еще не получены.
DynamicTextAdGroupDomainUrlchrДоменное имя сайта, для которого требуется сгенерировать динамические объявления (не более 100 символов). Протокол указывать не нужно.
DynamicTextAdGroupDomainUrlProcessingStatuschrСтатус генерации динамических объявлений: UNPROCESSED — генерация объявлений не завершена; PROCESSED — объявления созданы; EMPTY_RESULT — не удалось создать ни одного объявления.
DynamicTextFeedAdGroupSourcechrИдентификатор фида.
DynamicTextFeedAdGroupSourceTypechrТип источника данных. В настоящее время доступно только значение RETAIL_FEED. фида.
DynamicTextFeedAdGroupSourceProcessingStatuschrСтатус генерации динамических объявлений: UNPROCESSED — генерация объявлений не завершена; PROCESSED — объявления созданы; EMPTY_RESULT — не удалось создать ни одного объявления.
Пример кода для получения списка групп объявлений:
#Подключаем пакет library(ryandexdirect) #Получаем данные по группам объявлений my_adgroups <- yadirGetAdGroups(Login = <ВАШ ЛОГИН>, Token = my_token)

Загрузка списка ключевых слов из рекламного аккаунта Яндекс Директ

yadirGetKeyWords(CampaignIds = c(1,2,3), WithStats = T, Login = NULL, Token = NULL)

Функция возвращает дата фрейм со списком групп объявлений и некоторых их параметров по логину.

Аргументы:

CampaignIds - Вектор с ID рекламных кампаний, по которым необходимо загрузить список групп объявлений

WithStats - Логическое TRUE или FALSE, аргумент отвечает за загрузку статистики по показам и кликам, в случае если вы установите значение TRUE время работы функции будет значительно дольше.

Login - Логин на Яндексе

Token - Токен дотупа к API, необязательный аргумент, можно передать токен в виде строки (пример “abcdef1234567”), можно передавать объект полученный с помощью функции yadirAuth, можно опустить этот аргумент, в таком случае сначала будет запущен поиск файла с учётными данными в рабочей директории или в папке путь к которой указан в аргументе “TokenPath”, если файл был найден то токен будет загружен из него, если файл не найден то будет открыт браузер и вам необходимо будет пройти аутентификацию.

Структура возвращаемого функцией yadirGetKeyWords дата фрейма:
ПолеТип данныхОписание
IdnumИдентификатор ключевой фразы.
KeywordFactorКлючевая фраза. Может содержать минус-слова.
AdGroupIdnumИдентификатор группы объявлений, к которой относится ключевая фраза.
CampaignIdintИдентификатор кампании, к которой относится ключевая фраза.
ServingStatusFactorСтатус возможности показов группы объявлений. Описание статусов см. в разделе Статус возможности показов группы.
StateFactorСостояние ключевой фразы. Описание состояний см. в разделе Статус и состояние фразы.
StatusFactorСтатус ключевой фразы. Описание статусов см. в разделе Статус и состояние фразы.
StrategyPriorityFactorПриоритет фразы: LOW, NORMAL или HIGH.
StatisticsSearchImpressionsintКоличество показов всех объявлений группы в поиске по данной фразе. Рассчитывается за 28 дней от текущей даты. Для расчета отбираются дни, в течение которых был хотя бы один показ объявления по данной фразе.
StatisticsSearchClicks intКоличество кликов по всем объявлениям группы в поиске, показанным по данной фразе. Рассчитывается за 28 дней от текущей даты. Для расчета отбираются дни, в течение которых был хотя бы один клик по объявлению.
StatisticsNetworkImpressionsintКоличество показов всех объявлений группы по данной фразе в сетях. Рассчитывается за 28 дней от текущей даты. Для расчета отбираются дни, в течение которых был хотя бы один показ объявления по данной фразе.
StatisticsNetworkClicksintКоличество кликов по всем объявлениям группы, показанным по данной фразе в сетях. Рассчитывается за 28 дней от текущей даты. Для расчета отбираются дни, в течение которых был хотя бы один клик по объявлению.
UserParam1FactorЗначение подстановочной переменной {param1}. Не более 255 символов.
UserParam2FactorЗначение подстановочной переменной {param2}. Не более 255 символов.
ProductivityValuenumЗначение продуктивности фразы (до 1 знака после запятой).
ProductivityReferencesFactorМассив номеров рекомендаций для данной фразы. Справочник рекомендаций можно получить с помощью функции yadirGetDictionary, указав в качестве параметра DictionaryName "ProductivityAssertions".
BidnumСтавка на поиске.
ContextBidnumСтавка в сетях.
Пример кода для получения списка ключевых слов:
#Подключаем пакет library(ryandexdirect) #Получаем данные по ключевым словам my_keywords <- yadirGetKeyWords(CampaignIds = my_campaign$Id, WithStats = F, Login = <ВАШ ЛОГИН>, Token = my_token)

Загрузка списка объявлений из рекламного аккаунта Яндекс Директ

yadirGetAds(CampaignIds = c(1,2,3), Login = NULL, Token = NULL)

Функция возвращает дата фрейм со списком групп объявлений и некоторых их параметров по логину.

Аргументы:

CampaignIds - Вектор с ID рекламных кампаний, по которым необходимо загрузить список групп объявлений

Login - Логин на Яндексе

Token - Токен дотупа к API, необязательный аргумент, можно передать токен в виде строки (пример “abcdef1234567”), можно передавать объект полученный с помощью функции yadirAuth, можно опустить этот аргумент, в таком случае сначала будет запущен поиск файла с учётными данными в рабочей директории или в папке путь к которой указан в аргументе “TokenPath”, если файл был найден то токен будет загружен из него, если файл не найден то будет открыт браузер и вам необходимо будет пройти аутентификацию.

Структура возвращаемого функцией yadirGetAds дата фрейма:
ПолеТип данныхОписание
IdnumИдентификатор объявления.
AdGroupIdnumИдентификатор группы объявлений, к которой относится объявление.
CampaignIdintИдентификатор кампании, к которой относится объявление.
TypeFactorТип объявления. См. Тип объявления.
SubtypeFactorодтип объявления. Для объявлений с типом, отличным от IMAGE_AD, возвращается значение NONE.
StatusFactorСтатус объявления. Описание статусов см. в разделе Статус и состояние объявления.
AgeLabelchrВозрастная метка.
StateintСостояние объявления. Описание

selesnow.github.io

OAuth-авторизация — Отладочный токен — Технологии Яндекса

Работу приложений, которые используют OAuth, можно проверять с помощью отладочных токенов. Их можно получить, открывая Яндекс.OAuth в браузере с нужными параметрами. Отладочные токены, как и любые другие, всегда могут быть отозваны.

Чтобы получить токен вручную:

  1. При регистрации или редактировании приложения, нажмите ссылку Подставить URL для разработки в поле Платформы → Веб-сервисы → Callback URI.
  2. Войдите на Яндекс с учетной записью пользователя, к аккаунту которого приложение должно запросить доступ.
  3. Перейдите по ссылке следующего вида: https://oauth.yandex.ru/authorize?response_type=token&client_id=<идентификатор приложения>

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

  4. На открывшейся странице нажмите кнопку Подтвердить, чтобы разрешить доступ к аккаунту. Разрешать доступ не потребуется, если для данного приложения уже был выдан токен, и срок его жизни еще не истек.

Яндекс.OAuth перенаправит вас на страницу с токеном, добавив данные токена после символа #:

https://oauth.yandex.ru/verification_code# access_token=<новый OAuth-токен> & expires_in=<время жизни токена в секундах> Параметр Описание
access_token

OAuth-токен с запрошенными правами или с правами, указанными при регистрации приложения.

expires_in

Время жизни токена в секундах.

Параметр Описание
access_token

OAuth-токен с запрошенными правами или с правами, указанными при регистрации приложения.

expires_in

Время жизни токена в секундах.

Если токен выдать не удалось, то OAuth-сервер добавляет к адресу код ошибки:

https://oauth.yandex.ru/verification_code# error=<код ошибки>

Возможные коды ошибок:

  • access_denied — пользователь отказал приложению в доступе.
  • unauthorized_client — приложение было отклонено при модерации или только ожидает ее. Также возвращается, если приложение заблокировано.

tech.yandex.ru

OAuth-авторизация — Пользователь вводит код в приложении — Технологии Яндекса

response_type

Требуемый ответ.

При запросе кода подтверждения следует указать значение «code».

client_id

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

device_id

Уникальный идентификатор устройства, для которого запрашивается токен. Чтобы обеспечить уникальность, достаточно один раз сгенерировать UUID и использовать его при каждом запросе нового токена с данного устройства.

Идентификатор должен быть не короче 6 символов и не длиннее 50. Допускается использовать только печатаемые ASCII-символы (с кодами от 32 до 126).

Ограничение. У приложения не может быть больше 20 токенов, привязанных к устройствам определенного пользователя. Если Яндекс.OAuth успешно выдает приложению новый токен для устройства, самый старый из таких токенов перестает работать.

Подробнее о токенах для отдельных устройств читайте на странице Токен для устройства.

device_name

Имя устройства, которое следует показывать пользователям. Не длиннее 100 символов.

Для мобильных устройств рекомендуется передавать имя устройства, заданное пользователем. Если такого имени нет, его можно собрать из модели устройства, названия и версии ОС и т. д.

Если параметр device_name передан без параметра device_id, он будет проигнорирован. Яндекс.OAuth сможет выдать только обычный токен, не привязанный к устройству.

Если параметр device_id передан без параметра device_name, в пользовательском интерфейсе токен будет помечен как выданный для неизвестного устройства.

redirect_uri

URL, на который нужно перенаправить пользователя после того, как он разрешил или отказал приложению в доступе. По умолчанию используется первый Callback URI, указанный в настройках приложения (Платформы → Веб-сервисы → Callback URI).

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

login_hint

Явное указание аккаунта, для которого запрашивается токен. В значении параметра можно передавать логин аккаунта на Яндексе, а также адрес Яндекс.Почты или Яндекс.Почты для домена.

Параметр позволяет помочь пользователю авторизоваться на Яндексе с тем аккаунтом, к которому нужен доступ приложению. Получив параметр, Яндекс.OAuth проверяет авторизацию пользователя:

  • Если пользователь уже авторизован с нужным аккаунтом, Яндекс.OAuth просто запрашивает разрешение на доступ.

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

Если параметр указывает на несуществующий аккаунт, Яндекс.OAuth сможет только сообщить об этом пользователю. Приложению придется запрашивать токен заново.

scope

Список необходимых приложению в данный момент прав доступа, разделенных пробелом. Права должны запрашиваться из перечня, определенного при регистрации приложения. Узнать допустимые права можно по ссылке https://oauth.yandex.ru/client/<client_id>/info, указав вместо <client_id> идентификатор приложения.

Если параметры scope и optional_scope не переданы, то токен будет выдан с правами, указанными при регистрации приложения.

Параметр позволяет получить токен только с теми правами, которые нужны приложению в данный момент.

Примечание. Права доступа, запрошенные одновременно через параметр scope и через параметр optional_scope, будут считаться опциональными правами, без которых приложение может обойтись. Пользователь самостоятельно решает, какие из запрошенных опциональных прав предоставить, а какие нет.

optional_scope

Список разделенных пробелом опциональных прав доступа, без которых приложение может обойтись. Опциональные права запрашиваются в дополнение к правам, указанным в параметре scope. Опциональные права должны запрашиваться из перечня, определенного при регистрации приложения. Узнать допустимые права можно по ссылке https://oauth.yandex.ru/client/<client_id>/info, указав вместо <client_id> идентификатор приложения.

Если параметры scope и optional_scope не переданы, то токен будет выдан с правами, указанными при регистрации приложения.

Пользователь самостоятельно решает, какие из запрошенных опциональных прав предоставить, а какие нет. Токен будет выдан с правами, указанными в параметре scope, и правами, выбранными пользователем из указанных в параметре optional_scope.

Параметр можно использовать, например, если приложению нужна электронная почта для регистрации пользователя, а доступ к портрету желателен, но не обязателен.

Примечание. Права доступа, запрошенные одновременно через параметр scope и через параметр optional_scope, будут считаться опциональными.

force_confirm

Признак того, что у пользователя обязательно нужно запросить разрешение на доступ к аккаунту (даже если пользователь уже разрешил доступ данному приложению). Получив этот параметр, Яндекс.OAuth предложит пользователю разрешить доступ приложению и выбрать нужный аккаунт Яндекса.

Параметр полезен, например, если пользователь вошел на сайт с одним аккаунтом Яндекса и хочет переключиться на другой аккаунт. Если параметр не использовать, пользователю придется явно менять аккаунт на каком-нибудь сервисе Яндекса или отзывать токен, выданный сайту.

Параметр обрабатывается, если для него указано значение «yes», «true» или «1». При любом другом значении параметр игнорируется.

state

Строка состояния, которую Яндекс.OAuth возвращает без изменения. Максимальная допустимая длина строки — 1024 символа.

Можно использовать, например, для защиты от CSRF-атак или идентификации пользователя, для которого запрашивается токен.

tech.yandex.ru


Смотрите также