# Spisok (Список) — self-hosted wishlist service ## About Spisok — сервис списков желаний: аккаунты, списки (приватный / по ссылке / публичный), желания (цена, валюта, количество, приоритет, статус), медиа-пайплайн (WebP), брони гостей, фоновые задачи метаданных по URL (SSRF-защита), SSE. ## REST API v1 - [GET /api/v1/lists/{id}](/api/v1/lists/{id}) — список (публичный открыт, приватный — по Bearer-токену) - [GET /api/v1/lists/{id}/wishes](/api/v1/lists/{id}/wishes) — желания + счётчики броней - [POST /api/v1/lists/{id}/wishes](/api/v1/lists/{id}/wishes) — создать желание (Bearer) - [GET /api/v1/openapi.json](/api/v1/openapi.json) — OpenAPI 3.0-спецификация - Спецификация ARD-каталога: [ai-catalog.json](/ai-catalog.json) ## Основные веб-маршруты - /s/ — публичная страница списка - POST /s//reserve — бронь гостя (подписанная кука) - GET /s//events — SSE-события комнат - POST /share — Web Share Target (предзаполнение желания по URL) - GET /admin — панель администратора - POST /lists/{id}/export — экспорт списка (JSON/CSV) - GET /manifest.webmanifest, /sw.js — PWA ## Конфигурация (env) - SPISOK_DATA_DIR (по умолчанию ./data) - SPISOK_REGISTRATION_MODE: open | invite | closed - SOBE…RICS=1 включает /metrics (Prometheus text) - SPISOK_JOB_POLL_SECONDS — период опроса очереди задач (по умолчанию 2)