Avito Ads (ads.avito.ru, «Авито Реклама») — отдельный контур от Avito Plugin (Avito Pro, кабинет продавца). Это разные API, разные учётки, разные плагины — не путать.
| Параметр | Значение |
|---|---|
| ID плагина | avito-ads |
| Тип | Source plugin (TypeScript → ESM) |
| Расположение | ~/.openclaw/source-plugins/avito-ads/ |
| Репозиторий | source-plugins/avito-ads в golden-image |
| API Base URL | боевой https://api.avito.ru/ads/v1/..., песочница https://api.avito.ru/ads-sandbox/v1/... |
| Аутентификация | OAuth2 client_credentials |
| Количество инструментов | 5 |
src/index.ts)| Тул | Что делает | Ключевые параметры | Стоимость |
|---|---|---|---|
avito_ads_list_campaigns |
Список кампаний аккаунта, с пагинацией | paymentModels, campaignTypes, managers, advertisers, ids ⚠️, statuses ⚠️, limit, page |
~1 балл |
avito_ads_campaign_stats |
Статистика по одной кампании за период: clicks/views/ctr/spend/cpc/cpm + video-квартили; группы и креативы приходят вложенными | campaignId (req), dateFrom (req), dateTo (req, ≤90 дней) |
~13 баллов |
avito_ads_list_groups |
Список групп объявлений, с пагинацией | ids, campaignIds, statuses, paces, managers, advertisers, paymentModels, limit, page |
~1 балл |
avito_ads_list_creatives |
Список креативов, с пагинацией | ids, groupIds, campaignIds, paymentModels, campaignTypes, statuses, managers, advertisers, limit, page |
~1 балл |
avito_ads_balance |
Денежный баланс аккаунта (balance, bonusBalance) |
— (без параметров) | ~1 балл; только боевой хост |
⚠️
ids/statusesвavito_ads_list_campaigns: документированы в официальных SDK, но живьём возвращают HTTP 500 независимо от содержимого — оставлены в схеме для полноты, использовать не рекомендуется до починки на стороне Avito.
Не зарегистрированы: avito_ads_get_campaign, avito_ads_create_campaign, avito_ads_update_campaign, avito_ads_campaign_status — рабочего эндпоинта не найдено ни для одного (детали в разделе «Ключевые факты API» ниже). Отдельных тулов статистики по группе/креативу нет и не планируется — эти данные уже вложены в ответ avito_ads_campaign_stats.
POST https://api.avito.ru/token, grant_type=client_credentials, client_id/client_secret из env. Токен живёт 86400с, кэш в памяти процесса, обновление по истечении или на 401/403.ads/v1. Песочница: ads-sandbox/v1 — отдельный префикс, отдельный пул Api-Point-Balance. Переключается конфигом sandbox (по умолчанию true).POST, не GET: POST v1/account/{accountId}/campaigns {filter, limit, page}. Self/whoami-эндпоинта нет — accountId только из конфига.create-campaign — реальный роут, но блокируется недокументированным обязательным enum campaignStrategy (опробовано ~12 значений живьём — все отклонены, допустимые варианты нигде не перечислены). update-campaign/change-status — рабочего роута не найдено вообще (только list-хендлер, пойманный через catch-all wildcard). Из write-функционала реально доступны только изменения ставки/бюджета группы (Фаза 1b, ещё не реализовано в коде).avito_ads_balance существует только на боевом хосте — под ads-sandbox/v1 подтверждён 404. При sandbox: true в конфиге тул возвращает структурированную ошибку, не уходя на боевой хост втихую.{
"plugins": {
"entries": {
"avito-ads": {
"enabled": true,
"config": {
"accountId": "<см. ниже>",
"sandbox": true
}
}
}
}
}
Секреты (AVITO_ADS_CLIENT_KEY, AVITO_ADS_CLIENT_SECRET) читаются только из env — намеренно никогда не читаются из конфига плагина, чтобы не попадать в openclaw.json, диффы конфига и логи. Значения переменных здесь не публикуются.
Аккаунты:
513101614129713956Полная процедура — plugin-deploy.md (docs/plugin-deploy.md в golden-image). Кратко:
rsync репозитория из golden-image в рантайм (~/.openclaw/source-plugins/avito-ads/).npm ci (если менялись deps) && npx tsc.plugins.entries/plugins.load.paths) — подхватывается hot reload, рестарт не нужен.dist не реагирует.tools.allow/tools.deny — тоже только с рестартом.[avito-ads] Registered 5 tools, WARN/ERROR — ноль. Регистрация ленивая (при старте сессии агента, не гейтвея) — пнуть агента сообщением.| Фаза | Статус |
|---|---|
| Фаза 0 (каркас) | ✅ закрыта |
| Фаза 1a (campaigns list) | ✅ закрыта |
| Фаза 1c (stats, groups/creatives lists, balance) | ✅ закрыта |
| Фаза 1b (write: ставка/бюджет группы) | ⏳ отложена — после появления живой кампании на аккаунте |
| Фаза 5 (запуск кампании) | ⏳ ручной запуск Романом — через публичный API создать кампанию нельзя (см. «Ключевые факты API») |
Ирина подключена к обоим контурам Авито (Ads + Pro/Avito Plugin).
Ирина — draft-режим по умолчанию; денежные действия (в т.ч. переключение на боевой хост через sandbox: false) подтверждает Роман.
Дата: 2026-07-25
Агент: Ирина (irina)
Конфиг: sandbox: false, accountId: 129713956 (боевой)
Добавленные тулы (5):
avito_ads_list_campaigns — список кампанийavito_ads_campaign_stats — статистика кампанииavito_ads_list_groups — список группavito_ads_list_creatives — список креативовavito_ads_balance — баланс аккаунтаИтого в allow: 39 тулов (было 34).
source-plugins/avito-ads/src/ (golden-image)source-plugins/avito-ads/SPEC.md (golden-image) — детальные findings по каждому тулуdocs/plugin-deploy.md (golden-image)github.com/avito-tech/avito-ads-sdk-{typescript,python3,go}ads-help.avito.com/external/api