Frequently asked questions about API

Summary:
This article answers frequently asked questions about using the Bitvavo API, including trading, withdrawals, WebSocket connections, and rate limits. You’ll find explanations, usage details, and references to the API documentation for more information.


Introduction

The Bitvavo API lets you trade, manage balances, and automate your account through programmatic access. Below you’ll find answers to the most common API-related questions, organized by topic.


Trading

Are order and cancel requests via WebSocket faster than REST calls?

Yes. According to our measurements, WebSocket (WS) requests are faster than REST calls in most cases.

Why does my trading bot sometimes encounter a "minimum value" error?

Minimum transaction values can occasionally cause issues. To find the latest minimum order amount, use the GET /markets endpoint and check the minOrder parameters. There may be a delay because trading fees are charged after trades are completed.

Can the rate limit of my API key be increased?

Yes. If you require a higher rate limit for high-volume trading, please contact our Support team and include details about your expected trading volume.

Is there documentation on failure responses for REST or WebSocket requests?

Yes. Please refer to the API documentation for complete error code information.

Can I get notifications for scheduled downtime through the API?

Currently, there is no API endpoint for downtime announcements. For service updates, you can monitor our status page.

Will the nonce value reset during a WebSocket session?

The nonce resets if the matching engine (ME) restarts. It should not decrease during a session unless a restart occurs.

How can I identify specific rejected orders?

You can include a requestId in your request to help trace orders and match responses.

Can I update the TimeInForce parameter after setting it?

No. The TimeInForce parameter is set to “Good Till Cancelled” (GTC) by default and cannot be changed after an order is placed.

How do I request my euro balance?

Use the GET /balances endpoint with the EUR symbol. You can find more information in the API documentation.

What does the timestamp in trades represent?

The timestamp shows when the trade occurred, expressed in UTC.


WebSocket

Does WebSocket benefit from authentication for receiving market data?

Yes. Authenticated users receive higher rate limits. See the rate limits section of the API documentation for details.

Is there a speed advantage to authenticating WebSocket connections?

No. Authentication does not improve speed, but it is recommended to ensure you operate within the correct rate limits.

How deep is the order book for WebSocket?

Bitvavo provides the full depth of the order book as received from the matching engine.

Are WebSocket updates consistent across sessions?

Yes. All clients subscribed to the same market receive identical updates.

Will WebSocket connections remain during a matching engine restart?

Yes. WebSocket connections stay active during a matching engine restart.

What happens if a WebSocket consumer can’t keep up with update rates?

WebSocket operates over TCP, so all packets are delivered in order. However, if your buffer fills up, the server may slow message rates or disconnect your client.

Why do I see "Handshake status 429 Too Many Requests" errors during reconnections?

This error often occurs when reconnections are attempted too quickly. Ensure that your reconnection attempts are spaced out and check for shared IP use, such as VPN connections.

Is ordering guaranteed for fill and order events?

No. Ordering is not guaranteed due to the concurrent nature of the matching engine.


Withdrawals

Can transaction costs in euros be transferred internally via the API?

No. Internal transfers are available only for digital assets. Euro transactions are sent to an IBAN, which is external.

Can I disable the withdrawal lock to allow only internal transfers?

No. Disabling the withdrawal lock is required for all withdrawals, whether internal or external.

How do I set up an internal transfer with the API?

Set the wallet address in the POST method for digital assets. See the API documentation for the required parameters.


Rate limits

Does the weight of a WebSocket request differ by subscription type?

No. Each subscription type (OrderBook, Ticker, Trades) has a standard weight. Please refer to the API documentation for exact values.

Still need help?

Our AI assistant Vavo can answer your questions instantly, 24/7.

Chat with Vavo