Sandbox
Test the Hodle API against testnet USDB with no real money.
The sandbox lets you integrate without moving real funds. It runs on Base Sepolia testnet with a test USDB token. Sandbox data is fully isolated from production.
Sandbox uses testnet USDB on Base Sepolia. No real money moves. Sandbox and production are separate environments with separate API keys and separate data stores.
Base URL
https://sandbox-api.hodle.com.brTest USDB token
Sandbox USDB is a test ERC-20 deployed on Base Sepolia:
0xdf02b9b561315018ee5a67c2ed07905a2fa83b5dView on BaseScan. 6 decimals, no real value.
Get a sandbox key
- Log into the Hodle admin.
- Open API Keys and create a new key with environment Sandbox.
- Copy the key. Sandbox keys are prefixed
hodle_test_; production keys arehodle_live_.
Authenticate every request with Authorization: Bearer hodle_test_.... A sandbox key only
works against the sandbox base URL; a production key is rejected (401) on sandbox routes.
Endpoints
The sandbox exposes USDB-only operations on Base Sepolia.
Create your sandbox wallet
curl -X POST https://sandbox-api.hodle.com.br/sandbox/api/wallet/create \
-H "Authorization: Bearer $HODLE_SANDBOX_API_KEY"Creates a Base Sepolia wallet for your sandbox app and auto-funds it with test USDB so you can start testing withdrawals immediately. Returns the address and balance. Calling it again returns the existing wallet (it funds only on first creation).
Mint test USDB
curl -X POST https://sandbox-api.hodle.com.br/sandbox/api/usdb/mint \
-H "Authorization: Bearer $HODLE_SANDBOX_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "amount": "100" }'Mints test USDB to your sandbox wallet on Base Sepolia. Returns the tx hash.
Read your sandbox wallet
curl https://sandbox-api.hodle.com.br/sandbox/api/wallet \
-H "Authorization: Bearer $HODLE_SANDBOX_API_KEY"Returns your sandbox wallet address and USDB balance.
Withdraw USDB to another wallet
curl -X POST https://sandbox-api.hodle.com.br/sandbox/api/usdb/withdraw \
-H "Authorization: Bearer $HODLE_SANDBOX_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "asset": "USDB", "to": "0xYourTargetAddress", "amount": "10" }'Transfers USDB (only) from your sandbox wallet to another Base Sepolia address. Any asset
other than USDB is rejected with 400.