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

REST API: валидация адресов и псевдонимов участников сети

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

Для валидации адресов и псевдонимов в сети предусмотрены следующие методы группы addresses:

GET /addresses/validate/{addressOrAlias}

Валидация заданного адреса (ноды или аккаунта) или его псевдонима {addressOrAlias} в блокчейн-сети. Адрес валидируется как последовательность символов.

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

GET /addresses/validate/{addressOrAlias}:
{
  "addressOrAlias": "3HSVTtjim3FmV21HWQ1LurMhFzjut7Aa1Ac",
  "valid": true
}

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

GET /addresses/validate/{addressOrAlias}:
{
  "addressOrAlias": "3NkZd8Xd4KsuPiNVsuhhRNCZE3SqJycqv8d",
  "valid": false,
  "reason": "InvalidAddress(Bad address checksum. Address is corrupted or generated using a different crypto (check 'node.crypto.type' config parameter).)"
}

{
  "error": 199,
  "message": "Invalid address or alias: InvalidAddress(Data from other network: expected: 84(T), actual: 86(V))"
}
{
  "error": 199,
  "message": "Invalid address or alias: GenericError(Alias 'CgqRPcPnexY533gCh2SSvBXh5bca1qMs7KFGntawHGww' length should be between 4 and 30)"
}
{
  "error": 199,
  "message": "Invalid address or alias: AliasDoesNotExist(alias:V:12ssdasads)"
}

POST /addresses/validateMany

Валидация нескольких адресов или псевдонимов, передаваемых в поле addressesOrAliases в виде массива. Информация в ответе для каждого адреса идентична ответу метода GET /addresses/validate/{addressOrAlias}.

Примеры запроса и ответа для одного адреса, одного существующего и одного несуществующего псевдонимов:

POST /addresses/validateMany:

Запрос:

{
  addressesOrAliases: [
    "3HSVTtjim3FmV21HWQ1LurMhFzjut7Aa1Ac",
    "alias:T:asdfghjk",
    "alias:T:1nvAliDAl1ass99911%^&$$$ "
  ]
}

Ответ:

{
  validations: [
    {
      addressOrAlias: "3HSVTtjim3FmV21HWQ1LurMhFzjut7Aa1Ac",
      valid: true
    },
    {
      addressOrAlias: "alias:T:asdfghjk",
      valid: true
    },
    {
      addressOrAlias: "alias:T:1nvAliDAl1ass99911%^&$$$ ",
      valid: false,
      reason: "GenericError(Alias should contain only following characters: -.0123456789@_abcdefghijklmnopqrstuvwxyz)"
    }
  ]
}
Смотрите также