# Blockchain API

The Crypto APIs Blockchain API lets your app read and send crypto on 35+
networks without running nodes. One REST API covers balances, transactions,
fees and sending. Webhooks (alerts sent to your server) flag every deposit. You
create addresses from an xPub (a wallet's public key) and sign on your servers,
so we never hold your keys.

Start with a 14-day free trial: mainnet included, no card.

## Key facts

| | |
| --- | --- |
| Networks | 35+ mainnets and testnets |
| Interface | REST + webhooks |
| Custody | Non-custodial, you sign |
| Signer | `@cryptoapis-io/offline-signer` (npm, MIT) |
| Free trial | 14 days, mainnet included, no card |
| Credits used up | Prepaid packs, calls keep working |
| Company | Crypto APIs, Inc. · Delaware, USA · since 2018 |

## How do you send a transaction without giving up your keys?

Six steps with one API key, and your keys stay on your servers for the whole
loop.

1. **Read** — balances, transactions, blocks and tokens on 35+ networks.

   ```
   curl https://rest.cryptoapis.io/addresses-latest/evm/tron/mainnet/{address}/balance \
     -H "X-API-Key: YOUR_API_KEY"
   ```

2. **Derive** — create receiving addresses from your xPub. It is a public key,
   so no custody.

   ```
   curl "https://rest.cryptoapis.io/utils/bitcoin/mainnet/xpubs/{xpub}/derive-addresses?addressFormat=p2wpkh&addressesCount=1&isChange=false&startIndex=0" \
     -H "X-API-Key: YOUR_API_KEY"
   ```

3. **Prepare** — get an unsigned transaction with the fee already set.

   ```
   curl -X POST https://rest.cryptoapis.io/prepare-transactions/evm/tron/mainnet/trc20-tokens \
     -H "X-API-Key: YOUR_API_KEY" \
     -d '{"data":{"item":{"sender":"…","recipient":"…","amount":"250.00","contract":"TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t"}}}'
   ```

4. **Sign locally** — on your servers with the free
   [offline signer](/products/blockchain-api/offline-signer). No API key, no
   network call; your key never leaves your process.

   ```js
   import { tronSignUnsignedHex } from "@cryptoapis-io/offline-signer/tron";
   const { signedTransactionHex } = tronSignUnsignedHex({
     unsignedTransactionHex: rawDataHex,
     privateKey: process.env.TRON_PRIVATE_KEY,
   });
   ```

5. **Broadcast** — push the signed transaction to the network.

   ```
   curl -X POST https://rest.cryptoapis.io/broadcast-transactions/tron/mainnet \
     -H "X-API-Key: YOUR_API_KEY" \
     -d '{"data":{"item":{"signedTransactionHex":"…"}}}'
   ```

6. **Webhooks** — get a webhook when a deposit arrives or a transaction
   confirms.

   ```
   curl -X POST https://rest.cryptoapis.io/blockchain-events/tron/mainnet/address-tokens-transactions-confirmed \
     -H "X-API-Key: YOUR_API_KEY" \
     -d '{"data":{"item":{"address":"…","receiveCallbackOn":3,"callbackUrl":"https://your.app/hooks/deposits"}}}'
   ```

## Capabilities

- [Blockchain data](/products/blockchain-api/address-latest) — balances, transaction history, blocks and tokens in one response shape on every network.
- [xPub and HD wallets](/products/blockchain-api/hd-wallets-management) — derive and sync addresses from an xPub, ypub or zpub.
- [Prepare transactions](/products/blockchain-api/prepare-transactions) — unsigned transactions for UTXO, EVM and Tron with fees set.
- [Broadcast transactions](/products/blockchain-api/broadcast-transactions) — send signed raw transactions to 35+ networks.
- [Webhooks](/products/blockchain-api/blockchain-events) — address, token and confirmation events sent to your URL.
- [Fee estimation](/products/blockchain-api/blockchain-fees) — slow, standard and fast fee estimates for each network.
- [Transaction simulator](/products/blockchain-api/transaction-simulator) — see what a transaction will do before you sign it.
- [Free offline signer](/products/blockchain-api/offline-signer) — signs EVM, UTXO, Tron, XRP, Kaspa and Solana transactions in your process. MIT licence.

Also in the API: [address history](/products/blockchain-api/address-history),
[transactions data](/products/blockchain-api/transactions-data),
[block data](/products/blockchain-api/block-data),
[contracts](/products/blockchain-api/contracts),
[blockchain utils](/products/blockchain-api/blockchain-utils),
[market data](/products/blockchain-api/market-data) and
[AI compatibility](/products/blockchain-api/ai-compatibility).

## Networks

35+ networks, mainnet and testnet: Bitcoin, Ethereum, Tron, Solana, BNB Smart
Chain, Polygon, XRP Ledger, Litecoin, Avalanche and more.
[See all networks](/what-we-support).

## Stablecoins

Read USDT and USDC balances and transfers, prepare token transfers and get a
webhook when USDT or USDC arrives. The same calls work for TRC-20, ERC-20 and
BEP-20. See the [USDT API](/tokens/tether) and [USDC API](/tokens/usdcoin).
Coming soon: a free USDT checker (is an address frozen?) and Tron Energy (cut
USDT TRC-20 fees).

## How does Crypto APIs compare with Tatum, Moralis and Blockdaemon?

| | Crypto APIs | Tatum | Moralis | Blockdaemon |
| --- | --- | --- | --- | --- |
| Free trial or free tier | 14-day free trial: mainnet and every feature, no card | 100K lifetime credits, 3 requests a second | No free plan; trial on request | Free plan: 1M CU a month, one test key |
| Lowest paid plan | See [pricing](/pricing) | Starter from $49 / month | Starter $149 / month | Starter; price not published |
| Above your plan | Prepaid packs at your subscription's rate; calls keep working | Auto-upgrade to the next tier, or keys stop | Published overage per million CU | Overage price not published |
| Prepare and broadcast transactions | Yes, and you sign locally | Transaction and broadcast APIs | Data API only; signed transactions go through RPC | Transaction API, plus MPC key management |
| Self-serve signup | Email, Google or GitHub | Email, Google or GitHub | Email or Google | Email, Google or GitHub |
| Networks claimed | 35+ | 130+ (RPC) | 40+ | 50+ |

Checked on each vendor's public pages and docs on 27 Oct 2026. Tatum claims more
chains; pick it if chain count matters most.
[Compare with alternatives](/compare/crypto-api-alternatives).

## Pricing

Start with a 14-day free trial. Subscriptions are in credits and billed on the
1st of each month. If your credits run out and pay-as-you-go is on, a prepaid pack is added
and billed to you at your subscription's pay-as-you-go rate, so your calls keep
working. Custom subscriptions cover large volume and invoice billing.
[See pricing](/pricing).

## FAQ

**What is a blockchain API?** A blockchain API lets your app read and write
blockchain data over HTTPS without running nodes. With Crypto APIs you call one
REST API for balances, transactions and blocks, and you prepare and broadcast
transactions on 35+ networks.

**Is the Blockchain API non-custodial?** Yes. You derive addresses from an xPub
(a public key), we prepare unsigned transactions, you sign them on your own
servers with `@cryptoapis-io/offline-signer`, and we broadcast them. We never
see or hold your private keys.

**Which networks does it support?** 35+ networks, including Bitcoin, Ethereum,
Tron, Solana, BNB Smart Chain, Polygon, XRP Ledger and Litecoin, plus their main
testnets.

**Does it support USDT and USDC?** Yes. Read USDT and USDC balances and
transfers, prepare token transfers and get webhooks when tokens arrive, for
example USDT on Tron (TRC-20) and Ethereum (ERC-20).

**Is there a free trial?** Yes. Every account can start a one-time 14-day free
trial. Mainnet, testnets and every feature are included, and no card is needed.
The trial ends after 14 days or when its credits run out, whichever comes first.
Then calls that use credits stop until you choose a subscription.

**How much does the Blockchain API cost?** Subscriptions are in credits and
billed on the 1st of each month; see [pricing](/pricing) for each one's price and credits.
Custom subscriptions are for large volume.

## Pointers

- [Products](/products) — every Crypto APIs product.
- [Pricing](/pricing)
- [Developer portal](https://developers.cryptoapis.io/) — full REST API reference and code samples.
