Установка и использование платформы

REST API: информация об ассетах и балансах адресов

https://img.shields.io/badge/auth-required-orange.svg

Для получения информации об ассетах и балансах адресов предусмотрены методы группы assets.

GET /assets/balance/{address}

Метод возвращает баланс всех ассетов адреса.

Примечание

Для получения информации об ассете рекомендуется использовать метод GET /assets/details/{assetId}.

В ответе возвращаются следующие параметры:

  • address – адрес участника;

  • balances – объект с балансами участника:

    • assetId – ID ассета;

    • balance – баланс ассета;

    • quantity – общее количество выпущенных токенов ассета;

    • reissuable – перевыпускаемость ассета;

    • minSponsoredAssetFee – минимальное значение комиссии для спонсорских транзакций;

    • sponsorBalance – средства, выделенные для оплаты транзакций по спонсируемым ассетам.

Пример ответа:

GET /assets/balance/{address}:
{
  "address": "3Mv61qe6egMSjRDZiiuvJDnf3Q1qW9tTZDB",
  "balances": [
    {
      "assetId": "Ax9T4grFxx5m3KPUEKjMdnQkCKtBktf694wU2wJYvQUD",
      "balance": 4879179221,
      "quantity": 48791792210,
      "reissuable": true,
      "minSponsoredAssetFee" : 100,
      "sponsorBalance" : 1233221,
    },
    {
      "assetId": "49KfHPJcKvSAvNKwM7CTofjKHzL87SaSx8eyADBjv5Wi",
      "balance": 10,
      "quantity": 10000000000,
      "reissuable": false,
    }
  ]
}

GET /assets/balance-v2/{address}

Метод возвращает баланс всех ассетов адреса, в том числе баланс ассетов, выпущенных смарт-контрактом.

В ответе возвращаются следующие параметры:

  • address – адрес участника;

  • balances – объект с балансами участника:

    • name – имя ассета;

    • assetId – ID ассета;

    • balance – баланс ассета;

    • reissuable – флаг, который указывает на перевыпускаемость ассета;

    • sponsorshipIsEnabled – флаг, который принимает значение true или false, и который в соответствии со значением позволяет или не позволяет платить комиссию в несистемном токене;

    • sponsorBalance – средства, выделенные для оплаты транзакций по спонсируемым ассетам;

    • quantity – общее количество выпущенных токенов ассета;

    • decimals – максимальное количество знаков после запятой для конкретного ассета;

    • description – описание ассета, заданное участником, который его выпустил;

    • timestamp – время выпуска ассета;

    • issueHeight – высота, на которой был выпущен ассет;

    • issuer – адрес участника, который выпустил ассет.

Пример ответа:

GET /assets/balance-v2/{address}:
{
  "address": "3Mv61qe6egMSjRDZiiuvJDnf3Q1qW9tTZDB",
  "balances": [
    {
      "name": "WBTC",
      "assetId": "3Mv61qe6egMSjRDZiiuvJDnf3Q1qW9tTZDB",
      "balance": 100000000,
      "reissuable": true,
      "sponsorshipIsEnabled": true,
      "sponsorBalance": 0,
      "quantity": 10000000,
      "decimals": 8,
      "description": "Wrapped BTC token",
      "timestamp": 100,
      "issueHeight": 100,
      "issuer": {}
    }
  ]
}

POST /assets/balance

Метод возвращает набор пар assetidbalance для каждого адреса из переданных при вызове метода в поле addresses.

В ответе возвращаются следующие параметры:

  • assetid – ID ассета;

  • balance – баланс ассета.

Пример ответа для одного адреса:

POST /assets/balance:
[{"3Mv61qe6egMSjRDZiiuvJDnf3Q1qW9tTZDB": {"assedId": "3Mv61qe6egMSjRDZiiuvJDnf3Q1qW9tTZDB", "balance": 1}]

GET /assets/balance/{address}/{assetId}

Метод возвращает баланс адреса в указанном {assetId}.

Пример ответа:

GET /assets/balance/{address}/{assetId}:
{
  "address": "3Mv61qe6egMSjRDZiiuvJDnf3Q1qW9tTZDB",
  "assetId": "Ax9T4grFxx5m3KPUEKjMdnQkCKtBktf694wU2wJYvQUD",
  "balance": 4879179221
}

GET /assets/details/{assetId}

Метод возвращает описание ассета {assetId}.

Пример ответа:

GET /assets/details/{assetId}:
{
  "assetId" : "8tdULCMr598Kn2dUaKwHkvsNyFbDB1Uj5NxvVRTQRnMQ",
  "issueHeight" : 140194,
  "issueTimestamp" : 1504015013373,
  "issuer" : "3NCBMxgdghg4tUhEEffSXy11L6hUi6fcBpd",
  "name" : "name",
  "description" : "Sponsored asset",
  "decimals" : 1,
  "reissuable" : true,
  "quantity" : 1221905614,
  "script" : null,
  "scriptText" : null,
  "complexity" : 0,
  "extraFee": 0,
  "minSponsoredAssetFee" : 100000
}

GET /assets/{assetId}/distribution

Метод возвращает количество токенов ассета на всех адресах, использующих указанный ассет.

Пример ответа:

GET /assets/details/{assetId}:
{
  "3P8GxcTEyZtG6LEfnn9knp9wu8uLKrAFHCb": 1,
  "3P2voHxcJg79csj4YspNq1akepX8TSmGhTE": 1200
}

GET ​/assets​/{assetId}​/distribution​/{height}​/limit​/{limit}

Метод возвращает список адресов, которые владеют указанным в вызове метода ассетом {assetId}.

В запросе метода необходимо указать следующие параметры:

  • assetId – идентификатор ассета;

  • height – высота;

  • limit – значение, которое передается в этом параметре, не должно превышать значение параметра distribution-address-limit, указанное в конфигурационном файле ноды в секции api в блоке rest.

Смотрите также