Для разработчиков¶
Registry HTTP API¶
REST API реестра — за nginx-прокси на том же домене (same-origin):
| Метод | Путь | Что делает |
|---|---|---|
| GET | /registry/health |
живость сервиса |
| GET | /registry/tracks |
каталог треков |
| GET | /registry/tracks/{isrc} |
карточка трека: сплиты, жанр, BPM |
| POST | /registry/tracks |
регистрация (Bearer JWT; draft_id — закрытие DDEX-черновика) |
| GET | /registry/subjects/{ndp_id} |
публичный статус паспорта |
| POST | /registry/subjects/mint |
минт паспорта (commitment + device key) |
| POST | /registry/receipts/batch |
батч подписанных квитанций §7.1 |
| GET | /registry/stats, /registry/stats/journal |
статистика и журнал |
| GET | /payouts/me |
мои выплаты (Bearer) |
Аутентификация: Telegram-JWT (/auth/telegram, Login Widget) — пишущие
эндпоинты; публичные — без токена. CORS закрыт сознательно: клиенты ходят
same-origin или через собственный прокси.
MCP-сервер для ИИ-агентов¶
21 инструмент по протоколу Model Context Protocol: verify_artist,
register_track, identify_track, get_track_manifest, snapshot_epoch,
аудит-контур (журнал, статистика) и др. Транспорты: SSE и Streamable HTTP;
аутентификация — Bearer. Облачная версия — Cloudflare Workers.
Оракул ADNA¶
POST /oracle/register— регистрация эталона (приватная сеть);identifyпо отпечатку v1 (base64, 256 байт) или v2 — оконные сигнатуры: локализация фрагмента в миксе (~0,03 с), питч/темп ±8%, карта атрибуции источников для мультисэмпловых треков.
CLI¶
ndp-cli (Python, открытый): тегирование MP3/FLAC манифестом NDT, расчёт ADNA,
сравнение, журнал квитанций, офлайн-проверка сеттлмента; меню-мастер и TUI;
--json для скриптов; локали RU/EN (NDP_LANG).
main.py tag TRACK.mp3 --artist … --title … --isrc … --splits 'main:wallet:60,parent:isrc:…:40'
main.py compare a.mp3 b.mp3 # вердикт: same | derivative | different
Валидации, которые надо знать¶
- сплиты: сумма ровно 100, роли —
main/parent/…; - производный трек: ровно один сплит
role='parent'сwallet='isrc:<ISRC>'; - ADNA: base64, 256 байт;
- ISRC:
CC-XXX-YY-NNNNN.