19 August 2022
- Clarify that per minute and per second rate limits do not interact.
- Add examples for stop orders to the Exchange Buy/Sell API.
- Increase subaccount limit to 2000 per main account.
18 August 2022
- Added `/v1/orders` request to cancel all open orders.
- Added `/v1/orders/:currencyPair` to cancel all open orders for the given currency pair.
04 August 2022
- Increased per second rate limits for
20 July 2022
- Updated VALR Pay documentation to reflect new ability to send and receive cryptocurrencies in addition to ZAR.
11 July 2022
- Updated per second rate limits to reflect new limits
27 June 2022
- Added per second rate limits to
12 June 2022
- The Market Summary APIs
/v1/public/:currencyPair/marketsummarynow return a
markPricefield, which is reserved for future use.
- The Balances API
/v1/account/balancesnow returns the following additional fields, which are reserved for future use.
- The Simple Buy/Sell Quote API
v1/simple/:currencyPair/quotenow returns an array of
quantity; if they exist.
9 May 2022
- The FULL_ORDERBOOK_UPDATE Trade WebSocket stream now returns a
8 February 2022
- Added the FULL_ORDERBOOK_UPDATE Trade WebSocket stream. Please note that this is an alpha feature and may change in ways that are not backwards-compatible. We value any feedback! Please send your feedback to firstname.lastname@example.org
- The following APIs now include a
"SequenceNumber"field on the returned order book:
14 December 2021
- Added the Wire Transfers API to facilitate USD wire bank accounts deposits and withdrawals. (
- Added the VALR Pay API (
/v1/pay) for initiating payments, getting payment details and history.
- Added the Deposit Reference API to enable retrieval of Deposit reference by subaccounts.(
31 October 2021
- Added the following APIs for interaction with subaccounts:
account/balances/all) - returns all non zero balances for the portfolio.
account/subaccounts) - returns all subaccounts that belong to a primary account.
account/subaccount) - register a new subaccount.
account/subaccounts/transfer) - transfer between subaccounts.
- Updated the
Authenticationsection to include the
X-VALR-SUB-ACCOUNT-IDheader for subaccount impersonation.
- Updated the rate limit for authenticated API calls.
15 September 2021
- Added the Current API Key Information API (
/account/api-keys/current) which returns the currently authorised API key's information and permissions.
23 August 2021
- Batch Orders API (Alpha) is now available to batch multiple exchange orders.
23 June 2021
- Added additional transaction types to transaction history.
- VALR Pay
PAYMENTtransaction types including:
- Off-chain transaction types including:
- VALR Pay
08 February 2021
- A Stop Limits API (
/orders/stop/limit) is now available to place
- Limit Orders (
POSTrequest now accepts
timeInForceas an optional parameter (
- Time in Force (
IOC) field is now included in
GETresponses of the following APIs:
- Open Order (
- Order History (
- Order Status (
- Open Order (
- New order types of:
TAKE_added to applicable Currency Pairs (currently BTCZAR, ETHZAR and XRPZAR) for the following Public APIs:
- Public Order Types (
- Public Currency Pairs (
- Public Order Types (
- Updated example for Public Currency pairs (
/public/pairs) API with fields
baseDecimafor each traded currency pair.
- Updated example for for all TransactionId API requests (
/account/transactionhistory) with the
idfield in the response
- Updated documentation for Trade History API (
- Updated example for MarketData Trade History API (
/marketdata/:currencyPair/) with the
02 February 2021
- The Order API (/orders/open) now includes the following fields in GET responses:
updatedAt, status, type
- Updated the Order History APIs (/orders/history) to include the feeCurrency field
- Updated documentation: Updated the examples for Order History Detail APIs (/orders/history/detail/*) to include the fields:
29 November 2020
- Crypto withdrawals created (/wallet/crypto/:currencyCode/
withdraw) with more decimals than the number of decimals supported by the currency will be truncated
- The Currencies list (/public/currencies) now include the following new fields:
- Withdrawal Info (/wallet/crypto/:currencyCode/
withdraw) now includes the following new field:
- Trade History for a currency pair (/account/:currencyPair/
tradehistory) can now be filtered by the skip, limit, startTime, endTime and beforeId parameters. This is similar to Transaction History filtering.
6 September 2020
- Asks & Bids on ZAR Orderbooks: The number of Asks and Bids sent via our Order Book APIs has been increased from 20 each to 40 each.
- Order History Detail APIs (`/orders/history/detail/*`) now include the following new fields:
12 July 2020
- Rate limiting: Rate limit has been updated to 120 calls per 1 minute window. When rate limited, a response code of 429 and a response header of `x-valr-ratelimited: true` will be returned.
- Example 1: You are allowed to do 120 calls from 10:10:00 to 10:10:59. When the time changes to 10:11:00, the counter will be reset and will start over.
- Example 2: If the first request comes in at 10:10:30, the counter will be reset at 10:11:00
31 May 2020
- Separated the API and Website web socket sessions. WebSockets which were connected via the API will no longer be closed when the user logs out of the VALR website.
- When a `PING` message is received on the Trade WebSocket, a response with `NO_SUBSCRIPTIONS` in the `PONG` will be sent, if the user has not subscribed to any message types.
- When a user connects and authenticates to the Account WebSocket, all account balances and open orders associated with the user account will be sent in the response. One `BALANCE_UPDATE` message for each asset held and one `OPEN_ORDERS_UPDATE` message containing all open orders on the account, across all order books will be sent.
- The `BALANCE_UPDATE` web socket message now includes an `updatedAt` field.
- The REST GET Balances response (`https://api.valr.com/v1/account/balances`) now includes an `updatedAt` field for each asset held.
- Added the REST GET VALR Status (`https://api.valr.com/v1/public/status`) request which will indicate whether the API is "online" or in "read-only" mode. In "read-only" mode, only GET and OPTIONS requests are accepted. The "read-only" mode is sometimes necessary during maintenance.
- The `filledPercentage` field on open orders is now accurate to two decimal places.
- The REST GET Order Book (`https://api.valr.com/v1/marketdata/:currencyPair/orderbook`) response and the REST GET Order Book (Non aggregated) (`https://api.valr.com/v1/marketdata/:currencyPair/orderbook/full`) response now include a `LastChange` field, indicating the timestamp of the last update to the order book.
- The `AGGREGATED_ORDERBOOK_UPDATE` message on the Trade web socket now includes a `LastChange` field, indicating the timestamp of the last update to the order book.
Please send any and all feedback via email to email@example.com, we look forward to your comments and continuing to improve our product offering as we drive towards building VALR into a world class exchange.