{"name":"API VK Рекламы","vendor":"VK","industry":"marketing","summary":"API рекламной платформы VK Реклама: получение токенов доступа (для своего кабинета, агентских и менеджерских клиентов), управление кампаниями и группами объявлений, список объявлений и статистика по объявлениям, кампаниям и пользователям. Ответы — JSON; списки возвращаются с полями `count`, `offset`, `items`.","docsUrl":"https://ads.vk.ru/en/doc/api/info/Authorization","coverage":{"included":[],"excluded":[]},"scenarios":[{"id":"poluchit-token-dostupa-k-reklamnomu","title":"Получить токен доступа к рекламному кабинету","summary":"Первый шаг интеграции: токен для своего кабинета или для клиентов агентства.","steps":["Получи client_id и client_secret доступа к API в кабинете VK Рекламы.","Запроси токен для своего кабинета: POST /api/v2/oauth2/token.json с grant_type = client_credentials, client_id и client_secret (form-urlencoded). Для клиента агентства — grant_type = agency_client_credentials и agency_client_name или agency_client_id.","Токен живёт сутки (expires_in = 86400). Продлевай его тем же методом с grant_type = refresh_token, а не запрашивай новый: на пару «client_id + пользователь» — не больше 5 токенов одновременно, сверх лимита придёт 403.","Передавай токен в заголовке Authorization: Bearer <access_token>."],"code":"curl -X POST https://ads.vk.ru/api/v2/oauth2/token.json \\\n  -d grant_type=client_credentials -d client_id=<client_id> -d client_secret=<client_secret>\n\n# Продление\ncurl -X POST https://ads.vk.ru/api/v2/oauth2/token.json \\\n  -d grant_type=refresh_token -d refresh_token=<refresh_token> -d client_id=<client_id> -d client_secret=<client_secret>","language":"bash","methods":["POST /api/v2/oauth2/token.json"]},{"id":"vygruzit-statistiku-kampaniy-po-dnyam","title":"Выгрузить статистику кампаний по дням","summary":"Показы, клики и расходы по кампаниям — в отчёт или сквозную аналитику.","steps":["Получи кампании: GET /api/v2/ad_plans.json с limit и offset; только активные — _status = active.","Запроси статистику: GET /api/v2/statistics/{object}/{period}.json с object = campaigns, period = day, id — ID кампаний через запятую (до 200), date_from и date_to. Набор метрик — metrics (base по умолчанию, all — всё).","В ответе items[] с rows по датам и total. Посуточная статистика доступна за последние 365 дней.","Для больших выборок с сортировкой и постраничным выводом используй GET /api/v3/statistics/{object}/day.json с limit (до 250) и offset."],"code":"curl -G \"https://ads.vk.ru/api/v2/statistics/campaigns/day.json\" \\\n  -H \"Authorization: Bearer $VKADS_TOKEN\" \\\n  -d id=6617841,6711647 -d date_from=2026-10-01 -d date_to=2026-10-23 -d metrics=base","language":"bash","methods":["GET /api/v2/ad_plans.json","GET /api/v2/statistics/{object}/{period}.json","GET /api/v3/statistics/{object}/day.json"]},{"id":"sozdat-kampaniyu-s-gruppoy-obyavleniy","title":"Создать кампанию с группой объявлений","summary":"Запускать типовые кампании из своей системы: под новый товар, город или акцию.","steps":["Создай кампанию: POST /api/v2/ad_plans.json с name, objective (цель), date_start, date_end, бюджетами budget_limit_day и budget_limit и autobidding_mode. Без status кампания будет активной — передай status, если её нельзя запускать сразу.","Группы объявлений можно передать сразу в ad_groups или создать отдельно: POST /api/v2/ad_groups.json с name, package_id (формат размещения), targetings и banners.","Ответ 400 — ошибка валидации, подробности в теле. Проверь созданное: GET /api/v2/ad_groups.json и GET /api/v2/banners.json с фильтром _campaign_id."],"code":"curl -X POST https://ads.vk.ru/api/v2/ad_plans.json \\\n  -H \"Authorization: Bearer $VKADS_TOKEN\" -H 'Content-Type: application/json' \\\n  -d '{\n        \"name\": \"Кружки — осень 2026\",\n        \"status\": \"blocked\",\n        \"date_start\": \"2026-11-01 00:00:00\",\n        \"date_end\": \"2026-11-30 00:00:00\",\n        \"autobidding_mode\": \"max_goals\",\n        \"budget_limit_day\": \"1000\",\n        \"budget_limit\": \"20000\",\n        \"objective\": \"<цель кампании>\",\n        \"ad_groups\": []\n      }'","language":"bash","methods":["POST /api/v2/ad_plans.json","GET /api/v2/ad_groups.json","POST /api/v2/ad_groups.json","GET /api/v2/banners.json"]}],"baseUrls":[{"label":"Боевой","url":"https://ads.vk.ru"},{"label":"Методы","url":"/api/v2/"}],"auth":{"type":"oauth2","description":"Токен получают методом `POST /api/v2/oauth2/token.json` (`application/x-www-form-urlencoded`) и передают в заголовке:\n\nТокен живёт сутки (`expires_in` = 86400) и продлевается через `refresh_token`. На пару «client_id + пользователь» — не больше 5 токенов одновременно; запрос сверх лимита возвращает HTTP 403.","example":"Authorization: Bearer {access_token}"},"methods":[{"id":"POST /api/v2/oauth2/token.json","title":"Получение токена","httpMethod":"POST","path":"/api/v2/oauth2/token.json","description":"В ответе: `access_token`, `token_type`, `scope`, `expires_in`, `refresh_token`.","params":[{"name":"grant_type","in":"body","type":"string","required":true,"description":"client_credentials, agency_client_credentials, authorization_code или refresh_token"},{"name":"client_id","in":"body","type":"string","required":true,"description":"ID клиента API"},{"name":"client_secret","in":"body","type":"string","required":false,"description":"Секрет; нужен для client_credentials, agency_client_credentials, refresh_token"},{"name":"agency_client_name","in":"body","type":"string","required":false,"description":"Клиент агентства/менеджера (или agency_client_id)"},{"name":"agency_client_id","in":"body","type":"string","required":false,"description":"ID клиента агентства/менеджера"},{"name":"code","in":"body","type":"string","required":false,"description":"Код из редиректа для authorization_code"},{"name":"refresh_token","in":"body","type":"string","required":false,"description":"Refresh-токен для продления"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"GET /api/v2/ad_plans.json","title":"Список кампаний","httpMethod":"GET","path":"/api/v2/ad_plans.json","description":"","params":[{"name":"limit","in":"query","type":"integer","required":false,"description":"Число кампаний, по умолчанию 20"},{"name":"offset","in":"query","type":"integer","required":false,"description":"Смещение"},{"name":"_id","in":"query","type":"integer","required":false,"description":"Фильтр по ID; несколько — _id__in=6617841,6711647"},{"name":"_status","in":"query","type":"string","required":false,"description":"active, blocked, deleted; также _status__ne, _status__in"},{"name":"sorting","in":"query","type":"string","required":false,"description":"id, name, status; минус — по убыванию, например -id"}],"requestExample":"","responseExample":"{\n    \"count\": 3,\n    \"offset\": 0,\n    \"items\": [\n        {\n            \"id\": 6617841,\n            \"name\": \"New campaign 2022-07-15 17:53\"\n        },\n        {\n            \"id\": 6711647,\n            \"name\": \"New campaign 2022-08-16 19:49\"\n        },\n        {\n            \"id\": 6711665,\n            \"name\": \"New campaign 2022-08-16 19:51\"\n        }\n    ]\n}","docsUrl":""},{"id":"POST /api/v2/ad_plans.json","title":"Создание кампании","httpMethod":"POST","path":"/api/v2/ad_plans.json","description":"Если `status` не передан, ставится `active`. Ответ: `id` (и `ad_groups`, если кампания создана с группами); 400 — ошибка валидации.","params":[{"name":"name","in":"body","type":"string","required":false,"description":"Название кампании"},{"name":"status","in":"body","type":"string","required":false,"description":"Статус, по умолчанию active"},{"name":"date_start","in":"body","type":"string","required":false,"description":"Дата начала"},{"name":"date_end","in":"body","type":"string","required":false,"description":"Дата окончания"},{"name":"autobidding_mode","in":"body","type":"string","required":false,"description":"Стратегия ставок, например max_goals"},{"name":"budget_limit_day","in":"body","type":"string","required":false,"description":"Дневной бюджет"},{"name":"budget_limit","in":"body","type":"string","required":false,"description":"Общий бюджет"},{"name":"objective","in":"body","type":"string","required":false,"description":"Цель кампании"},{"name":"ad_groups","in":"body","type":"array","required":false,"description":"Группы объявлений"}],"requestExample":"POST /api/v2/ad_plans.json\n{\n    \"name\": \"My new campaign\",\n    \"status\": \"active\",\n    \"date_start\": \"2022-04-01 00:00:00\",\n    \"date_end\": \"2022-04-15 00:00:00\",\n    \"autobidding_mode\": \"max_goals\",\n    \"budget_limit_day\": \"1000\",\n    \"budget_limit\": \"5000\",\n    \"enable_utm\": \"False\",\n    \"enable_offline_goals\": \"False\",\n    \"objective\": \"playersengagement\",\n    \"ad_groups\": []\n}","responseExample":"","docsUrl":""},{"id":"GET /api/v2/ad_groups.json","title":"Список групп объявлений","httpMethod":"GET","path":"/api/v2/ad_groups.json","description":"","params":[{"name":"limit","in":"query","type":"integer","required":false,"description":"Число групп, по умолчанию 20"},{"name":"offset","in":"query","type":"integer","required":false,"description":"Смещение"},{"name":"_id","in":"query","type":"integer","required":false,"description":"Фильтр по ID (_id__in)"},{"name":"_status","in":"query","type":"string","required":false,"description":"active, blocked, deleted"},{"name":"_last_updated","in":"query","type":"string","required":false,"description":"Дата обновления с __lt, __lte, __gt, __gte"},{"name":"sorting","in":"query","type":"string","required":false,"description":"id, name, status"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"POST /api/v2/ad_groups.json","title":"Создание группы объявлений","httpMethod":"POST","path":"/api/v2/ad_groups.json","description":"Ответ: `id` и `banners` (если объявления переданы).","params":[{"name":"name","in":"body","type":"string","required":false,"description":"Название группы"},{"name":"status","in":"body","type":"string","required":false,"description":"По умолчанию active"},{"name":"date_start","in":"body","type":"string","required":false,"description":"Дата начала"},{"name":"date_end","in":"body","type":"string","required":false,"description":"Дата окончания"},{"name":"budget_limit_day","in":"body","type":"string","required":false,"description":"Дневной бюджет"},{"name":"budget_limit","in":"body","type":"string","required":false,"description":"Общий бюджет (кратно budget_limit_step)"},{"name":"package_id","in":"body","type":"integer","required":false,"description":"Пакет (формат размещения)"},{"name":"banners","in":"body","type":"array","required":false,"description":"Объявления: content, urls, textblocks"},{"name":"targetings","in":"body","type":"object","required":false,"description":"Таргетинги: пол, возраст, гео, интересы, pads"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"GET /api/v2/banners.json","title":"Список объявлений","httpMethod":"GET","path":"/api/v2/banners.json","description":"","params":[{"name":"limit","in":"query","type":"integer","required":false,"description":"По умолчанию 20"},{"name":"offset","in":"query","type":"integer","required":false,"description":"Смещение"},{"name":"_id","in":"query","type":"integer","required":false,"description":"Фильтр по ID (_id__in)"},{"name":"_campaign_id","in":"query","type":"integer","required":false,"description":"Фильтр по кампании (_campaign_id__in)"},{"name":"_status","in":"query","type":"string","required":false,"description":"active, blocked, deleted"},{"name":"_updated","in":"query","type":"string","required":false,"description":"Дата обновления с __lt, __lte, __gt, __gte"},{"name":"_url","in":"query","type":"string","required":false,"description":"Поиск по URL объявления (с учётом регистра)"},{"name":"_textblock","in":"query","type":"string","required":false,"description":"Поиск по тексту объявления (с учётом регистра)"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"GET /api/v2/statistics/{object}/{period}.json","title":"Статистика","httpMethod":"GET","path":"/api/v2/statistics/{object}/{period}.json","description":"`object` — `banners`, `campaigns` или `users`; `period` — `day` или `summary`.\n\nВ ответе: `items[]` (`id`, `rows` по датам, `total`) и общий `total`.","params":[{"name":"object","in":"path","type":"string","required":true,"description":"banners, campaigns, users"},{"name":"period","in":"path","type":"string","required":true,"description":"day или summary"},{"name":"id","in":"query","type":"string","required":true,"description":"ID объектов через запятую, до 200"},{"name":"date_from","in":"query","type":"string","required":false,"description":"Начало периода YYYY-MM-DD (обязателен для day)"},{"name":"date_to","in":"query","type":"string","required":false,"description":"Конец периода включительно (обязателен для day)"},{"name":"metrics","in":"query","type":"string","required":false,"description":"all, base (по умолчанию), events, video, uniques, tps, playable, romi"},{"name":"attribution","in":"query","type":"string","required":false,"description":"Модель атрибуции impression; для summary игнорируется"}],"requestExample":"","responseExample":"","docsUrl":""},{"id":"GET /api/v3/statistics/{object}/day.json","title":"Статистика с пагинацией","httpMethod":"GET","path":"/api/v3/statistics/{object}/day.json","description":"","params":[{"name":"object","in":"path","type":"string","required":true,"description":"banners, campaigns, users"},{"name":"date_from","in":"query","type":"string","required":true,"description":"Начало периода YYYY-MM-DD"},{"name":"date_to","in":"query","type":"string","required":false,"description":"Конец периода, по умолчанию текущая дата"},{"name":"id","in":"query","type":"string","required":false,"description":"ID объектов через запятую"},{"name":"fields","in":"query","type":"string","required":false,"description":"Наборы метрик, по умолчанию base"},{"name":"attribution","in":"query","type":"string","required":false,"description":"impression или conversion (по умолчанию)"},{"name":"campaign_id","in":"query","type":"string","required":false,"description":"Фильтр по кампаниям (для статистики объявлений)"},{"name":"sort_by","in":"query","type":"string","required":false,"description":"Сортировка metric.field_name"},{"name":"d","in":"query","type":"string","required":false,"description":"Направление: asc (по умолчанию) или desc"},{"name":"limit","in":"query","type":"integer","required":false,"description":"1–250, по умолчанию 20"},{"name":"offset","in":"query","type":"integer","required":false,"description":"Смещение, по умолчанию 0"}],"requestExample":"","responseExample":"","docsUrl":""}],"codeExamples":[],"errors":[{"code":"400","description":"Ошибка валидации"},{"code":"403","description":"Превышен лимит токенов (5 на пару client_id и пользователь) или нет доступа"}],"limits":"- Не больше 5 токенов одновременно на пару «client_id + пользователь».\n- Статистика v2 — до 200 объектов за запрос; v3 — до 250 строк на страницу.","gotchas":["Фильтры в списках задаются префиксом `_` и суффиксами `__in`, `__ne`, `__lt`, `__lte`, `__gt`, `__gte`.","`ad_groups` нельзя запрашивать через `fields` в списке кампаний.","Посуточная статистика доступна не больше чем за последние 365 дней.","Временные токены удаляются автоматически после месяца без использования.","Есть отдельные эндпоинты статистики по целям (`/api/v2/statistics/goals/...`), in-app событиям (`/api/v2/statistics/inapp/...`) и офлайн-конверсиям.","Для агентств и менеджеров — ресурсы AgencyClients и ManagerClients и токен с `grant_type=agency_client_credentials`."],"slug":"vk-ads","version":2,"updatedAt":"2026-10-24T17:05:38.653Z","sources":[{"title":"Авторизация в API","url":"https://ads.vk.ru/en/doc/api/info/Authorization","kind":"research","addedAt":"2026-10-14T18:43:28.054Z"},{"title":"Кампании (AdPlans)","url":"https://ads.vk.ru/en/doc/api/resource/AdPlans","kind":"research","addedAt":"2026-10-14T18:43:28.054Z"},{"title":"Группы объявлений (AdGroups)","url":"https://ads.vk.ru/en/doc/api/resource/AdGroups","kind":"research","addedAt":"2026-10-14T18:43:28.054Z"},{"title":"Объявления (Banners)","url":"https://ads.vk.ru/en/doc/api/resource/Banners","kind":"research","addedAt":"2026-10-14T18:43:28.054Z"},{"title":"Статистика","url":"https://ads.vk.ru/en/doc/api/info/Statistics","kind":"research","addedAt":"2026-10-14T18:43:28.054Z"},{"title":"Вставленный текст","url":"","kind":"import","addedAt":"2026-10-14T18:43:28.054Z"},{"title":"scenarios-vk-ads.md","url":"","kind":"import","addedAt":"2026-10-24T17:05:28.434Z"}],"logoUrl":null}