Разработчикам
Устройство кода, API v1 и v2, вебхуки, протокол MCP, OGC API (Features и Processes), ArcGIS FeatureServer, встраивание карты, векторные тайлы, тесты и стенды.
API v1 и OpenAPIAPI v1 — адреса, которыми пользуется само веб-приложение. Вход — токен Bearer из POST /api/v1/auth/login, описание всех адресов — /openapi.json и страница /docs. Адреса v1 меняются вместе с вебом; для внешних систем есть стабильный API v2.
API v2 для внешних систем/api/v2 — стабильные адреса для ERP, CRM, 1С и шлюзов SCADA: лента событий, наряды, отключения, дефекты, создание заявки и приём показаний датчиков. Вход — ключ API (scope: api), который пользователь выдаёт себе в личном кабинете. Поля v2 только добавляются; удаление и переименование — только в v3.
ArcGIS FeatureServer/api/arcgis/rest/services/TGID/FeatureServer отдаёт слои сети по протоколу GeoServices REST (как у ArcGIS Server), только для чтения. Слои те же, что у OGC API; подключают ArcGIS Pro, ArcGIS Online, QGIS, Esri Leaflet и GDAL. Вход — ключ ArcGIS из личного кабинета.
Устройство кодаТГИД — два репозитория: веб на Nuxt 3 (Vuetify, Pinia, MapLibre, Cesium) и API на FastAPI с базой города в PostgreSQL/PostGIS, очередью Celery и расчётным движком heatnet. Ниже — где что лежит, как проходит запрос и в каком виде API возвращает ошибки.
Встраивание карты: SDK и протоколКарта сети встраивается на чужой сайт через iframe страницы /embed с ключом встраивания; сайт управляет ею и получает события через SDK tgid-embed.js или напрямую сообщениями postMessage. Здесь — протокол, проверки и адреса API. Что видит посетитель — Встраиваемая карта, как выдать ключ — Встраиваемые карты.
MCP: протокол для разработчиков клиентовPOST /mcp — сервер Model Context Protocol (JSON-RPC 2.0 поверх HTTP, без потоков и сессий). Здесь — то, что нужно, чтобы написать свой клиент или агента: методы, формат ответов и ошибок, список инструментов с аргументами, токен. Как подключить готовый клиент (Claude Desktop, Claude Code, Cursor) и выдать токен в кабинете — на странице MCP-сервер для ИИ-клиентов.
OGC API — Features и Processes/api/ogc отдаёт слои сети по стандарту OGC API — Features (GeoJSON в WGS 84): участки, узлы, потребители, источники, задвижки. Там же — OGC API — Processes: трассировка, локализация аварии, выборки, статистика и гидравлический расчёт. Так слои ТГИД подключают QGIS, GDAL и ГИС акиматов без GeoServer.
Тесты и стендыВеб проверяют vitest (npm run check — ещё и lint и typecheck) и Playwright e2e на живом стенде; API — pytest. Стенд — API и веб на копии базы города со своим Redis. Инструкция docs/manual собирается из сценариев съёмки и текстов (npm run manual:capture, npm run manual:pages).
Векторные тайлыКарта рисует сеть векторными тайлами (MVT) из трёх источников: функций PostGIS через martin (участки, узлы, здания), GeoServer (остальные слои рабочей области) и архивы PMTiles через API (здания). У встраиваемой карты — свои тайлы API. Ниже — какой тайл откуда, как он кешируется и как его запросить самому.
Вебхуки: события и проверка подписиТГИД отправляет события (новый дефект, наряд, отключение, тревога датчика) POST-запросом на адрес вашей системы и подписывает каждое по спецификации Standard Webhooks. Здесь — состав событий, заголовки и код проверки подписи на Python и JavaScript. Подписки ведёт администратор в окне Вебхуки.
