Операции со счетом (API)
Get Account
Возвращает информацию о аккаунте, ассоциированным с предоставленным номером аккаунта.
Запрос
http://localhost:1400/api/getAccount? account=ACCOUNTNUM
Where:
- ACCOUNTNUM Это ID аккаунта, по которому вы запрашиваете информацию.
Ответ
{ "publicKey": "PUBKEY", "assetBalances": [ { [ARRAY_OF_ASSETs] } ], "balance": "BALANCE", "accountRS": "ACCOUNTRS", "unconfirmedAssetBalances": [ { [ARRAY_OF_UNCONFIRMED_ASSETs] } ], "account": "ACCOUNT", "effectiveBalance": EFFBALANCE, "unconfirmedBalance": "UNCONFBALANCE", "forgedBalance": "FORGEDBAL" }
Where:
- PUBKEY 64-битный публичный ключ ассоциированный с аккаунтом.
- ACCOUNTRS адрес аккаунта в формате Reed-Solomon.
- BALANCE: количество MilliLm которым вы владеете независимо от числа подтвержденных транзакций, связанные с этим аккаунтом
- ACCOUNT учетная запись, создавшая актив
- EFFBALANCE: количество MilliLm которым вы владеете и которое подтверждено более чем 1440 раз. Это эффективный баланс , который может использоваться для форжинга.
- UNCONFBALANCE: баланс (в MilliLm) за вычетом всех неподтвержденных исходящих транзакций. Также не включаются неподтвержденные входящие транзакции и double-spending. Пользователь видит неподтвержденный баланс в клиенте.
- FORGEDBAL баланс который используется для форжинга, в MilliLm
Пример
Запрос:
http://localhost:1400/api/getAccount? account=7898870630272254992
Ответ:
{ "publicKey": "ce0fc0f2fed0645f7018e251493a8af1e1ecfb444a4603902e71bfd2a4b41558", "assetBalances": [ { "asset": "1013693125509851736", "balanceQNT": "48" } ], "balance": "1000700000000", "accountRS": "LMA-BK2J-ZMY4-93UY-8EM9V", "unconfirmedAssetBalances": [ { "unconfirmedBalanceQNT": "48", "asset": "1013693125509851736" } ], "account": "7898870630272254992", "effectiveBalance": 9932, "unconfirmedBalance": "1000700000000", "forgedBalance": "0" }
Verified 5/12/14
Get Account ID
Возвращает номер счета, связанный с переданной парольной фразой.
Запрос
http://localhost:1400/api/getAccountId? secretPhrase=PASSPHRASE
Где:
- PASSPHRASE — парольная фраза того счета, ID которого вы хотите получить
Ответ
{ "accountId": "ACCOUNTNUM" "accountRS": "ACCOUNTRS" }
Where:
- ACCOUNTNUM ассоциированный с аккаунтом ID.
- ACCOUNTRS адрес аккаунта в кодировке Reed-Solomon.
Пример
Запрос:
http://localhost:1400/api/getAccountId? secretPhrase=mySuperSecretPassphraseThatYouCanNeverGuess
Ответ:
{ "accountId": "4357314498768237104" "accountRS": "LMA-UWKJ-GFEV-AGY4-5C4YS" }
Внимание: Вы получите ERRORCODE:1, если вы делаете этот запрос не через метод POST
Get Account Block IDs
Возвращает ID всех блоков, созданных данным аккаунтом. Результаты отсортированы в хронологическом порядке.
Запрос
http://localhost:1400/api/getAccountBlockIds? account=ACCOUNT timestamp=TIME
Где:
- ACCOUNT — номер счета, который вы хотите проверить
- TIME — значение в секундах начиная с создания генезис блока, определяющее время самой ранней генерации блока, который вы бы хотели получить. Установка параметра в 0 даст ID всех блоков, сгенерированных данным аккаунтом.
Ответ
{ "blockIds": [ARRAY_OF_BLOCK_IDs] }
Примечание: результаты отсортированы в хронологическом порядке (самый ранний блок отображается первым)
Пример
Запрос:
http://localhost:1400/api/getAccountBlockIds? account=387977119245692429 timestamp=0
Ответ:
{ "blockIds": [ "932115710792099523" ] }
Get Account Public Key
Возвращает публичный ключ, связанный с переданным номером счета.
Запрос
http://localhost:1400/api/getAccountPublicKey? account=ACCOUNTNUM
Где:
- ACCOUNTNUM — номер счета, который вы хотите проверить
Ответ
{ "publicKey": "PUBKEY" }
Где:
- PUBKEY — 64-битный публичный ключ, связанный с данным счетом.
Примечание: если переданный номер счета не известен, вы получите ошибку с кодом 5. Если счет существует, но с него не посылались транзакции, вы получите пустое значение: {}
Пример
Запрос:
http://localhost:1400/api/getAccountPublicKey? account=6483973064837388393
Ответ:
{ "publicKey": "29592749cd26f5c1c4bf0225f8ab225f289449b4978495e6fec09d486ae2d217" }
Get Account Transaction IDs
Возвращает ID транзакций, связанных с переданным номером счета. Параметр timestamp определяет насколько далеко в прошлое вам нужно заглянуть в вашем списке транзакций; нулевое значение позволит вам получить все транзакции данного счета, начиная с генезис блока.
Запрос
http://localhost:1400/api/getAccountTransactionIds? account=ACCOUNT& timestamp=TIME& type=TYPE& subtype=SUBTYPE
Где:
- ACCOUNT — номер счета, который вы хотите проверить
- TIME — значение в секундах начиная с создания генезис блока, определяющее время самой ранней транзакции, которую вы бы хотели получить. Установка параметра в 0 даст ID всех транзакций данного аккаунта.
- TYPE (Optional) тип транзакции которую вы запрашиваете
- SUBTYPE (Optional) тип суб-транзакции которую вы запрашиваете
Ответ
{ "transactionIds": [ARRAY_OF_IDs] }
Где:
- ARRAY_OF_IDs — массив ID транзакций.
Примечание: результаты отсортированы в хронологическом порядке (самая ранняя транзакция отображается первой)
Пример
Запрос:
http://localhost:1400/api/getAccountTransactionIds? account=25940420118693217452& timestamp=0
Ответ:
{ "transactionIds": [ "17484500871708980634", "51938275284739120529" ] }
Get Balance
Возвращает баланс аккаунта.
Запрос
http://localhost:1400/api/getBalance? account=ACCOUNT
Где:
- ACCOUNT — номер счета LibreMoney
Ответ
{ "guaranteedBalance": "GUARANTEED_BALANCE", "balance": "BALANCE", "effectiveBalance": EFFBALANCE, "unconfirmedBalance": "UNCONFBALANCE", "forgedBalance": "0" }
Где:
- GUARANTEED_BALANCE общий баланс аккаунта соответствующего критериям. Результат выражается в MilliLm
- BALANCE количество MilliLm которым вы владеете отображается в MilliLm, независимо от числа подтвержденных транзакций связанных с этими имеющимся аккаунтом.
- EFFBALANCE количество которым вы владеете и которые имеют минимум 1440 подтверждений. Этот баланс Это - баланс, который используется для форжинга.
- UNCONFBALANCE баланс (в MilliLm) за вычетом всех неподтвержденных исходящих транзакций. Он также не включает не подтвержденные входящие транзакции и double-spending. Пользователь видит этот неподтвержденный балансA в клиенте.
- FORGEDBAL баланс который используется аккаунтом для форжинга,выражается в MilliLm
Пример
Запрос:
http://localhost:1400/api/getBalance? account=7898870630272254992
Ответ:
{ "guaranteedBalance": "0", "balance": "1000700000000", "effectiveBalance": 9932, "unconfirmedBalance": "1000700000000", "forgedBalance": "0" }
Get Guaranteed Balance
Возвращает баланс счета, который подтвержден определенное число раз. Реализовано, начиная с версии 0.5.5
Запрос
http://localhost:1400/api/getGuaranteedBalance? account=ACCOUNT& numberOfConfirmations=CONFIRMATIONS
Где:
- ACCOUNT — номер LibreMoney аккаунта
- CONFIRMATIONS — минимальное число подтверждений транзакции, позволяющее ей быть видимой при подсчете гарантированного баланса
Ответ
{ "guaranteedBalance": GUARANTEED_BALANCE }
Где:
- GUARANTEED_BALANCE — общий баланс счета, удовлетворяющий критериям CONFIRMATIONS. Выражается в MilliLm.
Пример
Запрос:
http://localhost:1400/api/getGuaranteedBalance? account=3847997711292454692& numberOfConfirmations=15
Ответ:
{ "guaranteedBalance": 1303400000000 }
Lease Balance
Передача вашего баланса в аренду другому аккаунту.
Запрос
http://localhost:1400/api/leaseBalance? period=PERIOD& recipient=REC& secretPhrase=SECRET& fee=FEE& deadline=DEADLINE& referencedTransaction=REFTXID& broadcast=BROAD
Где:
- PERIOD продолжительность аренды вашего баланса, продолжительность указывается в количестве блоков.
- REC аккаунт которому вы передаете в аренду свои средства
- SECRET секретная фраза аккаунта передающего в аренду свои средства
- FEE комиссия которую вы платите за транзакцию (в MilliLm)
- DEADLINE дедлайн транзакции до получения подтверждения, определяется в минутах
- REFTXID ID предыдущей транзакции на которую вы ссылаетесь. Это создает зависимые транзакции (цепочка транзакций), означая, что текущая транзакция не может быть подтверждена, пока транзакция на которую вы ссылаетесь, не подтверждена. (опционально)
- BROAD если вы хотите чтобы транзакция широковещательно передавалась или нет (опционально)
Ответ
{ "fullHash": "FULLHASH", "signatureHash": "SIGHASH", "transactionBytes": "TXBYTES", "hash": "HASH", "transaction": "TX", "broadcasted": BROAD, "unsignedTransactionBytes": "UNTXBYTES" }
Где:
- FULLHASH полный хэш транзакции
- SIGHASH sha256 хэш подписи транзакции. Используется для транзакций условного депонирования
- TXBYTES байткод транзакции
- HASH хеш всех полей транзакции, за исключением подписи
- TX ID транзакции
- BROAD статус - транзакция была передана или нет
- UNTXBYTES байты транзакции с частью подписи, заменяемой нулями
Пример
Запрос:
http://localhost:1400/api/leaseBalance? period=2880& recipient=1562462127635514638& secretPhrase=123& fee=100000000& deadline=1440
Ответ:
{ "fullHash": "e4d1f83e1cf26ee71d8566d00077510c4a641e04174e7ec3893d7e5aafc82e65", "signatureHash": "48cab5351b4c08ac2816b5e13e9d238fa910085a0d07a16e1c7d7986222fc444", "transactionBytes": "0400401adb00a005668683e673274c671802492d6f5...", "hash": "9b64d859cecdf63773d0696777c2783892616f3a793794544531e4fd7b8a66b2", "transaction": "16676532673329025508", "broadcasted": true, "unsignedTransactionBytes": "0400401adb00a005668683e673274c671802492d6f54cdc..." }
Start / Stop Forging
Запуск или остановка форжинга аккаунтом, или проверка, чтобы увидеть, форжит ли учетная запись. Учетная запись форжит, когда ее секретная фраза (закрытый ключ) предоставлена серверу/узлу LibreMoney.
Запрос
http://localhost:1400/api? requestType=START_OR_STOP_OR_GET& secretPhrase=SECRET
Где:
- START_OR_STOP startForging или stopForging
- SECRET секретная фраза (личный ключ) для аккаунта, форжинг на котором вы хотите начать или остановить
Ответ
{ "deadline": DEADLINE }
Где:
- DEADLINE оценочное число секунд до генерации аккаунтом нового блока
Для "stopForging":
{ "foundAndStopped": TRUE_OR_FALSE }
Пример
Запрос:
http://localhost:1400/api/startForging? secretPhrase=MySuperSecretPasswordThatIsNotActuallyPostedHereOrIsEvenRealSoDoNotEvenTryIt
Ответ:
{ "deadline": 1036742 }
Set Account Information
Установка сведений об аккаунте
Request
http://localhost:1400/api/setAccountInfo? secretPhrase=SECRET& name=NAME& description=DESCRIPT& publicKey=PUBKEY& fee=FEE& deadline=DEADLINE& referencedTransactionFullHash=REFTXHASH& broadcast=BROAD
Где:
- SECRET секретная фраза (приватный ключ) аккаунта
- DEADLINE дедлайн для транзакции, задается в минутах
- FEE комиссия за транзакцию (в MilliLm)
- PUBKEY открытый ключ передающего счета для транзакции (опционально)
- NAME имя которое вы хотите установить для аккаунта(опционально)
- DESCIPT описание которое вы хотите дать для аккаунта(опционально)
- REFTXHASH ID транзакции, на которую ссылается эта транзакция(опционально)
- BROAD true или false если это должно быть передано широковещательно (опционально)
Ответ
{ "fullHash": "FULLHASH", "signatureHash": "SIGHASH", "transactionBytes": "TXBYTES", "hash": "HASH", "transaction": "TX", "broadcasted": BROAD, "unsignedTransactionBytes": "UNTXBYTES" }
Where:
- FULLHASH полный хэш транзакции
- SIGHASH sha256 хэш подписи транзакции. Используется для транзакций условного депонирования
- TXBYTES байткод транзакции
- HASH хэш всех полей транзакции, за исключение подписи
- TX ID транзакции
- BROAD указывает была транзакция передана или нет
- UNTXBYTES байты транзакции c подписью, частично замененной нулями
Пример
Запрос:
http://localhost:1400/api/setAccountInfo? secretPhrase=MySuperSecretPasswordThatIsNotActuallyPostedHereOrIsEvenRealSoDoNotEvenTryIt& fee=100000000& deadline=1440
Ответ:
{ "fullHash": "93e8bba270eed8693f62576e13b45b45a848dd475e510fdb1e4026712829b734", "signatureHash": "5487681f5a828d379864cbbdba9b1f4f2c6f7035c8cf2f272dc323147aea5eac", "transactionBytes": "0105c84ad700a005668683e673274c671802492d6f54cdc33d247aa426e7...", "hash": "6b6ec6ad2f06119493caca546b6561069cd5341b41884d5be068e0b1d9ce7748", "transaction": "7627108136485906579", "broadcasted": true, "unsignedTransactionBytes": "0105c84ad700a005668683e673274c671802492d6f54cdc33d247aa4..." }