waves_logo Docs
  • Руководство владельца ноды
    Руководство владельца ноды
  • Установить ноду Waves
    • Развернуть ноду в Docker
      Развернуть ноду в Docker
    • Установить ноду на Ubuntu
      Установить ноду на Ubuntu
    • Установить ноду на macOS
      Установить ноду на macOS
    • Установить ноду на Windows
      Установить ноду на Windows
    • Установить из исходников (сборка SBT)
      Установить из исходников (сборка SBT)
    Установить ноду Waves
  • Синхронизировать блокчейн Waves
    • Импортировать и экспортировать блокчейн
      Импортировать и экспортировать блокчейн
    • Загрузить актуальный блокчейн
      Загрузить актуальный блокчейн
    • Откатить ноду
      Откатить ноду
    Синхронизировать блокчейн Waves
  • Генерировать блоки
    Генерировать блоки
  • Обновить ноду
    Обновить ноду
  • Конфигурация ноды
    Конфигурация ноды
  • Логирование
    Логирование
  • Кошелек ноды
    Кошелек ноды
  • Фичи
    • Протокол активации
      Протокол активации
    Фичи
  • Собственный блокчейн
    Собственный блокчейн
  • REST API ноды
    • API-ключ
      API-ключ
    • Работа с транзакциями
      Работа с транзакциями
    • Формат числовых полей
      Формат числовых полей
    • Постраничная выборка
      Постраничная выборка
    • CORS
      CORS
    • Ограничения пула публичных нод
      Ограничения пула публичных нод
    • Медленные запросы
      Медленные запросы
    • Коды ответов и ошибки
      Коды ответов и ошибки
    REST API ноды
  • Расширения
    • gRPC Server
      gRPC Server
    • Blockchain Updates
      Blockchain Updates
    Расширения
  • Устранение неполадок
    • Генерация блока FAQ
      Генерация блока FAQ
    Устранение неполадок
  • Нода на языке Go
    Нода на языке Go
      • English
      • Русский
      On this page
        • API пула публичных нод
        • API собственной ноды
        • Публичные методы
        • Приватные методы
      waves_logo Docs

          # REST API ноды

          REST API ноды — основной интерфейс для взаимодействия с блокчейном Waves. API предоставляет как публичные методы, так и приватные методы, требующие авторизации с помощью API-ключа.

          # API пула публичных нод

          Команда Waves предоставляет пулы нод с общедоступными публичными методами API:

          • Mainnet: https://nodes.wavesnodes.com
          • Testnet: https://nodes-testnet.wavesnodes.com
          • Stagenet: https://nodes-stagenet.wavesnodes.com

          По этим ссылкам также доступна интерактивная документация методов в Swagger UI.

          Вы можете пользоваться публичными нодами для получения информации из блокчейна. Частота и количество одновременных запросов к API публичных нод ограничены, а ответы кешируются на несколько секунд (поэтому данные могут быть устаревшими). Если вы планируете интенсивно использовать API, запустите собственную ноду.

          Команда Waves не выдает API-ключ для публичных нод. Если вы хотите вызывать приватные методы, запустите собственную ноду.

          # API собственной ноды

          По умолчанию REST API включен в настройках ноды и доступен локально по адресу http://127.0.0.1:6869 . Интерактивная документация методов в Swagger UI также доступна по этому адресу.

          Изменить настройки или выключить API можно в секции waves.rest-api файла конфигурации ноды, см. раздел Настройки REST API.

          Чтобы получить доступ к приватным методам, необходимо указать хеш API-ключа в параметре waves.rest-api.api-key-hash, см. инструкцию в разделе API-ключ. Остальные параметры API можно оставить по умолчанию.

          Чтобы предоставить внешний доступ к API вашей ноды, используйте Nginx’s proxy pass module или SSH port forwarding . Существует возможность открыть внешний доступ к API просто изменив сетевой адрес в параметре конфигурации waves.rest-api.bind-address, однако мы не рекомендуем так делать в целях безопасности, поскольку нода сама по себе не позволяет ограничить запросы к API по IP-адресу, количеству запросов в секунду и т. п.

          # Публичные методы

          Node REST API позволяет:

          • Читать данные блокчейна:
            • данные об аккаунтах: балансы, записи в хранилищах данных аккаунтов, псевдонимы, установленные скрипты;
            • данные о токенах: параметры, распределение по аккаунтам;
            • активные лизинги;
            • блоки;
            • транзакции;
            • прочие данные: статус активации фич, статус голосования за вознаграждение за создание блока и др.
          • Работать с транзакциями: отправлять подписанную транзакцию на блокчейн, валидировать транзакцию перед отправкой, проверять статус транзакции — см. раздел Работа с транзакциями.
          • Использовать различные утилиты: получать адрес из публичного ключа, проверять валидность адреса, генерировать случайный seed, вычислять хеши.

          💡 Если в REST API ноды нет метода для получения нужной вам информации, ознакомьтесь также с Waves Data Services API.

          # Приватные методы

          Приватные методы требуют авторизации с помощью API-ключа. API-ключ настраивает владелец ноды.

          Приватные методы позволяют:

          • Управлять аккаунтами в кошельке ноды.
          • Подписывать транзакции от имени аккаунтов из кошелька ноды.
          • Управлять нодой: останавливать, выполнять откат, подключаться к другим нодам.
          • Получать отладочную информацию.

          В Swagger UI приватные методы отмечены значком 🔒.

          Собственный блокчейн
          API-ключ
          Собственный блокчейн
          API-ключ