Счётчик A.I.T.A. (beacon)

First-party аналитика для AI-советника в кабинете: визиты, просмотры, топ страниц, доля органики. Без Яндекс.Метрики и без передачи данных третьим сторонам.

Когда нужен beacon

Если у вас уже есть bridge с capability getSiteMetrics (магазин, CMS) — beacon не обязателен. См. Generic HTTP.

Установка

  1. В кабинете → Подключение → блок «Счётчик сайта» → Выпустить ключ (ключ показывается один раз).
  2. Вставьте сниппет в <head> или перед </body> на всех страницах сайта.
  3. Дождитесь первых 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 с любого домена проекта.

См. также