Breeze API provides a straightforward way to integrate yield functionality into your application. With standard HTTPS endpoints and JSON responses, you can integrate Breeze without blockchain expertise - the API handles all Solana interactions for you.
Authentication
All API requests require an API key passed in the header:
Get Your API Key Generate an API key from the Breeze Customer Portal.
Core Endpoints
GET /breeze-balances/{user_id}
Get detailed balances with strategy info, position values, deposits, yield earned, and APY.
GET /user-balances/{user_id}
Get user balance information with optional filtering.
GET /user-yield/{user_id}
Get total yield earned by a user.
Generate a complete serialized transaction for depositing funds into a strategy.
Generate raw Solana instructions for depositing (advanced use cases).
Generate a complete serialized transaction for withdrawing funds from a strategy.
Generate raw Solana instructions for withdrawing (advanced use cases).
Quick Start
1. Get Strategy Info
First, fetch your strategy details to see supported assets and current APY:
curl -X GET "https://api.breeze.baby/strategy-info/{strategy_id}/" \
-H "x-api-key: YOUR_API_KEY"
Response:
{
"strategy_id" : "43620ba3-354c-456b-aa3c-5bf7fa46a6d4" ,
"strategy_name" : "my-strategy" ,
"assets" : [ "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v" , "..." ],
"apy" : 4.29 ,
"apy_per_asset" : {
"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v" : 5.66
}
}
2. Check User Balances
Get a user’s current positions and earned yield:
curl -X GET "https://api.breeze.baby/breeze-balances/{user_pubkey}?strategy_id={strategy_id}" \
-H "x-api-key: YOUR_API_KEY"
3. Generate Deposit Transaction
Create a transaction for the user to sign:
curl -X POST "https://api.breeze.baby/deposit/tx" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"params": {
"strategy_id": "your-strategy-id",
"base_asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"amount": 1000000,
"user_key": "user-wallet-pubkey",
"payer_key": "user-wallet-pubkey"
}
}'
Response:
{
"base64-encoded-transaction"
}
4. Generate Withdraw Transaction
curl -X POST "https://api.breeze.baby/withdraw/tx" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"params": {
"strategy_id": "your-strategy-id",
"base_asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"amount": 1000000,
"user_key": "user-wallet-pubkey",
"payer_key": "user-wallet-pubkey"
}
}'
Amount Format : Amounts are in raw token units. For USDC/USDT (6 decimals), 1 token = 1,000,000. For SOL (9 decimals), 1 SOL = 1,000,000,000.
Transaction Flow
Generate Transaction
Call /deposit/tx or /withdraw/tx to get a serialized transaction.
Deserialize
Deserialize the base64-encoded transaction in your client.
Sign
Have the user sign the transaction with their wallet.
Submit
Send the signed transaction to the Solana network.
Next Steps