LibreMoney

2. Основная часть

2.8. API (RestAPI)

Операции на Бирже Активов

Обратите внимание - единицей биржевой операции является АКТИВ. Активом может быть что угодно - другая криптовалюта, акции и т.п.

Issue asset

Создание актива для биржи

Запрос

http://localhost:1400/api/issueAsset?
     secretPhrase=SECRET& 
     name=ASSETNAME& 
     description=DESCRIPTION& 
     quantityQNT=QTY&
     decimals=DECIMALS&
     fee=FEE&
     deadline=DEADLINE& 
     referencedTransaction=REFTX&
     broadcast=BROAD

Where:

Ответ

В ответе возвращаются идентификаторы транзакции (ID), который является также ID актива

{
     "fullHash":                 "FULLHASH", 
     "signatureHash":            "SIGHASH", 
     "transactionBytes":         "TXBYTES", 
     "hash":                     "HASH", 
     "transaction":              "TX", 
     "broadcasted":              BROAD, 
     "unsignedTransactionBytes": "UNTXBYTES" 
}

Where:

Исправлено 22/05/14

Пример

Запрос:

http://localhost:1400/api/issueAsset?
     secretPhrase=123&
     name=turtleCoin&
     description=This+is+Turtlecoin+issued+by+Tommy-Turtle&
     quantityQNT=500& 
     deadline=1440&
     fee=1000

Ответ:

{ 
     "fullHash":                 "ebccb29dc4286a4a55ad9f0a4334cd3b0df75c26fcaf4a6ee3b62832f8f1a403", 
     "signatureHash":            "adb63682ac9598b7ea951df09535ee662b4b2f977e4f8a3f1a1aa0fd1f3e3da1", 
     "transactionBytes":         "0200701fdb00a005668683e673274c671802492d6f54cdc33d247aa426e7cef83776...", 
     "hash":                     "f1fa3f7b8ca5dd38d529e9f9a052aac0f96a7e5a4ef57cdabb0e4633cb4fcd89", 
     "transaction":              "5362143131262438635", 
     "broadcasted":              true, 
     "unsignedTransactionBytes": "0200701fdb00a005668683e673274c671802492d6f54cdc33d247aa426e7ce..." 
}

Get asset IDs

Получить список всех идентификаторов актива на бирже

Запрос

http://localhost:1400/apigetAssetIds

'Результат'

{
     "assetIds":       [ARRAY_OF_ASSET_IDs]
}

Где ARRAY_OF_ASSET_IDs - массив/список идентификаторов актива

'Пример'

Запрос:

http://localhost:1400/apigetAssetIds

Результат:

{
     "assetIds":
          [
               "923860986719836", 
               "46556984592384756298", 
               "87918658237693184156",
               ...
          ]
}

Get asset

Позволяет получить информацию ассоциированную с ID актива

Request

http://localhost:1400/api/getAsset?
     asset=ASSETID

Где:

Response

{
     "account":          "ACCOUNT", 
     "accountRS":        "ACCOUNTRS",
     "name":             "NAME", 
     "description":      "DESCRIPTION", 
     "quantityQNT":       QTY,
     "asset":             ASSETID,
     "decimals":          DECIMALS, 
     "numberOfTrades":    NUMTRADES
}

Где:

Пример

Запрос:

http://localhost:1400/api/getAsset?
     asset=46556984592384756298

Ответ:

{
     "account":           "334765832685676",
     "accountRS":         "LMA-DE2F-W76R-GL25-HMFPR",
     "name":              "cfbBTCx1", 
     "description":       "This is BTC issued by Come-from-Beyond", 
     "quantityQNT":       500,
     "asset":             46556984592384756298,
     "decimals":          6, 
     "numberOfTrades":    0
}

Get assets

Получить информацию, связанную с несколькими идентификаторами активов

Запрос

http://localhost:1400/api/getAssets?
     assets=ASSETID&
     assets=ASSETID&
     ...

Где:

Запрос

{
     "assets": [ {
          "account":          "ACCOUNT", 
          "accountRS":        "ACCOUNTRS",
          "name":             "NAME", 
          "description":      "DESCRIPTION", 
          "quantityQNT":       QTY,
          "asset":             ASSETID,
          "decimals":          DECIMALS, 
          "numberOfTrades":    NUMTRADES
     },
     {
          ...
     }]
}

Где:

Пример

Запрос:

http://localhost:1400/api/getAssets?
     assets=46556984592384756298

Ответ:

{
     "assets": [ {
          "account":           "334765832685676", 
          "accountRS":         "LMA-DE2F-W76R-GL25-HMFPR",
          "name":              "cfbBTCx1", 
          "description":       "This is BTC issued by Come-from-Beyond", 
          "quantityQNT":       500,
          "asset":             46556984592384756298,
          "decimals":          6, 
          "numberOfTrades":    0
     } ]
}

Get all assets

Предоставляет информацию по всем активам представленным на бирже

Запрос

http://localhost:1400/api/getAllAssets

Ответ

{
     "assets": 
     [ { 
          "account":           "ACCOUNT", 
          "accountRS":         "ACCOUNTRS"
          "name":              "NAME", 
          "description":       "DESCRIPTION", 
          "quantityQNT":       QTY,
          "asset":             ASSETID,
          "decimals":          DECIMALS, 
          "numberOfTrades":    NUMTRADES
     } ] 
}

Где:

Пример

Запрос:

http://localhost:1400/api/getAllAssets

Ответ:

{
     "assets": 
     [ { 
          "decimals":       7, 
          "numberOfTrades": 0, 
          "asset":          "3283533989023503499", 
          "quantityQNT":    "132249500000000", 
          "description":    "CCGGUQMJKOMUCLBIEGGTKCQVSBSJAZSE", 
          "name":           "GZSHFQY", 
          "account":        "14136559604731496960",
          "accountRS":      "LMA-KRDB-ZFA3-RNDV-AALNT"
       },
       { 
          "decimals":       6, 
          "numberOfTrades": 0, 
          "asset":          "5008310702202713285", 
          "quantityQNT":    "994512000000000", 
          "description":    "QESZUYEJCGBGHBVXIRC", 
          "name":           "GWNU", 
          "account":        "14136559604731496960",
          "accountRS":      "LMA-UWKJ-GFEV-AGY4-5C4YS"
       },
       ...
     ]
}

Get assets by name (Не используется)

Предоставляет информацию ассоциированную с именем актива. Функция не используется начиная с версии клиента 1.1.4.

Запрос

http://localhost:1400/api/getAssetsByName?
     assetName=ASSET

Где:

Ответ

{
     "assets": 
     [ { 
          "account":           "ACCOUNT",
          "accountRS":         "ACCOUNTRS"
          "name":              "NAME", 
          "description":       "DESCRIPTION", 
          "quantityQNT":       QTY,
          "asset":             ASSETID,
          "decimals":          DECIMALS, 
          "numberOfTrades":    NUMTRADES
     } ] 
}

Where:

Пример

Запрос:

http://localhost:1400/api/getAssetsByName?
     assetName=GZSHFQY

Ответ:

{
     "assets": 
     [ { 
          "decimals":       7, 
          "numberOfTrades": 0, 
          "asset":          "3283533989023503499", 
          "quantityQNT":    "132249500000000", 
          "description":    "CCGGUQMJKOMUCLBIEGGTKCQVSBSJAZSE", 
          "name":           "GZSHFQY", 
          "account":        "14136559604731496960",
          "accountRS":      "LMA-UWKJ-GFEV-AGY4-5C4YS"
     } ] 
}

Get assets by issuer

Возвращает все активы, которые создал указанный аккаунт

Запрос

http://localhost:1400/api/getAssetsByIssuer?
     account=ACCOUNT

Где:

Ответ

{
     "assets": 
     [ { 
          "account":                 "ACCOUNT", 
          "accountRS":             "ACCOUNTRS",
          "name":                    "NAME", 
          "description":           "DESCRIPTION", 
          "quantityQNT":          QTY,
          "asset":                      ASSETID,
          "decimals":                DECIMALS, 
          "numberOfTrades":    NUMTRADES
     } ] 
}

Где:

Пример

Запрос:

http://localhost:1400/api/getAssetsByIssuer?
     account=1562462127635514638

Ответ:

{
     "assets": 
     [ { 
          "decimals":             7, 
          "numberOfTrades": 0, 
          "asset":                   "3283533989023503499", 
          "quantityQNT":        "132249500000000", 
          "description":          "CCGGUQMJKOMUCLBIEGGTKCQVSBSJAZSE", 
          "name":                   "GZSHFQY", 
          "accountRS":            "LMA-GKAG-2VGD-U473-3VRDD",
          "account":                "1562462127635514638"
     } ] 
}

Get all trades

Возвращает все сделки, начиная с определенного времени

Запрос

http://localhost:1400/api/getAllTrades?
     timestamp=TIME

Где:

Ответ

{
     "trades": [
     { 
          "timestamp":   TIME, 
          "price":    "PRICE", 
          "asset":       "ASSETID", 
          "quantityQNT": "QTY", 
          "block":       "BLOCK", 
          "askOrder":    "ASK", 
          "bidOrder":    "BID" 
     },
     {
          ...
     }
     ]
}

Где:

Пример

Запрос:

http://localhost:1400/api/getAllTrades

Ответ:

{
     "trades": [ 
     { 
          "timestamp":   13530463, 
          "price":    "2500000000", 
          "asset":       "13920592454636198263", 
          "quantityQNT": "2", 
          "block":       "1942829179466651543", 
          "askOrder":    "16791208091984728819", 
          "bidOrder":    "12730658526877674075" 
     },
     {
          ...
     }
     ]
}

Get trades

ПОлучить все торговые операции по активу с указанным ID

Запрос

http://localhost:1400/api/getTrades?
     asset=ASSETID&
     firstIndex=RANGE_START
     lastIndex=RANGE_END

Где:

Ответ

{
     "trades": [
     { 
          "timestamp":   TIME, 
          "price":    "PRICE", 
          "asset":       "ASSETID", 
          "quantityQNT": "QTY", 
          "block":       "BLOCK", 
          "askOrder":    "ASK", 
          "bidOrder":    "BID" 
     },
     {
          ...
     }
     ]
}

Где:

Пример

Запрос:

http://localhost:1400/api/getTrades?
     asset=14269709746849295412&
     firstIndex=0

Ответ:

{
     "trades": [
     { 
          "timestamp":   13386268, 
          "price":    "100000000", 
          "asset":       "13388701969217905199", 
          "quantityQNT": "12", 
          "block":       "15363991879367428772", 
          "askOrder":    "9028610672087970547", 
          "bidOrder":    "7785235474459518056" 
     },
     {
          ...
     }
     ] 
}

Transfer asset

Функция для передачи определенного количества актива с одного аккаунта на другой

Запрос

http://localhost:1400/api/transferAsset?
     secretPhrase=SECRET&
     recipient=ACCOUNT& 
     asset=ASSETID&
     comment=COMMENT&
     quantityQNT=QTY&
     fee=FEE&
     deadline=DEADLINE& 
     referencedTransaction=REFTXID&
     broadcast=BROAD

Где:

Ответ

{
     "fullHash":                 "FULLHASH", 
     "signatureHash":            "SIGHASH", 
     "transactionBytes":         "TXBYTES", 
     "hash":                     "HASH", 
     "transaction":              "TX", 
     "broadcasted":              BROAD, 
     "unsignedTransactionBytes": "UNTXBYTES" 
}

Где

Пример

Запрос:

http://localhost:1400/api/transferAsset?
     secretPhrase=123&
     recipient=81623458239475&
     asset=46556984592384756298&
     quantityQNT=45&
     fee=100000000&
     deadline=1440

Ответ:

{ 
     "fullHash":                 "9bd14e7a93d228a85e82a98071f1bd96c158dda856311722e6feafb1a36e71e2", 
     "signatureHash":            "540a2963aac95e63c5e4d13b452be02160e5ecd9cb1c3e8306eed4b47975b9ba", 
     "transactionBytes":         "0201f120db00a005668683e673274c671802492d6f54cdc33d247a...", 
     "hash":                     "8633ca65458bb9895ef53c3875ff59dd4b85ddf922dcaae3f276796932d33731", 
     "transaction":              "12117166328294330779", 
     "broadcasted":              true, 
     "unsignedTransactionBytes": "0201f120db00a005668683e673274c671802492d6f54cdc33d2..." 
}

Place order

Размещает на бирже заявку на "покупку" или "продажу" актива

Запрос

http://localhost:1400/api?
     requestType=BID_OR_ASK&
     secretPhrase=SECRET&
     asset=ASSETID&
     quantityQNT=QTY&
     price=PRICE&
     fee=FEE&
     deadline=DEADLINE&
     referencedTransaction=REFTXID&
     broadcast=BROAD

Где:

'Ответ'

{
     "fullHash":                 "FULLHASH", 
     "signatureHash":            "SIGHASH", 
     "transactionBytes":         "TXBYTES", 
     "hash":                     "HASH", 
     "transaction":              "TX", 
     "broadcasted":              BROAD, 
     "unsignedTransactionBytes": "UNTXBYTES" 
}

Где:

Пример

Запрос:

http://localhost:1400/api/placeBidOrder?
     secretPhrase=123&
     asset=46556984592384756298&
     quantityQNT=70&
     price=145&
     fee=100000000&
     deadline=1440&
     referencedTransaction=65374835678

Ответ:

{
     "fullHash":                 "a797ff58c5ed5c6f53c708dbe137812495c6af0eb280a3d001bb1917eb6a5561", 
     "signatureHash":            "751c9df738e1894ef550bf9e0725188168d4febf48a4da51b1efafaaa840dbcb", 
     "transactionBytes":         "02035d0fdb00a005668683e673274c671802492d6f54cdc33d247aa426e7cef83776...", 
     "hash":                     "4785247b3238fda4fe53d47bc8a97a2b3acf974a02854792b59b092f3473eecd", 
     "transaction":              "8024550067924866983", 
     "broadcasted":              true, 
     "unsignedTransactionBytes": "02035d0fdb00a005668683e673274c671802492d6f54cdc33d247aa426e7cef..." 
}

Get order IDs

Получить идентификаторы (ID) заявок на покупку/продажу определенного актива

Запрос

http://localhost:1400/api?
     requestType=GET_BID_OR_ASK&
     asset=ASSETID

Где:

'Результат'

Возвращает массив (список) ордеров покупки/продажи:

{
     "GET_BID_OR_ASK": [ARRAY_OF_ORDER_IDs]
}

Где:

'Пример'

Запрос:

http://localhost:1400/api/getAskOrderIds?
     asset=14269709746849295412

Ответ:

{
     "askOrderIds":
          [
               "3467356724512", 
               "824756987236452"
          ]
}

Get orders

Возвращает все ордера на покупку/продажу, по указанному активу

Запрос

http://localhost:1400/api?
     requestType=GET_BID_OR_ASK&
     asset=ASSETID&
     limit=LIMIT

Где:

Ответ

Возвращает массив ордеров покупки/продажи:

{
     "GET_BID_OR_ASK": [ARRAY_OF_ORDERs]
}

Пример

Запрос:

http://localhost:1400/api/getAskOrders?
     asset=15680163033397272955

Ответ:

{
    "askOrders": [
        {
            "height": 90703,
            "price": "78932342",
            "asset": "15680163033397272955",
            "order": "4529944714996630823",
            "quantityQNT": "20",
            "accountRS": "LMA-JNYK-TP3W-VDBB-9FRVB",
            "account": "8425933418718057425",
            "type": "ask"
        },
        {
            "height": 77415,
            "price": "99000000",
            "asset": "15680163033397272955",
            "order": "3158651792442050495",
            "quantityQNT": "39",
            "accountRS": "LMA-AMPQ-B6ZZ-S8TL-EFDBH",
            "account": "14386024746077933238",
            "type": "ask"
        },
        {
            "height": 78822,
            "price": "150000000",
            "asset": "15680163033397272955",
            "order": "954178876942447633",
            "quantityQNT": "1",
            "accountRS": "LMA-FVXE-SLB6-KL5V-A2Q75",
            "account": "9337862827899547564",
            "type": "ask"
        }
    ]
}

Исправлено 22/05/14

Get current account order IDs

Возвращает идентификаторы (ID) ордеров на покупку или продажу для указанного аккаунта, опционально данные фильтруются согласно заданному идентификатору актива (assetID). Реализовано начиная с версии 0.5.9.

Запрос

http://localhost:1400/api?
     requestType=GET_BID_OR_ASK&
     account=ACCOUNT&
     asset=ASSETID

Где:

Ответ

Возвращает массив из всех идентификаторов (ID) запросов/предложений:

{
     "GET_BID_OR_ASK_IDs": 
          [ARRAY_OF_ORDER_IDs]
}

Где:

Пример

Запрос:

http://localhost:1400/api/getAccountCurrentAskOrderIds?
     account=1189524830352486657&
     asset=2438729719254516952

Ответ:

{
     "askOrderIds":
          [
               "3467356725412", 
               "824756987456452
          ]
}

Get order

Возвращает полную информацию о указанном ордере на покупку/продажу

Запрос

http://localhost:1400/api?
     requestType=GET_BID_OR_ASK&
     order=ORDERID

Где:

Ответ

{
     "account":       "ACCOUNT",
     "accountRS":     "ACCOUNTRS",
     "height":        HEIGHT,
     "asset":         "ASSETID", 
     "quantityQNT":   QTY, 
     "price":      PRICE,
     "order":         "ORDER",
     "type":          "TYPE"
}

Где:

Пример

Запрос:

http://localhost:1400/api/getBidOrder?
     order=17936094171153028796

Ответ:

{
     "height":        90703, 
     "price":      "78932342", 
     "asset":         "15680163033397272955", 
     "order":         "17936094171153028796", 
     "quantityQNT":   "20", 
     "account":       "8425933418718057425",
     "accountRS":     "LMA-7HL4-WMNR-XGFL-ASVHV", 
     "type":          "ask"
}

Get all open orders

Возвращает информацию о всех открытых ордерах

Запрос

http://localhost:1400/api/getAllOpenOrders

Ответ

{
     "height":        HEIGHT,
     "account":       "ACCOUNT",
     "accountRS":     "ACCOUNTRS",
     "asset":         "ASSETID",
     "order":         "ORDER",
     "quantityQNT":   QTY, 
     "price":      PRICE,
     "type":          TYPE
}

Где:

Пример

Запрос:

http://localhost:1400/api/getAllOpenOrders

Ответ:

{ 
     "openOrders": 
     [ { 
          "height":      90703, 
          "price":    "78932342", 
          "asset":       "15680163033397272955", 
          "order":       "17936094171153028796", 
          "quantityQNT": "20", 
          "account":     "8425933418718057425", 
          "accountRS":   "LMA-2UKS-7VYN-Q73Y-EKE8Y",
          "type":        "ask" 
     }, 
     {
          ...
     }
     ]
}

Cancel order

Отмена ранее созданного ордера

Запрос

http://localhost:1400/api?
     requestType=BID_OR_ASK&
     secretPhrase=SECRET&
     order=ORDERID&
     fee=FEE&
     deadline=DEADLINE&
     referencedTransaction=REFTXID&
     broadcast=BROAD

Где:

'Ответ'

{
     "fullHash":                 "FULLHASH", 
     "signatureHash":            "SIGHASH", 
     "transactionBytes":         "TXBYTES", 
     "hash":                     "HASH", 
     "transaction":              "TX", 
     "broadcasted":              BROAD, 
     "unsignedTransactionBytes": "UNTXBYTES" 
}

Пример

Запрос:

http://localhost:1400/api/cancelAskOrder?
     secretPhrase=123&
     order=3467356724512& 
     fee=100000000&
     deadline=1440

Ответ:

{
     "fullHash":                 "e9c821547e851998f05ef39a39dc196b27f5e3069c1bf516fffaf53359304cc4", 
     "signatureHash":            "a5bf7481f5ad02be69f5fff7cd73c3dd7e443a4335721511e9e79198bc6f0324", 
     "transactionBytes":         "02051316db00a005668683e673274c671802492d6f54cdc33d247aa...", 
     "hash":                     "10ffcff771db618ca243b561943e09fd4098ade100efb2dc68f7861705f6262d", 
     "transaction":              "10959937945806686441", 
     "broadcasted":              true, 
     "unsignedTransactionBytes": "02051316db00a005668683e673274c671802492d6f54cdc33d247aa426e7c..." 
}