Счётчик A.I.T.A. (beacon)
First-party аналитика для AI-советника в кабинете: визиты, просмотры, топ страниц, доля органики. Без Яндекс.Метрики и без передачи данных третьим сторонам.
Когда нужен beacon
- Сайт на статике / конструкторе без своего бэкенда и без
getSiteMetricsв коннекторе. - Нужны советы по трафику и конверсии в кабинете (full режим советника).
- Не хотите поднимать cron на BFF — worker агента сам агрегирует события раз в сутки.
Если у вас уже есть bridge с capability getSiteMetrics (магазин, CMS) — beacon не обязателен. См. Generic HTTP.
Установка
- В кабинете → Подключение → блок «Счётчик сайта» → Выпустить ключ (ключ показывается один раз).
- Вставьте сниппет в
<head>или перед</body>на всех страницах сайта. - Дождитесь первых pageview (или откройте сайт сами) и обновите советник на следующий день / кнопкой «Обновить».
Сниппет
<script async src="https://aita.dyadyasasha.ru/embed/seo-beacon.js" data-project="YOUR_PROJECT_ID" data-key="bea_…" data-api="https://52525.ru/aita/api"></script>
data-project — ID проекта в Центре управления. data-key — публичный ключ bea_… (не путать с Partner API sea_…). data-api — базовый URL API агента.
SPA / Next.js
Скрипт отслеживает history.pushState / popstate — подходит для React/Next/Vue без дополнительного кода. Для App Router достаточно одного тега в корневом layout.
GDPR / согласие
Beacon — first-party, без cookies третьих лиц; использует localStorage / sessionStorage для visitor/session ID. При необходимости подключайте выдачу сниппета только после баннера согласия (обёртка на стороне сайта).
API collect
POST /v1/collect
X-Seo-Beacon-Key: bea_… (или beaconKey в теле — для sendBeacon)
Content-Type: application/json
{
"projectId": "…",
"visitorId": "…",
"sessionId": "…",
"beaconKey": "bea_…",
"events": [
{
"name": "pageview",
"path": "/catalog",
"title": "Каталог",
"referrer": "https://yandex.ru/…",
"utmSource": null
}
]
}Ответ 202 Accepted, CORS * для POST с любого домена проекта.
См. также
- Коннекторы
- API
- Embed Kit (кабинет в iframe)