This information is intended for third-party software developers integrating their systems with Independent Reserve.

Overview

Independent Reserve features a JSON based HTTP API that is comprised of Public and Private.

  • All HTTP API calls must be made over SSL to https://api.independentreserve.com
  • Public methods do not require an authentication token and should be accessed via HTTP GET.
  • Private methods require a valid authentication token and must be accessed via HTTP POST.
  • Errors are returned to the caller as a HTTP 400 return code and a descriptive error message.
  • Ensure that the contentType of the your JSON POST is set to application/json.
  • The API is rate limited to 1 call per second
  • The client can choose to receive a compressed response payload by specifying an Accept-Encoding request header with a supported content encoding: Accept-Encoding: gzip, deflate

We also have initial support for WebSockets which will be expanded upon in the future.

Refer to the table below for the the decimal places supported for each cryptocurrency.

Decimal places supported for each cryptocurrency
Currency Code Volume
Decimal Places
Fiat Offer/Bid
Decimal Places
Bitcoin Bitcoin
Xbt
8 2
Ethereum Ethereum
Eth
8 2
Ripple Ripple
Xrp
5 5
Chainlink Chainlink
Link
4 4
Tether USD Tether USD
Usdt
5 5
USD Coin USD Coin
Usdc
5 5
Bitcoin Cash Bitcoin Cash
Bch
8 2
Bitcoin SV Bitcoin SV
Bsv
8 2
Litecoin Litecoin
Ltc
8 2
Maker Maker
Mkr
8 2
Dai Dai
Dai
5 5
Compound Compound
Comp
8 2
Synthetix Network Token Synthetix Network Token
Snx
5 4
EOS EOS
Eos
4 4
Stellar Lumens Stellar Lumens
Xlm
5 5
Ethereum Classic Ethereum Classic
Etc
8 2
Basic Attention Token Basic Attention Token
Bat
5 5
Perth Mint Gold Token Perth Mint Gold Token
Pmgt
5 2
0x 0x
Zrx
5 5
OmiseGO OmiseGO
Omg
5 4
Golem Golem
Gnt
5 5

Public Methods

Public methods should be accessed via HTTP GET and do not require an authentication token to be passed.

The following public API methods are available:

GetValidPrimaryCurrencyCodes

Returns a list of valid primary currency codes. These are the cryptocurrencies which can be traded on Independent Reserve.

This method does not take any parameters.

GET
https://api.independentreserve.com/Public/GetValidPrimaryCurrencyCodes
Response

      [
  "Xbt",
  "Eth",
  "Xrp",
  "Link",
  "Usdt",
  "Usdc",
  "Bch",
  "Bsv",
  "Ltc",
  "Mkr",
  "Dai",
  "Comp",
  "Snx",
  "Eos",
  "Xlm",
  "Etc",
  "Bat",
  "Pmgt",
  "Zrx",
  "Omg",
  "Gnt"
]
    

GetValidSecondaryCurrencyCodes

Returns a list of valid secondary currency codes. These are the fiat currencies which are supported by Independent Reserve for trading purposes.

This method does not take any parameters.

GET
https://api.independentreserve.com/Public/GetValidSecondaryCurrencyCodes
Response

      [
  "Aud",
  "Usd",
  "Nzd"
]
    

GetValidLimitOrderTypes

Returns a list of valid limit order types which can be placed onto the Independent Reserve exchange platform.

This method does not take any parameters.

GET
https://api.independentreserve.com/Public/GetValidLimitOrderTypes
Response

      [
  "LimitBid",
  "LimitOffer"
]
    

GetValidMarketOrderTypes

Returns a list of valid market order types which can be placed onto the Independent Reserve exchange platform.

This method does not take any parameters.

GET
https://api.independentreserve.com/Public/GetValidMarketOrderTypes
Response

      [
  "MarketBid",
  "MarketOffer"
]
    

GetValidOrderTypes

Returns a list of all valid order types which can be placed onto the Independent Reserve exchange platform.

This method does not take any parameters.

GET
https://api.independentreserve.com/Public/GetValidOrderTypes
Response

      [
  "LimitBid",
  "LimitOffer",
  "MarketBid",
  "MarketOffer"
]
    

GetValidTransactionTypes

Returns a list of valid transaction types.

This method does not take any parameters.

GET
https://api.independentreserve.com/Public/GetValidTransactionTypes
Response

      [
  "AccountFee",
  "Brokerage",
  "Deposit",
  "DepositFee",
  "GST",
  "ReferralCommission",
  "StatementFee",
  "Trade",
  "Withdrawal",
  "WithdrawalFee"
]
    

GetMarketSummary

Returns a current snapshot of the Independent Reserve market for a given currency pair.

Parameters

  • primaryCurrencyCode - The cryptocurrency for which to retrieve market summary. Must be a valid primary currency, which can be checked via the GetValidPrimaryCurrencyCodes method.
  • secondaryCurrencyCode - The fiat currency in which to retrieve market summary. Must be a valid secondary currency, which can be checked via the GetValidSecondaryCurrencyCodes method.

Notes

  • This method caches return values for 1 second. Calling it more than once per second will result in cached data being returned.
GET
https://api.independentreserve.com/Public/GetMarketSummary?primaryCurrencyCode=xbt&secondaryCurrencyCode=usd
Response

      {
  "CreatedTimestampUtc": "2014-08-05T06:42:11.3032208Z",
  "CurrentHighestBidPrice": 500,
  "CurrentLowestOfferPrice": 1001,
  "DayAvgPrice": 510,
  "DayHighestPrice": 510,
  "DayLowestPrice": 510,
  "DayVolumeXbt": 1,
  "DayVolumeXbtInSecondaryCurrrency": 0.75,
  "LastPrice": 510,
  "PrimaryCurrencyCode": "Xbt",
  "SecondaryCurrencyCode": "Usd"
}
    

Return value descriptions

  • CreatedTimestampUtc - UTC timestamp of when the market summary was generated
  • CurrentHighestBidPrice - Current highest bid on order book
  • CurrentLowestOfferPrice - Current lowest offer on order book
  • DayAvgPrice - Weighted average traded price over last 24 hours
  • DayHighestPrice - Highest traded price over last 24 hours
  • DayLowestPrice - Lowest traded price over last 24 hours
  • DayVolumeXbt - Volume of primary currency traded in last 24 hours
  • DayVolumeXbtInSecondaryCurrrency - Volume of primary currency traded in last 24 hours for chosen secondary currency
  • LastPrice - Last traded price
  • PrimaryCurrencyCode - The primary currency being summarised
  • SecondaryCurrencyCode - The secondary currency being used for pricing

GetOrderBook

Returns the Order Book for a given currency pair.

Parameters

  • primaryCurrencyCode - The cryptocurrency for which to retrieve order book. Must be a valid primary currency, which can be checked via the GetValidPrimaryCurrencyCodes method.
  • secondaryCurrencyCode - The fiat currency in which to retrieve order book. Must be a valid secondary currency, which can be checked via the GetValidSecondaryCurrencyCodes method.

Notes

  • This method caches return values for 1 second. Calling it more than once per second will result in cached data being returned.
  • If you wish to retrieve order guids for each order, please use the GetAllOrders method.
GET
https://api.independentreserve.com/Public/GetOrderBook?primaryCurrencyCode=xbt&secondaryCurrencyCode=usd
Response

      {
  "BuyOrders": [
    {
      "OrderType": "LimitBid",
      "Price": 497.02,
      "Volume": 0.01
    },
    {
      "OrderType": "LimitBid",
      "Price": 490,
      "Volume": 1
    }
  ],
  "SellOrders": [
    {
      "OrderType": "LimitOffer",
      "Price": 500,
      "Volume": 1
    },
    {
      "OrderType": "LimitOffer",
      "Price": 505,
      "Volume": 1
    }
  ],
  "CreatedTimestampUtc": "2014-08-05T06:42:11.3032208Z",
  "PrimaryCurrencyCode": "Xbt",
  "SecondaryCurrencyCode": "Usd"
}
    

Return value descriptions

  • BuyOrders - List of all Buy Orders on order book
    • OrderType - Type of order
    • Price - Order price in secondary currency
    • Volume - Order volume in primary currency
  • SellOrders - List of all Sell Orders on order book
  • CreatedTimestampUtc - UTC timestamp of when the order book was generated
  • PrimaryCurrencyCode - The primary currency being shown
  • SecondaryCurrencyCode - The secondary currency being used for pricing

GetAllOrders

Returns the Order Book for a given currency pair including order identifiers.

Parameters

  • primaryCurrencyCode - The cryptocurrency for which to retrieve order book. Must be a valid primary currency, which can be checked via the GetValidPrimaryCurrencyCodes method.
  • secondaryCurrencyCode - The fiat currency in which to retrieve order book. Must be a valid secondary currency, which can be checked via the GetValidSecondaryCurrencyCodes method.

Notes

  • This method caches return values for 1 second. Calling it more than once per second will result in cached data being returned.
GET
https://api.independentreserve.com/Public/GetAllOrders?primaryCurrencyCode=xbt&secondaryCurrencyCode=usd
Response

      {
  "BuyOrders": [
    {
      "Guid": "78c52285-61de-4ccb-914e-d86db9fb498d",
      "Price": 497.02,
      "Volume": 0.01
    },
    {
      "Guid": "b0ae2cde-cefb-451d-8c65-92082e062856",
      "Price": 490,
      "Volume": 1
    }
  ],
  "SellOrders": [
    {
      "Guid": "9a32ae71-391e-4a21-8817-603472d75342",
      "Price": 500,
      "Volume": 1
    },
    {
      "Guid": "8ee0209f-fd46-4d90-9eed-ab475485e157",
      "Price": 505,
      "Volume": 1
    }
  ],
  "CreatedTimestampUtc": "2014-08-05T06:42:11.3032208Z",
  "PrimaryCurrencyCode": "Xbt",
  "SecondaryCurrencyCode": "Usd"
}
    

Return value descriptions

  • BuyOrders - List of all Buy Orders on order book
    • Guid - Unique order identifier
    • Price - Order price in secondary currency
    • Volume - Order volume in primary currency
  • SellOrders - List of all Sell Orders on order book
  • CreatedTimestampUtc - UTC timestamp of when the order book was generated
  • PrimaryCurrencyCode - The primary currency being shown
  • SecondaryCurrencyCode - The secondary currency being used for pricing

GetTradeHistorySummary

Returns summarised historical trading data for a given currency pair. Data is summarised into 1 hour intervals.

Parameters

  • primaryCurrencyCode - The cryptocurrency for which to retrieve trade history. Must be a valid primary currency, which can be checked via the GetValidPrimaryCurrencyCodes method.
  • secondaryCurrencyCode - The fiat currency in which to retrieve trade history. Must be a valid secondary currency, which can be checked via the GetValidSecondaryCurrencyCodes method.
  • numberOfHoursInThePastToRetrieve - How many past hours of historical summary data to retrieve (maximum is 240)

Notes

  • This method caches return values for 30 minutes. Calling it more than once per 30 minutes will result in cached data being returned.
GET
https://api.independentreserve.com/Public/GetTradeHistorySummary?primaryCurrencyCode=xbt&secondaryCurrencyCode=usd&numberOfHoursInThePastToRetrieve=24
Response

      {
  "CreatedTimestampUtc ": "2014-08-05T09:02:57.5440691Z",
  "HistorySummaryItems": [
    {
      "AverageSecondaryCurrencyPrice": 510,
      "ClosingSecondaryCurrencyPrice": 510,
      "StartTimestampUtc": "2014-08-04T09:00:00Z",
      "EndTimestampUtc": "2014-08-04T10:00:00Z",
      "HighestSecondaryCurrencyPrice": 510,
      "LowestSecondaryCurrencyPrice": 510,
      "NumberOfTrades": 0,
      "OpeningSecondaryCurrencyPrice": 510,
      "PrimaryCurrencyVolume": 0,
      "SecondaryCurrencyVolume": 0
    }
  ],
  "NumberOfHoursInThePastToRetrieve": 1,
  "PrimaryCurrencyCode": "Xbt",
  "SecondaryCurrencyCode": "Usd"
}
    

Return value descriptions

  • CreatedTimestampUtc - TC timestamp of when the data was generated
  • HistorySummaryItems - List of hourly summary blocks
    • AverageSecondaryCurrencyPrice - Average traded price during hour
    • ClosingSecondaryCurrencyPrice - Last traded price in hour
    • StartTimestampUtc - UTC Start time of hour
    • EndTimestampUtc - UTC End time of hour
    • HighestSecondaryCurrencyPrice - Highest traded price during hour
    • LowestSecondaryCurrencyPrice - Lowest traded price during hour
    • NumberOfTrades - umber of trades executed during hour
    • OpeningSecondaryCurrencyPrice - Opening traded price at start of hour
    • PrimaryCurrencyVolume - Volume of primary currency trade during hour
    • SecondaryCurrencyVolume - Volume of secondary currency traded during hour
  • NumberOfHoursInThePastToRetrieve - Number of past hours being returned
  • PrimaryCurrencyCode - The primary currency being shown
  • SecondaryCurrencyCode - The secondary currency being used for pricing

GetRecentTrades

Returns a list of most recently executed trades for a given currency pair.

Parameters

  • primaryCurrencyCode - The cryptocurrency for which to retrieve recent trades. Must be a valid primary currency, which can be checked via the GetValidPrimaryCurrencyCodes method.
  • secondaryCurrencyCode - The fiat currency in which to retrieve recent trades. Must be a valid secondary currency, which can be checked via the GetValidSecondaryCurrencyCodes method.
  • numberOfRecentTradesToRetrieve - How many recent trades to retrieve (maximum is 50)

Notes

  • This method caches return values for 1 second. Calling it more than once per second will result in cached data being returned.
GET
https://api.independentreserve.com/Public/GetRecentTrades?primaryCurrencyCode=xbt&secondaryCurrencyCode=usd&numberOfRecentTradesToRetrieve=10
Response

      {
  "CreatedTimestampUtc": "2014-08-05T09:14:39.4830696Z",
  "PrimaryCurrencyCode": "Xbt",
  "SecondaryCurrencyCode": "Usd",
  "Trades": [
    {
      "PrimaryCurrencyAmount": 1,
      "SecondaryCurrencyTradePrice": 510,
      "TradeTimestampUtc": "2014-07-31T10:34:05.935412Z"
    },
    {
      "PrimaryCurrencyAmount": 0.01,
      "SecondaryCurrencyTradePrice": 501,
      "TradeTimestampUtc": "2014-07-31T10:33:24.8458426Z"
    }
  ]
}
    

Return value descriptions

  • CreatedTimestampUtc - TC timestamp of when the data was generated
  • PrimaryCurrencyCode - The primary currency being shown
  • SecondaryCurrencyCode - The secondary currency being used for pricing
  • Trades - List of individual trades
    • PrimaryCurrencyAmount - Amount traded in primary currency
    • SecondaryCurrencyTradePrice - Price of trade in secondary currency
    • TradeTimestampUtc - UTC timestamp of trade

GetFxRates

Returns a list of exchange rates used by Independing Reserve when depositing funds or withdrawing funds from accounts.

This method does not take any parameters.

Notes

  • The rates represent the amount of Currency Code B that can be bought with 1 unit of Currency Code A.
  • This method caches return values for 1 minute. Calling it more than once per minute will result in cached data being returned.
GET
https://api.independentreserve.com/Public/GetFxRates
Response

      [
  {
    "CurrencyCodeA": "Aud",
    "CurrencyCodeB": "Usd",
    "Rate": 0.8683
  },
  {
    "CurrencyCodeA": "Usd",
    "CurrencyCodeB": "Aud",
    "Rate": 1.1517
  }
]
    

Authentication

All private API methods require authentication. All method parameters (except signature) are required to authenticate a request. There are three additional parameters which should be passed to private API methods:

  • API Key
  • Nonce
  • Signature

API key

To generate an API Key, go to the Settings page, click "API Keys" and then click "generate". Select the level of access to grant the key and reenter your password to confirm the creation of the key. Ensure that you select the lowest level of access required for your usage, the recommended level being Read-only.

Nonce

The nonce is a 64 bit unsigned integer. The nonce must increase with each request made to the API.

Example: If the nonce is set to 1 in the first request, it must be set to at least 2 in the subsequent request. It is not neccessary to start with 1. A common practice is to use unix time for this parameter.

Signature

Signature is a HMAC-SHA256 encoded message. The message is comma-separated string containing the API method URL, and a comma separated list of all method parameters (except signature) in the form: "parameterName=parameterValue". The HMAC-SHA256 code must be generated using the API Secret that was generated with your API key. This code must be converted to it's hexadecimal representation.

Notes

To avoid typical errors please ensure that in your code

  • the parameter names are spelled correctly;
  • the parameter values are same in signature input string and message body;
  • the parameter sequence used to create the signature must match the method documentation.

Example (Python)

import time
import requests
import hmac
import hashlib
import json
from collections import OrderedDict

url = 'https://api.independentreserve.com/Private/GetOpenOrders'

key = 'api_key'

secret = 'api_secret'

nonce = int(time.time())

# make sure that parameter order is correct as specified in method documentation
parameters = [
    url,
    'apiKey=' + key,
    'nonce=' + str(nonce),
    'primaryCurrencyCode=Xbt',
    'secondaryCurrencyCode=Usd',
    'pageIndex=1',
    'pageSize=10'
]

message = ','.join(parameters)

signature = hmac.new(
    secret.encode('utf-8'),
    msg=message.encode('utf-8'),
    digestmod=hashlib.sha256).hexdigest().upper()

# make sure this collection ordered in the same way as parameters
data = OrderedDict([
    ('apiKey', key),
    ('nonce', nonce),
    ('signature', str(signature)),
    ('primaryCurrencyCode', 'Xbt'),
    ('secondaryCurrencyCode', 'Usd'),
    ('pageIndex', 1),
    ('pageSize', 10)])

headers = {'Content-Type': 'application/json'}

r = requests.post(url, data=json.dumps(data, sort_keys=False), headers=headers)

print(r.content)

Private Methods

Private methods should be accessed via HTTP POST and require a valid authentication token to be passed. Parameters for all private methods, including the three parameters to authenticate the call, must be posted as a JSON object.

The following table shows the private API methods that are available along with the roles that grant access to the method:

Method API Roles
GetOpenOrders
Full Access
Admin
Read Only
GetClosedOrders
Full Access
Admin
Read Only
GetClosedFilledOrders
Full Access
Admin
Read Only
GetOrderDetails
Full Access
Admin
Read Only
GetAccounts
Full Access
Admin
Read Only
GetTransactions
Full Access
Admin
Read Only
GetFiatBankAccounts
Full Access
Admin
Read Only
GetDigitalCurrencyDepositAddress
Full Access
Admin
Read Only
GetDigitalCurrencyDepositAddresses
Full Access
Admin
Read Only
GetTrades
Full Access
Admin
Read Only
GetBrokerageFees
Full Access
Admin
Read Only
GetDigitalCurrencyWithdrawal
Full Access
Admin
Read Only
PlaceLimitOrder
Full Access
Admin
PlaceMarketOrder
Full Access
Admin
CancelOrder
Full Access
Admin
SynchDigitalCurrencyDepositAddressWithBlockchain
Full Access
Admin
RequestFiatWithdrawal
Full Access
Admin
WithdrawFiatCurrency
Full Access
Admin
WithdrawDigitalCurrency
Full Access

GetOpenOrders

Retrieves a page of a specified size with your currently Open and Partially Filled orders.

Parameters

  • apiKey - Your API Key.
  • nonce - Nonce value.
  • signature - HMAC-SHA256 encoded message to authenticate API call.
  • primaryCurrencyCode - The primary currency of orders. This is an optional parameter.
  • secondaryCurrencyCode - The secondary currency of orders. This is an optional parameter.
  • pageIndex - The page index. Must be greater or equal to 1
  • pageSize - Must be greater or equal to 1 and less than or equal to 50. If a number greater than 50 is specified, then 50 will be used.
POST
https://api.independentreserve.com/Private/GetOpenOrders
Request

      {
  "apiKey": "{api-key}",
  "nonce": "{nonce}",
  "signature": "{signature}",
  "primaryCurrencyCode": "Xbt",
  "secondaryCurrencyCode": "Usd",
  "pageIndex": 1,
  "pageSize": 25
}
    
Response

      {
  "PageSize": 25,
  "TotalItems": 2,
  "TotalPages": 1,
  "Data": [
    {
      "AvgPrice": 466.36,
      "CreatedTimestampUtc": "2014-05-05T09:35:22.4032405Z",
      "FeePercent": 0.005,
      "OrderGuid": "dd015a29-8f73-4469-a5fa-ea91544dfcda",
      "OrderType": "LimitOffer",
      "Outstanding": 21.45621,
      "Price": 466.36,
      "PrimaryCurrencyCode": "Xbt",
      "SecondaryCurrencyCode": "Usd",
      "Status": "Open",
      "Value": 10006.3180956,
      "Volume": 21.45621
    },
    {
      "AvgPrice": 455.48,
      "CreatedTimestampUtc": "2014-05-05T09:35:22.4032405Z",
      "FeePercent": 0.005,
      "OrderGuid": "58f9da9d-a12e-4362-afa8-f5c252ba1725",
      "OrderType": "LimitBid",
      "Outstanding": 1.345,
      "Price": 455.48,
      "PrimaryCurrencyCode": "Xbt",
      "SecondaryCurrencyCode": "Usd",
      "Status": "Open",
      "Value": 612.6206,
      "Volume": 1.345
    }
  ]
}
    

Return value descriptions

  • PageSize - Number of orders shown per page
  • TotalItems - Total number of open orders
  • TotalPages - Total number of pages
  • Data - List of all open orders
    • AvgPrice - Average price for all trades executed for the order
    • CreatedTimestampUtc - UTC timestamp of when order was created
    • FeePercent - Brokerage fee
    • OrderGuid - Unique identifier of the order
    • OrderType - Type of order,
    • Outstanding - Unfilled volume still outstanding on this order
    • Price - Order limit price in secondary currency
    • PrimaryCurrencyCode - Primary currency of order
    • SecondaryCurrencyCode - Secondary currency of order
    • Status - Order status (Open, PartiallyFilled)
    • Value - The value of the order, denominated in secondary currency
    • Volume - The original volume ordered
  • AvgPrice - Average price for all trades executed for the order
  • CreatedTimestampUtc - UTC timestamp of when order was created
  • FeePercent - Brokerage fee
  • OrderGuid - Unique identifier of the order
  • OrderType - Type of order
  • Outstanding - Unfilled volume still outstanding on this order
  • Price - Order limit price in secondary currency
  • PrimaryCurrencyCode - Primary currency of order
  • SecondaryCurrencyCode - Secondary currency of order
  • Status - Order status (Open, PartiallyFilled)
  • Value - The value of the order, denominated in secondary currency
  • Volume - The original volume ordered

GetClosedOrders

Retrieves a page of a specified size with your Closed and Cancelled orders.

Parameters

  • apiKey - Your API Key.
  • nonce - Nonce value.
  • signature - HMAC-SHA256 encoded message to authenticate API call.
  • primaryCurrencyCode - The primary currency of orders. This is an optional parameter.
  • secondaryCurrencyCode - The secondary currency of orders. This is an optional parameter.
  • pageIndex - The page index. Must be greater or equal to 1
  • pageSize - Must be greater or equal to 1 and less than or equal to 50. If a number greater than 50 is specified, then 50 will be used.

Notes

  • Only recently cancelled orders will be returned; cancelled orders are regularly purged from history.
POST
https://api.independentreserve.com/Private/GetClosedOrders
Request

      {
  "apiKey": "{api-key}",
  "nonce": "{nonce}",
  "signature": "{signature}",
  "primaryCurrencyCode": "Xbt",
  "secondaryCurrencyCode": "Usd",
  "pageIndex": 1,
  "pageSize": 25
}
    
Response

      {
  "PageSize": 25,
  "TotalItems": 50,
  "TotalPages": 2,
  "Data": [
    {
      "AvgPrice": 698.8,
      "CreatedTimestampUtc": "2014-08-05T06:42:11.3032208Z",
      "FeePercent": 0.005,
      "OrderGuid": "5c8885cd-5384-4e05-b397-9f5119353e10",
      "OrderType": "MarketOffer",
      "Outstanding": 0,
      "Price": null,
      "PrimaryCurrencyCode": "Xbt",
      "SecondaryCurrencyCode": "Usd",
      "Status": "Filled",
      "Value": 17.47,
      "Volume": 0.025
    },
    {
      "AvgPrice": 700,
      "CreatedTimestampUtc": "2014-08-03T18:33:55.4327861Z",
      "FeePercent": 0.005,
      "OrderGuid": "719c495c-a39e-4884-93ac-280b37245037",
      "OrderType": "LimitOffer",
      "Outstanding": 0.5,
      "Price": 700,
      "PrimaryCurrencyCode": "Xbt",
      "SecondaryCurrencyCode": "Usd",
      "Status": "PartiallyFilledAndCancelled",
      "Value": 1050,
      "Volume": 1.5
    },
    {
      "AvgPrice": 650,
      "CreatedTimestampUtc": "2014-08-02T05:33:48.2354125Z",
      "FeePercent": 0.005,
      "OrderGuid": "33ea8ee7-5b7b-4745-b604-1a3ce955ca1b",
      "OrderType": "MarketOffer",
      "Outstanding": 0,
      "Price": null,
      "PrimaryCurrencyCode": "Xbt",
      "SecondaryCurrencyCode": "Usd",
      "Status": "Filled",
      "Value": 975,
      "Volume": 1.5
    }
  ]
}
    

Return value descriptions

  • PageSize - Number of orders shown per page
  • TotalItems - Total number of closed orders
  • TotalPages - Total number of pages
  • Data - List of closed and recently cancelled orders
    • AvgPrice - Average price for all trades executed for the order
    • CreatedTimestampUtc - UTC timestamp of when order was created
    • FeePercent - Brokerage fee
    • OrderGuid - Unique identifier of the order
    • OrderType - Type of order,
    • Outstanding - Unfilled volume still outstanding on this order
    • Price - Order limit price in secondary currency
    • PrimaryCurrencyCode - Primary currency of order
    • SecondaryCurrencyCode - Secondary currency of order
    • Status - Order status (Filled, PartiallyFilledAndCancelled, Cancelled, PartiallyFilledAndExpired, Expired)
    • Value - The value of the order, denominated in secondary currency
    • Volume - The original volume ordered
    • Original
      • Volume - The original volume ordered
      • Outstanding - Unfilled volume outstanding on this order in original currency
      • VolumeCurrencyType - Whether volume is denominated in Primary or Secondary currency

GetClosedFilledOrders

Retrieves a page of a specified size with your Closed orders which have had some or all of their outstanding volume filled.

Parameters

  • apiKey - Your API Key.
  • nonce - Nonce value.
  • signature - HMAC-SHA256 encoded message to authenticate API call.
  • primaryCurrencyCode - The primary currency of orders. This is an optional parameter.
  • secondaryCurrencyCode - The secondary currency of orders. This is an optional parameter.
  • pageIndex - The page index. Must be greater or equal to 1
  • pageSize - Must be greater or equal to 1 and less than or equal to 50. If a number greater than 50 is specified, then 50 will be used.
POST
https://api.independentreserve.com/Private/GetClosedFilledOrders
Request

      {
  "apiKey": "{api-key}",
  "nonce": "{nonce}",
  "signature": "{signature}",
  "primaryCurrencyCode": "Xbt",
  "secondaryCurrencyCode": "Usd",
  "pageIndex": 1,
  "pageSize": 25
}
    
Response

      {
  "PageSize": 25,
  "TotalItems": 50,
  "TotalPages": 2,
  "Data": [
    {
      "AvgPrice": 698.8,
      "CreatedTimestampUtc": "2014-08-05T06:42:11.3032208Z",
      "FeePercent": 0.005,
      "OrderGuid": "5c8885cd-5384-4e05-b397-9f5119353e10",
      "OrderType": "MarketOffer",
      "Outstanding": 0,
      "Price": null,
      "PrimaryCurrencyCode": "Xbt",
      "SecondaryCurrencyCode": "Usd",
      "Status": "Filled",
      "Value": 17.47,
      "Volume": 0.025
    },
    {
      "AvgPrice": 700,
      "CreatedTimestampUtc": "2014-08-03T18:33:55.4327861Z",
      "FeePercent": 0.005,
      "OrderGuid": "719c495c-a39e-4884-93ac-280b37245037",
      "OrderType": "LimitOffer",
      "Outstanding": 0.5,
      "Price": 700,
      "PrimaryCurrencyCode": "Xbt",
      "SecondaryCurrencyCode": "Usd",
      "Status": "PartiallyFilledAndCancelled",
      "Value": 1050,
      "Volume": 1.5
    },
    {
      "AvgPrice": 650,
      "CreatedTimestampUtc": "2014-08-02T05:33:48.2354125Z",
      "FeePercent": 0.005,
      "OrderGuid": "33ea8ee7-5b7b-4745-b604-1a3ce955ca1b",
      "OrderType": "MarketOffer",
      "Outstanding": 0,
      "Price": null,
      "PrimaryCurrencyCode": "Xbt",
      "SecondaryCurrencyCode": "Usd",
      "Status": "Filled",
      "Value": 975,
      "Volume": 1.5
    }
  ]
}
    

Return value descriptions

  • PageSize - Number of orders shown per page
  • TotalItems - Total number of closed orders
  • TotalPages - Total number of pages
  • Data - List of closed and partially filled orders
    • AvgPrice - Average price for all trades executed for the order
    • CreatedTimestampUtc - UTC timestamp of when order was created
    • FeePercent - Brokerage fee
    • OrderGuid - Unique identifier of the order
    • OrderType - Type of order
    • Outstanding - Unfilled volume still outstanding on this order
    • Price - Order limit price in secondary currency
    • PrimaryCurrencyCode - Primary currency of order
    • SecondaryCurrencyCode - Secondary currency of order
    • Status - Order status (Filled, PartiallyFilledAndCancelled, PartiallyFilledAndExpired)
    • Value - The value of the order, denominated in secondary currency
    • Volume - The original volume ordered
    • Original
      • Volume - The original volume ordered
      • Outstanding - Unfilled volume outstanding on this order in original currency
      • VolumeCurrencyType - Whether volume is denominated in Primary or Secondary currency

GetOrderDetails

Retrieves details about a single order.

Parameters

  • apiKey - Your API Key.
  • nonce - Nonce value.
  • signature - HMAC-SHA256 encoded message to authenticate API call.
  • orderGuid - The guid of the order.
POST
https://api.independentreserve.com/Private/GetOrderDetails
Request

      {
  "apiKey": "{api-key}",
  "nonce": "{nonce}",
  "signature": "{signature}",
  "orderGuid": "c7347e4c-b865-4c94-8f74-d934d4b0b177"
}
    
Response

      {
  "OrderGuid": "c7347e4c-b865-4c94-8f74-d934d4b0b177",
  "CreatedTimestampUtc": "2014-09-23T12:39:34.3817763Z",
  "Type": "MarketBid",
  "VolumeOrdered": 5,
  "VolumeFilled": 5,
  "Price": null,
  "AvgPrice": 100,
  "ReservedAmount": 0,
  "Status": "Filled",
  "PrimaryCurrencyCode": "Xbt",
  "SecondaryCurrencyCode": "Usd"
}
    

Return value descriptions

  • CreatedTimestampUtc - UTC timestamp of when order was created
  • OrderGuid - Unique identifier of the order
  • Type - Type of order
  • VolumeOrdered - The original volume ordered
  • VolumeFilled - Volume already filled on this order
  • Price - Order limit price in secondary currency
  • AvgPrice - Average price for all trades executed for the order
  • ReservedAmount - The amount of funds reserved in your account by this order
  • Status - Order status (Open, PartiallyFilled, Filled, PartiallyFilledAndCancelled, Cancelled, PartiallyFilledAndExpired, Expired)
  • PrimaryCurrencyCode - Primary currency of order
  • SecondaryCurrencyCode - Secondary currency of order

GetAccounts

Retrieves information about your Independent Reserve accounts in crypto and fiat currencies.

Parameters

  • apiKey - Your API Key.
  • nonce - Nonce value.
  • signature - HMAC-SHA256 encoded message to authenticate API call.
POST
https://api.independentreserve.com/Private/GetAccounts
Request

      {
  "apiKey": "{api-key}",
  "nonce": "{nonce}",
  "signature": "{signature}"
}
    
Response

      [
  {
    "AccountGuid": "66dcac65-bf07-4e68-ad46-838f51100424",
    "AccountStatus": "Active",
    "AvailableBalance": 45.334,
    "CurrencyCode": "Xbt",
    "TotalBalance": 46.81
  },
  {
    "AccountGuid": "49994921-60ec-411e-8a78-d0eba078d5e9",
    "AccountStatus": "Active",
    "AvailableBalance": 14345.53,
    "CurrencyCode": "Usd",
    "TotalBalance": 15784.07
  }
]
    

Return value descriptions

  • AccountGuid - Unique identifier of account
  • AccountStatus - Status of account
  • AvailableBalance - Available balance in account to trade or withdraw
  • CurrencyCode - Currency of account
  • TotalBalance - Total balance in account

GetTransactions

Retrieves a page of a specified size containing all trnasactions made on an account.

Parameters

  • apiKey - Your API Key.
  • nonce - Nonce value.
  • signature - HMAC-SHA256 encoded message to authenticate API call.
  • accountGuid - The Guid of your Independent Reseve account. You can retrieve information about your accounts via the GetAccounts method.
  • fromTimestampUtc - The timestamp in UTC, specified according to ISO 8601 standard, e.g. 2014-08-01T08:00:00Z, from which you want to retrieve transactions. This is an optional parameter.
  • toTimestampUtc - The timestamp in UTC, specified according to ISO 8601 standard, e.g. 2014-08-07T08:00:00Z, until which you want to retrieve transactions. This is an optional parameter.
  • txTypes - Array of transaction types for filtering. This is an optional parameter.
  • pageIndex - The page index. Must be greater or equal to 1
  • pageSize - Must be greater or equal to 1 and less than or equal to 50. If a number greater than 50 is specified, then 50 will be used.

Notes

Array parameters should be serialized for signature input as comma-separated value list.
Example: txTypes=Brokerage,Trade

POST
https://api.independentreserve.com/Private/GetTransactions
Request

      {
  "apiKey": "{api-key}",
  "nonce": "{nonce}",
  "signature": "{signature}",
  "accountGuid": "49994921-60ec-411e-8a78-d0eba078d5e9",
  "fromTimestampUtc": "2014-08-01T09:00:00Z",
  "toTimestampUtc": null,
  "txTypes": [
    "Brokerage",
    "Trade"
  ],
  "pageIndex": 1,
  "pageSize": 25
}
    
Response

      {
  "PageSize": 25,
  "TotalItems": 6,
  "TotalPages": 1,
  "Data": [
    {
      "Balance": 199954.27,
      "BitcoinTransactionId": null,
      "BitcoinTransactionOutputIndex": null,
      "EthereumTransactionId": null,
      "Comment": null,
      "CreatedTimestampUtc": "2014-08-03T05:33:48.2354125Z",
      "Credit": null,
      "CurrencyCode": "Usd",
      "Debit": 6.98,
      "SettleTimestampUtc": "2014-08-03T05:36:24.5532653Z",
      "Status": "Confirmed",
      "Type": "Brokerage"
    },
    {
      "Balance": 199961.25,
      "BitcoinTransactionId": null,
      "BitcoinTransactionOutputIndex": null,
      "EthereumTransactionId": null,
      "Comment": null,
      "CreatedTimestampUtc": "2014-08-02T15:44:05.4323116Z",
      "Credit": 1396,
      "CurrencyCode": "Usd",
      "Debit": null,
      "SettleTimestampUtc": "2014-08-02T15:48:04.2312658Z",
      "Status": "Confirmed",
      "Type": "Trade"
    }
  ]
}
    

Return value descriptions

  • Balance - Running balance in account
  • BitcoinTransactionId - Related Bitcoin network transaction
  • BitcoinTransactionOutputIndex - Related Bitcoin network transaction output index
  • EthereumTransactionId - Related Ethereum network transaction
  • Comment - Comments related to transaction
  • CreatedTimestampUtc - UTC created timestamp of transaction
  • Credit - Credit amount
  • CurrencyCode - Currency of account this transaction relates to
  • Debit - Debit amount
  • SettleTimestampUtc - UTC settlement timestamp
  • Status - Transaction status
  • Type - Transaction type

GetFiatBankAccounts

Retrieves the list of pre-configured external bank accounts.

Parameters

  • apiKey - Your API Key.
  • nonce - Nonce value.
  • signature - HMAC-SHA256 encoded message to authenticate API call.
POST
https://api.independentreserve.com/Private/GetFiatBankAccounts
Request

      {
  "apiKey": "{api-key}",
  "nonce": "{nonce}",
  "signature": "{signature}"
}
    
Response

      [
  {
    "PayId": {
      "Id": "user@example.com",
      "Type": "Email"
    },
    "Guid": "51f59e78-9c6b-4f7d-9c1b-171695f6292f",
    "Name": "PayID: user@example.com"
  },
  {
    "Bsb": "062623",
    "Country": "Australia",
    "Currency": "AUD",
    "AccountNumber": "123456789",
    "AccountHolderName": "Lastname Firstname",
    "Guid": "df0a8341-f3b7-43b4-a64e-7e951753bef8",
    "Name": "Extenal Bank"
  }
]
    

GetDigitalCurrencyDepositAddress

Retrieves the deposit address which should be used for cryptocurrency deposits.

Parameters

  • apiKey - Your API Key.
  • nonce - Nonce value.
  • signature - HMAC-SHA256 encoded message to authenticate API call.
  • primaryCurrencyCode - The cryptocurrency to generate deposit address for.
POST
https://api.independentreserve.com/Private/GetDigitalCurrencyDepositAddress
Request

      {
  "apiKey": "{api-key}",
  "nonce": "{nonce}",
  "signature": "{signature}",
  "primaryCurrencyCode": "Xbt"
}
    
Response

      {
  "DepositAddress": "12a7FbBzSGvJd36wNesAxAksLXMWm4oLUJ",
  "LastCheckedTimestampUtc": "2014-05-05T09:35:22.4032405Z",
  "NextUpdateTimestampUtc": "2014-05-05T09:45:22.4032405Z"
}
    

Return value descriptions

  • DepositAddress - Digital address to use for deposits
  • LastCheckedTimestampUtc - UTC timestamp of when this address was last checked against the blockchain
  • NextUpdateTimestampUtc - UTC timestamp of when this address is scheduled to next be checked against the blockchain

GetDigitalCurrencyDepositAddresses

Retrieves a page of cryptocurrency deposit addresses which have been assigned to your account.

Parameters

  • apiKey - Your API Key.
  • nonce - Nonce value.
  • signature - HMAC-SHA256 encoded message to authenticate API call.
  • primaryCurrencyCode - The cryptocurrency to retrieve deposit addresses for.
  • pageIndex - The page index. Must be greater or equal to 1
  • pageSize - Must be greater or equal to 1 and less than or equal to 50. If a number greater than 50 is specified, then 50 will be used.
POST
https://api.independentreserve.com/Private/GetDigitalCurrencyDepositAddresses
Request

      {
  "apiKey": "{api-key}",
  "nonce": "{nonce}",
  "signature": "{signature}",
  "primaryCurrencyCode": "Xbt",
  "pageIndex": 1,
  "pageSize": 10
}
    
Response

      {
  "PageSize": 10,
  "TotalItems": 10,
  "TotalPages": 1,
  "Data": [
    {
      "DepositAddress": "1CxrjaGvVLgXwi1s1d9d62hrCVLU83nHpX",
      "LastCheckedTimestampUtc": "2014-07-24T11:23:48.8693053Z",
      "NextUpdateTimestampUtc": "2014-07-25T11:23:48.8693053Z"
    },
    {
      "DepositAddress": "12a7FbBzSGvJd36wNesAxAksLXMWm4oLUJ",
      "LastCheckedTimestampUtc": "2014-05-05T09:35:22.4032405Z",
      "NextUpdateTimestampUtc": "2014-05-05T09:45:22.4032405Z"
    }
  ]
}
    

Return value descriptions

  • DepositAddress - Deposit address to use for deposits
  • LastCheckedTimestampUtc - UTC timestamp of when this address was last checked against the blockchain
  • NextUpdateTimestampUtc - UTC timestamp of when this address is scheduled to next be checked against the blockchain

GetTrades

Retrieves a page of a specified size containing trades which were executed against your orders.

Parameters

  • apiKey - Your API Key.
  • nonce - Nonce value.
  • signature - HMAC-SHA256 encoded message to authenticate API call.
  • pageIndex - The page index. Must be greater or equal to 1
  • pageSize - Must be greater or equal to 1 and less than or equal to 50. If a number greater than 50 is specified, then 50 will be used.

Notes

  • This method caches return values for 1 second. Calling it more than once per second will result in cached data being returned.
POST
https://api.independentreserve.com/Private/GetTrades
Request

      {
  "apiKey": "{api-key}",
  "nonce": "{nonce}",
  "signature": "{signature}",
  "pageIndex": 1,
  "pageSize": 5
}
    
Response

      {
  "Data": [
    {
      "TradeGuid": "593e609d-041a-4f46-a41d-2cb8e908973f",
      "TradeTimestampUtc": "2014-12-16T03:44:19.2187707Z",
      "OrderGuid": "8bf851a3-76d2-439c-945a-93367541d467",
      "OrderType": "LimitBid",
      "OrderTimestampUtc": "2014-12-16T03:43:36.7423769Z",
      "VolumeTraded": 0.5,
      "Price": 410,
      "PrimaryCurrencyCode": "Xbt",
      "SecondaryCurrencyCode": "Usd"
    },
    {
      "TradeGuid": "13c1e71c-bfb4-452c-b13e-e03535f98b09",
      "TradeTimestampUtc": "2014-12-11T11:37:42.2089564Z",
      "OrderGuid": "1ce88acf-6013-4867-b58d-77f0e41ec475",
      "OrderType": "LimitBid",
      "OrderTimestampUtc": "2014-12-11T11:37:42.0724391Z",
      "VolumeTraded": 0.4,
      "Price": 399,
      "PrimaryCurrencyCode": "Xbt",
      "SecondaryCurrencyCode": "Usd"
    }
  ],
  "PageSize": 5,
  "TotalItems": 20,
  "TotalPages": 4
}
    

Return value descriptions

  • TradeGuid - Unique identifier of the trade
  • TradeTimestampUtc - UTC timestamp corresponding to trade execution
  • OrderGuid - Unique identifier of the order which was matched as part of the trade
  • OrderType - The type of order which was matched
  • OrderTimestampUtc - UTC timestamp when order was created
  • VolumeTraded - The volume of primary currency traded
  • Price - The price in secondary currency at which the trade was executed
  • PrimaryCurrencyCode - The primary currency which was traded
  • SecondaryCurrencyCode - The secondary currency in which the trade was denominated

GetBrokerageFees

Retrieves information about the trading fees for the cryptocurrencies in your Independent Reserve account.

Parameters

  • apiKey - Your API Key.
  • nonce - Nonce value.
  • signature - HMAC-SHA256 encoded message to authenticate API call.
POST
https://api.independentreserve.com/Private/GetBrokerageFees
Request

      {
  "apiKey": "{api-key}",
  "nonce": "{nonce}",
  "signature": "{signature}"
}
    
Response

      [
  {
    "CurrencyCode": "Xbt",
    "Fee": 0.005
  },
  {
    "CurrencyCode": "Xrp",
    "Fee": 0.005
  },
  {
    "CurrencyCode": "Eth",
    "Fee": 0.005
  },
  {
    "CurrencyCode": "Eos",
    "Fee": 0.005
  },
  {
    "CurrencyCode": "Bch",
    "Fee": 0.005
  },
  {
    "CurrencyCode": "Ltc",
    "Fee": 0.005
  },
  {
    "CurrencyCode": "Etc",
    "Fee": 0.005
  },
  {
    "CurrencyCode": "Xlm",
    "Fee": 0.005
  },
  {
    "CurrencyCode": "Bat",
    "Fee": 0.005
  },
  {
    "CurrencyCode": "Omg",
    "Fee": 0.005
  },
  {
    "CurrencyCode": "Rep",
    "Fee": 0.005
  },
  {
    "CurrencyCode": "Zrx",
    "Fee": 0.005
  },
  {
    "CurrencyCode": "Gnt",
    "Fee": 0.005
  },
  {
    "CurrencyCode": "Pla",
    "Fee": 0.005
  }
]
    

Return value descriptions

  • CurrencyCode - The currency the fee applies to
  • Fee - Fee value

GetDigitalCurrencyWithdrawal

Get digital currency withdrawal details.

Parameters

  • apiKey - Your API Key.
  • nonce - Nonce value.
  • signature - HMAC-SHA256 encoded message to authenticate API call.
  • transactionGuid - Withdrawal transaction guid.
POST
https://api.independentreserve.com/Private/GetDigitalCurrencyWithdrawal
Request

      {
  "apiKey": "{api-key}",
  "nonce": "{nonce}",
  "signature": "{signature}",
  "transactionGuid": "2a93732f-3f40-4685-b3bc-ff3ec326090d"
}
    
Response

      {
  "TransactionGuid": "dc932e19-562b-4c50-821e-a73fd048b93b",
  "PrimaryCurrencyCode": "Bch",
  "CreatedTimestampUtc": "2020-04-01T05:26:30.5093622+00:00",
  "Amount": {
    "Total": 0.1231,
    "Fee": 0.0001
  },
  "Destination": {
    "Address": "bc1qhpqxkjpvgkckw530yfmxyr53c94q8f4273a7ez",
    "Tag": null
  },
  "Status": "Pending",
  "Transaction": null
}
    

Return value descriptions

  • TransactionGuid - Unique identifier of the withdrawal
  • PrimaryCurrencyCode - Currency being withdrawn
  • CreatedTimestampUtc - Timestamp in UTC when fiat withdrawal request was created
  • Amount
    • Total - Total amount being withdrawn by the user (inclusive of any fees)
    • Fee - Fee amount which will be taken out of the withdrawal amount
  • Destination
    • Address - Target cryptocurrency address
    • Tag - Target cryptocurrency destination tag.
  • Status - Request status in the workflow (Pending, Held, Approved, Executing, Executed, Rejected, Cancelled)
  • Transaction - Value is null if transaction hasn't been broadcasted to the network
    • Hash - Related blockchain network transaction
    • OutputIndex - The index of the transaction output to the destination address. This value is specified only for Xbt, Bch, Bsv, Ltc.

PlaceLimitOrder

Places new limit bid / offer order. A Limit Bid is a buy order and a Limit Offer is a sell order.

Parameters

  • apiKey - Your API Key.
  • nonce - Nonce value.
  • signature - HMAC-SHA256 encoded message to authenticate API call.
  • primaryCurrencyCode - The cryptocurrency code of limit order. Must be a valid primary currency, which can be checked via the GetValidPrimaryCurrencyCodes method.
  • secondaryCurrencyCode - The fiat currency of limit order. Must be a valid secondary currency, which can be checked via the GetValidSecondaryCurrencyCodes method.
  • orderType - The type of limit order. Must be a valid limit order type, which can be checked via the GetValidLimitOrderTypes method.
  • price - The price in secondary currency to buy/sell.
  • volume - The volume to buy/sell in primary currency.
POST
https://api.independentreserve.com/Private/PlaceLimitOrder
Request

      {
  "apiKey": "{api-key}",
  "nonce": "{nonce}",
  "signature": "{signature}",
  "primaryCurrencyCode": "Xbt",
  "secondaryCurrencyCode": "Usd",
  "orderType": "LimitBid",
  "price": 485.76,
  "volume": 0.358
}
    
Response

      {
  "CreatedTimestampUtc": "2014-08-05T06:42:11.3032208Z",
  "OrderGuid": "719c495c-a39e-4884-93ac-280b37245037",
  "Price": 485.76,
  "PrimaryCurrencyCode": "Xbt",
  "ReservedAmount": 0.358,
  "SecondaryCurrencyCode": "Usd",
  "Status": "Open",
  "Type": "LimitOffer",
  "VolumeFilled": 0,
  "VolumeOrdered": 0.358
}
    

Return value descriptions

  • CreatedTimestampUtc - TC timestamp of when order was created
  • OrderGuid - Unique identifier of the order
  • Price - Order limit price in secondary currency
  • PrimaryCurrencyCode - Primary currency of order
  • ReservedAmount - The amount of funds reserved in your account by this order
  • SecondaryCurrencyCode - Secondary currency of order
  • Status - Order status (Open, PartiallyFilled, Filled)
  • Type - Type of order
  • VolumeFilled - Volume already filled on this order
  • VolumeOrdered - The original volume ordered

PlaceMarketOrder

Place new market bid / offer order. A Market Bid is a buy order and a Market Offer is a sell order.

Parameters

  • apiKey - Your API Key.
  • nonce - Nonce value.
  • signature: HMAC-SHA256 encoded message to authenticate API call.
  • primaryCurrencyCode - The cryptocurrency code of market order. Must be a valid primary currency, which can be checked via the GetValidPrimaryCurrencyCodes method.
  • secondaryCurrencyCode - The fiat currency of market order. Must be a valid secondary currency, which can be checked via the GetValidSecondaryCurrencyCodes method.
  • orderType - The type of market order. Must be a valid market order type, which can be checked via the GetValidMarketOrderTypes method.
  • volume - The volume to buy/sell in primary currency.
POST
https://api.independentreserve.com/Private/PlaceMarketOrder
Request

      {
  "apiKey": "{api-key}",
  "nonce": "{nonce}",
  "signature": "{signature}",
  "primaryCurrencyCode": "Xbt",
  "secondaryCurrencyCode": "Usd",
  "orderType": "MarketOffer",
  "volume": 0.025
}
    
Response

      {
  "CreatedTimestampUtc": "2014-08-05T06:42:11.3032208Z",
  "OrderGuid": "5c8885cd-5384-4e05-b397-9f5119353e10",
  "PrimaryCurrencyCode": "Xbt",
  "ReservedAmount": 0.025,
  "SecondaryCurrencyCode": "Usd",
  "Status": "Open",
  "Type": "MarketOffer",
  "VolumeFilled": 0,
  "VolumeOrdered": 0.025
}
    

Return value descriptions

  • CreatedTimestampUtc - TC timestamp of when order was created
  • OrderGuid - Unique identifier of the order
  • PrimaryCurrencyCode - Primary currency of order
  • ReservedAmount - The amount of funds reserved in your account by this order
  • SecondaryCurrencyCode - Secondary currency of order
  • Status - Order status (Open, PartiallyFilled, Filled)
  • Type - Type of order
  • VolumeFilled - Volume already filled on this order
  • VolumeOrdered - The original volume ordered

CancelOrder

Cancels a previously placed order.

Parameters

  • apiKey - Your API Key.
  • nonce - Nonce value.
  • signature - HMAC-SHA256 encoded message to authenticate API call.
  • orderGuid - The guid of currently open or partially filled order.

Notes

  • The order must be in either 'Open' or 'PartiallyFilled' status to be valid for cancellation. You can retrieve list of Open and Partially Filled orders via the GetOpenOrders method. You can also check an individual order's status by calling the GetOrderDetails method.
POST
https://api.independentreserve.com/Private/CancelOrder
Request

      {
  "apiKey": "{api-key}",
  "nonce": "{nonce}",
  "signature": "{signature}",
  "orderGuid": "719c495c-a39e-4884-93ac-280b37245037"
}
    
Response

      {
  "CreatedTimestampUtc": "2014-08-05T06:42:11.3032208Z",
  "OrderGuid": "719c495c-a39e-4884-93ac-280b37245037",
  "Price": 485.76,
  "PrimaryCurrencyCode": "Xbt",
  "ReservedAmount": 0.358,
  "SecondaryCurrencyCode": "Usd",
  "Status": "Cancelled",
  "Type": "LimitOffer",
  "VolumeFilled": 0,
  "VolumeOrdered": 0.358
}
    

Return value descriptions

  • CreatedTimestampUtc - TC timestamp of when order was created
  • OrderGuid - Unique identifier of the order
  • Price - Order limit price in secondary currency
  • PrimaryCurrencyCode - Primary currency of order
  • ReservedAmount - The amount of funds reserved in your account by this order
  • SecondaryCurrencyCode - Secondary currency of order
  • Status - Order status (Filled, PartiallyFilledAndCancelled, Cancelled, PartiallyFilledAndExpired, Expired)
  • Type - Type of order
  • VolumeFilled - Volume already filled on this order
  • VolumeOrdered - The original volume ordered

SynchDigitalCurrencyDepositAddressWithBlockchain

Forces the deposit address to be checked for cryptocurrency deposits.

Parameters

  • apiKey - Your API Key.
  • nonce - Nonce value.
  • signature - HMAC-SHA256 encoded message to authenticate API call.
  • depositAddress - The cryptocurrency deposit address to check for new deposits.
  • primaryCurrencyCode - Primary currency code.
POST
https://api.independentreserve.com/Private/SynchDigitalCurrencyDepositAddressWithBlockchain
Request

      {
  "apiKey": "{api-key}",
  "nonce": "{nonce}",
  "signature": "{signature}",
  "depositAddress": "12a7FbBzSGvJd36wNesAxAksLXMWm4oLUJ",
  "primaryCurrencyCode": "Bch"
}
    
Response

      {
  "DepositAddress": "12a7FbBzSGvJd36wNesAxAksLXMWm4oLUJ",
  "LastCheckedTimestampUtc": "2014-05-05T09:35:22.4032405Z",
  "NextUpdateTimestampUtc": "2014-05-05T09:45:22.4032405Z"
}
    

Return value descriptions

  • DepositAddress - Cryptocurrency deposit address to be updated
  • LastCheckedTimestampUtc - UTC timestamp of when this address was last checked against the blockchain
  • NextUpdateTimestampUtc - UTC timestamp of when this address is scheduled to next be checked against the blockchain

RequestFiatWithdrawal

Creates a withdrawal request for a Fiat currency withdrawal from your Independent Reserve account to an external bank account.

Please see fiat withdrawals for more information.

Parameters

  • apiKey - Your API Key.
  • nonce - Nonce value.
  • signature - HMAC-SHA256 encoded message to authenticate API call.
  • secondaryCurrencyCode - The Independent Reserve fiat currency account to withdraw from.
  • withdrawalAmount - Amount of fiat currency to withdraw.
  • withdrawalBankAccountName - A pre-configured bank account you've already linked to your Independent Reserve account.
  • comment - Withdrawal comment. Should not exceed 500 characters.
POST
https://api.independentreserve.com/Private/RequestFiatWithdrawal
Request

      {
  "apiKey": "{api-key}",
  "nonce": "{nonce}",
  "signature": "{signature}",
  "secondaryCurrencyCode": "{secondaryCurrencyCode}",
  "withdrawalAmount": "{withdrawalAmount}",
  "withdrawalBankAccountName": "{withdrawalBankAccountName}",
  "comment": "{comment}"
}
    
Response

      {
  "FiatWithdrawalRequestGuid": "2e9ad56c-1954-4b0f-b3d8-2ade7fad93ff",
  "AccountGuid": "eda82a84-57fe-4ce6-9ee5-45a41063ee23",
  "Status": "Pending",
  "CreatedTimestampUtc": "2014-12-18T14:08:47.4032405Z",
  "TotalWithdrawalAmount": 50,
  "FeeAmount": 20,
  "Currency": "Usd"
}
    

Return value descriptions

  • FiatWithdrawalRequestGuid - Unique indentifier of this request
  • AccountGuid - IR account to withdraw from
  • Status - Request status in the workflow
  • CreatedTimestampUtc - Timestamp in UTC when fiat withdrawal request was created
  • TotalWithdrawalAmount - Total amount being withdrawn by the user (inlcusive of any fees)
  • FeeAmount - Fee amount which will be taken out of the withdrawal amount
  • Currency - Currency being withdrawn

WithdrawFiatCurrency

Creates a Fiat currency withdrawal from your Independent Reserve account to an external bank account.

Please see fiat withdrawals for more information.

Parameters

  • apiKey - Your API Key.
  • nonce - Nonce value.
  • signature - HMAC-SHA256 encoded message to authenticate API call.
  • secondaryCurrencyCode - The Independent Reserve fiat currency account to withdraw from.
  • withdrawalAmount - Amount of fiat currency to withdraw.
  • fiatBankAccountGuid: Fiat bank account guid
  • useNpp: Send instantly using NPP
  • comment - Withdrawal comment. Should not exceed 500 characters.
POST
https://api.independentreserve.com/Private/WithdrawFiatCurrency
Request

      {
  "apiKey": "{api-key}",
  "nonce": "{nonce}",
  "signature": "{signature}",
  "secondaryCurrencyCode": "{secondaryCurrencyCode}",
  "withdrawalAmount": "{withdrawalAmount}",
  "fiatBankAccountGuid": "{fiatBankAccountGuid}",
  "useNpp": "true",
  "comment": "{comment}"
}
    
Response

      {
  "FiatWithdrawalRequestGuid": "a953d73e-e650-471f-a502-676dea9574ea",
  "AccountGuid": "137edc8f-d681-4a61-905c-5e761317193b",
  "Status": "Executed",
  "CreatedTimestampUtc": "2020-09-30T14:08:47.4032405Z",
  "TotalWithdrawalAmount": 11.5,
  "FeeAmount": 1.5,
  "Currency": "Aud"
}
    

Return value descriptions

  • FiatWithdrawalRequestGuid - Unique indentifier of this request
  • AccountGuid - IR account to withdraw from
  • Status - Request status in the workflow
  • CreatedTimestampUtc - Timestamp in UTC when fiat withdrawal request was created
  • TotalWithdrawalAmount - Total amount being withdrawn by the user (inlcusive of any fees)
  • FeeAmount - Fee amount which will be taken out of the withdrawal amount
  • Currency - Currency being withdrawn

WithdrawDigitalCurrency

Creates a cryptocurrency withdrawal request. There is a minimum withdrawal value for each cryptocurrency, except where the available balance is less than this amount. In all cases, the withdrawal amount must be greater than the withdrawal fee. Take care to provide a valid destination address. Cryptocurrency withdrawals are irreversible once sent.

Notes

  • Only API Keys which are explicitly marked as being allowed to withdraw cryptocurrency can call this method.

Parameters

  • apiKey - Your API Key.
  • nonce - Nonce value.
  • signature - HMAC-SHA256 encoded message to authenticate API call.
  • amount - The amount of cryptocurrency to withdraw.
  • withdrawalAddress - Target Bitcoin or Ether withdrawal address.
  • comment - Withdrawal comment. Should not exceed 500 characters.
  • primaryCurrencyCode - Primary currency code.
  • destinationTag - Optional. For cryptocurrencies that support tags (for example: XRP)
POST
https://api.independentreserve.com/Private/WithdrawDigitalCurrency
Request

      {
  "apiKey": "{api-key}",
  "nonce": "{nonce}",
  "signature": "{signature}",
  "amount": 0.123,
  "withdrawalAddress": "1BP2wi6UxQwG3oDuDj2V2Rvgu6PMJnJu61",
  "comment": "",
  "primaryCurrencyCode": "Bch",
  "destinationTag": "123456"
}
    
Response

      {
  "TransactionGuid": "dc932e19-562b-4c50-821e-a73fd048b93b",
  "PrimaryCurrencyCode": "Bch",
  "CreatedTimestampUtc": "2020-04-01T05:26:30.5093622+00:00",
  "Amount": {
    "Total": 0.1231,
    "Fee": 0.0001
  },
  "Destination": {
    "Address": "bc1qhpqxkjpvgkckw530yfmxyr53c94q8f4273a7ez",
    "Tag": null
  },
  "Status": "Pending",
  "Transaction": null
}
    

Return value descriptions

  • TransactionGuid - Unique identifier of the withdrawal
  • PrimaryCurrencyCode - Currency being withdrawn
  • CreatedTimestampUtc - Timestamp in UTC when fiat withdrawal request was created
  • Amount
    • Total - Total amount being withdrawn by the user (inclusive of any fees)
    • Fee - Fee amount which will be taken out of the withdrawal amount
  • Destination
    • Address - Target cryptocurrency address
    • Tag - Target cryptocurrency destination tag.
  • Status - Request status in the workflow (Pending, Held, Approved, Executing, Executed, Rejected, Cancelled)
  • Transaction - Value is null if transaction hasn't been broadcasted to the network
    • Hash - Related blockchain network transaction
    • OutputIndex - The index of the transaction output to the destination address. This value is specified only for Xbt, Bch, Bsv, Ltc.

Sample API Clients

Below are sample API client code libraries that can be used as a point of reference or as the basis of your own applications that integrate with Independent Reserve.

Please keep in mind that neither Independent Reserve nor the third party authors are responsible for losses due to bugs or improper use of the API. Independent Reserve have performed an initial review of the veracity of the third party code but cannot vouch for any changes made since then. If you have concerns, please contact us via the support page.

Platform/Language Project link
.Net - C# https://github.com/independentreserve/dotNetApiClient
iOS - Objective C https://github.com/independentreserve/iOSApiClient
Node JS - Javascript
PHP https://github.com/elliotchance/independentreserve (third party authored)
Java https://github.com/timmolter/XChange (third party authored)
Python https://github.com/MelchiSalins/pyindependentreserve (third party authored)
Rust https://github.com/tcharding/rust-crypto-trader (third party authored)

WebSockets

WebSockets documentation is available on our github repository.

Fix API Clients

Independent Reserve supports FIX protocol version 4.4. FIX API is exclusively available to institutional traders. For integration details please contact support.