API та автоматизована перевірка
Опубликовано: 19.04.2026
API для перевірки позицій
Огляд API для перевірки позицій у Google
Ручне введення запитів у пошуковий рядок дає уявлення про картину дня, але не підходить для системного моніторингу. Коли проєкт виростає за межі десятка ключових слів, виникає потреба в програмному доступі до даних про позиції. Саме це забезпечують API — інтерфейси, які дозволяють вашому скрипту чи системі запитувати інформацію про розміщення сайту в результатах пошуку та отримувати структуровану відповідь.
Різниця між сервісами полягає не в тому, «чи вміють вони перевіряти позиції», а в тому, як саме вони це роблять: які ліміти встановлюють, наскільки точні дані повертають, які метрики додають до базового результату. Нижче розглянемо ключові варіанти, які використовуються в українському маркетинговому сегменті.
API Google Custom Search для перевірки позицій
Офіційний інструмент від Google. Його головна перевага — дані безпосередньо від пошукової системи, без посередників. Але є суттєві обмеження: безкоштовна квота становить 100 запитів на добу, а кожен запит повертає лише 10 результатів. Для перевірки позиції одного ключового слова потрібен один API-виклик. Якщо у вас 500 ключових слів, безкоштовний варіант не спрацює навіть для разової перевірки.
На практиці Google Custom Search використовують для невеликих проєктів або як доповнення до інших джерел даних. Платне розширення квоти коштує від 5 доларів за 1000 запитів, що робить цей варіант економічно виправданим лише при мінімальних обсягах семантики.

API Serpstat для автоматичної перевірки
Serpstat пропонує API з гнучкою системою тарифікації, де оплата йде за ліміти, а не за фіксовану підписку. Це зручно для малих бізнесів, які не готові купувати повноцінний тариф сервісу, але потребують програмного доступу до даних. API повертає позиції, URL сторінки, що ранжується, та додаткові метрики — видимість, очікуваний трафік.
Практичний нюанс: Serpstat дозволяє отримувати дані не лише з Google, а й з Bing, що корисно для проєктів, які працюють на міжнародних ринках. Швидкість відповіді — близько 1–2 секунд на запит, що дозволяє обробляти тисячі ключових слів за лічені хвилини.
API Ahrefs для відстеження позицій
Ahrefs фокусується на комплексному SEO-аналізі, і позиції — лише частина цієї екосистеми. Через їхнє API можна отримувати історичні дані про позиції, що дозволяє будувати трендові графіки без накопичення власної бази. Мінус — API доступний лише на тарифах Advanced і вище, що робить його дорогим рішенням для задач суто моніторингу позицій.
Сенс використовувати Ahrefs API для перевірки позицій з'являється тоді, коли вам потрібна кореляція з беклінк-профілем або доменними метриками в межах одного запиту.
API Semrush для моніторингу позицій
Semrush надає один із найбільш функціональних API у ніші. Крім базових позицій, можна отримувати дані про featured snippets, local pack, knowledge panel — тобто розширені результати пошуку, які все частіше визначають реальний трафік. API підтримує розбивку за пристроями (десктоп/мобільний) та локаціями.
Важливий практичний момент: Semrush має жорсткі ліміти на кількість запитів за хвилину, тому при великій семантиці доведеться реалізовувати чергу запитів із затримками, інакше сервіс поверне помилку 429 (Too Many Requests).
| Параметр | Google Custom Search | Serpstat | Ahrefs | Semrush |
|---|---|---|---|---|
| Безкоштовна квота | 100 запитів/добу | Немає | Немає | Немає |
| Вартість (орієнтовно) | 5$ / 1000 запитів | Від 0,003$ / запит | Від 249$/міс (тариф) | Від 119$/міс (тариф) |
| Результатів на запит | 10 | 100 | 100 | 100 |
| Історичні дані | Ні | Так | Так | Так |
Налаштування автоматичної перевірки
Як налаштувати автоматичну перевірку позицій через API
Автоматична перевірка складається з трьох елементів: список ключових слів, скрипт, який відправляє запити до API, і механізм запуску за розкладом. Перший крок — підготовка семантики у структурованому форматі. Найпростіший варіант — таблиця з двома колонками: ключове слово та цільовий URL (опціонально, але корисно для відстеження, яка саме сторінка ранжується).
Другий крок — отримання ключа доступу до обраного API. Зазвичай це робиться в особистому кабінеті сервісу в розділі налаштувань. Ключ передається в заголовку запиту або як параметр URL — залежить від документації конкретного провайдера.
Третій крок — написання логіки обробки відповідей. API повертає JSON-об'єкт, з якого потрібно витягнути позицію, URL і додаткові метрики, а потім записати їх у базу даних або таблицю.
Скрипти для автоматичної перевірки позицій на Python
Python — стандарт де-факто для таких задач. Бібліотека requests відправляє HTTP-запити, pandas обробляє отримані дані, sqlite3 зберігає історію. Базовий скрипт для перевірки позицій через типовий API займає 30–40 рядків коду.
Практична порада: обов'язково додайте обробку помилок. API-сервіси періодично повертають таймаути або помилки сервера. Якщо скрипт зупиниться на середині списку через один невдалий запит, ви отримаєте неповні дані. Реалізуйте повторну спробу (retry) з затримкою 2–5 секунд.
Ще один важливий момент — дотримання лімітів. Якщо сервіс дозволяє 100 запитів за хвилину, додайте time.sleep(0.6) у цикл, інакше ризикуєте втратити доступ до API через перевищення квоти.
Автоматична перевірка позицій через Google Apps Script
Якщо ви не хочете налаштовувати сервер і встановлювати Python, Google Apps Script — альтернатива, яка працює прямо в браузері. Скрипт запускається з Google Sheets, відправляє запити до API, записує результати в таблицю. Для запуску за розкладом використовуються тригери — можна налаштувати щоденний або щотижневий виконання.
Обмеження цього підходу: час виконання одного скрипта — 6 хвилин. Для списку з 200–300 ключових слів цього достатньо, але тисячі запитів доведеться розбивати на кілька окремих скриптів із різними тригерами.
Налаштування розкладу автоматичної перевірки
Частота перевірки залежить від конкурентності ніші та стадії проєкту. Для нових сайтів, де позиції змінюються щодня, має сенс щоденна перевірка. Для стабільних проєктів у малоконкурентних нішах достатньо разу на тиждень.
Головна помилка — перевірка надто часто без аналітичної цінності. Якщо ви перевіряєте позиції щогодини, але аналізуєте їх раз на місяць, ви просто витрачаєте ліміти API. Оптимальний підхід: визначити мінімальний період, за який позиція може змінитися суттєво, і орієнтуватися на нього.
Для Python-скриптів розклад налаштовується через cron (Linux) або Task Scheduler (Windows). Для хмарних рішень — через серверні cron або спеціалізовані сервіси типу GitHub Actions, де можна безкоштовно запускати скрипти за розкладом.
Інтеграція API з інструментами аналітики
Підключення даних про позиції до Google Looker Studio
Самі по собі цифри позицій мають обмежену цінність. Справжня аналітика починається, коли ви поєднуєте дані про позиції з трафіком, конверсіями та доходом. Google Looker Studio (колишній Data Studio) дозволяє будувати такі зв'язки, якщо підключити джерело даних. Для послідовного читання можна перейти до оглядовий матеріал «Ручні методи перевірки позицій», а потім повернутися до деталей цієї статті.
Якщо ви зберігаєте результати API-перевірок у Google Sheets, підключення до Looker Studio займає хвилину. Але для серйозних проєктів краще використовувати BigQuery — він підтримує більші обсяги даних і працює швидше при складних запитах.
Інтеграція API перевірки позицій з Google Sheets
Google Sheets — найпростіший варіант для зберігання результатів перевірки. Кожен запуск скрипта додає новий рядок із датою, ключовим словом, позицією та URL. Така структура дозволяє будувати півот-таблиці та графіки зміни позицій у часі.
Практичний нюанс: Google Sheets має ліміт у 5 мільйонів клітинок. Якщо ви перевіряєте 1000 ключових слів щодня, через півроку таблиця досягне межі. Рішення — архівувати старі дані в окремий файл або переходити на базу даних.
Візуалізація даних про позиції через дашборди
Ефективний дашборд для позицій не показує всі ключові слова одразу — це створює шум. Замість цього він групує запити за категоріями (інформаційні, комерційні, брендові) та показує агреговані метрики: середню позицію в категорії, кількість запитів у топ-3, топ-10, динаміку за тиждень.
Корисний елемент візуалізації — scatter plot, де по осі X розташований обсяг пошуку ключового слова, а по осі Y — поточна позиція. Це дозволяє одразу побачити «низьковисячі фрукти» — запити з високим обсягом, які вже близькі до топ-3 і потребують мінімального поштовху.
Автоматизація звітів про позиції
Як створити автоматичний звіт про позиції
Автоматичний звіт відрізняється від дашборду тим, що він фіксує конкретний зріз даних і надсилається за вказаними контактам. Формат залежить від одержувача: клієнту зазвичай потрібна презентація з висновками, а внутрішній команді — таблиця з детальними даними.
Структура практичного звіту про позиції: загальна динаміка (скільки запитів піднялося/опустилося), ключові зміни (вихід у топ-3, випадання з топ-10), проблемні зони (запити, що падають три тижні поспіль). Ці блоки можна генерувати автоматично на основі порогових значень.
Налаштування email-розсилки зі звітами про позиції
Для email-розсилки є два підходи. Перший — скрипт генерує PDF з дашборду Looker Studio і надсилає його. Другий — скрипт формує текстовий звіт безпосередньо в тілі листа, що зручніше для читання з мобільного.
У Python для цього використовують бібліотеку smtplib або сервіси типу SendGrid для надійнішої доставки. У Google Apps Script є вбудований метод MailApp.sendEmail(), який не потребує додаткових налаштувань.
Практична рекомендація: не надсилайте звіти щодня, якщо це не виправдано бізнес-процесами. Щотижневий звіт із порівнянням із попереднім тижнем дає більш усвідомлену картину, ніж щоденні коливання, які часто є просто шумом.
Автоматичне сповіщення про зміну позицій
На відміну від регулярних звітів, сповіщення мають бути миттєвими та прив'язаними до конкретних подій. Найчастіше налаштовують тригери на такі ситуації: вихід у топ-3, випадання з топ-10, зміна позиції більше ніж на 5 пунктів за одну перевірку.
Реалізація проста: після кожного запиту до API скрипт порівнює отриману позицію з попереднім значенням у базі. Якщо різниця перевищує поріг — формується сповіщення. Канали доставки: email, Telegram-бот, Slack-канал. Для Telegram потрібен бот з токеном від BotFather, для Slack — webhook URL.
Головна помилка в сповіщеннях — надто низькі пороги. Якщо ви налаштуєте сповіщення на зміну позиції на 1 пункт, ви отримаєте десятки повідомлень щодня, і корисні сигнали загубляться в шумі. Оптимальний поріг для більшості ніш — 3–5 пунктів для запитів у топ-10 і 5–10 пунктів для запитів поза топ-20.