Реестр SYNX
В реестре лежат пакеты SYNX: готовые конфиги и схемы, которые ставятся в проект. Чтение открыто без входа, публикация идёт через SYNX CLI. Сам формат от нас не зависит совсем: парсер — опубликованный пакет (npm i @aperturesyndicate/synx-format), а язык описан в руководстве SYNX.
Базовый адрес https://synx.aperturesyndicate.com/apiЭндпоинты
| Метод | Эндпоинт | Доступ | |
|---|---|---|---|
GET | /packages | не нужен | Поиск и список. ?q=, ?category=, ?limit= (1–200, по умолчанию 50), ?offset= |
GET | /packages/:scope/:name | не нужен | Пакет со всеми версиями |
GET | /packages/:scope/:name/:version | не нужен | Одна версия |
GET | /packages/:scope/:name/:version/download | не нужен | Архив .tar.gz |
POST | /packages | сессия CLI | Опубликовать версию |
DELETE | /packages/:scope/:name/:version | сессия CLI | Отозвать свою версию |
Имена пакетов — со scope (@scope/name), версии — semver.
curl "https://synx.aperturesyndicate.com/api/packages?q=nginx"{ "total": 0, "packages": [] }Реестр новый и сегодня пуст.
Публикация
synx login
synx publishДля synx login откройте synx.aperturesyndicate.com/api/auth/cli-token, войдите аккаунтом Синдиката, скопируйте токен и вставьте, когда CLI попросит. Ключи Dev Studio реестр не принимает — у него своя сессия, а токен работает как Authorization: Bearer … на эндпоинтах публикации и отзыва. GET /api/auth/whoami скажет, чей это токен.
synx publish проверяет манифест, упаковывает пакет (до 6 МБ) и загружает его.
Ошибки отвечают {"error": "…"}: 400 — неверное имя или версия, 401 — нет сессии, 404 — неизвестный пакет.