Как получить API-токен Яндекс Директ: oauth-приложение и отдельная заявка в кабинете

API Яндекс Директ для агентской выгрузки — это не «получить токен Яндекса» для Диска. Два шага: oauth-приложение на личной почте и отдельная заявка в кабинете. Токен — только после статуса «одобрена». Одно приложение на много кабинетов.

Зачем два шага: oauth-приложение и заявка в кабинете

Яндекс директ oauth здесь про доступ к рекламе, а не про вход в Диск или Музыку.

Я, Роман Скороходов. Когда директолог ищет «api яндекс директ», в выдаче часто лежит общий вход Яндекса: Диск, Музыка, «получить токен oauth» на любой сервис. Это чужой интент. Нам нужен доступ к рекламному кабинету: выгрузить статистику, собрать PDF клиенту, не кликать руками каждую неделю.

Даже люди, которые уже открывали яндекс директ api документацию, путают две разные формы. На oauth.yandex.ru вы создаёте приложение и получаете Client ID и Client Secret. Это ещё не токен яндекс директ. Вторая заявка живёт в кабинете Директа, в блоке настроек API. Пока статус не «одобрена», authorize бессмысленен: ключа не будет.

Порог «уже пора» — в статье про автоматизацию отчётности. Здесь только доступ: как получить токен яндекс директ, не Диск.

  1. Завести oauth-приложение на личной почте агентства, тип «для доступа к API или отладки».
  2. Поставить скоупы: API Директа и чтение Метрики, искать metrika латиницей.
  3. Сохранить Client ID и Client Secret, не светить их в чате и в репозитории.
  4. Открыть яндекс директ настройки API и подать отдельную заявку в кабинете.
  5. В описании написать автоматизацию отчётности, без управления ставками, приложить файл.
  6. Дождаться статуса «одобрена»: формально до 7 дней, у нас часто около 15 минут.
  7. Открыть oauth.yandex.ru/authorize с Client ID и забрать api токен яндекс директ.
  8. Расшарить доступы на логин приложения — одно приложение на много кабинетов, не 50 штук.
Чеклист: создать oauth-приложение для API Яндекс Директ, скоупы direct:api и metrika:read
Шаг 1 на oauth.yandex.ru: тип, скоупы Директа и Метрики, сохранить Client ID

Как создать приложение и какие скоупы поставить

Яндекс oauth создать приложение для Директа — тип «API или отладка», не «авторизация пользователей».

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

Тип приложения: «для доступа к API или отладки». Соседний пункт «для авторизации пользователей» — про сайт, который просит чужие аккаунты. Нам он не нужен: мы читаем свои и доверенные кабинеты, а не логиним посетителей.

Выбор типа приложения: для доступа к API или отладки, не для авторизации пользователей
Стрелка на тип «для доступа к API или отладки» — это наш путь

Название любое рабочее. Почта — та, куда придёт ответ по заявке. В доступе к данным два пункта: использование API Яндекс Директа и получение статистики счётчиков. Второй скоуп в интерфейсе ищется как metrika:read. Без него в отчёте не будет отказов и глубины. Яндекс метрика api в этом контуре — скоуп чтения, не инструкция по Logs API и не отдельный «как получить токен яндекс метрики» с нуля.

Искать скоуп словом metrika латиницей. По-русски «метрика» в списке часто «не находится». Это дыра номер один на эфире: люди минуту смотрят пустой поиск и думают, что скоупа нет.

После создания сохраните Client ID и Client Secret. Список приложений — снова oauth.yandex.ru. Я не создавал приложение в эфире: коды светить нельзя. Яндекс директ api ключ в быту путают с секретом: секрет — от карточки, токен — после «одобрена».

Карточка oauth-приложения: Client ID, Client secret и права Директа и Метрики, коды скрыты
Client ID и Secret сохранить сразу; в чат и в git их не класть

Куда писать заявку и какой файл приложить

Вторая форма — в кабинете Директа, не на oauth.yandex.ru.

Откройте яндекс директ настройки API: список заявок внутри кабинета. Это не страница создания приложения. Если список не открывается, сначала примите соглашение API. В Директ Про для входа на эту страницу нужна хотя бы одна кампания — пустой кабинет форму не покажет.

Шаг 2: заявка на API в кабинете Директа, не на oauth.yandex.ru; срок до 7 дней
Заявка в Директе отдельно от oauth: описание без управления ставками

Новая заявка → в списке выбрать тот Client ID, который только что создали. В описании пишите смысл: автоматизация отчетности, агентская выгрузка статистики и еженедельные PDF клиентам, без управления ставками. Если напишете «правим ставки и кампании», модерация читает это как управление, а не как чтение.

К заявке нужен файл: схема, скрин или любой рабочий документ. Чужие почты и названия с экрана в заявку и в текст не копируйте.

Форма заявки на API в Директ Про: поля схемы и возможностей заполнены как автоматизация отчетности
Живой кадр кабинета: в полях — автоматизация отчетности, файл обязателен
Настройки API Яндекс Директ: список заявок, документация и параметры доступа
Список заявок и документация — внутри кабинета, не на oauth
Форма заявки на полный доступ к API Яндекс Директ: описание автоматизации отчётности
Форма заявки: Client ID, смысл приложения, контакты поддержки

Сколько ждать одобрения и зачем песочница

Формально смотрят до 7 дней. На практике у нас часто минуты — но это не гарантия.

На слайде два факта: «смотрят до 7 дней» и «у нас одобряет за 10–15 минут». Самое долгое рассмотрение у меня — около 15 минут. Не обещайте «всегда четверть часа» и не закладывайте неделю как единственный сценарий. Часто минуты, формально до недели. Статус там же: одобрена, отклонена, на рассмотрении, новая.

Статус заявки в настройках API Яндекс Директ: новая, полный доступ
Пока статус «новая» или «на рассмотрении» — токен не забирать
Список заявок в кабинете Директа: статус новая, полный доступ к API
Кадр «Мои заявки»: отдельный список, не страница oauth-приложения

Пока ждёте — откройте песочницу. Не отдавайте ИИ-агенту боевой кабинет «на всякий случай». Песочница нужна, чтобы отладить вызов и не задеть живые кампании. Баллы API конечны: на демо-кадре в параметрах виден остаток, это не норматив «у всех столько». Считать лимит по чужому экрану бессмысленно.

Параметры API Яндекс Директ: программный доступ открыт, остаток баллов на кадре — демо
Параметры API: доступ открыт. Цифра баллов на экране — демо, не норма

Как не плодить приложения: одно на много кабинетов

Одно oauth-приложение на N логинов. Не 50 приложений на 50 клиентов.

Ошибка масштаба: завести новое приложение на каждый кабинет. Так вы получите 50 секретов, 50 заявок и 50 мест, где что-то протухнет. Правильная схема: одно приложение, доступы расшарены на логин, под которым оно живёт. Костя на контуре AdPump так снимает 50+ кабинетов. Вам не обязательно столько — принцип тот же на десяти.

Что делаете Где Зачем
Одно приложение oauth.yandex.ru Один Client ID на агентство
Одна заявка на это приложение Настройки API в Директе Статус «одобрена» один раз
Доступы кабинетов на логин приложения Представители / доступ Читать N кабинетов без новых приложений
Токен после «одобрена» oauth.yandex.ru/authorize Один oauth токен яндекс директа в контур

Про Госуслуги жёсткого правила нет. Для приложений ВКонтакте их часто требуют. Для Яндекса коллега на эфире сам сказал: могу ошибиться. На практике Госуслуги всплывали, когда в старое приложение добавляли сразу много скоупов. Новому «Директ + чтение Метрики» это не пункт 0 чеклиста.

Как забрать токен после статуса «одобрена»

Получить токен яндекс oauth в нашем смысле — authorize с Client ID, не вход в Диск.

Когда заявка одобрена, подставьте свой Client ID в ссылку и откройте её под аккаунтом, на который получаете доступ: https://oauth.yandex.ru/authorize?response_type=token&client_id=СЮДА_CLIENT_ID. Это и есть рабочий oauth yandex ru authorize для Директа. До статуса «одобрена» эта ссылка не выдаст боевой api токен яндекс директ — не проверяйте её «на всякий случай» и не копируйте чужой идентификатор.

Ссылка oauth.yandex.ru/authorize с Client ID: токен Яндекс Директ только после статуса одобрена
Шаг 3: authorize после «одобрена». Коды на кадре скрыты специально

Яндекс директ апи токен кладите в закрытое окружение проекта, не в переписку и не в открытый репозиторий. Client Secret и токен — разные сущности: секрет живёт в карточке приложения, токен появляется на authorize. Путать их опасно: секрет клиенту в чат не отправляете.

Журнал «История изменений» из интерфейса кабинета через API не отдаётся — это уже отдельная тема про снимок до и после. Сборку PDF агентом и расписание я разбираю в статье про ИИ-отчёты. Здесь задача одна: легальный токен.

Как обойти типичные дыры: metrika латиницей и представительский доступ

Oauth яндекс метрика в этом контуре ломается на поиске скоупа и на типе доступа к счётчику.

Первая дыра: скоуп Метрики не находится, потому что ищете кириллицей. Пишите metrika латиницей — пункт появляется. Повтор на эфире был уже в конце, когда агент сам просил токены: та же ошибка всплыла второй раз.

Вторая: metrika:read не видит счётчики, выданные через представительский доступ. Счётчик «как будто есть» в кабинете, а API его не отдаёт. Лечится не новым токеном Директа, а нормальным доступом к счётчику на том логине, под которым живёт приложение.

Третья: на старом приложении скоуп может не появиться в списке. Не мучайте карточку десятилетней давности. Проще новое приложение и новая заявка, чем час борьбы с интерфейсом. Четвёртая: ждать токен сразу после «создать приложение». Нет. Сначала «одобрена», потом authorize.

Весь путь от заявки до PDF в Telegram — в записи вебинара. Эта статья не учит кликам по отчётам внутри кабинета.

FAQ: токен, заявка и скоупы

Короткие ответы-действия. Секреты и почты с экрана сюда не копируйте.

Чем oauth-приложение отличается от заявки в кабинете Директа?

На oauth.yandex.ru вы создаёте приложение и получаете Client ID и Secret. Заявка в яндекс директ настройки API — вторая форма. Токен выдают после статуса «одобрена», не в момент создания приложения.

Сколько ждать одобрения заявки на API?

Формально смотрят до 7 дней. На практике у нас часто около 15 минут, самое долгое рассмотрение тоже было в этих минутах. Не обещайте «всегда 15 минут» и не закладывайте неделю как единственный сценарий.

Нужна ли песочница, пока заявка на рассмотрении?

Да, если хотите отладить вызов и не отдавать ИИ боевой кабинет. Песочница — на время ожидания и на первые прогоны. Боевой токен — после «одобрена» и отдельным осознанным шагом.

Хватит одного приложения на 10 кабинетов?

Да. Одно приложение на N логинов: доступы расшарьте на логин приложения. Не плодите приложение на каждый кабинет. На агентском контуре так снимают и 50+ кабинетов.

Зачем скоуп metrika:read, если нужен только Директ?

Без чтения Метрики в отчёте не будет отказов и глубины. Яндекс метрика api здесь — скоуп, не отдельный гайд по логам. Ищите пункт словом metrika латиницей.

Что делать, если скоуп Метрики не находится?

Ищите латиницей: metrika. Если пункта нет на старом приложении — заведите новое. Если счётчики не видны при живом скоупе — проверьте, не представительский ли это доступ.

Обязательны ли Госуслуги, чтобы получить токен Яндекс Директ?

Нет как жёсткое правило. Для приложений ВКонтакте Госуслуги часто обязательны. Для Яндекса это не пункт чеклиста «всегда». На эфире вспоминали старое приложение с пачкой скоупов — не переносите тот случай на новое приложение «только чтение».