Перейти к содержимому
Брест Гид

Документация для AI и разработчиков

Брест Гид — публичный read-only travel directory. Программного API нет; данные читаются через HTML с разметкой Schema.org или через markdown-файлы для AI-агентов. Эта страница — полный справочник по integration points.

Endpoints для AI-агентов

URLFormatНазначение
/sitemap.xmlXML573 URL для crawlers
/llms.txtMarkdownМанифест с FAQ и каталогом ссылок
/llms-full.txtMarkdownПолный one-shot dump для AI-агентов
/agents.mdMarkdownAgent integration guide (when-to-use, conventions)
/index.mdMarkdownMarkdown fallback главной
/pricing.mdMarkdownPricing policy (free, no paid API)
/.well-known/agent-card.jsonJSONA2A Agent Card
/.well-known/ai-plugin.jsonJSONOpenAI plugin manifest
/.well-known/openapi.jsonJSONOpenAPI spec content discovery
/.well-known/schemamap.xmlXMLNLWeb schema map
/{section}/llms.txtMarkdownPer-section manifest (zhilye, cafe, ekskursii, ...)
/?mode=agentMarkdownAgent mode — markdown summary вместо HTML

Аутентификация

Не требуется. Все endpoints публичные read-only. Никаких API-ключей, OAuth, JWT, basic auth. Сайт brest-gid.ru — статический контент-сайт, не платформа.

Rate limits

Документированных rate limits нет. Сайт обслуживается одним VPS (Timeweb Cloud, 2 vCPU). Разумные ожидания:

  • AI inference (per-user): ChatGPT/Claude/Perplexity нормально, обычно 1-3 запроса на пользователя через LLM cloud.
  • Bulk crawl: рекомендуется crawl-delay 1-2 сек, не больше 5 RPS на один IP. Если делаете масштабный crawl — пишите на email чтобы предупредить.
  • Headers: при превышении лимита получите HTTP 429. Backoff exponential (2, 4, 8 сек) с retry.

Error responses

  • HTTP 200: успех. Body content — HTML или markdown в зависимости от endpoint.
  • HTTP 404: not found. Страница /api/v1/non-existent возвращает application/json error response.
  • HTTP 429: rate limit. Retry с exponential backoff.
  • HTTP 5xx: server issue. Retry через минуту. Также проверьте status в /api/health.

Code examples

Fetch sitemap

# All URLs
curl https://brest-gid.ru/sitemap.xml

# Filter by section
curl https://brest-gid.ru/sitemap.xml | grep -o '<loc>[^<]*</zhilye/[^<]*' | head

Read llms.txt

# Short manifest with FAQ
curl https://brest-gid.ru/llms.txt

# Full content dump (for AI ingest)
curl https://brest-gid.ru/llms-full.txt

Parse Schema.org JSON-LD

# Python
import re, json, requests
html = requests.get('https://brest-gid.ru/cafe/chemodan').text
matches = re.findall(r'<script[^>]*type="application/ld\+json"[^>]*>(.*?)</script>',
                     html, re.DOTALL)
schemas = [json.loads(m) for m in matches]
# schemas[0] = {'@type': 'WebPage', ...}
# schemas[1] = {'@type': 'Restaurant', 'name': '...', 'priceRange': '...'}

Agent mode (markdown response)

# Query param
curl https://brest-gid.ru/?mode=agent

# Or via Accept header
curl -H 'Accept: text/markdown' https://brest-gid.ru/

Schemas на страницах

  • Все страницы: WebPage + Organization + WebSite + TouristInformationCenter + SoftwareApplication.
  • Detail отеля: LodgingBusiness (с geo, address, priceRange, aggregateRating, image).
  • Detail кафе: Restaurant (с servesCuisine, openingHoursSpecification).
  • Detail достопримечательности: TouristAttraction.
  • Detail трансфера/экскурсии: Service.
  • Статья: Article + FAQPage (если есть FAQ блок).
  • Категория: ItemList с references на детали.

Crawl policy

  • Tier 1 (приветствуем): GPTBot, ChatGPT-User, OAI-SearchBot, ClaudeBot, Claude-Web, PerplexityBot, GoogleOther, Google-Extended, Applebot.
  • Tier 2 (блокируем): CCBot, Bytespider, anthropic-ai, FacebookBot, ImagesiftBot, Diffbot, omgili (training-only crawlers).
  • См. /robots.txt.

Контакт

Технические вопросы по integration: roman.rb.aliev@gmail.com. Если нужно, можем обсудить custom data export или partnership.

Данные в каталоге — из открытых источников: OpenStreetMap contributors (ODbL) · Overture Maps Foundation (CDLA) · Wikipedia (CC-BY-SA). Каталог посуточной аренды и кафе собран у GoHome, Kufar, 2GIS, Яндекс.Карт. Источник каждого объекта указан на его карточке. Фотографии объявлений (квартиры, кафе) временно отображаются прямой ссылкой на оригинальное объявление — права принадлежат их авторам. Если вы правообладатель и хотите, чтобы объект или фото были удалены — напишите roman.rb.aliev@gmail.com, ответим в течение 24 часов.