Yandex Direct MCP
Яндекс Директ MCP
Яндекс Директ MCP 将 AI 应用连接到 Яндекс Директ 广告账户。您可以用自然语言询问广告预算的去向,关联查看广告系列、广告组和关键词,然后直接在对话中准备或执行所需修改,无需在账户各板块之间切换。连接直接在对话中开始:无需提前创建令牌或编辑配置。
44 个工具。 广告系列、广告组、广告、关键词、出价、调整、附加信息、统计、余额、参考手册以及直接在对话中连接账户。
两种连接方式。 通过 URL 的远程服务器无需手动获取令牌,且只读取数据;通过
npx的本地服务器可对账户进行完全访问。在聊天中连接。 Яндекс 会打开登录页面;从聊天中获取代码后即可立即操作广告,访问权限会自动续期。
金额一目了然。 在便捷工具中,预算、出价和余额以账户货币显示,而非 API 的微单位。
真实广告。 本地修改会应用到真实账户,可能影响实际花费。如需在测试环境中操作,可使用 Яндекс Директ 沙箱。
试试第一条消息:
显示我账户的广告系列以及上周按广告组统计的花费。
一分钟了解工作方式
您: 连接 Яндекс Директ。
助手: 提供 Яндекс 登录链接。请使用有权限访问目标广告账户的账号打开链接,确认授权后把显示的代码发给我。
您: 发送 Яндекс 页面上的代码。
助手: 连接 Директ 并显示账户。无需重启应用。
您: 显示我账户的广告系列以及上周按广告组统计的花费。
助手: 找到广告系列,按广告组生成报告,并以账户货币显示花费。
Related MCP server: Yandex MCP Server
目录
快速开始
选择连接方式,并按下方说明将服务器添加到 AI 应用。
打开新对话并询问:「显示我账户的广告系列以及上周按广告组统计的花费」。
无需自行获取令牌的分析 — 通过 URL
远程服务器 https://mcp.askads.ru/mcp 可通过支持按 URL 连接 MCP 的应用进行连接。在浏览器中登录 Яндекс 并确认授权:无需在配置中传递令牌。此模式仅用于读取 — 统计、审计和查看对象;不会修改广告设置。
在 Claude Code 中可通过以下命令添加:
claude mcp add --transport http yandex-direct https://mcp.askads.ru/mcp连接后打开 /mcp 完成授权。在其他支持 HTTP MCP 的应用中,通过应用界面添加相同的 URL。
完全访问 — 通过 npx 本地运行
创建和修改对象需要 Node.js 20+。npx 会在首次运行时下载服务器 — 无需单独安装包。无需提前获取令牌 — 连接直接在对话中开始:
将服务器添加到 AI 应用 — 下方以 Codex 为例,其他应用收录在可折叠说明中。
输入:「连接 Яндекс Директ」— 助手会引导您完成 Яндекс 登录并显示账户。
用于 CI 和代理环境 — 使用现成令牌和 YANDEX_DIRECT_LOGIN,参见 连接与配置。
通过应用界面:
打开 Settings → Plugins → MCP servers。
点击 Add server。
添加启动命令
npx -y mcp-yandex-direct@latest。
通过命令行:
codex mcp add yandex-direct -- npx -y mcp-yandex-direct@latest检查连接:
codex mcp listclaude mcp add --transport stdio --scope user yandex-direct -- npx -y mcp-yandex-direct@latest检查连接:claude mcp list。
打开 Settings → Developer → Edit Config,在 claude_desktop_config.json 中添加:
{
"mcpServers": {
"yandex-direct": {
"command": "npx",
"args": ["-y", "mcp-yandex-direct@latest"]
}
}
}如果没有 Developer 部分,请手动打开文件:macOS — ~/Library/Application Support/Claude/claude_desktop_config.json,Windows — %APPDATA%\Claude\claude_desktop_config.json。重启 Claude Desktop。
打开 ~/.cursor/mcp.json 以在所有项目中连接服务器,或在特定项目中打开 .cursor/mcp.json。添加:
{
"mcpServers": {
"yandex-direct": {
"command": "npx",
"args": ["-y", "mcp-yandex-direct@latest"]
}
}
}在命令面板中执行 MCP: Open User Configuration。在打开的 mcp.json 中添加服务器:
{
"servers": {
"yandex-direct": {
"type": "stdio",
"command": "npx",
"args": ["-y", "mcp-yandex-direct@latest"]
}
}
}保存后执行 MCP: List Servers,并从列表启动服务器。
可以委托什么
检查预算花费情况
「上周哪些广告系列花费最多?」
「哪些广告获得了展示和点击,但没有产生转化?」
「比较各广告系列一个月的花费、CTR 和平均点击价格」。
「显示账户余额和 API 每日配额剩余量」。
寻找优化点
「哪些关键词在消耗预算,但没有带来点击?」
「哪些广告组和广告目前处于暂停状态或未通过审核?」
「检查当前对移动设备生效的出价调整」。
「这个广告系列有哪些快速链接和补充说明?」
准备修改
「为高 CTR 的关键词建议新出价,并在应用前显示修改内容」。
「检查广告系列中是否包含该主题的否定关键词,并准备列表」。
「为莫斯科收集新文字广告系列的参数:预算、广告组、关键词和广告」。
执行明确操作
「将以下关键词添加到广告组 123,并设置出价 45 ₽」。
「暂停广告 456」。
「将带图片的页面发送到广告库」。
工作原理
广告通常由三个层级构成:广告系列 → 广告组 → 广告。广告组中包含关键词、展示设置和出价调整。广告可以包含快速链接、补充说明、名片和图片。
服务器帮助您将这些对象关联起来查看:将广告系列的花费与广告组统计、关键词和广告关联。它只能创建文字类型的广告系列和广告。其他类型的广告系列可以读取、重命名、修改预算、暂停、归档和按 ID 删除。
统计数据并非即时生成:get_statistics 会在 Reports 服务中启动报告并等待其完成。大型列表由 autoPaginate 自动翻页获取。
哪些操作会修改数据
通过 URL 的远程服务器只读取数据。通过 npx 的本地服务器可以修改真实广告账户:
操作 | 具体内容 | 注意事项 |
读取统计和对象 | 服务器获取广告系列、广告、关键词、余额和报告。 | 这些调用不会修改数据,也不会产生费用。 |
创建 | 可以创建文字广告系列、广告组、文字广告、关键词、附加信息或上传图片。 | 如果未启用沙箱,新对象会进入真实账户。 |
更新 | 可以修改预算、出价、名称、否定关键词、广告组设置和出价调整。 | 修改出价和预算可能影响实际花费。 |
修改状态或删除 | 可以暂停、恢复、归档或删除部分对象。 | 删除和部分操作不可逆。 |
直接 API 请求 |
| 除读取外的任何方法都需要 |
工具会向 AI 应用传递读取、写入和潜在不可逆操作的标记。应用可能会显示确认提示,但其行为取决于客户端。直接 API 请求在未设置 confirmWrite=true 时不会执行写入;修改广告需要明确的请求。
连接与配置
常规使用无需提前获取令牌:
在聊天中请求连接 Яндекс Директ。
打开 Яндекс OAuth 链接 使用有权限访问目标广告账户的账号。
确认授权,并将显示的代码发送到聊天中。完成,即可操作广告:无需重启客户端,也无需修改配置。
之后连接会自动维持:访问权限自动续期,不会一年后失效。检查状态 — 请求「显示连接状态」,断开 — 「断开 Директ」。已授予的权限可在 Яндекс ID 中撤销。
对于没有对话的 CI 和自动安装环境,可通过环境变量进行配置:
变量 | 用途 |
| 现成的 OAuth 令牌;优先于聊天登录。 |
| 通过代理账户操作时的客户登录名;否则 API 将显示代理机构的账户。 |
|
|
| 自定义 OAuth 应用的 Client ID,替代内置应用。 |
| API 响应语言;默认为 |
| 请求超时;默认 60 000 毫秒。 |
| 临时错误时的重试次数;默认为 3。 |
可通过以下链接获取用于 YANDEX_DIRECT_TOKEN 的现成令牌,使用有权限访问目标账户的账号登录:
请勿在聊天、代码仓库和截图中发布令牌:它可以访问广告账户,包括可能影响预算的操作。
数据与遥测
默认情况下,服务器会发送匿名技术事件:随机安装标识符、所调用工具的名称、服务器、AI 应用、Node.js 和操作系统的版本。这是为了了解服务器的哪些部分被使用,以及启动时是否出现问题。Yandex 令牌、广告账户数据、工具参数、请求文本、环境变量的值和名称不会被发送。
要为 Ask Ads MCP 服务器禁用遥测,请设置环境变量:
ASKADS_TELEMETRY=0限制
每日 API 配额。 每次调用都会消耗 Units。
get_quota工具显示今天已消耗、剩余和可用的额度。报告限制。 Yandex 报告对每日数量和容量有自己的限制,而且需要等待 Reports 服务中的报告就绪。
大列表。 如果在自动分页时达到内部限制,服务器会明确将结果标记为不完整,而不是隐藏这一点。
临时错误。 在频率限制时,服务器最多重试三次。网络和服务器错误仅对只读操作自动重试,以避免重复更改。
生产账户。 本地更改会应用到真实的广告账户,并可能影响支出。测试时请使用沙箱(
YANDEX_DIRECT_SANDBOX=true)。无持续监控。 服务器仅在 AI 应用调用期间运行。如果应用支持定期任务,可以配置周期性请求来检查所需指标。
技术文档
MCP 功能目录 — 每个工具的用户任务页面。
所有工具 — 每个工具的参数、响应和限制。
开发 — 项目结构和源代码工作。
Yandex Direct API — API 及其限制的原始来源。
npm 包 — 已发布的服务器版本。
支持
Available Tools
46 toolsad_actionДействие с объявлениямиCDestructive
Выполняет действие над объявлениями по id: moderate, suspend, resume, archive, unarchive или delete.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | Yes | Id объявлений, к которым применить действие. | |
| action | Yes | ||
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
add_bid_modifierДобавить корректировку ставокA
Добавляет корректировку ставок на кампанию или группу объявлений. Значения BidModifier — проценты по правилам API (например, 0–1300), а не деньги. API принимает в одном элементе BidModifiers только один тип корректировки, поэтому каждый переданный тип (mobile, desktop, demographics, retargeting, regional) уходит отдельным элементом в одном вызове bidmodifiers/add, в этом порядке. Каждая запись AddResults помечена полем Type (MOBILE_ADJUSTMENT, DESKTOP_ADJUSTMENT, DEMOGRAPHICS_ADJUSTMENT, RETARGETING_ADJUSTMENT, REGIONAL_ADJUSTMENT): типы создаются независимо, при частичной ошибке повторять только типы с Errors. Внутри одного типа (массивы demographics/retargeting/regional) API создаёт всё или ничего.
| Name | Required | Description | Default |
|---|---|---|---|
| mobile | No | Корректировка для мобильных. | |
| desktop | No | Корректировка для десктопа. | |
| regional | No | Корректировки по регионам. | |
| adGroupId | No | Id группы объявлений (либо это поле, либо campaignId). | |
| campaignId | No | Id кампании (либо это поле, либо adGroupId). | |
| retargeting | No | Корректировки по ретаргетингу. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. | |
| demographics | No | Корректировки по демографии. |
add_calloutsДобавить уточненияA
Создаёт уточнения, до 25 символов каждое, не более 1000 за вызов. Уточнения неизменяемы — чтобы поменять, нужно удалить и создать заново. Привязка к объявлениям — через сервис Ads.
| Name | Required | Description | Default |
|---|---|---|---|
| texts | Yes | Тексты уточнений, до 25 символов каждый, не более 1000 за вызов. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
add_keywordsДобавить ключевые фразыB
Добавляет ключевые фразы в группу объявлений, при необходимости — со ставками для поиска и сетей.
| Name | Required | Description | Default |
|---|---|---|---|
| keywords | Yes | Ключевые фразы для добавления. | |
| adGroupId | Yes | Id группы объявлений. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
auth_statusСтатус подключения к ДиректуARead-onlyIdempotent
Показывает, подключён ли Яндекс Директ: есть ли токен, откуда он взят (переменная окружения YANDEX_DIRECT_TOKEN или сохранённый вход), когда истекает и где лежит файл с сохранёнными данными. Ничего не отправляет в сеть и не показывает сам токен. Вызовите это, если инструменты Директа отвечают, что подключение не настроено.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
campaign_actionДействие с кампаниямиBDestructive
Выполняет действие над кампаниями по id: suspend, resume, archive, unarchive или delete.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | Yes | Id кампаний, к которым применить действие. | |
| action | Yes | ||
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
clients_overviewСводка по клиентамARead-onlyIdempotent
Сводка по всем клиентам агентства и кабинетам в управлении за один вызов — для вопросов вроде «что у меня по аккаунтам в управлении»: по каждому клиенту баланс общего счёта и число кампаний по состояниям (on — идут или могут идти, suspended — остановлены пользователем, off — не идут по другой причине, ended) и статусам модерации (moderation, rejected, draft). Архивные кампании не считаются. Клиенты — из list_clients, либо явный список logins. Ошибка по одному клиенту (нет доступа, нет общего счёта) не прерывает остальных и попадает в его строку. С параметром stats добавляет показы, клики и расход (с НДС, в валюте клиента) за период — по одному отчёту Reports на клиента, строго по очереди: Яндекс пускает примерно один отчёт в 10 секунд, так что 30 клиентов — около 5 минут; клиенты без неархивных кампаний не запрашиваются, а кто не уложился в 5 минут, помечается statsSkipped. Без stats ответ приходит за секунды — запрашивать расход, только когда вопрос про деньги или трафик. Не вызывать list_campaigns по каждому клиенту в цикле — эта сводка дешевле. Тратит баллы API каждого клиента: один запрос кампаний на клиента и один запрос баланса на 50 клиентов у агентства (у обычного аккаунта — на каждого).
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Сколько клиентов обойти, 1–200. По умолчанию 50. | |
| stats | No | Добавить показы, клики и расход за этот период. Медленно: около 10 с на клиента. | |
| logins | No | Только эти логины клиентов. По умолчанию — все из list_clients. | |
| search | No | Только клиенты, у которых логин или название содержит эту подстроку. |
create_ad_groupСоздать группу объявленийB
Создаёт группу объявлений в кампании с заданными регионами показа.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Название группы объявлений. | |
| regionIds | Yes | Id регионов показа, например [225] — Россия. | |
| campaignId | Yes | Id родительской кампании. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
create_sitelinks_setСоздать набор быстрых ссылокA
Создаёт набор быстрых ссылок (1–8 штук). Лимиты API: текст ссылки до 30 символов, описание до 60, URL до 1024 (с протоколом и доменом); длиннее API отвечает «Превышена допустимая длина», поэтому сокращать заранее. Наборы неизменяемы — чтобы поменять ссылки, нужно создать новый набор и переназначить его объявлению.
| Name | Required | Description | Default |
|---|---|---|---|
| sitelinks | Yes | От 1 до 8 быстрых ссылок. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
create_text_adСоздать текстовое объявлениеA
Создаёт текстовое объявление (TextAd) в группе объявлений. Новые объявления создаются черновиками. TextAdAdd требует хотя бы одно из Href/TurboPageId/BusinessId — этот инструмент передаёт посадочную страницу через href (обязателен); объявление с BusinessId вместо ссылки создаётся через raw_request. Визитки (VCardId) Директ больше не поддерживает: контакты задаются организацией из Яндекс Бизнеса (BusinessId). Директ создаёт такие объявления комбинаторными (тип RESPONSIVE_AD), а Title2 объединяет с Title через «. », если вместе они короче 56 символов, иначе отбрасывает; о таких изменениях API сообщает предупреждениями.
| Name | Required | Description | Default |
|---|---|---|---|
| href | Yes | URL посадочной страницы (обязателен для TextAdAdd). | |
| text | Yes | Текст объявления, до 81 символа. | |
| title | Yes | Заголовок (Title 1), до 56 символов. | |
| mobile | No | Мобильное ли это объявление. Поле в API устарело (значение принудительно NO), но остаётся обязательным. | |
| title2 | No | Второй заголовок (Title 2), до 30 символов. | |
| adGroupId | Yes | Id родительской группы объявлений. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
create_text_campaignСоздать текстовую кампаниюA
Создаёт кампанию TextCampaign (текстово-графические объявления). Без biddingStrategy применяются ручные ставки на поиске с отключёнными сетями (Search HIGHEST_POSITION, Network SERVING_OFF) — у ручных ставок текстовой кампании бюджета в API нет. Чтобы ограничить расход, включить автостратегию или сети, передать biddingStrategy целиком — {Search, Network}, недельный бюджет внутри него (WeeklySpendLimit в структуре параметров автостратегии). Дневного бюджета у Директа больше нет.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Название кампании. | |
| endDate | No | Дата окончания в формате YYYY-MM-DD. | |
| startDate | Yes | Дата начала в формате YYYY-MM-DD. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. | |
| biddingStrategy | No | Полный объект BiddingStrategy {Search, Network} в формате API, деньги (WeeklySpendLimit, BidCeiling, AverageCpc, AverageCpa, Cpa…) в валюте аккаунта. Заменяет значение по умолчанию. | |
| dailyBudgetMode | No | Устарело: дневного бюджета в Директе больше нет (с 30.11.2026) — вызов с этим параметром отклоняется. У текстовой кампании недельный бюджет есть только у автостратегий: передать biddingStrategy, например {Search: {BiddingStrategyType: "WB_MAXIMUM_CLICKS", WbMaximumClicks: {WeeklySpendLimit: <сумма>}}, Network: {BiddingStrategyType: "SERVING_OFF"}}. У ручных ставок (HIGHEST_POSITION) TextCampaign бюджета нет. | |
| dailyBudgetAmount | No | Устарело: дневного бюджета в Директе больше нет (с 30.11.2026) — вызов с этим параметром отклоняется. У текстовой кампании недельный бюджет есть только у автостратегий: передать biddingStrategy, например {Search: {BiddingStrategyType: "WB_MAXIMUM_CLICKS", WbMaximumClicks: {WeeklySpendLimit: <сумма>}}, Network: {BiddingStrategyType: "SERVING_OFF"}}. У ручных ставок (HIGHEST_POSITION) TextCampaign бюджета нет. | |
| weeklyBudgetAmount | No | Устарело: вызов с этим параметром отклоняется. У текстовой кампании недельный бюджет есть только у автостратегий: передать biddingStrategy, например {Search: {BiddingStrategyType: "WB_MAXIMUM_CLICKS", WbMaximumClicks: {WeeklySpendLimit: <сумма>}}, Network: {BiddingStrategyType: "SERVING_OFF"}}. У ручных ставок (HIGHEST_POSITION) TextCampaign бюджета нет. |
delete_ad_groupsУдалить группы объявленийADestructive
Удаляет группы объявлений по id (adgroups/delete). Вместе с группой удаляются её объявления и ключевые фразы; отменить это нельзя.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | Yes | Id групп, которые нужно удалить. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
delete_bid_modifiersУдалить корректировки ставокCDestructive
Удаляет корректировки ставок по id (bidmodifiers/delete).
| Name | Required | Description | Default |
|---|---|---|---|
| ids | Yes | Id корректировок, которые нужно удалить. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
delete_calloutsУдалить уточненияCDestructive
Удаляет уточнения по id (adextensions/delete).
| Name | Required | Description | Default |
|---|---|---|---|
| ids | Yes | Id уточнений, которые нужно удалить. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
delete_sitelinksУдалить наборы быстрых ссылокADestructive
Удаляет наборы быстрых ссылок по id (удалить можно только наборы, не привязанные ни к одному объявлению).
| Name | Required | Description | Default |
|---|---|---|---|
| ids | Yes | Id наборов, которые нужно удалить. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
finish_loginЗавершить подключение ДиректаAIdempotent
Второй шаг подключения: обменивает код подтверждения из start_login на токен доступа, сохраняет его в файл только для владельца (0600) и сразу проверяет живым запросом к Директу. После успеха остальные инструменты работают немедленно — перезапускать клиент не нужно. Код одноразовый и живёт 10 минут: если он не принят, вызовите start_login заново и попросите свежий.
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | Код подтверждения, который Яндекс показал пользователю после входа. |
get_account_infoДанные аккаунтаBRead-onlyIdempotent
Возвращает данные текущего аккаунта рекламодателя (логин, валюта, тип, страна) через сервис clients Яндекс Директа.
| Name | Required | Description | Default |
|---|---|---|---|
| fieldNames | No | Какие поля клиента вернуть. По умолчанию — типовой набор. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
get_ad_imagesИзображения объявленийARead-onlyIdempotent
Возвращает список изображений из библиотеки изображений, ключ — хеш изображения. Новые изображения загружает upload_ad_image.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Максимум объектов на страницу. | |
| hashes | No | Фильтр по хешам изображений. | |
| offset | No | Смещение постраничной выдачи. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
get_ad_videosВидео объявленийARead-onlyIdempotent
Читает видео из библиотеки видео по id (API требует id). Загрузка идёт через raw_request (advideos/add).
| Name | Required | Description | Default |
|---|---|---|---|
| ids | Yes | Id видео (обязательны по требованию API). | |
| limit | No | Максимум объектов на страницу. | |
| offset | No | Смещение постраничной выдачи. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
get_balanceБаланс аккаунтаARead-onlyIdempotent
Возвращает баланс общего счёта и финансовые поля (Amount, AmountAvailableForTransfer, Currency, Discount, AccountID) через устаревший сервис AccountManagement Live v4 — единственный API Яндекс Директа, который отдаёт баланс (в v5 финансового метода нет). Amount — строка в ВАЛЮТЕ АККАУНТА (не в микроединицах); отрицательный Amount означает задолженность. По умолчанию — собственный аккаунт токена, а при переданном client_login — счёт этого клиента; чтобы получить несколько общих счетов разом (агентство, до 50 логинов), передать logins.
| Name | Required | Description | Default |
|---|---|---|---|
| logins | No | Логины аккаунтов, по которым нужны данные. По умолчанию — собственный аккаунт токена. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
get_bid_modifiersКорректировки ставокARead-onlyIdempotent
Читает корректировки ставок (мобильные, десктоп, демография, ретаргетинг, регионы, видео) для кампаний или групп объявлений. BidModifier — это процент, а не деньги.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | No | Фильтр по id корректировок. | |
| types | No | Фильтр по типам корректировок. | |
| levels | No | Уровни, на которых читать. По умолчанию оба: CAMPAIGN и AD_GROUP. | |
| adGroupIds | No | Фильтр по id групп объявлений. | |
| campaignIds | No | Фильтр по id кампаний. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
get_calloutsУточненияBRead-onlyIdempotent
Возвращает список уточнений из библиотеки adextensions. Привязать уточнение к объявлению можно через сервис Ads.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | No | Фильтр по id уточнений. | |
| limit | No | Максимум объектов на страницу. | |
| offset | No | Смещение постраничной выдачи. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
get_creativesКреативыBRead-onlyIdempotent
Возвращает список креативов (смарт-баннеры, HTML5) из библиотеки креативов.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | No | Фильтр по id креативов. | |
| limit | No | Максимум объектов на страницу. | |
| offset | No | Смещение постраничной выдачи. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
get_dictionariesСправочникиARead-onlyIdempotent
Возвращает справочники Яндекс Директа (валюты, часовые пояса, константы, категории объявлений, …). GeoRegions может быть очень большим — для поиска регионов лучше get_regions.
| Name | Required | Description | Default |
|---|---|---|---|
| names | Yes | Названия нужных справочников. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
get_quotaКвота APIARead-onlyIdempotent
Возвращает сегодняшнюю квоту баллов API (потрачено / осталось / лимит) из заголовка Units — чтобы не упереться в дневной лимит.
| Name | Required | Description | Default |
|---|---|---|---|
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
get_regionsПоиск регионовARead-onlyIdempotent
Ищет id регионов для таргетинга (те самые regionIds, которые нужны create_ad_group). Фильтр — подстрока названия; количество результатов ограничено limit.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Максимум регионов в ответе. По умолчанию 50. | |
| query | No | Подстрока названия региона без учёта регистра, например 'Москва' или 'Moscow'. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
get_sitelinksНаборы быстрых ссылокBRead-onlyIdempotent
Читает наборы быстрых ссылок по id. API требует id наборов — их можно взять из поля SitelinkSetId объявлений.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | Yes | Id наборов быстрых ссылок (обязательны по требованию API). | |
| limit | No | Максимум объектов на страницу. | |
| offset | No | Смещение постраничной выдачи. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
get_statisticsСтатистикаARead-onlyIdempotent
Запрашивает отчёт по эффективности через сервис Reports Яндекс Директа. По умолчанию отчёт АГРЕГИРОВАН за весь период (одна строка на объект) — добавлять "Date" в fieldNames только для динамики по дням или вопросов о трендах. Почасовой статистики в Reports нет: минимум — сутки, внутридневную динамику дают только повторные снимки TODAY. Готового ROAS нет — считать Revenue / Cost; GoalsRoi — это ROI ((Revenue − Cost) / Cost), не ROAS. Revenue, Profit, GoalsRoi и конверсии заполняются только по целям Метрики с ценностью. ALL_TIME без фильтра по кампаниям отклоняется для отчётов SEARCH_QUERY/CRITERIA: нужно передать campaignIds или ограниченный период. SEARCH_QUERY_PERFORMANCE_REPORT возвращает не сырые строки, а ВЫЧИСЛЕННУЮ СВОДКУ (итоги по ВСЕМ строкам + детализация top-N + свёртка хвоста + количество строк без кликов и без конверсий); её форму задают sortBy/topN/minCost/queryContains/zeroClicksOnly/zeroConversionsOnly, а для подсчётов по конверсиям нужно добавить Conversions в fieldNames. Остальные типы отчётов возвращают строки, разделённые табуляцией (без заголовка). compareTo — сравнение двух периодов: инструмент запускает ДВЕ задачи Reports (текущий период dateFrom/dateTo и compareTo) и возвращает JSON, где строки сопоставлены по разрезам отчёта (matchKey; название кампании или группы не учитывается, если запрошен её id — переименование не ломает сопоставление), с current, previous, delta и deltaPct по каждой метрике. Это только значения Яндекса и их разность: вклад факторов (расход = показы × CTR × CPC) инструмент не считает — при объяснении изменений считать по колонкам ответа и называть порядок факторов. Последние ~3 дня статистики Яндекс может пересчитать.
| Name | Required | Description | Default |
|---|---|---|---|
| topN | No | Максимум строк детализации в сводке (на сервере ограничено 100). По умолчанию 50. | |
| goals | No | Id целей Яндекс Метрики (не более 10). Без них Conversions и Revenue считаются по всем целям кампании; с ними колонки приходят как <поле>_<idЦели>_<модель> (по одной на цель × модель). Для SEARCH_QUERY_PERFORMANCE_REPORT и compareTo сводка разбирает только одну цель и одну модель (ограничение инструмента, не API). | |
| order | No | Порядок сортировки строк детализации. По умолчанию desc. | |
| dateTo | No | Дата окончания YYYY-MM-DD (обязательна для CUSTOM_DATE). | |
| sortBy | No | Метрика для ранжирования строк детализации. По умолчанию Cost. | |
| filters | No | Произвольные условия SelectionCriteria.Filter, складываются с campaignIds по И. Например Clicks GREATER_THAN 0 или Device EQUALS MOBILE. | |
| minCost | No | Включать в детализацию только строки с Cost >= этого значения. | |
| dateFrom | No | Дата начала YYYY-MM-DD (обязательна для CUSTOM_DATE). | |
| compareTo | No | Период, с которым сравнить текущий (dateFrom/dateTo, обязательны). Лучше той же длины. Не для SEARCH_QUERY_PERFORMANCE_REPORT и не с Date/Week/Month/Quarter/Year в fieldNames. sortBy задаёт сортировку по |delta|, topN — сколько строк показать. | |
| fieldNames | No | Колонки отчёта (должны быть допустимы для его типа). Сверх базовых метрик: Conversions, ConversionRate, CostPerConversion, Revenue, Profit, GoalsRoi. Разрезы CUSTOM_REPORT: Date, Device, Age, Gender, LocationOfPresenceName, Placement, AdNetworkType, Slot и др. | |
| includeVat | No | Включать ли НДС в расход. По умолчанию true. | |
| reportType | No | Тип отчёта. По умолчанию CAMPAIGN_PERFORMANCE_REPORT. | |
| campaignIds | No | Ограничить отчёт этими id кампаний. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. | |
| dateRangeType | No | Предустановленный период. Если заданы dateFrom/dateTo, подставляется CUSTOM_DATE. | |
| queryContains | No | Включать только строки, где запрос или условие содержит эту подстроку (без учёта регистра). | |
| zeroClicksOnly | No | Включать в детализацию только строки с 0 кликов. | |
| attributionModels | No | Модели атрибуции для конверсий по целям из goals; без goals не применяются (API их тогда не принимает). По умолчанию LC (последний переход). | |
| zeroConversionsOnly | No | Только строки с clicks>0 и 0 конверсий (нужно Conversions в fieldNames). |
keyword_actionДействие с ключевыми фразамиCDestructive
Выполняет действие над ключевыми фразами по id: suspend, resume или delete.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | Yes | Id ключевых фраз, к которым применить действие. | |
| action | Yes | ||
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
list_ad_groupsСписок групп объявленийARead-onlyIdempotent
Возвращает список групп объявлений. Нужно передать campaignIds и/или ids — API Яндекс Директа требует хотя бы один критерий отбора.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | No | Фильтр по id групп объявлений. | |
| limit | No | Максимум объектов на страницу. | |
| offset | No | Смещение постраничной выдачи (сколько объектов пропустить). | |
| fieldNames | No | Какие поля группы вернуть. | |
| campaignIds | No | Фильтр по id кампаний. | |
| autoPaginate | No | Забрать все страницы, идя по LimitedBy (limit тогда не ограничивает общий объём). | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
list_adsСписок объявленийARead-onlyIdempotent
Возвращает список объявлений. Нужно передать campaignIds, adGroupIds или ids — API Яндекс Директа требует хотя бы один из них; states и statuses только сужают выборку.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | No | Фильтр по id объявлений. | |
| limit | No | Максимум объектов на страницу. | |
| offset | No | Смещение постраничной выдачи (сколько объектов пропустить). | |
| states | No | Фильтр по состояниям объявлений. | |
| statuses | No | Фильтр по статусам модерации. | |
| adGroupIds | No | Фильтр по id групп объявлений. | |
| fieldNames | No | Какие поля объявления вернуть. Тексты и ссылки (Title, Title2, Text, Href, …) приходят в объекте TextAd. | |
| campaignIds | No | Фильтр по id кампаний. | |
| autoPaginate | No | Забрать все страницы, идя по LimitedBy (limit тогда не ограничивает общий объём). | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
list_campaignsСписок кампанийARead-onlyIdempotent
Возвращает список кампаний с необязательными фильтрами по id, типу, состоянию и статусу. Денежные поля (Funds общего счёта — Sum, Balance, SumAvailableForTransfer, Spend) отдаются в валюте аккаунта. Бюджет кампании — недельный (WeeklySpendLimit) и у ручных ставок, и у автостратегий; он лежит внутри BiddingStrategy и виден только при strategy: true (дневного бюджета DailyBudget у API больше нет). strategy: true добавляет блок TextCampaign/UnifiedCampaign со стратегией (BiddingStrategy), ключевыми целями (PriorityGoals), счётчиками Метрики, моделью атрибуции, пакетной стратегией и переносом бюджета (WeeklyBudgetRollover — сколько добавлено к недельному бюджету за счёт неиспользованного на прошлой неделе, до 30%; null — перенос не применяется или данных нет) — деньги в нём тоже в валюте аккаунта, а сам объект BiddingStrategy в этом виде принимает set_campaign_strategy.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | No | Фильтр по id кампаний. | |
| limit | No | Максимум объектов на страницу. | |
| types | No | Фильтр по типам кампаний. | |
| offset | No | Смещение постраничной выдачи (сколько объектов пропустить). | |
| states | No | Фильтр по состояниям кампаний. | |
| statuses | No | Фильтр по статусам модерации. | |
| strategy | No | Вернуть стратегию показа и ключевые цели (блок TextCampaign или UnifiedCampaign). | |
| fieldNames | No | Какие поля кампании вернуть. Стратегия здесь не запрашивается — для неё strategy: true. | |
| autoPaginate | No | Забрать все страницы, идя по LimitedBy (limit тогда не ограничивает общий объём). | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
list_clientsКлиенты и кабинеты в управленииARead-onlyIdempotent
Перечисляет рекламодателей, с которыми может работать токен: клиентов агентства (AgencyClients.get) и кабинеты в управлении из YANDEX_DIRECT_CLIENTS. Логин из ответа передаётся в параметр client_login любого инструмента данных — так один сервер работает со всеми клиентами без перезапуска. accountType=agency — токен агентства: без client_login (и без YANDEX_DIRECT_LOGIN) инструменты видят собственный аккаунт агентства, где обычно нет кампаний. accountType=advertiser — обычный аккаунт: API не перечисляет кабинеты, где этот логин представитель, поэтому список есть только если его задали в YANDEX_DIRECT_CLIENTS. Архивные клиенты агентства по умолчанию скрыты. Сводка по всем клиентам сразу (баланс, кампании) — clients_overview.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Сколько клиентов вернуть, 1–1000. По умолчанию 200. | |
| search | No | Фильтр по подстроке логина или названия клиента, без учёта регистра. | |
| includeArchived | No | Показать и архивных клиентов агентства. По умолчанию — только активных. |
list_keywordsСписок ключевых фразARead-onlyIdempotent
Возвращает список ключевых фраз. Нужно передать campaignIds, adGroupIds или ids — API Яндекс Директа требует хотя бы один из них. Bid и ContextBid отдаются в валюте аккаунта.
| Name | Required | Description | Default |
|---|---|---|---|
| ids | No | Фильтр по id ключевых фраз. | |
| limit | No | Максимум объектов на страницу. | |
| offset | No | Смещение постраничной выдачи (сколько объектов пропустить). | |
| adGroupIds | No | Фильтр по id групп объявлений. | |
| fieldNames | No | Какие поля ключевой фразы вернуть. | |
| campaignIds | No | Фильтр по id кампаний. | |
| autoPaginate | No | Забрать все страницы, идя по LimitedBy (limit тогда не ограничивает общий объём). | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
logoutОтключить ДиректADestructive
Удаляет сохранённый токен Директа с диска. Токен, заданный переменной окружения YANDEX_DIRECT_TOKEN, не трогает — его нужно убирать из конфигурации клиента вручную. Доступ, выданный приложению, остаётся активным на стороне Яндекса: отозвать его можно в Яндекс ID.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
raw_requestПрямой вызов API Яндекс ДиректаADestructive
Универсальный запрос: вызывает напрямую любой сервис или метод API Яндекс Директа v5 (например service "bidmodifiers", method "get"). Нужен для сервисов, у которых нет отдельного инструмента. Деньги — в микроединицах (без конвертации). Методы чтения (get/has/check) выполняются свободно; любой другой метод считается записью и требует confirmWrite=true.
| Name | Required | Description | Default |
|---|---|---|---|
| method | Yes | Метод API, например get, add, update, delete, set, toggle, checkCampaigns. | |
| params | No | Объект params для метода — как есть. | |
| service | Yes | Путь сервиса строчными буквами, например campaigns, bidmodifiers, sitelinks, adextensions, changes, keywordsresearch. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. | |
| confirmWrite | No | Должен быть true для запуска метода записи (всё, кроме get/has/check). |
set_bid_modifiersИзменить корректировки ставокAIdempotent
Меняет процент существующих корректировок (bidmodifiers/set) по id корректировки. BidModifierSetItem принимает только Id и BidModifier; включить/выключить корректировку через API нельзя (метод bidmodifiers/toggle устарел и не поддерживается) — чтобы отключить корректировку, удалить её через delete_bid_modifiers.
| Name | Required | Description | Default |
|---|---|---|---|
| bids | Yes | В каждом элементе нужны id и percent. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
set_campaign_strategyИзменить стратегию кампанииAIdempotent
Меняет стратегию показа (BiddingStrategy) текстовой кампании или ЕПК. Формат — объект API как есть, в том же виде, в каком его отдаёт list_campaigns с strategy: true, поэтому порядок такой: прочитать текущую стратегию, показать её пользователю, скопировать и поправить нужное поле. Сервер делает только три вещи: (1) одним campaigns.get узнаёт тип кампании и кладёт стратегию в TextCampaign или UnifiedCampaign; (2) переводит деньги из валюты аккаунта в микроединицы — WeeklySpendLimit, BidCeiling, AverageCpc, AverageCpa, Cpa, SpendLimit, MinimumExplorationBudget (Crr и BudgetIncreasePercent — проценты, не деньги); (3) возвращает previous — стратегию до изменения — рядом с UpdateResults. Больше ничего не дописывается и не проверяется: правила совместимости проверяет API и отвечает ошибкой по объекту. Бюджет кампании — недельный и задаётся только здесь: у автостратегий — WeeklySpendLimit в их структуре параметров, у ручных ставок ЕПК — {BiddingStrategyType: HIGHEST_POSITION, HighestPosition: {WeeklySpendLimit}}; у ручных ставок текстовой кампании бюджета нет (API отвечает 8000 на HighestPosition). Дневного бюджета (DailyBudget) у Директа больше нет. Передаются обе стороны, search и network. Внутри структуры параметров непереданные поля той же стратегии сохраняют текущие значения (проверено вживую на ЕПК). PriorityGoals, CounterIds и AttributionModel этим инструментом не меняются (raw_request). Правила API: автостратегия на поиске ⇒ в сетях только NETWORK_DEFAULT или SERVING_OFF; автостратегия в сетях ⇒ на поиске SERVING_OFF. Конверсионные стратегии требуют GoalId цели Метрики и счётчик на кампании; стратегии *_MULTIPLE_GOALS берут цели из PriorityGoals. Минимумы бюджета и ставок — get_dictionaries → Currencies. Смена типа стратегии перезапускает её обучение. Кампании других типов и кампании в пакетной стратегии — через raw_request.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Id кампании. | |
| search | Yes | Стратегия на поиске в формате API: {BiddingStrategyType, <Структура параметров>: {...}}, деньги в валюте аккаунта. | |
| network | Yes | Стратегия в сетях в формате API: {BiddingStrategyType, <Структура параметров>: {...}}, деньги в валюте аккаунта. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
set_keyword_bidsЗадать ставки ключевых фразAIdempotent
Задаёт ручные ставки на поиске и в сетях для ключевых фраз либо для всех фраз указанных групп объявлений или кампаний (keywordbids/set). Ставки — в валюте аккаунта. Тип цели один на весь вызов: все элементы bids используют только keywordId, только adGroupId или только campaignId; для целей разных типов нужны отдельные вызовы.
| Name | Required | Description | Default |
|---|---|---|---|
| bids | Yes | В каждом элементе ровно один целевой id (keywordId, adGroupId или campaignId) и хотя бы одно из полей bid/contextBid. Тип id одинаков во всех элементах: смешивать keywordId, adGroupId и campaignId в одном вызове нельзя. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
start_loginНачать подключение ДиректаARead-onlyIdempotent
Первый шаг подключения Яндекс Директа без правки конфигурации и без перезапуска клиента. Возвращает ссылку на страницу Яндекс OAuth. Покажите ссылку пользователю целиком и попросите: открыть её в браузере под аккаунтом, у которого есть доступ к нужному рекламному кабинету, подтвердить доступ и прислать показанный код подтверждения. Полученный код передайте в finish_login. Код действует 10 минут. Сам по себе код бесполезен для постороннего: обменять его может только этот сервер.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
update_ad_groupОбновить группу объявленийCIdempotent
Обновляет название и/или регионы показа группы объявлений (adgroups/update).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Id группы, которую нужно обновить. | |
| name | No | Новое название группы. | |
| regionIds | No | Новые id регионов показа. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. | |
| negativeKeywords | No | Заменяет минус-фразы группы; пустой массив очищает их. Чтобы дописать или убрать отдельные фразы, не затирая список, — update_negative_keywords. |
update_campaignОбновить кампаниюAIdempotent
Обновляет название, дату окончания и/или минус-фразы кампании (campaigns/update). Бюджет здесь не меняется: у Директа он недельный и является частью стратегии — set_campaign_strategy (WeeklySpendLimit в структуре параметров автостратегии; у ручных ставок — HighestPosition: {WeeklySpendLimit}, только у ЕПК).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Id кампании, которую нужно обновить. | |
| name | No | Новое название кампании. | |
| endDate | No | Новая дата окончания в формате YYYY-MM-DD. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. | |
| dailyBudgetMode | No | Устарело: дневного бюджета в Директе больше нет (с 30.11.2026) — вызов с этим параметром отклоняется. Менять бюджет — set_campaign_strategy (WeeklySpendLimit в структуре параметров автостратегии; у ручных ставок — HighestPosition: {WeeklySpendLimit}, только у ЕПК). | |
| negativeKeywords | No | Заменяет минус-фразы кампании; пустой массив очищает их. Чтобы дописать или убрать отдельные фразы, не затирая список, — update_negative_keywords. | |
| dailyBudgetAmount | No | Устарело: дневного бюджета в Директе больше нет (с 30.11.2026) — вызов с этим параметром отклоняется. Менять бюджет — set_campaign_strategy (WeeklySpendLimit в структуре параметров автостратегии; у ручных ставок — HighestPosition: {WeeklySpendLimit}, только у ЕПК). |
update_excluded_sitesИзменить запрещённые площадкиADestructive
Меняет список площадок, где кампании запрещено показываться (ExcludedSites): сайты, мобильные приложения и внешние сети РСЯ. Действует только в сетях, на поиске площадки не запрещаются. API хранит список целиком и при записи заменяет его, поэтому действие задаётся явно:
add — дописать площадки к текущим. Инструмент читает текущий список (campaigns/get) и записывает объединённый (campaigns/update): два вызова API. Уже исключённые не дублируются.
remove — вернуть показы на указанных площадках. Тоже чтение + запись.
replace — записать ровно переданный список вместо текущего, без чтения. Пустой список здесь не принимается — для очистки есть clear.
clear — снять все запреты (отправляется null). Значения: домен без протокола (example.com — API сам уберёт www. и приведёт к нижнему регистру), id приложения Android/iOS в виде com.example.app (числовой id App Store вида id123456789 API отвергает), название внешней сети из get_dictionaries → SupplySidePlatforms (например BidSwitch). Значение площадки из отчёта get_statistics (поле Placement, строки с AdNetworkType=AD_NETWORK) передаётся как есть. Если add/remove ничего не меняют, записи нет (changed: false). Ответ: before/after — число площадок до и после, added/alreadyPresent или removed/notFound. Между чтением и записью нет блокировки: правка того же списка в интерфейсе в эту секунду будет перезаписана. Лимиты API: до 1000 площадок, до 255 символов в каждой. Текущий список — list_campaigns с fieldNames ["ExcludedSites"].
| Name | Required | Description | Default |
|---|---|---|---|
| sites | No | Площадки: домены, id приложений, названия внешних сетей. Не передаётся для clear. | |
| action | Yes | add, remove, replace или clear — см. описание инструмента. | |
| campaignId | Yes | Id кампании. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
update_negative_keywordsИзменить минус-фразыADestructive
Меняет минус-фразы одной кампании или одной группы объявлений. API хранит список целиком и при записи заменяет его, поэтому действие задаётся явно:
add — дописать фразы к текущим. Инструмент читает текущий список (campaigns/get или adgroups/get) и записывает объединённый (update): два вызова API. Уже имеющиеся фразы не дублируются.
remove — убрать указанные фразы из текущего списка. Тоже чтение + запись.
replace — записать ровно переданный список вместо текущего, без чтения. Пустой список здесь не принимается — для очистки есть clear.
clear — удалить все минус-фразы (отправляется null). Фразы сравниваются без учёта регистра и лишних пробелов — так же склеивает их сам API; морфологию и порядок слов инструмент не учитывает. Если add/remove ничего не меняют, записи нет (changed: false). Ответ: before/after — число фраз до и после, added/alreadyPresent или removed/notFound — что именно произошло. Между чтением и записью нет блокировки: правка того же списка в интерфейсе в эту секунду будет перезаписана. Ограничения API: фраза без минуса в начале, до 7 слов, слово до 35 символов; суммарно до 20 000 символов на кампанию и 4096 на группу — нарушения API вернёт ошибкой по объекту. Минус-фразы кампании и группы действуют вместе.
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | add, remove, replace или clear — см. описание инструмента. | |
| phrases | No | Минус-фразы без ведущего минуса, например ["бесплатно", "!скачать"]. Не передаётся для clear. | |
| adGroupId | No | Id группы объявлений (либо это поле, либо campaignId). | |
| campaignId | No | Id кампании (либо это поле, либо adGroupId). | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
update_text_adОбновить текстовое объявлениеAIdempotent
Обновляет заголовок, текст или посадочную страницу текстового объявления (ads/update). Правка активного объявления отправляет его на повторную модерацию.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Id объявления, которое нужно обновить. | |
| href | No | Новый URL посадочной страницы. | |
| text | No | Новый текст объявления, до 81 символа. | |
| title | No | Новый заголовок (Title 1), до 56 символов. | |
| title2 | No | Новый второй заголовок (Title 2), до 30 символов. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
upload_ad_imageЗагрузить изображениеA
Загружает изображение в библиотеку изображений (adimages/add) и возвращает его AdImageHash — этот хеш подставляется в поле AdImageHash текстово-графического объявления. Изображение передаётся публичным URL (сервер сам скачает и закодирует) или в base64 через imageData. Яндекс принимает JPG/PNG/GIF до 10 МБ; текстово-графическому объявлению нужна горизонтальная картинка (минимум 1080×607).
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | Публичный URL изображения; сервер скачает его и закодирует в base64. Нужно передать это поле или imageData. | |
| name | Yes | Название изображения в библиотеке. | |
| imageData | No | Байты изображения в base64 (префикс data:-URL отбрасывается). Нужно передать это поле или url. | |
| client_login | No | Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена. |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
v1.13.1- Changed
create_text_campaign4 fields changed- changed
Input schema / properties / dailyBudgetAmount / descriptionPrevious value: -"Дневной бюджет в валюте аккаунта (конвертируется в микроединицы)."New value: +"Устарело: дневного бюджета в Директе больше нет (с 30.11.2026) — вызов с этим параметром отклоняется. У текстовой кампании недельный бюджет есть только у автостратегий: передать biddingStrategy, например {Search: {BiddingStrategyType: \"WB_MAXIMUM_CLICKS\", WbMaximumClicks: {WeeklySpendLimit: <сумма>}}, Network: {BiddingStrategyType: \"SERVING_OFF\"}}. У ручных ставок (HIGHEST_POSITION) TextCampaign бюджета нет." - removed
Input schema / properties / dailyBudgetAmount / exclusiveMinimumRemoved value: -0 - changed
Input schema / properties / dailyBudgetMode / descriptionPrevious value: -"Режим траты дневного бюджета: STANDARD — показы как можно быстрее, DISTRIBUTED — равномерно в течение дня. По умолчанию STANDARD."New value: +"Устарело: дневного бюджета в Директе больше нет (с 30.11.2026) — вызов с этим параметром отклоняется. У текстовой кампании недельный бюджет есть только у автостратегий: передать biddingStrategy, например {Search: {BiddingStrategyType: \"WB_MAXIMUM_CLICKS\", WbMaximumClicks: {WeeklySpendLimit: <сумма>}}, Network: {BiddingStrategyType: \"SERVING_OFF\"}}. У ручных ставок (HIGHEST_POSITION) TextCampaign бюджета нет." - added
Input schema / properties / weeklyBudgetAmountAdded value: +{ + "description": "Устарело: вызов с этим параметром отклоняется. У текстовой кампании недельный бюджет есть только у автостратегий: передать biddingStrategy, например {Search: {BiddingStrategyType: \"WB_MAXIMUM_CLICKS\", WbMaximumClicks: {WeeklySpendLimit: <сумма>}}, Network: {BiddingStrategyType: \"SERVING_OFF\"}}. У ручных ставок (HIGHEST_POSITION) TextCampaign бюджета нет.", + "type": "number" +}
- Changed
list_campaigns1 field changed- changed
Input schema / properties / fieldNames / items / enumPrevious value: -[ - "BlockedIps", - "ExcludedSites", - "Currency", - "DailyBudget", - "Notification", - "EndDate", - "Funds", - "ClientInfo", - "Id", - "Name", - "NegativeKeywords", - "RepresentedBy", - "StartDate", - "CreateTime", - "Statistics", - "State", - "Status", - "StatusPayment", - "StatusClarification", - "SourceId", - "TimeTargeting", - "TimeZone", - "Type" -]New value: +[ + "BlockedIps", + "ExcludedSites", + "Currency", + "Notification", + "EndDate", + "Funds", + "ClientInfo", + "Id", + "Name", + "NegativeKeywords", + "RepresentedBy", + "StartDate", + "CreateTime", + "Statistics", + "State", + "Status", + "StatusPayment", + "StatusClarification", + "SourceId", + "TimeTargeting", + "TimeZone", + "Type" +]
- Changed
update_campaign3 fields changed- changed
Input schema / properties / dailyBudgetAmount / descriptionPrevious value: -"Дневной бюджет в валюте аккаунта."New value: +"Устарело: дневного бюджета в Директе больше нет (с 30.11.2026) — вызов с этим параметром отклоняется. Менять бюджет — set_campaign_strategy (WeeklySpendLimit в структуре параметров автостратегии; у ручных ставок — HighestPosition: {WeeklySpendLimit}, только у ЕПК)." - removed
Input schema / properties / dailyBudgetAmount / exclusiveMinimumRemoved value: -0 - changed
Input schema / properties / dailyBudgetMode / descriptionPrevious value: -"Режим траты дневного бюджета: STANDARD — показы как можно быстрее, DISTRIBUTED — равномерно в течение дня. Если не задан, сохраняется текущий режим кампании."New value: +"Устарело: дневного бюджета в Директе больше нет (с 30.11.2026) — вызов с этим параметром отклоняется. Менять бюджет — set_campaign_strategy (WeeklySpendLimit в структуре параметров автостратегии; у ручных ставок — HighestPosition: {WeeklySpendLimit}, только у ЕПК)."
8 tool updates
v1.12.1- Changed
create_text_campaign1 field changed- changed
Input schema / properties / biddingStrategy / descriptionPrevious value: -"Полный объект BiddingStrategy {Search, Network}. Заменяет значение по умолчанию."New value: +"Полный объект BiddingStrategy {Search, Network} в формате API, деньги (WeeklySpendLimit, BidCeiling, AverageCpc, AverageCpa, Cpa…) в валюте аккаунта. Заменяет значение по умолчанию."
- Changed
get_statistics3 fields changed- added
Input schema / properties / compareToAdded value: +{ + "additionalProperties": false, + "description": "Период, с которым сравнить текущий (dateFrom/dateTo, обязательны). Лучше той же длины. Не для SEARCH_QUERY_PERFORMANCE_REPORT и не с Date/Week/Month/Quarter/Year в fieldNames. sortBy задаёт сортировку по |delta|, topN — сколько строк показать.", + "properties": { + "dateFrom": { + "description": "Начало периода для сравнения, YYYY-MM-DD.", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + }, + "dateTo": { + "description": "Конец периода для сравнения, YYYY-MM-DD.", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "type": "string" + } + }, + "required": [ + "dateFrom", + "dateTo" + ], + "type": "object" +} - added
Input schema / properties / fieldNames / items / enumAdded value: +[ + "AdFormat", + "AdGroupId", + "AdGroupName", + "AdId", + "AdNetworkType", + "Age", + "AvgClickPosition", + "AvgCpc", + "AvgCpm", + "AvgEffectiveBid", + "AvgImpressionFrequency", + "AvgImpressionPosition", + "AvgPageviews", + "AvgTrafficVolume", + "AvgVideoCompleteCost", + "BounceRate", + "Bounces", + "CampaignId", + "CampaignName", + "CampaignUrlPath", + "CampaignType", + "CarrierType", + "Clicks", + "ClickType", + "ClientLogin", + "ConversionRate", + "Conversions", + "Cost", + "CostPerConversion", + "CPV", + "Criteria", + "CriteriaId", + "CriteriaType", + "Criterion", + "CriterionId", + "CriterionType", + "Ctr", + "Date", + "Device", + "ExternalNetworkName", + "Gender", + "GoalsRoi", + "ImpressionReach", + "Impressions", + "IncomeGrade", + "LocationOfPresenceId", + "LocationOfPresenceName", + "MatchedKeyword", + "MatchType", + "MobilePlatform", + "Month", + "Placement", + "Profit", + "PurchaseRevenue", + "PurchaseProfit", + "PurchaseGoalsRoi", + "Quarter", + "Query", + "Revenue", + "RlAdjustmentId", + "Sessions", + "Slot", + "TargetingCategory", + "TargetingLocationId", + "TargetingLocationName", + "VideoComplete", + "VideoCompleteRate", + "VideoFirstQuartile", + "VideoFirstQuartileRate", + "VideoMidpoint", + "VideoMidpointRate", + "VideoThirdQuartile", + "VideoThirdQuartileRate", + "VideoViews", + "VideoViewsRate", + "Week", + "WeightedCtr", + "WeightedImpressions", + "Year" +] - changed
Input schema / properties / goals / descriptionPrevious value: -"Id целей Яндекс Метрики (не более 10). Без них Conversions и Revenue считаются по всем целям кампании; с ними колонки приходят как <поле>_<idЦели>_<модель> (по одной на цель × модель). Для SEARCH_QUERY_PERFORMANCE_REPORT — только одна цель и одна модель."New value: +"Id целей Яндекс Метрики (не более 10). Без них Conversions и Revenue считаются по всем целям кампании; с ними колонки приходят как <поле>_<idЦели>_<модель> (по одной на цель × модель). Для SEARCH_QUERY_PERFORMANCE_REPORT и compareTo сводка разбирает только одну цель и одну модель (ограничение инструмента, не API)."
- Changed
list_campaigns2 fields changed- changed
Input schema / properties / fieldNames / descriptionPrevious value: -"Какие поля кампании вернуть. Стратегии и настройки конкретного типа кампании здесь не запрашиваются."New value: +"Какие поля кампании вернуть. Стратегия здесь не запрашивается — для неё strategy: true." - added
Input schema / properties / strategyAdded value: +{ + "description": "Вернуть стратегию показа и ключевые цели (блок TextCampaign или UnifiedCampaign).", + "type": "boolean" +}
- Added
set_campaign_strategy - Changed
update_ad_group1 field changed- changed
Input schema / properties / negativeKeywords / descriptionPrevious value: -"Заменяет минус-фразы группы; пустой массив очищает их."New value: +"Заменяет минус-фразы группы; пустой массив очищает их. Чтобы дописать или убрать отдельные фразы, не затирая список, — update_negative_keywords."
- Changed
update_campaign1 field changed- changed
Input schema / properties / negativeKeywords / descriptionPrevious value: -"Заменяет минус-фразы кампании; пустой массив очищает их."New value: +"Заменяет минус-фразы кампании; пустой массив очищает их. Чтобы дописать или убрать отдельные фразы, не затирая список, — update_negative_keywords."
- Added
update_excluded_sites - Added
update_negative_keywords
13 tool updates
v1.11.0- Changed
add_callouts2 fields changed- changed
Input schema / properties / texts / descriptionPrevious value: -"Тексты уточнений, до 25 символов каждый."New value: +"Тексты уточнений, до 25 символов каждый, не более 1000 за вызов." - added
Input schema / properties / texts / maxItemsAdded value: +1000
- Changed
create_sitelinks_set6 fields changed- changed
Input schema / properties / sitelinks / items / properties / description / descriptionPrevious value: -"Описание быстрой ссылки (для некоторых типов объявлений)."New value: +"Описание быстрой ссылки, до 60 символов (показывается в расширенном формате объявления)." - added
Input schema / properties / sitelinks / items / properties / description / maxLengthAdded value: +60 - changed
Input schema / properties / sitelinks / items / properties / href / descriptionPrevious value: -"URL быстрой ссылки."New value: +"URL быстрой ссылки с протоколом и доменом, до 1024 символов." - added
Input schema / properties / sitelinks / items / properties / href / maxLengthAdded value: +1024 - changed
Input schema / properties / sitelinks / items / properties / title / descriptionPrevious value: -"Текст быстрой ссылки."New value: +"Текст быстрой ссылки, до 30 символов." - added
Input schema / properties / sitelinks / items / properties / title / maxLengthAdded value: +30
- Removed
create_vcard - Removed
delete_vcards - Changed
get_account_info1 field changed- added
Input schema / properties / fieldNames / items / enumAdded value: +[ + "AccountQuality", + "Archived", + "ClientId", + "ClientInfo", + "CountryId", + "CreatedAt", + "Currency", + "Grants", + "Bonuses", + "Login", + "Notification", + "OverdraftSumAvailable", + "Phone", + "Representatives", + "Restrictions", + "Settings", + "Type", + "Subtype", + "VatRate", + "ManagedLogins", + "ForbiddenPlatform", + "AvailableCampaignTypes", + "AvailableAdGroupTypes", + "ProductMode" +]
- Changed
get_statistics1 field changed- changed
Input schema / properties / attributionModels / descriptionPrevious value: -"Модели атрибуции для конверсий. По умолчанию LC (последний переход)."New value: +"Модели атрибуции для конверсий по целям из goals; без goals не применяются (API их тогда не принимает). По умолчанию LC (последний переход)."
- Removed
get_vcards - Changed
list_ad_groups1 field changed- added
Input schema / properties / fieldNames / items / enumAdded value: +[ + "Id", + "CampaignId", + "Status", + "Name", + "RegionIds", + "RestrictedRegionIds", + "NegativeKeywords", + "NegativeKeywordSharedSetIds", + "Type", + "TrackingParams", + "Subtype", + "ServingStatus" +]
- Changed
list_ads2 fields changed- changed
Input schema / properties / fieldNames / descriptionPrevious value: -"Какие поля объявления вернуть."New value: +"Какие поля объявления вернуть. Тексты и ссылки (Title, Title2, Text, Href, …) приходят в объекте TextAd." - added
Input schema / properties / fieldNames / items / enumAdded value: +[ + "AdCategories", + "AgeLabel", + "AdGroupId", + "CampaignId", + "Id", + "State", + "Status", + "StatusClarification", + "Type", + "Subtype", + "Title", + "Title2", + "Text", + "Href", + "FinalUrl", + "DisplayDomain", + "DisplayUrlPath", + "Mobile", + "SitelinkSetId", + "VCardId", + "AdImageHash", + "AdExtensions", + "TurboPageId", + "BusinessId", + "ErirAdDescription" +]
- Changed
list_campaigns2 fields changed- changed
Input schema / properties / fieldNames / descriptionPrevious value: -"Какие поля кампании вернуть."New value: +"Какие поля кампании вернуть. Стратегии и настройки конкретного типа кампании здесь не запрашиваются." - added
Input schema / properties / fieldNames / items / enumAdded value: +[ + "BlockedIps", + "ExcludedSites", + "Currency", + "DailyBudget", + "Notification", + "EndDate", + "Funds", + "ClientInfo", + "Id", + "Name", + "NegativeKeywords", + "RepresentedBy", + "StartDate", + "CreateTime", + "Statistics", + "State", + "Status", + "StatusPayment", + "StatusClarification", + "SourceId", + "TimeTargeting", + "TimeZone", + "Type" +]
- Changed
list_keywords1 field changed- added
Input schema / properties / fieldNames / items / enumAdded value: +[ + "Id", + "Keyword", + "State", + "Status", + "AdGroupId", + "CampaignId", + "Bid", + "AutotargetingSearchBidIsAuto", + "ContextBid", + "StrategyPriority", + "UserParam1", + "UserParam2", + "Productivity", + "StatisticsSearch", + "StatisticsNetwork", + "ServingStatus", + "AutotargetingCategories", + "AutotargetingBrandOptions", + "AutotargetingMode", + "AutotargetingBrief", + "AutotargetingBriefSuggests" +]
- Changed
raw_request1 field changed- changed
Input schema / properties / service / descriptionPrevious value: -"Путь сервиса строчными буквами, например campaigns, bidmodifiers, sitelinks, vcards, changes, keywordsresearch."New value: +"Путь сервиса строчными буквами, например campaigns, bidmodifiers, sitelinks, adextensions, changes, keywordsresearch."
- Changed
set_keyword_bids1 field changed- changed
Input schema / properties / bids / descriptionPrevious value: -"В каждом элементе нужен один целевой id и хотя бы одно из полей bid/contextBid."New value: +"В каждом элементе ровно один целевой id (keywordId, adGroupId или campaignId) и хотя бы одно из полей bid/contextBid. Тип id одинаков во всех элементах: смешивать keywordId, adGroupId и campaignId в одном вызове нельзя."
1 tool update
v1.5.2- Changed
get_statistics6 fields changed- added
Input schema / properties / attributionModelsAdded value: +{ + "description": "Модели атрибуции для конверсий. По умолчанию LC (последний переход).", + "items": { + "enum": [ + "FCCD", + "LC", + "LSCCD", + "AUTO" + ], + "type": "string" + }, + "minItems": 1, + "type": "array" +} - changed
Input schema / properties / dateRangeType / enumPrevious value: -[ - "TODAY", - "YESTERDAY", - "LAST_7_DAYS", - "LAST_30_DAYS", - "THIS_MONTH", - "LAST_MONTH", - "ALL_TIME", - "CUSTOM_DATE" -]New value: +[ + "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", + "AUTO" +] - changed
Input schema / properties / fieldNames / descriptionPrevious value: -"Колонки отчёта (должны быть допустимы для его типа)."New value: +"Колонки отчёта (должны быть допустимы для его типа). Сверх базовых метрик: Conversions, ConversionRate, CostPerConversion, Revenue, Profit, GoalsRoi. Разрезы CUSTOM_REPORT: Date, Device, Age, Gender, LocationOfPresenceName, Placement, AdNetworkType, Slot и др." - added
Input schema / properties / filtersAdded value: +{ + "description": "Произвольные условия SelectionCriteria.Filter, складываются с campaignIds по И. Например Clicks GREATER_THAN 0 или Device EQUALS MOBILE.", + "items": { + "additionalProperties": false, + "properties": { + "field": { + "description": "Поле для фильтрации (должно быть допустимо для типа отчёта).", + "type": "string" + }, + "operator": { + "description": "Оператор сравнения.", + "enum": [ + "EQUALS", + "NOT_EQUALS", + "IN", + "NOT_IN", + "LESS_THAN", + "GREATER_THAN", + "STARTS_WITH_IGNORE_CASE", + "DOES_NOT_START_WITH_IGNORE_CASE", + "STARTS_WITH_ANY_IGNORE_CASE", + "DOES_NOT_START_WITH_ALL_IGNORE_CASE" + ], + "type": "string" + }, + "values": { + "description": "Значения; числа передавать строками, деньги — в валюте аккаунта.", + "items": { + "type": "string" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "field", + "operator", + "values" + ], + "type": "object" + }, + "type": "array" +} - added
Input schema / properties / goalsAdded value: +{ + "description": "Id целей Яндекс Метрики (не более 10). Без них Conversions и Revenue считаются по всем целям кампании; с ними колонки приходят как <поле>_<idЦели>_<модель> (по одной на цель × модель). Для SEARCH_QUERY_PERFORMANCE_REPORT — только одна цель и одна модель.", + "items": { + "type": "string" + }, + "maxItems": 10, + "minItems": 1, + "type": "array" +} - changed
Input schema / properties / reportType / enumPrevious value: -[ - "ACCOUNT_PERFORMANCE_REPORT", - "CAMPAIGN_PERFORMANCE_REPORT", - "ADGROUP_PERFORMANCE_REPORT", - "AD_PERFORMANCE_REPORT", - "CRITERIA_PERFORMANCE_REPORT", - "SEARCH_QUERY_PERFORMANCE_REPORT" -]New value: +[ + "ACCOUNT_PERFORMANCE_REPORT", + "CAMPAIGN_PERFORMANCE_REPORT", + "ADGROUP_PERFORMANCE_REPORT", + "AD_PERFORMANCE_REPORT", + "CRITERIA_PERFORMANCE_REPORT", + "SEARCH_QUERY_PERFORMANCE_REPORT", + "CUSTOM_REPORT" +]
42 tool updates
v1.6.0- Changed
ad_action1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
add_bid_modifier1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
add_callouts1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
add_keywords1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
campaign_action1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Added
clients_overview - Changed
create_ad_group1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
create_sitelinks_set1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
create_text_ad1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
create_text_campaign1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
create_vcard1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
delete_ad_groups1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
delete_bid_modifiers1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
delete_callouts1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
delete_sitelinks1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
delete_vcards1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
get_account_info1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
get_ad_images1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
get_ad_videos1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
get_balance1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
get_bid_modifiers1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
get_callouts1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
get_creatives1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
get_dictionaries1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
get_quota2 fields changed- added
Input schema / additionalPropertiesAdded value: +false - added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
get_regions1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
get_sitelinks1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
get_statistics1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
get_vcards1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
keyword_action1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
list_ad_groups1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
list_ads1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
list_campaigns1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Added
list_clients - Changed
list_keywords1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
raw_request1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
set_bid_modifiers1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
set_keyword_bids1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
update_ad_group1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
update_campaign1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
update_text_ad1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
- Changed
upload_ad_image1 field changed- added
Input schema / properties / client_loginAdded value: +{ + "description": "Логин клиента агентства или кабинета в управлении (из list_clients). Если не указан — YANDEX_DIRECT_LOGIN из конфигурации, а без него собственный аккаунт токена.", + "pattern": "^[A-Za-z0-9][A-Za-z0-9._@-]{0,99}$", + "type": "string" +}
43 tool updates
v1.5.1- Changed
ad_action1 field changed- changed
Input schema / properties / ids / descriptionPrevious value: -"Ad ids to act on."New value: +"Id объявлений, к которым применить действие."
- Changed
add_bid_modifier9 fields changed- changed
Input schema / properties / adGroupId / descriptionPrevious value: -"Target ad group id (use this OR campaignId)."New value: +"Id группы объявлений (либо это поле, либо campaignId)." - changed
Input schema / properties / campaignId / descriptionPrevious value: -"Target campaign id (use this OR adGroupId)."New value: +"Id кампании (либо это поле, либо adGroupId)." - changed
Input schema / properties / demographics / descriptionPrevious value: -"Demographic bid adjustments."New value: +"Корректировки по демографии." - changed
Input schema / properties / desktop / descriptionPrevious value: -"Desktop bid adjustment."New value: +"Корректировка для десктопа." - changed
Input schema / properties / mobile / descriptionPrevious value: -"Mobile bid adjustment."New value: +"Корректировка для мобильных." - changed
Input schema / properties / mobile / properties / os / descriptionPrevious value: -"Limit to IOS or ANDROID."New value: +"Ограничить IOS или ANDROID." - changed
Input schema / properties / mobile / properties / percent / descriptionPrevious value: -"Adjustment percent."New value: +"Процент корректировки." - changed
Input schema / properties / regional / descriptionPrevious value: -"Regional bid adjustments."New value: +"Корректировки по регионам." - changed
Input schema / properties / retargeting / descriptionPrevious value: -"Retargeting bid adjustments."New value: +"Корректировки по ретаргетингу."
- Changed
add_callouts1 field changed- changed
Input schema / properties / texts / descriptionPrevious value: -"Callout texts, up to 25 characters each."New value: +"Тексты уточнений, до 25 символов каждый."
- Changed
add_keywords5 fields changed- changed
Input schema / properties / adGroupId / descriptionPrevious value: -"Target ad group id."New value: +"Id группы объявлений." - changed
Input schema / properties / keywords / descriptionPrevious value: -"Keywords to add."New value: +"Ключевые фразы для добавления." - changed
Input schema / properties / keywords / items / properties / bid / descriptionPrevious value: -"Search bid in currency units."New value: +"Ставка на поиске в валюте аккаунта." - changed
Input schema / properties / keywords / items / properties / contextBid / descriptionPrevious value: -"Network bid in currency units."New value: +"Ставка в сетях в валюте аккаунта." - changed
Input schema / properties / keywords / items / properties / keyword / descriptionPrevious value: -"Keyword phrase, with operators if needed."New value: +"Ключевая фраза, при необходимости с операторами."
- Added
auth_status - Changed
campaign_action1 field changed- changed
Input schema / properties / ids / descriptionPrevious value: -"Campaign ids to act on."New value: +"Id кампаний, к которым применить действие."
- Changed
create_ad_group3 fields changed- changed
Input schema / properties / campaignId / descriptionPrevious value: -"Parent campaign id."New value: +"Id родительской кампании." - changed
Input schema / properties / name / descriptionPrevious value: -"Ad group name."New value: +"Название группы объявлений." - changed
Input schema / properties / regionIds / descriptionPrevious value: -"Target geo region ids, e.g. [225] for Russia."New value: +"Id регионов показа, например [225] — Россия."
- Changed
create_sitelinks_set4 fields changed- changed
Input schema / properties / sitelinks / descriptionPrevious value: -"1–8 sitelinks."New value: +"От 1 до 8 быстрых ссылок." - changed
Input schema / properties / sitelinks / items / properties / description / descriptionPrevious value: -"Sitelink description (for some ad types)."New value: +"Описание быстрой ссылки (для некоторых типов объявлений)." - changed
Input schema / properties / sitelinks / items / properties / href / descriptionPrevious value: -"Sitelink URL."New value: +"URL быстрой ссылки." - changed
Input schema / properties / sitelinks / items / properties / title / descriptionPrevious value: -"Sitelink title."New value: +"Текст быстрой ссылки."
- Changed
create_text_ad9 fields changed- changed
Input schema / properties / adGroupId / descriptionPrevious value: -"Parent ad group id."New value: +"Id родительской группы объявлений." - changed
Input schema / properties / href / descriptionPrevious value: -"Landing page URL."New value: +"URL посадочной страницы (обязателен для TextAdAdd)." - added
Input schema / properties / href / minLengthAdded value: +1 - added
Input schema / properties / mobile / defaultAdded value: +false - changed
Input schema / properties / mobile / descriptionPrevious value: -"Whether this is a mobile ad."New value: +"Мобильное ли это объявление. Поле в API устарело (значение принудительно NO), но остаётся обязательным." - changed
Input schema / properties / text / descriptionPrevious value: -"Ad body text, up to 81 characters."New value: +"Текст объявления, до 81 символа." - changed
Input schema / properties / title / descriptionPrevious value: -"Title (Title 1), up to 56 characters."New value: +"Заголовок (Title 1), до 56 символов." - changed
Input schema / properties / title2 / descriptionPrevious value: -"Second title (Title 2), up to 30 characters."New value: +"Второй заголовок (Title 2), до 30 символов." - changed
Input schema / requiredPrevious value: -[ - "adGroupId", - "title", - "text" -]New value: +[ + "adGroupId", + "title", + "text", + "href" +]
- Changed
create_text_campaign6 fields changed- changed
Input schema / properties / biddingStrategy / descriptionPrevious value: -"Full BiddingStrategy object {Search, Network}. Overrides the default."New value: +"Полный объект BiddingStrategy {Search, Network}. Заменяет значение по умолчанию." - changed
Input schema / properties / dailyBudgetAmount / descriptionPrevious value: -"Daily budget in account currency units (converted to micros)."New value: +"Дневной бюджет в валюте аккаунта (конвертируется в микроединицы)." - added
Input schema / properties / dailyBudgetMode / descriptionAdded value: +"Режим траты дневного бюджета: STANDARD — показы как можно быстрее, DISTRIBUTED — равномерно в течение дня. По умолчанию STANDARD." - changed
Input schema / properties / endDate / descriptionPrevious value: -"End date, format YYYY-MM-DD."New value: +"Дата окончания в формате YYYY-MM-DD." - changed
Input schema / properties / name / descriptionPrevious value: -"Campaign name."New value: +"Название кампании." - changed
Input schema / properties / startDate / descriptionPrevious value: -"Start date, format YYYY-MM-DD."New value: +"Дата начала в формате YYYY-MM-DD."
- Changed
create_vcard12 fields changed- changed
Input schema / properties / campaignId / descriptionPrevious value: -"Campaign the vCard belongs to."New value: +"Кампания, к которой относится визитка." - changed
Input schema / properties / city / descriptionPrevious value: -"City, e.g. Москва."New value: +"Город, например Москва." - changed
Input schema / properties / companyName / descriptionPrevious value: -"Company name."New value: +"Название организации." - changed
Input schema / properties / country / descriptionPrevious value: -"Country, e.g. Россия."New value: +"Страна, например Россия." - changed
Input schema / properties / extraMessage / descriptionPrevious value: -"Additional info shown on the card."New value: +"Дополнительная информация на визитке." - changed
Input schema / properties / ogrn / descriptionPrevious value: -"OGRN registration number."New value: +"ОГРН." - changed
Input schema / properties / phone / descriptionPrevious value: -"Contact phone."New value: +"Контактный телефон." - changed
Input schema / properties / phone / properties / cityCode / descriptionPrevious value: -"City/operator code, e.g. \"495\"."New value: +"Код города или оператора, например \"495\"." - changed
Input schema / properties / phone / properties / countryCode / descriptionPrevious value: -"Country code, e.g. \"+7\"."New value: +"Код страны, например \"+7\"." - changed
Input schema / properties / phone / properties / extension / descriptionPrevious value: -"Extension, if any."New value: +"Добавочный номер, если есть." - changed
Input schema / properties / phone / properties / phoneNumber / descriptionPrevious value: -"Local number."New value: +"Местный номер." - changed
Input schema / properties / workTime / descriptionPrevious value: -"Work time in API format, e.g. \"1#5#9#00#18#00\" = Mon–Fri 09:00–18:00."New value: +"Время работы в формате API, например \"1#5#9#00#18#00\" — пн–пт 09:00–18:00."
- Changed
delete_ad_groups1 field changed- changed
Input schema / properties / ids / descriptionPrevious value: -"Ad group ids to delete."New value: +"Id групп, которые нужно удалить."
- Changed
delete_bid_modifiers1 field changed- changed
Input schema / properties / ids / descriptionPrevious value: -"Bid modifier ids to delete."New value: +"Id корректировок, которые нужно удалить."
- Changed
delete_callouts1 field changed- changed
Input schema / properties / ids / descriptionPrevious value: -"Callout ids to delete."New value: +"Id уточнений, которые нужно удалить."
- Changed
delete_sitelinks1 field changed- changed
Input schema / properties / ids / descriptionPrevious value: -"Sitelink set ids to delete."New value: +"Id наборов, которые нужно удалить."
- Changed
delete_vcards1 field changed- changed
Input schema / properties / ids / descriptionPrevious value: -"vCard ids to delete."New value: +"Id визиток, которые нужно удалить."
- Added
finish_login - Changed
get_account_info1 field changed- changed
Input schema / properties / fieldNames / descriptionPrevious value: -"Client fields to return. Defaults to a common set."New value: +"Какие поля клиента вернуть. По умолчанию — типовой набор."
- Changed
get_ad_images3 fields changed- changed
Input schema / properties / hashes / descriptionPrevious value: -"Filter by image hashes."New value: +"Фильтр по хешам изображений." - changed
Input schema / properties / limit / descriptionPrevious value: -"Max objects per page."New value: +"Максимум объектов на страницу." - changed
Input schema / properties / offset / descriptionPrevious value: -"Pagination offset."New value: +"Смещение постраничной выдачи."
- Changed
get_ad_videos3 fields changed- changed
Input schema / properties / ids / descriptionPrevious value: -"Video ids (required by the API)."New value: +"Id видео (обязательны по требованию API)." - changed
Input schema / properties / limit / descriptionPrevious value: -"Max objects per page."New value: +"Максимум объектов на страницу." - changed
Input schema / properties / offset / descriptionPrevious value: -"Pagination offset."New value: +"Смещение постраничной выдачи."
- Changed
get_balance1 field changed- changed
Input schema / properties / logins / descriptionPrevious value: -"Account logins to fetch. Defaults to the token's own account."New value: +"Логины аккаунтов, по которым нужны данные. По умолчанию — собственный аккаунт токена."
- Changed
get_bid_modifiers5 fields changed- changed
Input schema / properties / adGroupIds / descriptionPrevious value: -"Filter by ad group ids."New value: +"Фильтр по id групп объявлений." - changed
Input schema / properties / campaignIds / descriptionPrevious value: -"Filter by campaign ids."New value: +"Фильтр по id кампаний." - changed
Input schema / properties / ids / descriptionPrevious value: -"Filter by bid modifier ids."New value: +"Фильтр по id корректировок." - changed
Input schema / properties / levels / descriptionPrevious value: -"Levels to read. Defaults to both CAMPAIGN and AD_GROUP."New value: +"Уровни, на которых читать. По умолчанию оба: CAMPAIGN и AD_GROUP." - changed
Input schema / properties / types / descriptionPrevious value: -"Filter by adjustment types."New value: +"Фильтр по типам корректировок."
- Changed
get_callouts3 fields changed- changed
Input schema / properties / ids / descriptionPrevious value: -"Filter by callout ids."New value: +"Фильтр по id уточнений." - changed
Input schema / properties / limit / descriptionPrevious value: -"Max objects per page."New value: +"Максимум объектов на страницу." - changed
Input schema / properties / offset / descriptionPrevious value: -"Pagination offset."New value: +"Смещение постраничной выдачи."
- Changed
get_creatives3 fields changed- changed
Input schema / properties / ids / descriptionPrevious value: -"Filter by creative ids."New value: +"Фильтр по id креативов." - changed
Input schema / properties / limit / descriptionPrevious value: -"Max objects per page."New value: +"Максимум объектов на страницу." - changed
Input schema / properties / offset / descriptionPrevious value: -"Pagination offset."New value: +"Смещение постраничной выдачи."
- Changed
get_dictionaries1 field changed- changed
Input schema / properties / names / descriptionPrevious value: -"Dictionary names to fetch."New value: +"Названия нужных справочников."
- Changed
get_regions2 fields changed- changed
Input schema / properties / limit / descriptionPrevious value: -"Max regions to return. Default 50."New value: +"Максимум регионов в ответе. По умолчанию 50." - changed
Input schema / properties / query / descriptionPrevious value: -"Case-insensitive substring of the region name, e.g. 'Москва' or 'Moscow'."New value: +"Подстрока названия региона без учёта регистра, например 'Москва' или 'Moscow'."
- Changed
get_sitelinks3 fields changed- changed
Input schema / properties / ids / descriptionPrevious value: -"Sitelink set ids (required by the API)."New value: +"Id наборов быстрых ссылок (обязательны по требованию API)." - changed
Input schema / properties / limit / descriptionPrevious value: -"Max objects per page."New value: +"Максимум объектов на страницу." - changed
Input schema / properties / offset / descriptionPrevious value: -"Pagination offset."New value: +"Смещение постраничной выдачи."
- Changed
get_statistics14 fields changed- changed
Input schema / properties / campaignIds / descriptionPrevious value: -"Limit the report to these campaign ids."New value: +"Ограничить отчёт этими id кампаний." - changed
Input schema / properties / dateFrom / descriptionPrevious value: -"Start date YYYY-MM-DD (required for CUSTOM_DATE)."New value: +"Дата начала YYYY-MM-DD (обязательна для CUSTOM_DATE)." - changed
Input schema / properties / dateRangeType / descriptionPrevious value: -"Predefined date range. Inferred as CUSTOM_DATE when dateFrom/dateTo are given."New value: +"Предустановленный период. Если заданы dateFrom/dateTo, подставляется CUSTOM_DATE." - changed
Input schema / properties / dateTo / descriptionPrevious value: -"End date YYYY-MM-DD (required for CUSTOM_DATE)."New value: +"Дата окончания YYYY-MM-DD (обязательна для CUSTOM_DATE)." - changed
Input schema / properties / fieldNames / descriptionPrevious value: -"Report columns (must be valid for the report type)."New value: +"Колонки отчёта (должны быть допустимы для его типа)." - changed
Input schema / properties / includeVat / descriptionPrevious value: -"Whether costs include VAT. Default true."New value: +"Включать ли НДС в расход. По умолчанию true." - changed
Input schema / properties / minCost / descriptionPrevious value: -"Only include rows with Cost >= this in the detail list."New value: +"Включать в детализацию только строки с Cost >= этого значения." - changed
Input schema / properties / order / descriptionPrevious value: -"Sort order for detail rows. Default desc."New value: +"Порядок сортировки строк детализации. По умолчанию desc." - changed
Input schema / properties / queryContains / descriptionPrevious value: -"Only include rows whose query/criterion contains this substring (case-insensitive)."New value: +"Включать только строки, где запрос или условие содержит эту подстроку (без учёта регистра)." - changed
Input schema / properties / reportType / descriptionPrevious value: -"Report type. Default CAMPAIGN_PERFORMANCE_REPORT."New value: +"Тип отчёта. По умолчанию CAMPAIGN_PERFORMANCE_REPORT." - changed
Input schema / properties / sortBy / descriptionPrevious value: -"Metric to rank the detail rows by. Default Cost."New value: +"Метрика для ранжирования строк детализации. По умолчанию Cost." - changed
Input schema / properties / topN / descriptionPrevious value: -"Max detail rows in the summary (server-capped at 100). Default 50."New value: +"Максимум строк детализации в сводке (на сервере ограничено 100). По умолчанию 50." - changed
Input schema / properties / zeroClicksOnly / descriptionPrevious value: -"Only include rows with 0 clicks in the detail list."New value: +"Включать в детализацию только строки с 0 кликов." - changed
Input schema / properties / zeroConversionsOnly / descriptionPrevious value: -"Only rows with clicks>0 and 0 conversions (needs Conversions in fieldNames)."New value: +"Только строки с clicks>0 и 0 конверсий (нужно Conversions в fieldNames)."
- Changed
get_vcards3 fields changed- changed
Input schema / properties / ids / descriptionPrevious value: -"vCard ids (required by the API)."New value: +"Id визиток (обязательны по требованию API)." - changed
Input schema / properties / limit / descriptionPrevious value: -"Max objects per page."New value: +"Максимум объектов на страницу." - changed
Input schema / properties / offset / descriptionPrevious value: -"Pagination offset."New value: +"Смещение постраничной выдачи."
- Changed
keyword_action1 field changed- changed
Input schema / properties / ids / descriptionPrevious value: -"Keyword ids to act on."New value: +"Id ключевых фраз, к которым применить действие."
- Changed
list_ad_groups6 fields changed- changed
Input schema / properties / autoPaginate / descriptionPrevious value: -"Fetch all pages by following LimitedBy (ignores limit as a total cap)."New value: +"Забрать все страницы, идя по LimitedBy (limit тогда не ограничивает общий объём)." - changed
Input schema / properties / campaignIds / descriptionPrevious value: -"Filter by campaign ids."New value: +"Фильтр по id кампаний." - changed
Input schema / properties / fieldNames / descriptionPrevious value: -"Ad group fields to return."New value: +"Какие поля группы вернуть." - changed
Input schema / properties / ids / descriptionPrevious value: -"Filter by ad group ids."New value: +"Фильтр по id групп объявлений." - changed
Input schema / properties / limit / descriptionPrevious value: -"Max objects per page."New value: +"Максимум объектов на страницу." - changed
Input schema / properties / offset / descriptionPrevious value: -"Pagination offset (objects to skip)."New value: +"Смещение постраничной выдачи (сколько объектов пропустить)."
- Changed
list_ads9 fields changed- changed
Input schema / properties / adGroupIds / descriptionPrevious value: -"Filter by ad group ids."New value: +"Фильтр по id групп объявлений." - changed
Input schema / properties / autoPaginate / descriptionPrevious value: -"Fetch all pages by following LimitedBy (ignores limit as a total cap)."New value: +"Забрать все страницы, идя по LimitedBy (limit тогда не ограничивает общий объём)." - changed
Input schema / properties / campaignIds / descriptionPrevious value: -"Filter by campaign ids."New value: +"Фильтр по id кампаний." - changed
Input schema / properties / fieldNames / descriptionPrevious value: -"Ad fields to return."New value: +"Какие поля объявления вернуть." - changed
Input schema / properties / ids / descriptionPrevious value: -"Filter by ad ids."New value: +"Фильтр по id объявлений." - changed
Input schema / properties / limit / descriptionPrevious value: -"Max objects per page."New value: +"Максимум объектов на страницу." - changed
Input schema / properties / offset / descriptionPrevious value: -"Pagination offset (objects to skip)."New value: +"Смещение постраничной выдачи (сколько объектов пропустить)." - changed
Input schema / properties / states / descriptionPrevious value: -"Filter by ad states."New value: +"Фильтр по состояниям объявлений." - changed
Input schema / properties / statuses / descriptionPrevious value: -"Filter by moderation statuses."New value: +"Фильтр по статусам модерации."
- Changed
list_campaigns8 fields changed- changed
Input schema / properties / autoPaginate / descriptionPrevious value: -"Fetch all pages by following LimitedBy (ignores limit as a total cap)."New value: +"Забрать все страницы, идя по LimitedBy (limit тогда не ограничивает общий объём)." - changed
Input schema / properties / fieldNames / descriptionPrevious value: -"Campaign fields to return."New value: +"Какие поля кампании вернуть." - changed
Input schema / properties / ids / descriptionPrevious value: -"Filter by campaign ids."New value: +"Фильтр по id кампаний." - changed
Input schema / properties / limit / descriptionPrevious value: -"Max objects per page."New value: +"Максимум объектов на страницу." - changed
Input schema / properties / offset / descriptionPrevious value: -"Pagination offset (objects to skip)."New value: +"Смещение постраничной выдачи (сколько объектов пропустить)." - changed
Input schema / properties / states / descriptionPrevious value: -"Filter by campaign states."New value: +"Фильтр по состояниям кампаний." - changed
Input schema / properties / statuses / descriptionPrevious value: -"Filter by moderation statuses."New value: +"Фильтр по статусам модерации." - changed
Input schema / properties / types / descriptionPrevious value: -"Filter by campaign types."New value: +"Фильтр по типам кампаний."
- Changed
list_keywords7 fields changed- changed
Input schema / properties / adGroupIds / descriptionPrevious value: -"Filter by ad group ids."New value: +"Фильтр по id групп объявлений." - changed
Input schema / properties / autoPaginate / descriptionPrevious value: -"Fetch all pages by following LimitedBy (ignores limit as a total cap)."New value: +"Забрать все страницы, идя по LimitedBy (limit тогда не ограничивает общий объём)." - changed
Input schema / properties / campaignIds / descriptionPrevious value: -"Filter by campaign ids."New value: +"Фильтр по id кампаний." - changed
Input schema / properties / fieldNames / descriptionPrevious value: -"Keyword fields to return."New value: +"Какие поля ключевой фразы вернуть." - changed
Input schema / properties / ids / descriptionPrevious value: -"Filter by keyword ids."New value: +"Фильтр по id ключевых фраз." - changed
Input schema / properties / limit / descriptionPrevious value: -"Max objects per page."New value: +"Максимум объектов на страницу." - changed
Input schema / properties / offset / descriptionPrevious value: -"Pagination offset (objects to skip)."New value: +"Смещение постраничной выдачи (сколько объектов пропустить)."
- Added
logout - Changed
raw_request4 fields changed- changed
Input schema / properties / confirmWrite / descriptionPrevious value: -"Must be true to run a write method (anything other than get/has/check)."New value: +"Должен быть true для запуска метода записи (всё, кроме get/has/check)." - changed
Input schema / properties / method / descriptionPrevious value: -"API method, e.g. get, add, update, delete, set, toggle, checkCampaigns."New value: +"Метод API, например get, add, update, delete, set, toggle, checkCampaigns." - changed
Input schema / properties / params / descriptionPrevious value: -"Raw params object for the method."New value: +"Объект params для метода — как есть." - changed
Input schema / properties / service / descriptionPrevious value: -"Lowercase service path, e.g. campaigns, bidmodifiers, sitelinks, vcards, changes, keywordsresearch."New value: +"Путь сервиса строчными буквами, например campaigns, bidmodifiers, sitelinks, vcards, changes, keywordsresearch."
- Changed
set_bid_modifiers5 fields changed- changed
Input schema / properties / bids / descriptionPrevious value: -"Each item needs an id and at least one of percent/enabled."New value: +"В каждом элементе нужны id и percent." - removed
Input schema / properties / bids / items / properties / enabledRemoved value: -{ - "description": "Enable or disable the adjustment.", - "type": "boolean" -} - changed
Input schema / properties / bids / items / properties / id / descriptionPrevious value: -"Bid modifier id."New value: +"Id корректировки." - changed
Input schema / properties / bids / items / properties / percent / descriptionPrevious value: -"New adjustment percent."New value: +"Новый процент корректировки." - changed
Input schema / properties / bids / items / requiredPrevious value: -[ - "id" -]New value: +[ + "id", + "percent" +]
- Changed
set_keyword_bids6 fields changed- changed
Input schema / properties / bids / descriptionPrevious value: -"Each item needs one target id and at least one of bid/contextBid."New value: +"В каждом элементе нужен один целевой id и хотя бы одно из полей bid/contextBid." - changed
Input schema / properties / bids / items / properties / adGroupId / descriptionPrevious value: -"Target all keywords in an ad group."New value: +"Применить ко всем фразам группы объявлений." - changed
Input schema / properties / bids / items / properties / bid / descriptionPrevious value: -"Search bid in currency units."New value: +"Ставка на поиске в валюте аккаунта." - changed
Input schema / properties / bids / items / properties / campaignId / descriptionPrevious value: -"Target all keywords in a campaign."New value: +"Применить ко всем фразам кампании." - changed
Input schema / properties / bids / items / properties / contextBid / descriptionPrevious value: -"Network bid in currency units."New value: +"Ставка в сетях в валюте аккаунта." - changed
Input schema / properties / bids / items / properties / keywordId / descriptionPrevious value: -"Target a single keyword."New value: +"Применить к одной ключевой фразе."
- Added
start_login - Changed
update_ad_group4 fields changed- changed
Input schema / properties / id / descriptionPrevious value: -"Ad group id to update."New value: +"Id группы, которую нужно обновить." - changed
Input schema / properties / name / descriptionPrevious value: -"New ad group name."New value: +"Новое название группы." - changed
Input schema / properties / negativeKeywords / descriptionPrevious value: -"Replace the ad group's negative keywords; pass an empty array to clear them."New value: +"Заменяет минус-фразы группы; пустой массив очищает их." - changed
Input schema / properties / regionIds / descriptionPrevious value: -"New target geo region ids."New value: +"Новые id регионов показа."
- Changed
update_campaign6 fields changed- changed
Input schema / properties / dailyBudgetAmount / descriptionPrevious value: -"Daily budget in account currency units."New value: +"Дневной бюджет в валюте аккаунта." - added
Input schema / properties / dailyBudgetMode / descriptionAdded value: +"Режим траты дневного бюджета: STANDARD — показы как можно быстрее, DISTRIBUTED — равномерно в течение дня. Если не задан, сохраняется текущий режим кампании." - changed
Input schema / properties / endDate / descriptionPrevious value: -"New end date, format YYYY-MM-DD."New value: +"Новая дата окончания в формате YYYY-MM-DD." - changed
Input schema / properties / id / descriptionPrevious value: -"Campaign id to update."New value: +"Id кампании, которую нужно обновить." - changed
Input schema / properties / name / descriptionPrevious value: -"New campaign name."New value: +"Новое название кампании." - changed
Input schema / properties / negativeKeywords / descriptionPrevious value: -"Replace the campaign's negative keywords; pass an empty array to clear them."New value: +"Заменяет минус-фразы кампании; пустой массив очищает их."
- Changed
update_text_ad5 fields changed- changed
Input schema / properties / href / descriptionPrevious value: -"New landing page URL."New value: +"Новый URL посадочной страницы." - changed
Input schema / properties / id / descriptionPrevious value: -"Ad id to update."New value: +"Id объявления, которое нужно обновить." - changed
Input schema / properties / text / descriptionPrevious value: -"New body text, up to 81 characters."New value: +"Новый текст объявления, до 81 символа." - changed
Input schema / properties / title / descriptionPrevious value: -"New Title (Title 1), up to 56 characters."New value: +"Новый заголовок (Title 1), до 56 символов." - changed
Input schema / properties / title2 / descriptionPrevious value: -"New second title (Title 2), up to 30 characters."New value: +"Новый второй заголовок (Title 2), до 30 символов."
- Changed
upload_ad_image3 fields changed- changed
Input schema / properties / imageData / descriptionPrevious value: -"Base64-encoded image bytes (a data: URL prefix is stripped). Provide this or url."New value: +"Байты изображения в base64 (префикс data:-URL отбрасывается). Нужно передать это поле или url." - changed
Input schema / properties / name / descriptionPrevious value: -"Image name shown in the library."New value: +"Название изображения в библиотеке." - changed
Input schema / properties / url / descriptionPrevious value: -"Public image URL; fetched and base64-encoded server-side. Provide this or imageData."New value: +"Публичный URL изображения; сервер скачает его и закодирует в base64. Нужно передать это поле или imageData."
9 tool updates
v0.1.1- Changed
get_ad_images1 field changed- changed
Input schema / properties / limit / maximumPrevious value: -10000New value: +1000
- Changed
get_ad_videos1 field changed- changed
Input schema / properties / limit / maximumPrevious value: -10000New value: +1000
- Added
get_balance - Changed
get_callouts1 field changed- changed
Input schema / properties / limit / maximumPrevious value: -10000New value: +1000
- Changed
get_creatives1 field changed- changed
Input schema / properties / limit / maximumPrevious value: -10000New value: +1000
- Changed
get_sitelinks1 field changed- changed
Input schema / properties / limit / maximumPrevious value: -10000New value: +1000
- Changed
get_statistics3 fields changed- removed
Input schema / properties / dateTo / $refRemoved value: -"#/properties/dateFrom" - added
Input schema / properties / dateTo / patternAdded value: +"^\\d{4}-\\d{2}-\\d{2}$" - added
Input schema / properties / dateTo / typeAdded value: +"string"
- Changed
get_vcards1 field changed- changed
Input schema / properties / limit / maximumPrevious value: -10000New value: +1000
- Changed
list_campaigns1 field changed- changed
Input schema / properties / types / items / enumPrevious value: -[ - "TEXT_CAMPAIGN", - "MOBILE_APP_CAMPAIGN", - "DYNAMIC_TEXT_CAMPAIGN", - "CPM_BANNER_CAMPAIGN", - "SMART_CAMPAIGN", - "MCBANNER_CAMPAIGN" -]New value: +[ + "TEXT_CAMPAIGN", + "MOBILE_APP_CAMPAIGN", + "DYNAMIC_TEXT_CAMPAIGN", + "CPM_BANNER_CAMPAIGN", + "SMART_CAMPAIGN", + "MCBANNER_CAMPAIGN", + "UNIFIED_CAMPAIGN" +]
39 tool updates
v0.1.0- First observed
ad_action - First observed
add_bid_modifier - First observed
add_callouts - First observed
add_keywords - First observed
campaign_action - First observed
create_ad_group - First observed
create_sitelinks_set - First observed
create_text_ad - First observed
create_text_campaign - First observed
create_vcard - First observed
delete_ad_groups - First observed
delete_bid_modifiers - First observed
delete_callouts - First observed
delete_sitelinks - First observed
delete_vcards - First observed
get_account_info - First observed
get_ad_images - First observed
get_ad_videos - First observed
get_bid_modifiers - First observed
get_callouts - First observed
get_creatives - First observed
get_dictionaries - First observed
get_quota - First observed
get_regions - First observed
get_sitelinks - First observed
get_statistics - First observed
get_vcards - First observed
keyword_action - First observed
list_ad_groups - First observed
list_ads - First observed
list_campaigns - First observed
list_keywords - First observed
raw_request - First observed
set_bid_modifiers - First observed
set_keyword_bids - First observed
update_ad_group - First observed
update_campaign - First observed
update_text_ad - First observed
upload_ad_image
TDQS
Scored across 46 tools
Most tools target a distinct resource/action and the very detailed descriptions clarify boundaries, e.g. campaign_action vs set_campaign_strategy and list_clients vs clients_overview. Some overlap remains around generic raw_request, get_dictionaries vs get_regions, and several action-style tools that could be confused at a glance.
The set is predominantly snake_case verb_noun (list_campaigns, create_ad_group, delete_callouts, set_keyword_bids). Minor deviations are noun-first tools such as auth_status and clients_overview, plus the generic raw_request.
At 46 tools this is a very large surface, well beyond the typical well-scoped range, even accounting for the breadth of Yandex Direct. Many tools are justified by real API resources, but the sheer count increases selection burden and cognitive load.
Core lifecycle coverage is strong: campaigns, ad groups, ads, keywords, bid modifiers, sitelinks, callouts, statistics, account, clients and auth are represented. Some operations such as video upload, creative creation, and certain campaign settings require raw_request rather than dedicated tools.
Maintenance
Related MCP Connectors
MCP for Yandex Direct: manage ad campaigns & analytics from Claude or ChatGPT
Review Yandex Direct reports and manage supported campaign settings in ChatGPT.
Google Ads analysis and operations — read performance, manage keywords, bids, and campaigns.
Yandex Direct, Metrika & Wordstat MCP for Russian digital marketing.
Related MCP Servers
- AlicenseAqualityDmaintenanceIntegrates with Yandex Direct API v5 to manage ads via 20 tools, with dry-run protection preventing accidental spending.21MIT
- AlicenseNot gradedqualityBmaintenanceEnables interaction with Yandex advertising and analytics APIs (Direct, Metrika, Audience, Webmaster, AdMetrica) through MCP tools, resources, and prompts for campaign management and data retrieval.MIT
- AlicenseAqualityDmaintenanceEnables AI assistants to manage Yandex Direct advertising campaigns, ads, keywords, and reports via natural language using the Yandex Direct API v5.21MIT
- AlicenseAqualityCmaintenanceEnables AI agents to manage Yandex Direct advertising accounts via the API v5, including reports, bids, campaign management, and semantic analysis through natural language requests.487 npmMIT