Airbridge™ API
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 toapplication/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 support WebSockets.
Refer to the table below for the the decimal places supported when placing orders. On Independent Reserve, a cryptocurrency is defined as a primary currency, a fiat currency as a secondary currency.
Currency | Code | Order Primary Currency Decimal Places | Order Secondary Currency Decimal Places |
---|---|---|---|
| Xbt | 8 | 2 |
| Eth | 8 | 2 |
| Xrp | 5 | 5 |
| Usdc | 5 | 5 |
| Usdt | 5 | 5 |
| Aave | 5 | 4 |
| Ada | 5 | 5 |
| Bat | 5 | 5 |
| Bch | 8 | 2 |
| Comp | 8 | 2 |
| Dai | 5 | 5 |
| Doge | 5 | 5 |
| Dot | 5 | 4 |
| Eos | 4 | 4 |
| Etc | 8 | 2 |
| Grt | 5 | 5 |
| Link | 4 | 4 |
| Ltc | 8 | 2 |
| Mana | 5 | 5 |
| Matic | 5 | 5 |
| Mkr | 8 | 2 |
| Sand | 5 | 5 |
| Snx | 5 | 4 |
| Sol | 5 | 4 |
| Uni | 5 | 4 |
| Xlm | 5 | 5 |
| Yfi | 8 | 2 |
| Zrx | 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
- GetValidSecondaryCurrencyCodes
- GetValidLimitOrderTypes
- GetValidMarketOrderTypes
- GetValidOrderTypes
- GetValidTransactionTypes
- GetPrimaryCurrencyConfig
- GetMarketSummary
- GetOrderBook
- GetAllOrders
- GetTradeHistorySummary
- GetRecentTrades
- GetFxRates
- GetOrderMinimumVolumes
- GetDepositFees
- GetFiatWithdrawalFees
- GetCryptoWithdrawalFees
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.
[
"Xbt",
"Eth",
"Xrp",
"Usdc",
"Usdt",
"Aave",
"Ada",
"Bat",
"Bch",
"Comp",
"Dai",
"Doge",
"Dot",
"Eos",
"Etc",
"Grt",
"Link",
"Ltc",
"Mana",
"Matic",
"Mkr",
"Sand",
"Snx",
"Sol",
"Uni",
"Xlm",
"Yfi",
"Zrx"
]
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.
[
"Aud",
"Usd",
"Nzd",
"Sgd"
]
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.
[
"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.
[
"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.
[
"LimitBid",
"LimitOffer",
"MarketBid",
"MarketOffer"
]
GetValidTransactionTypes
Returns a list of valid transaction types.
This method does not take any parameters.
[
"AccountFee",
"Brokerage",
"Deposit",
"DepositFee",
"GST",
"ReferralCommission",
"StatementFee",
"Trade",
"Withdrawal",
"WithdrawalFee"
]
GetPrimaryCurrencyConfig
Returns the configuration of all primary currencies.
This method does not take any parameters.
{
"Code": "Xbt",
"Name": "Bitcoin",
"IsTradeEnabled": true,
"IsDepositEnabled": true,
"IsWithdrawalEnabled": true,
"IsDelisted": false,
"DecimalPlaces": {
"OrderPrimaryCurrency": 8,
"OrderSecondaryCurrency": 2
}
}
Return value descriptions
- IsTradeEnabled - Indicates whether trading is temporarily enabled/disabled
- IsDepositEnabled - Indicates whether deposits are temporarily enabled/disabled
- IsWithdrawalEnabled - Indicates whether withdrawals are temporarily enabled/disabled
- IsDelisted - When set to true, a permanent delisting has occurred. Only withdrawals are allowed, no further deposits or trading may occur.
- DecimalPlaces.OrderPrimaryCurrency - Number of decimal places accepted for order volume when denominated in primary currency
- DecimalPlaces.OrderSecondaryCurrency - Number of decimal places accepted for price denominated in secondary currency
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.
{
"DayHighestPrice": 45005.12,
"DayLowestPrice": 43418.84,
"DayAvgPrice": 44211.98,
"DayVolumeXbt": 45.68239145,
"DayVolumeXbtInSecondaryCurrrency": 0.2355363,
"CurrentLowestOfferPrice": 44763.99,
"CurrentHighestBidPrice": 44345.75,
"LastPrice": 44496.56,
"PrimaryCurrencyCode": "Xbt",
"SecondaryCurrencyCode": "Usd",
"CreatedTimestampUtc": "2022-02-10T09:34:05.2287498Z"
}
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.
- maxDepthVolume - Limit the results to a maximum cumulated volume. This is an optional parameter.
- maxDepthValue - Limit the results to a maximum value (price * volume). This is an optional parameter.
Notes
- If both maxDepthVolume and maxDepthValue parameters are specified, the returned set is the upper limit of either one.
- 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.
{
"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": "2022-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.
- maxDepthVolume - Limit the results to a maximum cumulated volume. This is an optional parameter.
- maxDepthValue - Limit the results to a maximum value (price * volume). This is an optional parameter.
Notes
- If both maxDepthVolume and maxDepthValue parameters are specified, the returned set is the upper limit of either one.
- This method caches return values for 1 second. Calling it more than once per second will result in cached data being returned.
{
"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": "2022-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.
{
"CreatedTimestampUtc ": "2022-08-05T09:02:57.5440691Z",
"HistorySummaryItems": [
{
"AverageSecondaryCurrencyPrice": 510,
"ClosingSecondaryCurrencyPrice": 510,
"StartTimestampUtc": "2022-08-04T09:00:00Z",
"EndTimestampUtc": "2022-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 - Deprecated, not used
- 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 - Deprecated, not used
- 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.
{
"CreatedTimestampUtc": "2022-08-05T09:14:39.4830696Z",
"PrimaryCurrencyCode": "Xbt",
"SecondaryCurrencyCode": "Usd",
"Trades": [
{
"PrimaryCurrencyAmount": 1,
"SecondaryCurrencyTradePrice": 510,
"TradeTimestampUtc": "2022-07-31T10:34:05.935412Z"
},
{
"PrimaryCurrencyAmount": 0.01,
"SecondaryCurrencyTradePrice": 501,
"TradeTimestampUtc": "2022-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 Independent 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.
[
{
"CurrencyCodeA": "Aud",
"CurrencyCodeB": "Usd",
"Rate": 0.8683
},
{
"CurrencyCodeA": "Usd",
"CurrencyCodeB": "Aud",
"Rate": 1.1517
}
]
GetOrderMinimumVolumes
Returns a list of minimum allowed volumes for orders.
This method does not take any parameters.
{
"Xbt": 0.0001,
"Bch": 0.001,
"Eth": 0.001,
"Ltc": 0.01,
"Xrp": 1,
"Omg": 0.1,
"Zrx": 1,
"Eos": 0.1,
"Xlm": 10,
"Bat": 1,
"Usdt": 1,
"Etc": 0.01,
"Pmgt": 0.001,
"Link": 0.1,
"Usdc": 1,
"Mkr": 0.001,
"Dai": 1,
"Comp": 0.001,
"Snx": 0.1,
"Yfi": 0.0001,
"Aave": 0.01,
"Grt": 1,
"Dot": 0.1,
"Uni": 0.1,
"Ada": 1,
"Matic": 0.1,
"Doge": 1
}
GetDepositFees
Returns the fee schedule for fiat deposits. Crypto deposits do not incur fees.
This method does not take any parameters.
[
{
"DepositType": "Swift",
"FreeThreshold": 5000,
"Fee": {
"Fixed": 15,
"Percentage": null
}
},
{
"DepositType": "Eft",
"FreeThreshold": 100,
"Fee": {
"Fixed": 0.99,
"Percentage": null
}
},
{
"DepositType": "Osko",
"FreeThreshold": 1000,
"Fee": {
"Fixed": 2.5,
"Percentage": null
}
},
{
"DepositType": "SGD-FAST",
"FreeThreshold": null,
"Fee": {
"Fixed": 0,
"Percentage": 0.55
}
}
]
Return value descriptions
- DepositType - The method of deposit
- FreeThreshold - An amount below this threshold will incur a deposit fee. When null, the fee is always applied.
- Fee - Deposit fee which will be deducted from deposit amount when under threshold. Denominated in the deposit currency.
- Fixed - Fixed fee amount
- Percentage - Percentage fee
GetFiatWithdrawalFees
Returns the fee schedule for all withdrawals.
This method does not take any parameters.
[
{
"WithdrawalType": "Wire Transfer",
"MinimumAmount": 50,
"CurrencyCode": "Aud",
"Fee": {
"Fixed": 0,
"Percentage": null
}
},
{
"WithdrawalType": "Wire Transfer",
"MinimumAmount": 50,
"CurrencyCode": "Usd",
"Fee": {
"Fixed": 20,
"Percentage": null
}
},
{
"WithdrawalType": "Osko",
"MinimumAmount": 0.01,
"CurrencyCode": "Aud",
"Fee": {
"Fixed": 1.5,
"Percentage": null
}
},
{
"WithdrawalType": "SGD-FAST",
"MinimumAmount": 0.01,
"CurrencyCode": "Sgd",
"Fee": {
"Fixed": 0,
"Percentage": 0.55
}
}
]
Return value descriptions
- WithdrawalType - The withdrawal method
- MinimumAmount - The minimum withdrawal amount
- CurrencyCode - The withdrawal currency
- Fee - Withdrawal fee which will be charged from your account.
- Fixed - Fixed fee amount
- Percentage - Percentage fee
GetCryptoWithdrawalFees
Returns the fee schedule for crypto withdrawals.
This method does not take any parameters.
{
"Xbt": 0.0003,
"Bch": 0.0001,
"Bsv": 0.0001,
"Eth": 0.005,
"Ltc": 0.001,
"Xrp": 0.15,
"Omg": 2,
"Zrx": 10,
"Eos": 0.1,
"Xlm": 0.01,
"Bat": 15,
"Gnt": 60,
"Usdt": 6,
"Etc": 0.01,
"Pmgt": 0.003,
"Link": 0.3,
"Usdc": 6,
"Mkr": 0.006,
"Dai": 6,
"Comp": 0.03,
"Snx": 2,
"Yfi": 1,
"Aave": 1,
"Knc": 1,
"Grt": 5
}
Return value descriptions
- CurrencyCode - Withdrawal fee for the currency. Denominated in the withdrawal currency.
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 necessary 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 table below lists the private API methods along with the API Role
required to access the method.
The Restricted Withdrawals role can only withdraw to whitelisted addresses and bank accounts. To whitelist an address or a bank account, please first execute a withdrawal using the web portal or alternatively for cryptocurrency, add the address to the address book.
You can request via Support to restrict API key usage to a specific IP address.
Method | API Roles |
---|---|
GetOpenOrders | Full AccessRestricted WithdrawalsTradeRead Only |
GetClosedOrders | Full AccessRestricted WithdrawalsTradeRead Only |
GetClosedFilledOrders | Full AccessRestricted WithdrawalsTradeRead Only |
GetOrderDetails | Full AccessRestricted WithdrawalsTradeRead Only |
GetAccounts | Full AccessRestricted WithdrawalsTradeRead Only |
GetTransactions | Full AccessRestricted WithdrawalsTradeRead Only |
GetFiatBankAccounts | Full AccessRestricted WithdrawalsTradeRead Only |
GetDigitalCurrencyDepositAddress | Full AccessRestricted WithdrawalsTradeRead Only |
GetDigitalCurrencyDepositAddresses | Full AccessRestricted WithdrawalsTradeRead Only |
GetTrades | Full AccessRestricted WithdrawalsTradeRead Only |
GetTradesByOrder | Full AccessRestricted WithdrawalsTradeRead Only |
GetBrokerageFees | Full AccessRestricted WithdrawalsTradeRead Only |
GetDigitalCurrencyWithdrawal | Full AccessRestricted WithdrawalsTradeRead Only |
GetFiatWithdrawal | Full AccessRestricted WithdrawalsTradeRead Only |
GetDepositLimits | Full AccessRestricted WithdrawalsTradeRead Only |
GetWithdrawalLimits | Full AccessRestricted WithdrawalsTradeRead Only |
PlaceLimitOrder | Full AccessRestricted WithdrawalsTrade |
PlaceMarketOrder | Full AccessRestricted WithdrawalsTrade |
CancelOrder | Full AccessRestricted WithdrawalsTrade |
CancelOrders | Full AccessRestricted WithdrawalsTrade |
SynchDigitalCurrencyDepositAddressWithBlockchain | Full AccessRestricted WithdrawalsTrade |
WithdrawFiatCurrency | Full AccessRestricted Withdrawals |
WithdrawDigitalCurrency | Full AccessRestricted Withdrawals |
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 100. If a number greater than 100 is specified, then 100 will be used.
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"primaryCurrencyCode": "Xbt",
"secondaryCurrencyCode": "Usd",
"pageIndex": 1,
"pageSize": 25
}
{
"PageSize": 25,
"TotalItems": 2,
"TotalPages": 1,
"Data": [
{
"AvgPrice": 466.36,
"CreatedTimestampUtc": "2022-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,
"ClientId": "a96ff431-7f47-4ab5-9974-4a2c6b6eb8d8"
},
{
"AvgPrice": 455.48,
"CreatedTimestampUtc": "2022-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,
"ClientId": "c1f1937c-d743-461b-bab3-c9d8c8dbf36d"
}
]
}
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
- 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
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.
- fromTimestampUtc - The timestamp in UTC, specified according to ISO 8601 standard, e.g.
2023-08-01T08:00:00Z
, from which you want to retrieve orders. This is an optional parameter.
Notes
- Only recently cancelled orders will be returned; cancelled orders are regularly purged from history.
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"primaryCurrencyCode": "Xbt",
"secondaryCurrencyCode": "Usd",
"pageIndex": 1,
"pageSize": 25,
"fromTimestampUtc": "2023-08-01T08:00:00Z"
}
{
"PageSize": 25,
"TotalItems": 50,
"TotalPages": 2,
"Data": [
{
"AvgPrice": 698.8,
"CreatedTimestampUtc": "2022-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,
"ClientId": "64bd5f83-273b-4c16-9dfd-b58ac61a6dc9"
},
{
"AvgPrice": 700,
"CreatedTimestampUtc": "2022-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,
"ClientId": "4dea2037-2657-44b1-b9d2-ad917fb9134f"
},
{
"AvgPrice": 650,
"CreatedTimestampUtc": "2022-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,
"ClientId": "dc2eaf71-6dbe-444f-b2e4-a71af4694c7d"
}
]
}
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.
- fromTimestampUtc - The timestamp in UTC, specified according to ISO 8601 standard, e.g.
2023-08-01T08:00:00Z
, from which you want to retrieve orders. This is an optional parameter.
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"primaryCurrencyCode": "Xbt",
"secondaryCurrencyCode": "Usd",
"pageIndex": 1,
"pageSize": 25
}
{
"PageSize": 25,
"TotalItems": 50,
"TotalPages": 2,
"Data": [
{
"AvgPrice": 698.8,
"CreatedTimestampUtc": "2022-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,
"ClientId": "b03eb46e-5f10-45f9-a7a5-2413853692a8"
},
{
"AvgPrice": 700,
"CreatedTimestampUtc": "2022-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,
"ClientId": "ac514e1a-5c08-4b83-a121-18a81e34aba7"
},
{
"AvgPrice": 650,
"CreatedTimestampUtc": "2022-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,
"ClientId": "ee910c35-43a2-47d1-83d8-94c8c9752cee"
}
]
}
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^.
- clientId - The clientId that was supplied when placing an order^.
^ Only one of these parameters may be supplied at a time
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"orderGuid": "c7347e4c-b865-4c94-8f74-d934d4b0b177"
}
{
"OrderGuid": "c7347e4c-b865-4c94-8f74-d934d4b0b177",
"CreatedTimestampUtc": "2022-09-23T12:39:34.3817763Z",
"Type": "MarketBid",
"VolumeOrdered": 5,
"VolumeFilled": 5,
"Price": null,
"AvgPrice": 100,
"ReservedAmount": 0,
"Status": "Filled",
"PrimaryCurrencyCode": "Xbt",
"SecondaryCurrencyCode": "Usd",
"ClientId": "bd9fde9d-aec7-4b81-a5f0-eb88b2e75723"
}
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
- VolumeCurrencyType - Whether volume is denominated in Primary or Secondary currency
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.
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}"
}
[
{
"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 transactions 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 Reserve 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.
2022-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.
2022-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
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"accountGuid": "49994921-60ec-411e-8a78-d0eba078d5e9",
"fromTimestampUtc": "2022-08-01T09:00:00Z",
"toTimestampUtc": null,
"txTypes": [
"Brokerage",
"Trade"
],
"pageIndex": 1,
"pageSize": 25
}
{
"PageSize": 25,
"TotalItems": 6,
"TotalPages": 1,
"Data": [
{
"TransactionGuid": "27e6cbc9-e9cc-4725-882f-690cd6641ff8",
"Balance": 199954.27,
"BitcoinTransactionId": null,
"BitcoinTransactionOutputIndex": null,
"EthereumTransactionId": null,
"Comment": null,
"CreatedTimestampUtc": "2022-08-03T05:33:48.2354125Z",
"Credit": null,
"CurrencyCode": "Usd",
"Debit": 6.98,
"SettleTimestampUtc": "2022-08-03T05:36:24.5532653Z",
"Status": "Confirmed",
"Type": "Brokerage"
},
{
"TransactionGuid": "6503e0a5-28a1-43b6-905d-fc4a705957f9",
"Balance": 199961.25,
"BitcoinTransactionId": null,
"BitcoinTransactionOutputIndex": null,
"EthereumTransactionId": null,
"Comment": null,
"CreatedTimestampUtc": "2022-08-02T15:44:05.4323116Z",
"Credit": 1396,
"CurrencyCode": "Usd",
"Debit": null,
"SettleTimestampUtc": "2022-08-02T15:48:04.2312658Z",
"Status": "Confirmed",
"Type": "Trade"
}
]
}
Return value descriptions
- TransactionGuid - Unique identifier of the transaction
- 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.
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}"
}
[
{
"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": "External 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.
Example 1
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"primaryCurrencyCode": "Xbt"
}
{
"DepositAddress": "12a7FbBzSGvJd36wNesAxAksLXMWm4oLUJ",
"LastCheckedTimestampUtc": "2022-05-05T09:35:22.4032405Z",
"NextUpdateTimestampUtc": "2022-05-05T09:45:22.4032405Z"
}
Example 2 - Tagged Currency
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"primaryCurrencyCode": "Xrp"
}
{
"DepositAddress": "r4syzLC4ziaMZ5wJuqhQe1znYMowsu83K9",
"Tag": "2750772332",
"LastCheckedTimestampUtc": "2018-06-25T16:40:42.0014486+00:00",
"NextUpdateTimestampUtc": "2019-07-24T04:39:33.7627391+00:00"
}
Return value descriptions
- DepositAddress - Digital address to use for deposits
- Tag - Returned for cryptocurrencies that support tags (for example: Xrp, Xlm)
- 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.
Example 1
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"primaryCurrencyCode": "Xbt",
"pageIndex": 1,
"pageSize": 10
}
{
"PageSize": 10,
"TotalItems": 10,
"TotalPages": 1,
"Data": [
{
"DepositAddress": "1CxrjaGvVLgXwi1s1d9d62hrCVLU83nHpX",
"LastCheckedTimestampUtc": "2022-07-24T11:23:48.8693053Z",
"NextUpdateTimestampUtc": "2022-07-25T11:23:48.8693053Z"
},
{
"DepositAddress": "12a7FbBzSGvJd36wNesAxAksLXMWm4oLUJ",
"LastCheckedTimestampUtc": "2022-05-05T09:35:22.4032405Z",
"NextUpdateTimestampUtc": "2022-05-05T09:45:22.4032405Z"
}
]
}
Example 2 - Tagged Currency
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"primaryCurrencyCode": "Xlm",
"pageIndex": 1,
"pageSize": 10
}
{
"PageSize": 10,
"TotalItems": 1,
"TotalPages": 1,
"Data": [
{
"DepositAddress": "GBFP755NG4EHIJ4GVZGKZUTIRWOVTRL6KOHYUC2YPBZNQPKBZLJVIJFL",
"Tag": "2750772332",
"LastCheckedTimestampUtc": "2020-05-20T23:02:49.0110167+00:00",
"NextUpdateTimestampUtc": "2020-05-20T23:03:49.6380096+00:00"
}
]
}
Return value descriptions
- DepositAddress - Deposit address to use for deposits
- Tag - Returned for cryptocurrencies that support tags (for example: Xrp, Xlm)
- 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.
- fromTimestampUtc - The timestamp in UTC, specified according to ISO 8601 standard, e.g.
2022-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.
2022-08-07T08:00:00Z
, until which you want to retrieve transactions. This is an optional parameter.
Notes
- This method caches return values for 1 second. Calling it more than once per second will result in cached data being returned.
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"pageIndex": 1,
"pageSize": 5
}
{
"Data": [
{
"TradeGuid": "593e609d-041a-4f46-a41d-2cb8e908973f",
"TradeTimestampUtc": "2022-12-16T03:44:19.2187707Z",
"OrderGuid": "8bf851a3-76d2-439c-945a-93367541d467",
"OrderType": "LimitBid",
"OrderTimestampUtc": "2022-12-16T03:43:36.7423769Z",
"VolumeTraded": 0.5,
"Price": 410,
"PrimaryCurrencyCode": "Xbt",
"SecondaryCurrencyCode": "Usd"
},
{
"TradeGuid": "13c1e71c-bfb4-452c-b13e-e03535f98b09",
"TradeTimestampUtc": "2022-12-11T11:37:42.2089564Z",
"OrderGuid": "1ce88acf-6013-4867-b58d-77f0e41ec475",
"OrderType": "LimitBid",
"OrderTimestampUtc": "2022-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
GetTradesByOrder
Retrieves the list of trades executed against your order.
Parameters
- apiKey - Your API Key.
- nonce - Nonce value.
- signature - HMAC-SHA256 encoded message to authenticate API call.
- orderGuid - Unique identifier of the order^.
- 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.
- clientId - The clientId that was supplied when placing an order ^
^ At least one of these parameters should be supplied
Notes
- This method caches return values for 1 second. Calling it more than once per second will result in cached data being returned.
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"orderGuid": "79eac4c9-f24f-4746-a013-2dfa3a295e11",
"clientId": "a96ff431-7f47-4ab5-9974-4a2c6b6eb8d8",
"pageIndex": 1,
"pageSize": 5
}
{
"Data": [
{
"TradeGuid": "97be0f79-f003-4d74-86cf-c4d2960e4bcb",
"TradeTimestampUtc": "2020-05-20T12:13:24.0368425+00:00",
"OrderGuid": "79eac4c9-f24f-4746-a013-2dfa3a295e11",
"OrderType": "MarketBid",
"OrderTimestampUtc": "2020-05-20T12:13:24.0268429+00:00",
"VolumeTraded": 0.19316949,
"Price": 315.21,
"PrimaryCurrencyCode": "Ltc",
"SecondaryCurrencyCode": "Aud"
},
{
"TradeGuid": "8fb3f7fc-8041-4914-8369-dc5ee7056566",
"TradeTimestampUtc": "2020-05-20T12:13:24.0368425+00:00",
"OrderGuid": "79eac4c9-f24f-4746-a013-2dfa3a295e11",
"OrderType": "MarketBid",
"OrderTimestampUtc": "2020-05-20T12:13:24.0268429+00:00",
"VolumeTraded": 0.20683051,
"Price": 314,
"PrimaryCurrencyCode": "Ltc",
"SecondaryCurrencyCode": "Aud"
}
],
"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 - denominated in the 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.
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}"
}
[
{
"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.
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"transactionGuid": "2a93732f-3f40-4685-b3bc-ff3ec326090d"
}
{
"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.
GetFiatWithdrawal
Get fiat withdrawal details.
Please see here for more information on fiat withdrawals.
Parameters
- apiKey - Your API Key.
- nonce - Nonce value.
- signature - HMAC-SHA256 encoded message to authenticate API call.
- fiatWithdrawalRequestGuid - Fiat withdrawal request identifier.
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"fiatWithdrawalRequestGuid": "2e9ad56c-1954-4b0f-b3d8-2ade7fad93ff"
}
{
"FiatWithdrawalRequestGuid": "2e9ad56c-1954-4b0f-b3d8-2ade7fad93ff",
"AccountGuid": "eda82a84-57fe-4ce6-9ee5-45a41063ee23",
"Status": "Pending",
"CreatedTimestampUtc": "2022-12-18T14:08:47.4032405Z",
"TotalWithdrawalAmount": 50,
"FeeAmount": 20,
"Currency": "Usd"
}
Return value descriptions
- FiatWithdrawalRequestGuid - fiat withdrawal request identifier
- 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 (inclusive of any fees)
- FeeAmount - Fee amount which will be taken out of the withdrawal amount
- Currency - Currency being withdrawn
GetDepositLimits
Get fiat deposit limits.
Parameters
- apiKey - Your API Key.
- nonce - Nonce value.
- signature - HMAC-SHA256 encoded message to authenticate API call.
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}"
}
{
"Fiat": [
{
"DepositType": "PoliPayment",
"MaxTransactionAmount": 1000,
"Limits": [
{
"Deposited": 300,
"Period": "Day",
"AutomaticApprovalLimit": 1000
}
]
},
{
"DepositType": "Osko",
"MaxTransactionAmount": 10000,
"Limits": [
{
"Deposited": 400,
"Period": "Day",
"AutomaticApprovalLimit": 10000
}
]
}
]
}
Return value descriptions
- Fiat - Array of deposit types
- DepositType - Method of deposit
- MaxTransactionAmount - Maximum amount of a single payment
- Limits
- Deposited - Total amount of deposits processed within the period
- Period - "Day"
- AutomaticApprovalLimit - Deposits up to this amount in the period will be processed and credited to your account automatically. Amounts over this limit will require review by an operator.
GetWithdrawalLimits
Get withdrawal limits.
Parameters
- apiKey: Your API Key.
- nonce: Nonce value.
- signature: HMAC-SHA256 encoded message to authenticate API call.
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}"
}
{
"Xbt": [
{
"Withdrawn": 0.38,
"Period": "P12H",
"AutomaticApprovalLimit": 6
}
],
"Eth": [
{
"Withdrawn": 0.1,
"Period": "P12H",
"AutomaticApprovalLimit": 80
}
],
"Xrp": [
{
"Withdrawn": 0,
"Period": "P12H",
"AutomaticApprovalLimit": 30000
}
]
}
Return value descriptions
- Xbt - Primary currency code
- Withdrawn - Total amount of withdrawals processed within the period
- Period - Sliding window the limit applies to. Formatted as Iso8601 duration
- AutomaticApprovalLimit - Withdrawals up to this amount made during the period will be processed automatically
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.
- clientId - Specify your own clientId to a maximum of 36 characters. Uniqueness of clientId will be enforced across orders for a guaranteed minimum of 24 hours, but in most cases longer. If an order is placed with a duplicate clientId it will be rejected.
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"clientId": "{client-id}",
"primaryCurrencyCode": "Xbt",
"secondaryCurrencyCode": "Usd",
"orderType": "LimitBid",
"price": 485.76,
"volume": 0.358
}
{
"CreatedTimestampUtc": "2022-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
- VolumeCurrencyType - Indicate in which currency the volume is denominated
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 of currency to order, denominated in volumeCurrencyType.
- volumeCurrencyType - Optional with default value of "Primary". Possible values are Primary, Secondary.
- clientId - Specify your own clientId to a maximum of 36 characters. Uniqueness of clientId will be enforced across orders for a guaranteed minimum of 24 hours, but in most cases longer. If an order is placed with a duplicate clientId it will be rejected.
- allowedSlippagePercent - Optional parameter for slippage protection, in which the order will be rejected after the market has moved by the specified amount.
Example 1
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"clientId": "{client-id}",
"primaryCurrencyCode": "Xbt",
"secondaryCurrencyCode": "Usd",
"orderType": "MarketOffer",
"volume": 0.025
}
{
"CreatedTimestampUtc": "2022-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
}
Example 2
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"primaryCurrencyCode": "Xbt",
"secondaryCurrencyCode": "Aud",
"orderType": "MarketOffer",
"volume": "77.8",
"volumeCurrencyType": "Secondary"
}
{
"CreatedTimestampUtc": "2020-05-21T01:38:06.090333+00:00",
"OrderGuid": "4994b087-70d7-457f-babe-6c226c5bc4e3",
"PrimaryCurrencyCode": "Xbt",
"ReservedAmount": 9716.94255222,
"SecondaryCurrencyCode": "Aud",
"Status": "Open",
"Type": "MarketOffer",
"VolumeFilled": 0,
"VolumeOrdered": 77.8,
"VolumeCurrencyType": "Secondary"
}
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
- VolumeCurrencyType - Whether volume is denominated in Primary or Secondary currency
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.
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"orderGuid": "719c495c-a39e-4884-93ac-280b37245037"
}
{
"AvgPrice": 455.48,
"CreatedTimestampUtc": "2022-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
- AvgPrice - Average price for all trades executed for the order
- 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
- VolumeCurrencyType - Whether volume is denominated in Primary or Secondary currency
CancelOrders
Accepts an array of orderGuid so that multiple orders can be cancelled in the one call.
Response will contain cancellation result for each individual order.
Parameters
- apiKey - Your API Key.
- nonce - Nonce value.
- signature - HMAC-SHA256 encoded message to authenticate API call.
- orderGuids - An array of order guids.
Notes
- The orderGuids parameter is a JSON array in the POST body but for signature generation, the orderGuids should be formatted as csv. For example
orderGuids=Guid1,Guid2
. - 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.
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"orderGuids": [
"5053e267-6060-44a8-9ab6-77f36fed86df",
"309d8b71-868c-4408-9346-c5aca4c3efdb"
]
}
{
"5053e267-6060-44a8-9ab6-77f36fed86df": {
"IsSuccess": true,
"Message": null
},
"309d8b71-868c-4408-9346-c5aca4c3efdb": {
"IsSuccess": true,
"Message": null
}
}
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.
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"depositAddress": "12a7FbBzSGvJd36wNesAxAksLXMWm4oLUJ",
"primaryCurrencyCode": "Bch"
}
{
"DepositAddress": "12a7FbBzSGvJd36wNesAxAksLXMWm4oLUJ",
"LastCheckedTimestampUtc": "2022-05-05T09:35:22.4032405Z",
"NextUpdateTimestampUtc": "2022-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
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.
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"secondaryCurrencyCode": "{secondaryCurrencyCode}",
"withdrawalAmount": "{withdrawalAmount}",
"fiatBankAccountGuid": "{fiatBankAccountGuid}",
"useNpp": "true",
"comment": "{comment}"
}
{
"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 (inclusive 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)
{
"apiKey": "{api-key}",
"nonce": "{nonce}",
"signature": "{signature}",
"amount": 0.123,
"withdrawalAddress": "1BP2wi6UxQwG3oDuDj2V2Rvgu6PMJnJu61",
"comment": "",
"primaryCurrencyCode": "Bch",
"destinationTag": "123456"
}
{
"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 |
Node.js | https://github.com/davesag/ir-api (third party authored) |
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.