Connect your Binance, Bybit, OKX, Bitget, KuCoin, MEXC, Gate.io, or HTX account using an API key with read + trade scope only. Vant8 places orders against your account; we never see your withdrawal keys and never call your exchange's withdraw endpoint.
You generate the key on the exchange. We test it, encrypt it, and start trading against it. You can rotate or revoke at any time.
On your exchange, create an API key with read + trade scope. Do not enable withdrawal. If your exchange requires IP whitelisting, the connection dashboard shows the Vant8 server IPs to add to your key.
A test call confirms the credential can read balances and place orders. Bad keys fail upfront — no half-connected state.
Key, secret, and (where applicable) passphrase are encrypted with AES-256-GCM before they touch the database. Plaintext is never logged.
Balances sync, supported markets are discovered, and orders begin routing as soon as you deploy a strategy against the connection.
Each integration is wired against the exchange's real REST and WebSocket APIs through CCXT and our own venue layer. Spot and futures are separate connections — one of each per exchange, per Vant8 account. A connection maps to a single exchange-side account, so if you keep exchange-side sub-accounts, each one needs its own Vant8 connection.
The API key, secret, and passphrase are each encrypted with AES-256-GCM with a server-side key. Decryption happens only at order-build time, in process, never written to disk.
There is no code path in Vant8 that calls an exchange's withdraw API. If you ever generated a key with withdraw scope by accident, our code still cannot use it — we don't import the method.
Exchange APIs don't reliably expose which scopes a key was created with. That means we can't verify from our side that you didn't accidentally enable withdrawal — which is exactly why the setup UI insists on read + trade scope only, and why the whole withdrawal method is absent from Vant8's code. Generate the key correctly and there's no way for us or a compromised token to move funds off the exchange.
Three consecutive failed calls trips a 5-minute breaker on that connection. The dashboard tells you the connection is paused — you don't lose your account to a rate-limit storm or a transient exchange outage.
Each exchange has its own API footguns — WAF rules, unified-account balance shapes, symbol renames, spot-vs-futures instance separation. Vant8's venue layer handles each one automatically so your strategies see a consistent surface.
MEXC's Akamai WAF rejects IPv6 connections. Our HTTP agent forces IPv4 keep-alive on every MEXC call so trades and POSTs don't get blocked with opaque 403s.
Bybit and OKX run all your spot and futures balances out of one shared pool by default. Bitget does the same when you opt in to UTA. Vant8 recognises the UTA arrangement (always-on for Bybit and OKX, runtime auto-detect for Bitget via the 40085 retry pattern) and dedups balances per asset — so your portfolio total reflects what you actually hold. Binance Portfolio Margin and KuCoin's unified-account option are supported via user configuration on the connection settings rather than auto-detection.
Some exchanges rename tokens (MEXC swapped TON spot to GRAM). We translate the canonical symbol to the venue-native one transparently, so your strategy's view of the asset stays consistent across venues.
KuCoin spot and KuCoin futures are separate exchanges in CCXT. Vant8 routes each to the right backend so a single 'KuCoin' connection actually fans out to the correct surface.
A live balance snapshot per asset on the connection, with USD valuation, refreshed on demand and on a sync interval.
Connection status (active, testing, error), last sync timestamp, and the exchange-side error if anything has been refused — so you can fix the root cause, not guess.
Replace a key (rotate) without disconnecting. Disconnect entirely and we evict caches, close any user-data streams, and log the revoke for your audit trail.
Connect a trade-only key in a minute. Rotate it whenever you want. Revoke it the moment you want to walk away.