List position

Returns the org's Balance Sheet as of to (empty = all time), with the Assets == Liabilities + Equity equation proof.

GET /v1/books/position

Addresshttps://api.hanzo.ai/v1/books/position
MethodGET
Operationget_books_position
AuthAuthorization: Bearer $HANZO_API_KEY

Returns the org's Balance Sheet as of to (empty = all time), with the Assets == Liabilities + Equity equation proof.

Request

2 fields.

FieldInTypeRequiredDescription
sandboxquerystring—Sandbox reads the org's SANDBOX ledger when it is exactly "true".
toquerystring—To is the RFC3339 instant the statement is struck as of.

Response

StatusBodyMeaning
200books.BalanceSheetok
defaultproblem-detailsrefused

200 body — 20 fields.

FieldInTypeAlwaysDescription
asOfbodystring—AsOf is the posting time the statement is taken at, inclusive.
assetsbodybooks.BalanceLine[]—Assets are what the org OWNS at that instant, one line per account that has a balance.
assets[].accountbodystring—Account is the chart-of-accounts number this line reports on.
assets[].amountbodyinteger (int64)—Amount is the balance as of the statement date, in whole cents, in its NATURAL sign: positive when the account behaved normally, on all three sides.
assets[].namebodystring—Name is the account's human name, or the derived line's own name.
assets[].typebodystring—Type is the account's fundamental class.
balancedbodyboolean—Balanced is whether assets equal liabilities plus equity — the accounting equation, computed from the totals above rather than assumed.
equitybodybooks.BalanceLine[]—Equity is what is left over for the owners.
equity[].accountbodystring—Account is the chart-of-accounts number this line reports on.
equity[].amountbodyinteger (int64)—Amount is the balance as of the statement date, in whole cents, in its NATURAL sign: positive when the account behaved normally, on all three sides.
equity[].namebodystring—Name is the account's human name, or the derived line's own name.
equity[].typebodystring—Type is the account's fundamental class.
liabilitiesbodybooks.BalanceLine[]—Liabilities are what the org OWES — including customers' unspent prepaid credit, which is their money until it is consumed and so is carried here rather than counted as revenue.
liabilities[].accountbodystring—Account is the chart-of-accounts number this line reports on.
liabilities[].amountbodyinteger (int64)—Amount is the balance as of the statement date, in whole cents, in its NATURAL sign: positive when the account behaved normally, on all three sides.
liabilities[].namebodystring—Name is the account's human name, or the derived line's own name.
liabilities[].typebodystring—Type is the account's fundamental class.
totalAssetsbodyinteger (int64)—TotalAssets is the sum of the asset lines, in cents.
totalEquitybodyinteger (int64)—TotalEquity is the sum of the equity lines including retained earnings, in cents.
totalLiabilitiesbodyinteger (int64)—TotalLiabilities is the sum of the liability lines, in cents.

Failure carries the platform error shape — see Errors.

Examples

hanzo books position
import { Configuration, BooksApi } from 'hanzoai';

const api = new BooksApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.getBooksPosition();
from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import BooksApi

client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = BooksApi(client).get_books_position()
cfg := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)

resp, _, err := client.BooksAPI.GetBooksPosition(context.Background()).Execute()
if err != nil {
	return err
}
use hanzo_client::apis::{configuration::Configuration, books_api};

let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();

let result = books_api::get_books_position(&cfg, Default::default()).await?;
import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.BooksApi;

ApiClient client = new ApiClient();
client.setBearerToken(System.getenv("HANZO_API_KEY"));

var result = new BooksApi(client).getBooksPosition();
curl https://api.hanzo.ai/v1/books/position \
  -H "Authorization: Bearer $HANZO_API_KEY"

MCP reaches books through the books tool, which names its 20 operations with its own verbs — this one among them, under a name only MCP declares. describe explains any of them:

curl -X POST https://api.hanzo.ai/v1/mcp \
  -H "Content-Type: application/json" \
  -d '{
       "jsonrpc": "2.0",
       "id": 1,
       "method": "tools/call",
       "params": {
         "name": "describe",
         "arguments": {
           "op": "list_book_accounts"
         }
       }
     }'

Books API · All Hanzo APIs · Interactive reference

Was this page useful?