Metode API Publik

Terdapat 6 metode publik yang menerima permintaan HTTP GET dan mengembalikan respons dalam format JSON:

ReturnTicker

Metode tersebut mengembalikan ticker untuk semua market/yang ditetapkan; contoh permintaan dan respons:

Contoh 1. Pengembalian semua ticker.

Permintaan: https://api.crex24.com/CryptoExchangeService/BotPublic/ReturnTicker

Respons:

{
  Tickers: [{
    BaseVolume: "0.00000000",
    HighPrice: "0.09611615",
    Last: "0.05125186",
    LowPrice: "0.04456261",
    ...
  },  {
    BaseVolume: "0.00000000",
    HighPrice: "0.02062280",
    Last: "0.01025148",
    LowPrice: "0.00972667",
    ...
  },  {
    BaseVolume: "0.00000000",
    HighPrice: "0.00105385",
    Last: "0.00050066",
    LowPrice: "0.00040122",
    ...
  },  ...]
}

Contoh 2. Pengembalian ticker BTC_LTC dan BTC_DOGE.

Permintaan: https://api.crex24.com/CryptoExchangeService/BotPublic/ReturnTicker?request=[NamePairs=BTC_LTC,BTC_DOGE]

Respons:

{
  Tickers:  [{
    BaseVolume: "0.00000000",
    HighPrice: "0.02062280",
    Last: "0.01023842",
    LowPrice: "0.00972667",
    ...
  },  {
    BaseVolume: "0.47617000",
    HighPrice: "0.00000080",
    Last: "0.00000041",
    LowPrice: "0.00000035",
    ...
  }]
}


Return24Volume

Metode tersebut mengembalikan volume trading selama 24 jam untuk semua market/yang ditetapkan:

Contoh. Pengembalian volume untuk BTC_DOGE.

Permintaan:https://api.crex24.com/CryptoExchangeService/BotPublic/Return24Volume?request=[NamePairs=BTC_DOGE]

Respons:

{
  Volume: {
    VolumesByOne: [{
      Name: "BTC",
      Volume: 0.23673
    }, {
      Name: "DOGE",
      Volume: 577000
    }],
    VolumesByTwo: [{
      First: {
        Name: "BTC",
        Volume: 0.23673
      },
      Name: "BTC_DOGE",
      Second: {
        Name: "DOGE",
        Volume: 577000
      }
    }]
  }
}


ReturnOrderBook

Metode tersebut mengembalikan susunan order untuk market yang ditetapkan

Contoh. Pengembalian susunan order untuk BTC_DOGE.

Permintaan:https://api.crex24.com/CryptoExchangeService/BotPublic/ReturnOrderBook?request=[PairName=BTC_DOGE]

Respons:

{
  BuyOrders: [{
    AccumulateMoneyCount: "36826.27800846",
    AccumulateMoneyVolume: "0.01509877",
    CoinCount: "36826.27800846",
    ...
  },  {
    AccumulateMoneyCount: "67304.76798074",
    AccumulateMoneyVolume: "0.02729017",
    CoinCount: "30478.48997228",
    ...
  },  {
    AccumulateMoneyCount: "75084.76074510",
    AccumulateMoneyVolume: "0.03032437",
    CoinCount: "7779.99276436",
    ...
  },  {
    AccumulateMoneyCount: "75433.94286209",
    AccumulateMoneyVolume: "0.03045706",
    CoinCount: "349.18211699",
    ...
  }],
  SellOrders: [{
    AccumulateMoneyCount: "10642.66536957",
    AccumulateMoneyVolume: "0.00446992",
    CoinCount: "10642.66536957",
    ...
  },  {
    AccumulateMoneyCount: "31738.44031685",
    AccumulateMoneyVolume: "0.01354110",
    CoinCount: "21095.77494728",
    ...
  }, {
    AccumulateMoneyCount: "41156.60557210",
    AccumulateMoneyVolume: "0.01768510",
    CoinCount: "9418.16525525",
    ...
  }, {
    AccumulateMoneyCount: "50937.97566773",
    AccumulateMoneyVolume: "0.02208671",
    CoinCount: "9781.37009563",
    ...
  }]
}


ReturnTradeHistoryPub

Metode tersebut mengembalikan 1.000 transaksi terakhir (atau kurang jika parameter Count ditetapkan) atau transaksi pada waktu yang ditetapkan oleh parameter StartTS dan EndTS dalam format stempel waktu UNIX.

Contoh. Pengembalian riwayat transaksi untuk BTC_DOGE.

Permintaan:https://api.crex24.com/CryptoExchangeService/BotPublic/ReturnTradeHistoryPub?request=[PairName=BTC_DOGE]

Respons:

{
  Trades: [{
    CoinCount: "716.23394813",
    CoinPrice: "0.00000037",
    Commission: "0.00000027",
    DtCreateTS: 1502771794,
    ...
  }, {
    CoinCount: "283.76605187",
    CoinPrice: "0.00000037",
    Commission: "0.00000010",
    DtCreateTS: 1502771794,
    ...
  }]
}


ReturnChartData

Metode tersebut mengembalikan data candlestick untuk market yang ditetapkan. Waktu candlestick dalam menit bisa ditetapkan di parameter CandleTimeInMinutes, awal dan akhir interval visa ditetapkan dengan parameter StartTS dan EndTS dalam format stempel waktu UNIX.

Contoh. Metode tersebut mengembalikan candlestick lima menit untuk BTC_DOGE sebelum tanggal 16 Agustus 2017.

Permintaan:https://api.crex24.com/CryptoExchangeService/BotPublic/ReturnChartData?request=\ [PairName=BTC_DOGE][CandleTimeInMinutes=5][StartTS=1][EndTS=1502876344]

Respons:

{
  Candles:  [{
    EndOrderPrice: "0.00000099",
    MaxOrderPrice: "0.00000100",
    MinOrderPrice: "0.00000098",
    OrderCount: 4,
    ...
  },  {
    EndOrderPrice: "0.00000100",
    MaxOrderPrice: "0.00000101",
    MinOrderPrice: "0.00000099",
    OrderCount: 2,
    ...
  },  {
    EndOrderPrice: "0.00000102",
    MaxOrderPrice: "0.00000103",
    MinOrderPrice: "0.00000100",
    OrderCount: 4 ,
    ...
  },  ...]
}


ReturnCurrencies

Metode tersebut mengembalikan informasi tentang semua mata uang/yang ditetapkan.

Contoh. Informasi tentang mata uang DOGE

Permintaan:https://api.crex24.com/CryptoExchangeService/BotPublic/ReturnCurrencies?request=[Names=DOGE]

Respons:

{
  Currencies: [{
    Delisted: false,
    Disabled: false,
    Frozen: false,
    MinConf: 6,
    Name: "Dogecoin",
    ...
  }]
}

Metode Trading API

URL untuk trading API: https://api.crex24.com/CryptoExchangeService/BotTrade/<MethodName>

Anda harus membuat kunci API untuk menggunakan trading API(https://crex24.com/settings/tokens).

Harap diketahui bahwa limit default adalah 6 permintaan per detik. Jika tidak cukup, harap hubungi Tim Dukungan Pelanggan untuk mendiskusikan peningkatan limit.

Semua permintaan trading API dikirim ke alamat HTTP dengan metode POST dan harus berisi header berikut:
  • KunciPengguna — kunci API.
  • Sign — Signature permintaan bodi POST yang dibuat via kunci rahasia dengan metode HMACSHA512.

Semua permintaan harus berisi POST parameter Nonce. Nonce unsigned int64 harus selalu lebih besar dari nilai sebelumnya. Anda dapat menggunakan parameter stempel waktu untuk tujuan ini.

Sebuah respons dikirim dalam format JSON. Jika terjadi error, respons akan dalam format berikut:

{"Error" : {"Message" : "<error message>"}}

Contoh permintaan yang dikirim ke trading API dalam berbagai bahasa pemrograman:

Readme: https://github.com/iiw/Crex24.Examples

Python: https://github.com/iiw/Crex24.Examples/blob/master/python/app.py

C#: https://github.com/3P3C/Crex24.Example/blob/master/Crex24Example/Program.cs

JS: https://github.com/iiw/Crex24.Examples/tree/master/js

PHP: https://github.com/iiw/Crex24.Examples/blob/master/php/app.php

ReturnBalances

Dapatkan saldo yang tersedia.

Contoh.

Permintaan: https://api.crex24.com/CryptoExchangeService/BotTrade/ReturnBalances

Isi permintaan:

{
    "Names" : ["BTC", "LTC"],    # Daftar mata uang. Jika tidak ada, maka ambil semua mata uang.
    "NeedNull" : "true"          # Sertakan saldo nol dalam daftar.
}

Respons:

{
  "Balances": [
    {
      "AvailableBalances": 10.00000000,
      "InOrderBalances": 10.00000000,
      "Name": "BTC"
    },
    {
      "AvailableBalances": 0.00000000,
      "InOrderBalances": 0.00000000,
      "Name": "LTC"
    }
  ]
}

ReturnOpenOrders

Dapatkan order terbuka.

Contoh.

Permintaan: https://api.crex24.com/CryptoExchangeService/BotTrade/ReturnOpenOrders

Isi permintaan:

{
  "Pairs": ["BTC_LTC", "BTC_ETH"]    # Daftar pasangan trading. Jika tidak ada, maka ambil semua pasangan trading.
}

Respons:

{
  "Orders": [
    {
      "CoinCount": 1.00000000,
      "CoinPrice": 0.01135442,
      "Id": 71463796,
      "IsCloseRequired": false,
      "IsSell": true,
      "PairName": "BTC_LTC"
    },
    {
      "CoinCount": 1.00000000,
      "CoinPrice": 0.06835904,
      "Id": 71463169,
      "IsCloseRequired": false,
      "IsSell": true,
      "PairName": "BTC_ETH"
    },
    ...
  ]
}

ReturnTradeHistory

Dapatkan riwayat trading.

Contoh.

Permintaan: https://api.crex24.com/CryptoExchangeService/BotTrade/ReturnTradeHistory

Isi permintaan:

{
  "Pairs": ["BTC_LTC", "BTC_ETH"]   # Daftar pasangan trading. Jika tidak ada, maka ambil semua pasangan trading.
}

Respons:

{
  "Trades": [
    {
      "CoinCount": 1.00000000,
      "CoinPrice": 0.06835904,
      "Commission": 0.00000166,
      "DtCreateTS": 1506517638,
      "Id": 185197,
      "IsMaker": true,
      "IsSell": true,
      "PairName": "BTC_ETH"
    },
    {
      "CoinCount": 1.00000000,
      "CoinPrice": 0.01135442,
      "Commission": 0.00000166,
      "DtCreateTS": 1506085177,
      "Id": 185169,
      "IsMaker": true,
      "IsSell": false,
      "PairName": "BTC_LTC"
    },
    ...
  ]
}

ReturnOrderTrades

Dapatkan semua transaksi trading menurut order.

Contoh.

Permintaan: https://api.crex24.com/CryptoExchangeService/BotTrade/ReturnOrderTrades

Isi permintaan:

{
  "OrderId": 51893150
}

Respons:

{
  "Trades": [
    {
      "CoinCount": 10.00000000,
      "CoinPrice":  0.06835904,
      "Commission": 0.00000166,
      "DtCreateTS": 1506517638,
      "Id": 185197,
      "IsMaker": true,
      "IsSell": true,
      "PairName": "BTC_ETH"
    },
    ...
  ]
}

Buy

Pasang order untuk membeli.

Contoh. Pasang order untuk membeli 10 LTC untuk BTC dengan harga 0.01194538:

Permintaan: https://api.crex24.com/CryptoExchangeService/BotTrade/Buy

Isi permintaan:

{
  "Pair": "BTC_LTC",
  "Course": 0.01194538,
  "Volume": 10.0
}

Respons:

{
  "Id": 51893288
}

Sell

Pasang order untuk menjual.

Contoh. Pasang order untuk menjual 10 LTC untuk BTC dengan harga 0.01194538:

Permintaan: https://api.crex24.com/CryptoExchangeService/BotTrade/Sell

Isi permintaan:

{
  "Pair": "BTC_LTC",
  "Course": 0.01194538,
  "Volume": 10.0
}

Respons:

{
  "Id": 51893294
}

CancelOrder

Batalkan order.

Contoh.

Permintaan: https://api.crex24.com/CryptoExchangeService/BotTrade/CancelOrder

Isi permintaan:

{
  "OrderId": 51893294
}

Respons:

{
  "Success": true
}

CancelOrderMulti

Batalkan beberapa order menurut daftar id atau menurut pasangan trading.

Permintaan: https://api.crex24.com/CryptoExchangeService/BotTrade/CancelOrderMulti

Contoh 1. Batalkan order menurut daftar ID:

Isi permintaan:

{
  "OrderIds": [51893293, 51893292]
}

Contoh 2. Batalkan semua order menurut pasangan trading:

Isi permintaan:

{
  "PairNames": ["BTC_ETH", "BTC_LTC"]
}

Respons:

{
  "Success": true
}

ReturnOrderStatus

Dapatkan informasi dan semua operasi trading menurut order.

Contoh.

Permintaan: https://api.crex24.com/CryptoExchangeService/BotTrade/ReturnOrderStatus

Isi permintaan:

{
  "OrderId": 51893312
}

Respons:

{
  "CurrentOrder": {               # Status order saat ini.
    "CoinCount": 9.00000000,
    "CoinPrice": 0.01194538,
    "Id": 51893314,
    "IsCloseRequired": false,
    "IsSell": false,
    "PairName": "BTC_LTC"
  },
  "SourceOrder": {                # Status order awal.
    "CoinCount": 10.00000000,
    "CoinPrice": 0.01194538,
    "Id": 51893314,
    "IsCloseRequired": false,
    "IsSell": false,
    "PairName": "BTC_LTC"
  },
  "Trades": [                     # Daftar operasi trading menurut order.
    {
      "CoinCount": 1.00000000,
      "CoinPrice": 0.01194538,
      "Commission": 0.00000000,
      "DtCreateTS": 1507465556,
      "Id": 185250,
      "IsMaker": true,
      "IsSell": false,
      "PairName": "BTC_LTC"
    }
  ]
}

ReturnDepositsWithdrawals

Dapatkan riwayat deposit dan penarikan. Transaksi akan ditampilkan halaman demi halaman, dimulai dari yang paling baru. Untuk melihat halaman berikutnya, lengkapi bidang FromId dengan ID terendah dari catatan, dari respons sebelumnya.

Contoh. Dapatkan 100 catatan terakhir:

Permintaan: https://api.crex24.com/CryptoExchangeService/BotTrade/ReturnDepositsWithdrawals

Isi permintaan:

{
  "Names": ["BTC", "LTC"],       # Daftar mata uang. Jika tidak ada, maka ambil semua mata uang.
  "FromId": 0,                   # 0 atau ID terendah dari catatan dari respons sebelumnya.
  "Take": 100                    # Jumlah catatan untuk dikembalikan. Jumlah maksimum catatan adalah 1.000.
}

Respons:

{
  "CountRemain": 1000,                          # Jumlah catatan tersisa. Jika 0 maka itu adalah halaman terakhir.
  "Changes": [
    {
      "Address": "17XjwyX78jusTPXHxxF14ST9fWrCUcLT6L",   # Alamat pembayaran.
      "AgentName": null,                        # Nama sistem pembayaran untuk mata uang fiat.
      "CurrenceName": "BTC",
      "Id": 151,                                # ID Catatan.
      "NeedConfirm": 15,
      "NumConfirm": 17,
      "Status": 3,                              # Status pembayaran. Lihat di bawah.
      "Sum": 0.20000000,
      "TimeTs": 1504100143,                     # Waktu pembuatan catatan dalam format UTC.
      "TxId": "4f37855e4ecfc8f15b58f3397a6f339ca6f941d63d097c08004f7c9dfc4ec700",   # ID Transaksi
      "Type": 2                                 # Tipe catatan. Lihat di bawah.
    },
    ...
  ],
}

Nilai yang mungkin untuk bidang "Status":
  1. - Dikonfirmasi oleh pengguna
  2. - Transaksi dibuat
  3. - Konfirmasi pertama
  4. - Berhasil diproses
  5. - Transaksi ditolak
  6. - Memproses
  7. - Dibatalkan oleh pengguna
  8. - Menunggu untuk mengirim
Nilai yang mungkin untuk bidang "Tipe":
  1. - Deposit mata uang digital
  2. - Penarikan mata uang digital
  3. - Deposit mata uang fiat
  4. - Penarikan mata uang fiat

Withdraw

Buat permintaan untuk menarik.

Contoh.

Permintaan: https://api.crex24.com/CryptoExchangeService/BotTrade/Withdraw

Isi permintaan:

{
  "Currency": "BTC",
  "Sum": 1.0,
  "Address": "17XjwyX78jusTPXHxxF14ST9fWrCUcLT6L",
  "Message": "any_message"         # Pesan untuk transaksi (akan dikirim jika mata uang mendukungnya).
}

Respons:

{
  "NewBalance": 9.00000000,                         # Saldo baru.
  "OutId": 613                                      # ID permintaan untuk menarik. Jika bukan 0, maka permintaan telah berhasil dibuat.
}

ReturnDepositAddress

Dapatkan alamat untuk mendepositkan mata uang. Jika dibutuhkan untuk menyebutkan pesan untuk deposit, ini akan dalam bentuk respons.

Permintaan: https://api.crex24.com/CryptoExchangeService/BotTrade/ReturnDepositAddress

Contoh 1. Dapatkan alamat untuk mendeposit BTC:

Isi permintaan:

{
  "Currency": "BTC"
}

Respons:

{
  "Address": "1JH6h3qDbAMEzAD8e7usWEqePddHzpSTgK",
  "Message": null 
}

Contoh 2. Dapatkan alamat untuk mendeposit XMR:

Isi permintaan:

{
  "Currency": "XMR"
}

Respons:

{
  "Address": "NC6GOUR4ICVVPPK7N4UIYWDJM6LTUBJFR7OVXDS5",
  "Message": "950a239c0f98ca41"                             # Pesan yang harus disebutkan saat mendeposit.
}