Проект

Общее

Профиль

Task #3397

открыто

Тестирование Safina API

Добавил(а) Daniel Mekenbaev 30 дня назад. Обновлено 28 дня назад.

Статус:
Resolved
Приоритет:
Normal
Назначена:
Дата начала:
04.02.2026
Срок завершения:
04.02.2026 (опоздание 30 дня)
Готовность:

100%

Оценка временных затрат:
Куратор:

Описание

Надо протестировать работоспособность Safina API


Файлы

safina.zip (12,6 КБ) safina.zip Daniel Mekenbaev, 04.02.2026 09:50

Обновлено Daniel Mekenbaev 30 дня назад

  • Файл safina.zip safina.zip добавлен
  • Параметр Статус изменился с New на Feedback
  • Параметр Назначена изменился на Daniel Mekenbaev
  • Параметр Готовность изменился с 0 на 100
  • Параметр Куратор изменился на Mariyam Seidaliyeva

Для тестирования api были созданы скрипты на nodejs, которые находятся внутри архива safina.zip

Разархивируйте архив и откройте папку safina в терминале:

cd safina

команды для запуска тестов:
Создание ключей для multisig:

# 1. Генерация ключей (один раз)
node generate-keys.js

# 2. Запуск команд
node api-client.js <команда> [аргументы]


Проверка сетей

# Список активных сетей
node api-client.js networks 1

# Список отключённых сетей
node api-client.js networks 0

Ответ

[
  {
    "network_id": 5010,
    "network_name": "Tron Nile TestNet (TRX)",
    "link": "https://tron.network",
    "address_explorer": "https://nile.tronscan.org/#/address/",
    "tx_explorer": "https://nile.tronscan.org/#/transaction/",
    "block_explorer": "https://nile.tronscan.org/#/block/",
    "info": null,
    "status": 1
  }
]


Кошельки

# Список всех кошельков
node api-client.js wallets

Ответ:
[
  {
    "wallet_id": 372,
    "network": 5010,
    "group_id": null,
    "myFlags": "00000",
    "wallet_type": 1,
    "name": "E99E1A57A2BE15C645258D940018C2C3",
    "info": "Test wallet",
    "slist": "{\"0\":{\"type\":\"all\",\"email\":\"user@mail.com\"},\"min_signs\":\"1\"}",
    "addr": "TTsK3s8CnSgwkZGJ93Aokgvy7G19iUmxLf",
    "addr_info": null,
    "myUNID": "6B5F80A136CA0EEC45258D94001787BC",
    "tokenShortNames": "0 TRX" 
  }
]

# Информация о кошельке по имени | unid
node api-client.js wallet E99E1A57A2BE15C645258D940018C2C3

Ответ:
{
  "wallet_name": "E99E1A57A2BE15C645258D940018C2C3",
  "info": "Test wallet",
  "network": 5010,
  "wallet_type": 1,
  "myFlags": "00000",
  "unid": "6B5F80A136CA0EEC45258D94001787BC",
  "slist": {
    "0": {
      "type": "all",
      "email": "user@mail.com" 
    },
    "min_signs": "1" 
  },
  "addrs": "TTsK3s8CnSgwkZGJ93Aokgvy7G19iUmxLf",
  "group_id": null
}

Создание кошелька

# Простой одноподписной кошелёк
node api-client.js create-wallet <network> "<info>" 
# Пример:
node api-client.js create-wallet 5010 "Мой кошелёк" 

# Мультиподписной кошелёк
node api-client.js create-multisig <network> "<info>" '<slist_json>'

Примеры:

# С подписью через email
node api-client.js create-multisig 5010 "Email wallet" \
  '{"min_signs":"1","0":{"type":"all","email":"user@mail.com"}}'

# С подписью через EC ключ (программная подпись)
node api-client.js create-multisig 5010 "EC wallet" \
  '{"min_signs":"1","0":{"type":"all","ecaddress":"0xf034519e3fd88767efc96bae3a0a58f19eae0403"}}'

# С SMS подтверждением
node api-client.js create-multisig 5010 "SMS wallet" \
  '{"min_signs":"1","0":{"type":"all","sms":"+77777777777"}}'

# Комбинированный (2 из 3 подписантов)
node api-client.js create-multisig 5010 "Multi wallet" \
  '{"min_signs":"2","0":{"type":"all","email":"user1@mail.com"},
"1":{"type":"any","email":"user2@mail.com","sms":"+77777777777"},
"2":{"type":"all","ecaddress":"0x..."}}'

Ответ:

{
  "myUNID": "6B5F80A136CA0EEC45258D94001787BC" 
}


Токены

# Все токены пользователя (со всех кошельков)
node api-client.js tokens

Ответ:
[
  {
    "id": 359,
    "wallet_id": 372,
    "wallet_name": "E99E1A57A2BE15C645258D940018C2C3",
    "info": "Test wallet",
    "network": 5010,
    "token": "TRX",
    "value": 0,
    "decimals": 6,
    "value_hex": "0" 
  }
]

# Справочник поддерживаемых токенов
node api-client.js tokens-info

Ответ:
[
  {
    "token": "5010:::TRX",
    "addr": "0",
    "decimals": "6",
    "c": "0.09",
    "cMin": "13.1354",
    "cMax": "13122.3",
    "cBase": "2",
    "tokenBase": "TRX" 
  },
  {
    "token": "5010:::USDT",
    "addr": "TXYZopYRdj2D9XRtbG411XZZ3kM5VkAeBf",
    "decimals": "6",
    "c": "0.09",
    "cMin": "1",
    "cMax": "999",
    "cBase": "14",
    "tokenBase": "TRX" 
  }
]
# Токены конкретного кошелька
node api-client.js wallet-tokens E99E1A57A2BE15C645258D940018C2C3

Ответ:
[
  {
    "token": "5010:::TRX",
    "addr": "0",
    "decimals": "6",
    "c": "0.09",
    "cMin": "13.1354",
    "cMax": "13122.3",
    "cBase": "2",
    "tokenBase": "TRX" 
  },
  {
    "token": "5010:::USDT",
    "addr": "TXYZopYRdj2D9XRtbG411XZZ3kM5VkAeBf",
    "decimals": "6",
    "c": "0.09",
    "cMin": "1",
    "cMax": "999",
    "cBase": "14",
    "tokenBase": "TRX" 
  }
]
# Общий баланс токенов пользователя
node api-client.js user-tokens

Ответ:
[
  {
    "network_name": "Tron Nile TestNet (TRX)",
    "token": "TRX",
    "value": 0
  }
]

Транзакции

# Список всех транзакций
node api-client.js tx

# Транзакции конкретного токена
node api-client.js tx "5010:::TRX" 

Ответ:
[
  {
    "id": 232,
    "tx": "Error for sendtx",
    "info": "EC Sign Test",
    "reg_date": 1770179985,
    "token": "5010:::TRX###7E252518CE81CC2545258D9400199318",
    "token_name": "TRX",
    "to_addr": "TRx6xXChS5sXz3mpvLSNfKuL6w3PBdMZzL",
    "value": 0.001,
    "value_hex": "0",
    "unid": "96C28BD71C39E7CA45258D940018C2BF",
    "init_ts": 1770179985,
    "min_sign": "1",
    "wait": [{}],
    "signed": [
      {
        "ecaddress": "0xF034519E3FD88767efC96BAe3a0A58f19EAe0403",
        "ecsign": "0x139a8c...0x4f8443...0x1c" 
      }
    ],
    "tx_network": 5010
  }
]

# Формат токена для транзакции:
<network_id>:::<token_symbol>###<wallet_name>
# Создание транзакции
node api-client.js tx-send "<token>" "<to_address>" "<value>" "<info>" 

# Отправка TRX с тестовой сети TRON
node api-client.js tx-send \
  "5010:::TRX###E99E1A57A2BE15C645258D940018C2C3" \
  "TRx6xXChS5sXz3mpvLSNfKuL6w3PBdMZzL" \
  "1,5" \
  "Описание платежа" 

# Отправка USDT
node api-client.js tx-send \
  "5010:::USDT###WALLET_NAME" \
  "TRx6xXChS5sXz3mpvLSNfKuL6w3PBdMZzL" \
  "100,00" \
  "Оплата заказа #123" 

Ответ:
{
  "tx_unid": "FA581EE3B5899573462589030071DF52" 
}

Подписи транзакции

# Транзакции, ожидающие подписи текущим пользователем
node api-client.js tx-pending

Ответ:
[
  {
    "token": "5010:::TRX###7E252518CE81CC2545258D9400199318",
    "to_addr": "TRx6xXChS5sXz3mpvLSNfKuL6w3PBdMZzL",
    "tx_value": "0,001",
    "init_ts": 1770179985,
    "unid": "96C28BD71C39E7CA45258D940018C2BF" 
  }
]

# Подписать транзакцию (EC ключом)
node api-client.js tx-sign <tx_unid>
# Пример:
node api-client.js tx-sign 96C28BD71C39E7CA45258D940018C2BF

Ответ:
{}
# Отклонить транзакцию
node api-client.js tx-reject <tx_unid> "<причина>" 
# Пример:
node api-client.js tx-reject DC8713492936F33D45258D940018E9F6 "Неверный адрес получателя" 

Ответ:
{}
# Ожидаемые подписи для транзакции
node api-client.js tx-sign-wait <tx_unid>

Ответ:
[
  {"ecaddress": "0xf034519e3fd88767efc96bae3a0a58f19eae0403"},
  {"email": "user@mail.com"}
]
# Все подписи транзакции (ожидаемые + полученные)
node api-client.js tx-sign-info <tx_unid>

Ответ:
[
  {
    "wait": {
      "ecaddress": "0xf034519e3fd88767efc96bae3a0a58f19eae0403" 
    }
  },
  {
    "signed": {
      "ecaddress": "0xF034519E3FD88767efC96BAe3a0A58f19EAe0403",
      "ecsign": "0x139a8c...0x4f8443...0x1c" 
    }
  }
]
# Последние 50 подписанных транзакций
node api-client.js tx-signed

Ответ:
[
  {
    "to_addr": "TRx6xXChS5sXz3mpvLSNfKuL6w3PBdMZzL",
    "tx_value": "1,005",
    "tx": null,
    "init_ts": 1670758938,
    "info": null,
    "token": "5010:::TRX" 
  }
]

Обновлено Daniel Mekenbaev 30 дня назад

  • Параметр Статус изменился с Feedback на Resolved

Обновлено Mariyam Seidaliyeva 28 дня назад

  • Параметр Проект изменился с 166 на 99

Обновлено Mariyam Seidaliyeva 28 дня назад

  • Параметр Проект изменился с 99 на Safina API
  • Параметр Срок завершения изменился на 04.02.2026

Экспортировать в Atom PDF