# Bergott: API, SEO и данные для агентов

## Источник данных

Основной источник каталога:

`https://api.specus.space/api/bergott/products/`

Фронт запрашивает активные товары через `lib/bergott.ts` и обновляет кэш раз в час. Если API недоступен во время сборки или повторной проверки кэша, используется `public/data/bergott-products.json`.

Переменная окружения:

`SPECUS_API_URL=https://api.specus.space`

## Публичные маршруты

- каталог: `https://specus.space/ru/projects/bergott`;
- товар: `https://specus.space/ru/projects/bergott/{slug}`;
- каталог JSON: `https://specus.space/ru/projects/bergott/catalog.json`;
- товар JSON: `https://specus.space/ru/projects/bergott/{slug}/product.json`;
- Yandex YML: `https://specus.space/feeds/bergott-yandex.yml`;
- Google Merchant RSS: `https://specus.space/feeds/bergott-google.xml`;
- OpenAPI 3.1: `https://api.specus.space/api/bergott/schema/?format=json`;
- документация API: `https://api.specus.space/api/bergott/docs/`;
- краткая карта для агентов: `https://specus.space/llms.txt`;
- полная карта для агентов: `https://specus.space/llms-full.txt`;
- sitemap: `https://specus.space/sitemap.xml`.

JSON-маршруты доступны для чтения и получают `X-Robots-Tag: noindex, follow`, чтобы поисковая выдача вела на HTML-страницы.

## SEO карточки

Каждая карточка формирует:

- уникальные `title` и `description`;
- canonical URL;
- альтернативное представление `application/json`;
- Open Graph и Twitter metadata;
- `Product`, `Offer`, `AggregateRating` и `BreadcrumbList` в JSON-LD;
- видимые SKU, цену, рейтинг, характеристики, источник покупки и дату проверки данных;
- внутренние ссылки на связанные товары.

Цена, рейтинг и количество отзывов являются снимком данных. Наличие, доставка и условия покупки проверяются на Ozon по точной ссылке из записи товара.

## Изображения

Рекомендуемый путь:

`public/img/projects/bergott/{sku}.webp`

Для фидов, которые принимают только JPEG или PNG, рядом хранится версия:

`public/img/projects/bergott/{sku}.jpg`

После загрузки файла нужно записать в поле `image_path` соответствующего товара:

`/img/projects/bergott/{sku}.webp`

Фронт автоматически добавит изображение в Open Graph, Twitter metadata и `Product.image` после обновления часового кэша. До появления файла поле `image_path` должно оставаться пустым.

## Индексация

В sitemap включены русская страница коллекции и все активные товары. `lastmod` берется из API. После заметного обновления каталога sitemap следует повторно отправить в Google Search Console и другие используемые панели вебмастеров.

Yandex YML передается в Яндекс Вебмастере как товарный фид. IndexNow сообщает Яндексу и другим участникам протокола об измененных HTML-страницах и машинных маршрутах, но не заменяет добавление сайта, sitemap и фида в кабинетах платформ.

## Границы данных

В разметку и фиды не добавляются неподтвержденные GTIN, условия доставки, сроки возврата, остатки или юридическое лицо продавца. Наличие в текущих фидах означает, что карточка активна в каталоге и на момент проверки имела действующую ссылку Ozon. Актуальные условия покупки определяет Ozon.
