Publieke API-methodes

Er zijn 6 publieke methodes die HTTP GET-verzoeken aanvaarden en het antwoord in JSON-formaat retourneren:

ReturnTicker

De methode geeft tickers terug voor alle/specifieke markten; voorbeelden van aanvraag en antwoord:

Voorbeeld 1. Teruggave van alle tickers.

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

Antwoord:

{
  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",
    ...
  },  ...]
}

Voorbeeld 2. Teruggave van BTC_LTC en BTC_DOGE-tickers.

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

Antwoord:

{
  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

De methode geeft het tradingvolume terug voor 24u voor alle/specifieke markten:

Voorbeeld Teruggave van volume voor BTC_DOGE.

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

Antwoord:

{
  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

De methode geeft de orderstapel terug voor de specifieke markt

Voorbeeld Teruggave van de orderstapel voor BTC_DOGE.

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

Antwoord:

{
  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

De methode geeft de laatste 1000 (of minder als de parameterteller gespecificeerd werd) transacties terug of de transacties voor de specifieke tijdspanne op basis van de StartTS en EndTS-parameters in het UNIX-tijdformaat.

Voorbeeld Teruggave van transactiegeschiedenis voor BTC_DOGE.

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

Antwoord:

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


ReturnChartData

De methode geeft candlestick-gegevens terug voor een specifieke markt. De in minuten getelde candlestick-tijd kan ingesteld worden door de CandleTimeInMinutes-parameter, het begin en het einde van het interval kan ingesteld worden door de StartTS en EndTS-parameters in het UNIX-tijdsformaat.

Voorbeeld De methode geeft de vijf-minuten-candlesticks terug voor BTC_DOGE van voor 16 augustus 2017.

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

Antwoord:

{
  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

De methode geeft de informatie terug voor alle/specifieke munteenheden.

Voorbeeld Informatie over munteenheid DOGE

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

Antwoord:

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

Trading API-methodes

Url voor API-trading: https://api.crex24.com/CryptoExchangeService/BotTrade/<MethodName>

Je moet een API-sleutel aanmaken om de trading-API te gebruiken(https://crex24.com/settings/tokens).

Houd er rekening mee dat de standaardlimiet bij 6 aanvragen per seconde ligt. Als dat niet genoeg is, neem dan contact op met het Support Team om een verhoging van de limiet te bespreken.

Alle trading API-aanvragen worden naar HTTP-adres verstuurd en moeten de volgende koppen bevatten:
  • UserSleutel — API-sleutel.
  • Tekenen — Handtekening van POST-bodyverzoek die via de geheime sleutel werd gemaakt met de HMACSHA512-methode.

Alle aanvragen moeten POST parameter Nonce bevatten. Nonce is 'unsigned int4' die altijd groter moet zijn dan de vorige waarde. Je kan een tijd-stempelparameter gebruiken voor deze doelen.

Er werd een antwoord verzonden in het JSON. Als er een fout zich voordoet, zal het antwoord in het volgende formaat verschijnen:

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

Voorbeelden van verzoeken werden verzonden naar trading-API in verschillende programmatietalen:

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

Beschikbare saldi tonen.

Voorbeeld

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

Aanvraag instantie:

{
    "Names" : ["BTC", "LTC"],    # Lijst met munteenheden. Als deze ontbreekt, dan ophalen voor alle munteenheden.
    "NeedNull" : "true"          # Saldo's met 0 ook in de lijst opnemen.
}

Antwoord:

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

ReturnOpenOrders

Toon open orders.

Voorbeeld

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

Aanvraag instantie:

{
  "Pairs": ["BTC_LTC", "BTC_ETH"]    # Lijst van handelsparen. Als deze ontbreekt, dan voor alle tradingparen opvragen.
}

Antwoord:

{
  "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

Toon tradinghistoriek

Voorbeeld

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

Aanvraag instantie:

{
  "Pairs": ["BTC_LTC", "BTC_ETH"]   # Lijst van handelsparen. Als deze ontbreekt, dan voor alle tradingparen opvragen.
}

Antwoord:

{
  "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

Toon alle tradingtransacties per order.

Voorbeeld

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

Aanvraag instantie:

{
  "OrderId": 51893150
}

Antwoord:

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

Buy

Plaats een order om te kopen.

Voorbeeld Plaats een order om 10 LTC voor BTC te kopen aan een prijs van 0.01194538:

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

Aanvraag instantie:

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

Antwoord:

{
  "Id": 51893288
}

Sell

Plaats een order om te verkopen.

Voorbeeld Plaats een order om 10 LTC voor BTC te verkopen aan een prijs van 0.01194538:

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

Aanvraag instantie:

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

Antwoord:

{
  "Id": 51893294
}

CancelOrder

Annuleer oder.

Voorbeeld

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

Aanvraag instantie:

{
  "OrderId": 51893294
}

Antwoord:

{
  "Success": true
}

CancelOrderMulti

Annuleer verschillende orders op basis van id's of trading pairs.

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

Voorbeeld 1. Annuleer oders op basis van lijst van ID's:

Aanvraag instantie:

{
  "OrderIds": [51893293, 51893292]
}

Voorbeeld 2. Annuleer alle orders op basis van trading pairs:

Aanvraag instantie:

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

Antwoord:

{
  "Success": true
}

ReturnOrderStatus

Toon informatie en alle handelstransacties op basis van order.

Voorbeeld

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

Aanvraag instantie:

{
  "OrderId": 51893312
}

Antwoord:

{
  "CurrentOrder": {               # Huidige orderstatus.
    "CoinCount": 9.00000000,
    "CoinPrice": 0.01194538,
    "Id": 51893314,
    "IsCloseRequired": false,
    "IsSell": false,
    "PairName": "BTC_LTC"
  },
  "SourceOrder": {                # Initiële orderstatus.
    "CoinCount": 10.00000000,
    "CoinPrice": 0.01194538,
    "Id": 51893314,
    "IsCloseRequired": false,
    "IsSell": false,
    "PairName": "BTC_LTC"
  },
  "Trades": [                     # Lijst van handelsactiviteiten per order.
    {
      "CoinCount": 1.00000000,
      "CoinPrice": 0.01194538,
      "Commission": 0.00000000,
      "DtCreateTS": 1507465556,
      "Id": 185250,
      "IsMaker": true,
      "IsSell": false,
      "PairName": "BTC_LTC"
    }
  ]
}

ReturnDepositsWithdrawals

Geschiedenis voor stortingen en opnamen tonen. Transacties zullen pagina per pagina worden weergegeven, te beginnen met de meest recente. Als je de volgende pagina wil bekijken, vul dan het FromId-veld in met het laagste ID van het record van het vorige antwoord.

Voorbeeld Toon de laatste 100 records:

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

Aanvraag instantie:

{
  "Names": ["BTC", "LTC"],       # Lijst met munteenheden. Als deze ontbreekt, dan ophalen voor alle munteenheden.
  "FromId": 0,                   # 0 of de laagste ID van het databasenummer (record) van het vorige antwoord.
  "Take": 100                    # Aantal records die terug moeten. Het maximum aantal records is 1000.
}

Antwoord:

{
  "CountRemain": 1000,                          # Aantal overgebleven records. Als dit 0 is, dan is het de laatste pagina.
  "Changes": [
    {
      "Address": "17XjwyX78jusTPXHxxF14ST9fWrCUcLT6L",   # Betalingsadres.
      "AgentName": null,                        # Betalingssysteem voor fiat-munteenheden.
      "CurrenceName": "BTC",
      "Id": 151,                                # Record ID.
      "NeedConfirm": 15,
      "NumConfirm": 17,
      "Status": 3,                              # Status betaling. Zie hieronder.
      "Sum": 0.20000000,
      "TimeTs": 1504100143,                     # Tijd creëren record in UTC-formaat.
      "TxId": "4f37855e4ecfc8f15b58f3397a6f339ca6f941d63d097c08004f7c9dfc4ec700",   # Transactie-ID
      "Type": 2                                 # Type record. Zie hieronder.
    },
    ...
  ],
}

Mogelijke waarden voor het veld "Status":
  1. - Bevestigd door gebruiker
  2. - Transactie gecreëerd
  3. - Eerste bevestiging
  4. - Succesvol verwerkt
  5. - Transactie geweigerd
  6. - Aan het verwerken
  7. - Geannuleerd door gebruiker
  8. - Aan het wachten om te verzenden
Mogelijke waarden voor het veld "Type":
  1. - Cryptocurrency-storting
  2. - Opvraging cryptocurrency
  3. - Storting van Fiat-munteenheid
  4. - Opvraging van Fiat-munteenheid

Withdraw

Creëer aanvraag voor opvraging.

Voorbeeld

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

Aanvraag instantie:

{
  "Currency": "BTC",
  "Sum": 1.0,
  "Address": "17XjwyX78jusTPXHxxF14ST9fWrCUcLT6L",
  "Message": "any_message"         # Bericht voor transacties (wordt verzonden als de munteenheid het ondersteunt).
}

Antwoord:

{
  "NewBalance": 9.00000000,                         # Nieuw saldo.
  "OutId": 613                                      # Id van aanvraag voor opvraging. Als deze niet 0 is, was de aanvraag succesvol. 
}

ReturnDepositAddress

Adres verkrijgen voor het storten van munteenheid. Als het nodig is om een bericht te vermelden bij de storting, zal dat in een antwoord staan.

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

Voorbeeld 1. Adres verkrijgen om BTC te storten:

Aanvraag instantie:

{
  "Currency": "BTC"
}

Antwoord:

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

Voorbeeld 2. Adres verkrijgen om XMR te storten:

Aanvraag instantie:

{
  "Currency": "XMR"
}

Antwoord:

{
  "Address": "NC6GOUR4ICVVPPK7N4UIYWDJM6LTUBJFR7OVXDS5",
  "Message": "950a239c0f98ca41"                             # Een bericht dat vermeld moet worden tijdens het storten.
}