Are Read-Only Exchange API Keys Safe? What They Actually Allow

Published · Privacy and safety

An open combination padlock standing in front of a blurred laptop keyboard

A read-only exchange API key cannot move money, and it can read everything. Searches for "read only api key crypto" are usually asking about the first half and are rarely told the second: a key with view permissions hands the holder a continuously updated picture of your balances and, on most venues, your order and trade history as well. The account cannot be drained with it. The account can be watched with it, in detail, for as long as the key exists.

This page sets out what those permissions allow, why the scope names differ from one exchange to the next, and the three ways read-only keys cause real problems. It covers permissions and disclosure, not exchange selection, and it is information rather than financial advice.

What can a read-only API key actually do?

It can read the account, repeatedly and automatically, without anyone logging in. In practice that means a third party holding the key can retrieve:

Put together, that is a fuller financial picture than most people expect to share. Balances alone state a net worth. Balances plus timestamped fills state a strategy, a risk tolerance and a schedule — enough for a competitor, a marketer or an attacker building a target profile.

What can it not do?

A correctly scoped read-only key cannot place an order, cancel one, or initiate a withdrawal. That is the entire protection it offers, and it is a genuine one: a leaked view-only key is a privacy incident rather than a theft. The distinction matters because the two failure modes need different responses. A stolen password means move the funds; a leaked read key means revoke it and accept that whatever it saw is gone.

Two caveats sit under that reassurance. Read-only is a property of the scopes you selected, not of the key itself, so a key created with a box ticked by accident is not read-only whatever you call it. And on venues that keep a separate withdrawal address allowlist, the allowlist is the control that actually prevents funds leaving to an unknown address — not the read scope.

Why do the permission names differ between exchanges?

Because every venue drew its own boundaries, and no standard exists. One platform groups balance access under a query-style permission separate from history; another folds both into a single view scope; a third splits funding records out on their own. The practical consequence is that "read-only" describes an intention rather than a defined set of rights, and the only authoritative list is the permission screen in front of you at the moment you create the key.

That screen is worth reading slowly, because the defaults are not always the narrow option and the wording is rarely plain. The federal guidance on access control is blunt about the principle: the FTC's Start with Security tells businesses that "not everyone on your staff needs unrestricted access to your network and the information stored on it", and that vendors and contractors with no need for sensitive data have no reason to have access to it (Start with Security: A Guide for Business). Applied to a portfolio app, that reads as: the tracker needs balances, so give it balances and nothing else.

What actually goes wrong?

FailureHow it happensWhat it costs
Over-scopingTrading permission left enabled at creationThe key can move your positions
Third-party breachThe service holding your key is compromisedA live feed of your balances, until revoked
Silent accumulationOld keys for tools you stopped usingExposure you have forgotten about
No IP restrictionKey usable from anywhere it is copied toNothing limits where it is replayed from
Screenshots and support ticketsThe secret pasted into a chat windowDisclosure to whoever reads the ticket

The middle row is the one that catches careful people. You can scope a key perfectly and still lose the data, because the risk transfers to whoever stores it. The FTC's same guidance makes the underlying point in six words: "No one can steal what you don't have."

How do you limit the exposure?

The honest answer a "read only api key crypto" question deserves is a checklist rather than a verdict, because the risk depends entirely on how the key was scoped and who holds it. Six habits cover most of it.

  1. Issue one key per tool, so revoking one does not break the others and a breach has a known blast radius.
  2. Grant the narrowest scope that makes the tool work, then verify by trying an action the key should not be able to perform.
  3. Restrict by IP address wherever the venue offers it, which makes a copied key useless from anywhere else.
  4. Never enable withdrawal permissions for a read-only integration, and keep any withdrawal address allowlist populated and locked.
  5. Revoke on a schedule. A key you have not thought about in a year is a key you are no longer supervising.
  6. Consider not issuing one at all. Balances typed in by hand disclose nothing to anyone, at the cost of doing it yourself.

The last option is the one people forget exists. A tracker learns your holdings one of three ways — a public address, an exchange key, or your own typing — and the comparison of all three is in tracking without connecting a wallet.

Which requests should end the conversation?

An app asking for a recovery phrase, private key or wallet seed is not asking for an API key, and there is no configuration that makes it safe. The FTC's consumer guidance is worth keeping in mind here as a general rule: "No legitimate business or government will ever email, text, or message you on social media to ask for money" (What to know about cryptocurrency and scams). The equivalent for keys is that no tracker needs the words that spend your coins, only the numbers that describe them, which is the subject of why no tracker needs your seed phrase.

This page does not compare exchanges, does not cover institutional key management, and does not address US tax reporting. Holdtotal, for its part, requests no exchange key at all: amounts are typed in, stored on the phone, with Android Auto Backup potentially holding a copy in the user's Google account when device backup is on. The feature list is on the home page.

FAQ

Can someone steal my coins with a read-only API key?

Not with a correctly scoped one. View permissions do not authorize withdrawals or orders, so the realistic loss is informational: balances, history and timing. The danger is a key that was never actually read-only because a permission box was ticked at creation, which is why testing the key against a forbidden action beats trusting the label on it.

Is it safer to give an app my wallet address instead?

It moves the disclosure rather than removing it. An address, and especially an extended public key, reveals holdings and history to whoever receives it, and that disclosure cannot be revoked the way a key can. A search for "read only api key crypto" and a search for address-watching end at the same question: who ends up holding a permanent view of your position.

How often should exchange API keys be rotated?

Rotate or revoke whenever a tool is retired, whenever a service you gave a key to reports a breach, and on a fixed review — quarterly is a reasonable habit for personal accounts. The more useful discipline is deletion rather than rotation: most people hold several keys for software they stopped using, and each one is exposure with no remaining benefit.