Brale Недавно мы выпустили обновленную версию API-интерфейсов «stablecoin». Проект стартовал с этапа проектирования в первом квартале, во втором перешел в стадию разработки, а вскоре после этого был запущен в производственную среду для реальных клиентов.

API выполняет множество задач. Этот пост не является подробным описанием всех его функций. Это просто запись о том, как я тестировал его в основном для удовольствия, а частично — чтобы понять, как другие могут подойти к его использованию в первый раз.

Использование LLM для работы с «API»

В последний раз, когда я работал над чем-то подобным, большие языковые модели не были частью рабочего процесса. Теперь все изменилось. С помощью Cursor и нескольких удачных подсказок теперь легко создавать рабочие прототипы и проверять гипотезы в режиме реального времени.

Я по-прежнему люблю использовать Postman для изучения API, но мне хотелось посмотреть, каково это — использовать Brale API в чем-то, более похожем на реальный интерфейс.

Первое тестирование: аутентификация

Я начал с базового процесса аутентификации — использования client_id и client_secret для получения токена bearer. Ничего особенного. Просто достаточно, чтобы доказать, что учетные данные работают и имеют правильный объем.

Этот небольшой тест находится здесь: github.com/superduperdot/auth-app

Второй тест: балансы

Это оказалось немного сложнее. Brale API поддерживает несколько типов значений (каждый из которых представляет отдельный актив) и несколько типов переводов (каждый из которых представляет цепочку или сеть). Таким образом, процесс получения балансов выглядел следующим образом:

  • Получить account_id, связанный с вашими учетными данными
  • Используйте этот ID для извлечения списка адресов
  • Отфильтровать результаты по типу: «internal», чтобы выделить кошельки с хранением
  • Пройти по всем известным комбинациям типов значений и типов переводов
  • Запросить остатки и зафиксировать полученные результаты

Это приложение находится здесь: github.com/superduperdot/balance-app

Поиск поддерживаемых типов

Типы TransferTypes хорошо задокументированы. Типы ValueTypes пока не представлены непосредственно в документации, поэтому я извлек их из действующего приложения и разместил оба списка в GitHub для будущего использования:

Получение цен из конечной точки данных также прошло успешно.

Другие замечания

  • Если вы работаете локально, ожидайте проблем с CORS, используйте прокси.
  • Аутентификация происходит на auth.brale.xyz; все остальное — на api.brale.xyz.
  • Различие между account_id и address_id по-прежнему создает небольшие ошибки, если я не буду осторожен.
  • Эти тестовые приложения хранят учетные данные локально и не безопасны для использования в производственной среде. Это сделано намеренно

Здесь ничего не является окончательным. Эти тесты были в основном посвящены скорости и удобству использования. Цель состояла в том, чтобы увидеть, как быстро можно перейти от учетных данных к чему-то реальному, не полагаясь на внутренние инструменты или глубокое знание платформы.

Если вы изучаете Brale API, возможно, это сократит путь. Если нет, все равно стоило потратить время, чтобы посмотреть, как новый уровень ведет себя в реальных условиях. CLI тоже может быть полезен для тестирования.