Как мы документируем провайдеров
Портал рассчитан на несколько swap-провайдеров. Сейчас активны четыре non-custodial канала:
- 1Click / NEAR Intents
- Relay.link
- LI.FI
- SwapKit (агрегатор → suppliers; отдельно NEAR через SK)
Следующие подключаются по тому же шаблону, чтобы разделы, песочница и сравнение выглядели одинаково.
Два слоя#
- Код провайдера — каталог
providers/<id>/:manifest.json— имя, статус (active/planned), base URL, краткое описание, ссылки на официальные доки;templates/*.json— шаблоны запросов для песочницы (метод, путь, тело, шаг сценария,auth,danger).
- База знаний — markdown в
content/docs/:- общие страницы этого раздела (
overview,compare); - отдельный подраздел на провайдера (1Click, Relay, LI.FI, SwapKit);
- скелет новой статьи — файл
content/docs/providers/_template.md(в оглавление не входит: копируйте его вcontent/docs/<provider>/).
- общие страницы этого раздела (
Список в сайдбаре задаётся в lib/docs-toc.ts. Страница без записи в TOC
не появится в навигации и поиске.
Что обязательно описать#
| Раздел | Зачем |
|---|---|
| О провайдере | Что это, base URL, есть ли тестнет, кастоди или нет |
| Аутентификация | Откуда ключ, как кладём его на портал, что будет без ключа |
| Быстрый старт | Минимальный рабочий сценарий |
| Комиссии | Платформенная комиссия, appFees / integrator fee, fallback |
| Токены и сети | Откуда каталог, как читать assetId / decimals, снимок |
| Проблемы и FAQ | 401, типичные 4xx, куда смотреть статус |
Сравнение: интерактивный инструмент /providers/compare и
методология в «Сравнение».
Реальные данные: 1Click, Relay.link, LI.FI, SwapKit. «Провайдер C» —
заглушка без выдуманного покрытия.
Правила, общие для всех#
- Секреты не пишем в markdown и шаблоны — см. безопасность.
- Формы запросов берём из официальной спецификации провайдера, не выдумываем.
- Идентификаторы активов — только из живого API / сохранённого снимка.
- Новый провайдер: манифест + шаблоны + копия
_template.md+ строка в TOC и в таблице сравнения. - Ключи: единая страница
/api-keys-install(1Click JWT, Relay API key, LI.FI API key, SwapKit API key).