Query & Manage Earn Instruments
Simple Earn calls are signed — see API Keys Setup. Examples below use the
Flexible product; Locked products (client.spot.http.simple_earn.locked) follow the same shape
with a fixed subscription duration.
List Available Products
from typed_binance import Binance
async with Binance.new() as client:
products = await client.spot.http.simple_earn.flexible.list(asset='USDT')
for product in products.get('rows', []):
print(product.get('productId'), product.get('latestAnnualPercentageRate'))Subscribe
from typed_binance import Binance
async with Binance.new() as client:
subscription = await client.spot.http.simple_earn.flexible.subscribe(
product_id='USDT001', amount='10',
)
print(subscription.get('purchaseId'))View Your Positions
from typed_binance import Binance
async with Binance.new() as client:
positions = await client.spot.http.simple_earn.flexible.position(asset='USDT')
for position in positions.get('rows', []):
print(position.get('productId'), position.get('totalAmount'))Redeem
from typed_binance import Binance
async with Binance.new() as client:
redemption = await client.spot.http.simple_earn.flexible.redeem(
product_id='USDT001', redeem_all=True,
)
print(redemption.get('redeemId'))redeem_all=True redeems the full position; otherwise pass amount.
client.spot.http.simple_earn.locked follows the same list/subscribe/position/redeem shape for
Locked products. client.spot.http.staking (ETH, SOL, and on-chain-yields staking) covers its own
products with stake/redeem/account/quota instead — e.g.
client.spot.http.staking.eth.stake(amount=0.1).