B2B Partner API

Get Balance

Retrieve your current balance, yield, and withdrawal information.

GET/api/1/b2b/balance

Request

curl -X GET "https://api.sproutfi.xyz/api/1/b2b/balance" \
  -H "Authorization: Bearer YOUR_API_KEY"

Response

{
  "code": 0,
  "msg": "success",
  "data": {
    "principal": "10000.00",
    "total_yield": "135.22",
    "daily_yield": "1.50",
    "withdrawable": "10135.22"
  }
}

Response Fields

ParameterTypeDescription
principalstringTotal deposited amount (deposits minus withdrawals), rounded to 2 decimal places
total_yieldstringNet yield earned after management fees
daily_yieldstringYield earned since the last daily snapshot
withdrawablestringAmount available for withdrawal (principal + net yield), rounded to 2 decimal places

How Fields Are Calculated

FieldCalculation
principalSum of deposits - Sum of withdrawals (real-time from transactions)
total_yieldCurrent vault value - principal - cumulative fees (floored at 0)
daily_yieldCurrent gross yield - gross yield at last snapshot
withdrawableprincipal + total_yield

Example: Node.js

const response = await fetch('https://api.sproutfi.xyz/api/1/b2b/balance', {
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY'
  }
});

const { data } = await response.json();
console.log('Principal:', data.principal);
console.log('Total yield:', data.total_yield);
console.log('Daily yield:', data.daily_yield);
console.log('Withdrawable:', data.withdrawable);

Example: Python

import requests

response = requests.get(
    'https://api.sproutfi.xyz/api/1/b2b/balance',
    headers={'Authorization': 'Bearer YOUR_API_KEY'}
)

data = response.json()['data']
print(f"Principal: {data['principal']}")
print(f"Total yield: {data['total_yield']}")
print(f"Daily yield: {data['daily_yield']}")
print(f"Withdrawable: {data['withdrawable']}")