API reference

Board packs

What each month's close hands the board: its statements, burn, runway and MRR, and the commentary written about them.

Guides: Send the board pack

List board packs

GET/v1/board_packs

client.boardPacks.list()

Every board pack, the newest first: one for each close of each month, a reopened month's earlier packs kept as they were sent.

Parameters

NameTypeDescription
periodQuerystring or null

Only the packs of this month, like 2026-09.

limitQueryinteger

Page size, 1–200.

Default 50
cursorQuerystring or null

The next_cursor of the previous page.

Response

200BoardPackPage

Errors

400
The request was malformed or a parameter is invalid.
401
No valid credential was sent.
403
The credential or the member's role does not allow this.
404
No such resource in this ledger.
409
A conflicting request, e.g. one with the same Idempotency-Key still running.
422
A well-formed request a business rule refused.
429
Too many requests; retry after the Retry-After header.
500
Something failed on our side; the request_id identifies it.

Example

curl
curl "https://api.ledgerit.ai/v1/board_packs" \
  -H "Authorization: Bearer $LEDGERIT_TOKEN"

Make the board pack of a month closed before packs existed

POST/v1/board_packs· Idempotent

client.boardPacks.create()

Make the board pack of a closed month whose close has none: one closed before board packs existed. Its figures are read through the sequence that close signed off, and kept. Closing a month makes its pack without this. Refused with period_not_closed for a month that is open or reopened, and with board_pack_exists when the close already has one.

Request body

NewBoardPack

Response

201BoardPackDetailOut

Errors

400
The request was malformed or a parameter is invalid.
401
No valid credential was sent.
403
The credential or the member's role does not allow this.
404
No such resource in this ledger.
409
A conflicting request, e.g. one with the same Idempotency-Key still running.
422
A well-formed request a business rule refused.
429
Too many requests; retry after the Retry-After header.
500
Something failed on our side; the request_id identifies it.

Example

curl
curl -X POST "https://api.ledgerit.ai/v1/board_packs" \
  -H "Authorization: Bearer $LEDGERIT_TOKEN" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"period":"…"}'

Get a board pack with its figures and statements

GET/v1/board_packs/{pack_id}

client.boardPacks.get()

A board pack: the month's figures, its balance sheet, income statement and cash flow statement as its close kept them, and the commentary.

Parameters

NameTypeDescription
pack_idPath · Requiredstring

An id that starts with board_pack_.

Response

200BoardPackDetailOut

Errors

400
The request was malformed or a parameter is invalid.
401
No valid credential was sent.
403
The credential or the member's role does not allow this.
404
No such resource in this ledger.
409
A conflicting request, e.g. one with the same Idempotency-Key still running.
422
A well-formed request a business rule refused.
429
Too many requests; retry after the Retry-After header.
500
Something failed on our side; the request_id identifies it.

Example

curl
curl "https://api.ledgerit.ai/v1/board_packs/{pack_id}" \
  -H "Authorization: Bearer $LEDGERIT_TOKEN"

Write a board pack's commentary

PATCH/v1/board_packs/{pack_id}· Idempotent

client.boardPacks.update()

Write a pack's commentary. Its figures cannot change: they are what its close kept.

Parameters

NameTypeDescription
pack_idPath · Requiredstring

An id that starts with board_pack_.

Request body

BoardPackChanges

Response

200BoardPackOut

Errors

400
The request was malformed or a parameter is invalid.
401
No valid credential was sent.
403
The credential or the member's role does not allow this.
404
No such resource in this ledger.
409
A conflicting request, e.g. one with the same Idempotency-Key still running.
422
A well-formed request a business rule refused.
429
Too many requests; retry after the Retry-After header.
500
Something failed on our side; the request_id identifies it.

Example

curl
curl -X PATCH "https://api.ledgerit.ai/v1/board_packs/{pack_id}" \
  -H "Authorization: Bearer $LEDGERIT_TOKEN" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'

Delete a board pack's commentary

DELETE/v1/board_packs/{pack_id}

client.boardPacks.delete()

Delete a pack and its commentary. The reports its close kept stay, and POST makes the pack again from them.

Parameters

NameTypeDescription
pack_idPath · Requiredstring

An id that starts with board_pack_.

Response

204No content

Errors

400
The request was malformed or a parameter is invalid.
401
No valid credential was sent.
403
The credential or the member's role does not allow this.
404
No such resource in this ledger.
409
A conflicting request, e.g. one with the same Idempotency-Key still running.
422
A well-formed request a business rule refused.
429
Too many requests; retry after the Retry-After header.
500
Something failed on our side; the request_id identifies it.

Example

curl
curl -X DELETE "https://api.ledgerit.ai/v1/board_packs/{pack_id}" \
  -H "Authorization: Bearer $LEDGERIT_TOKEN"

Objects

The objects these operations take and return.

BoardPackPage

NameTypeDescription
dataRequiredarray of BoardPackOut
has_moreRequiredboolean
next_cursorRequiredstring or null

NewBoardPack

NameTypeDescription
periodRequiredstring

A closed month, like 2026-09.

BoardPackDetailOut

A board pack with its figures and statements, each produced again from the report its close kept.

NameTypeDescription
asksRequiredstring or null

What the company asks of its board and investors.

balance_sheetRequiredBalanceSheetOut or null

As of the month's last day.

cash_flowRequiredCashFlowStatementOut or null

For the month.

challengesRequiredstring or null

What did not, and what is being done about it.

close_run_idRequiredstring

The close it was made from.

close_versionRequiredinteger

Which close of the month: 1 for the first, 2 after a reopen.

closed_atRequiredstring (date-time) or null

When that close was signed off.

created_atRequiredstring (date-time)

When the pack was opened.

figuresRequiredBoardPackFiguresOut or null

Cash, burn, runway, MRR, ARR, revenue and margin for the month.

highlightsRequiredstring or null

What went well this month.

idRequiredstring

The pack's id.

income_statementRequiredIncomeStatementOut or null

For the month.

periodRequiredstring

The month it reports, like 2026-09.

report_run_idsRequiredarray of string

The kept reports it is made of: its figures and its three statements.

reproducesRequiredboolean

True when every figure is exactly what it was when the close kept it.

standsRequiredboolean

True while its close stands; false once the month was reopened, when the pack keeps the figures the board was given and a later close has its own pack.

through_sequenceRequiredinteger

The posting sequence every figure in the pack reads through.

updated_atRequiredstring (date-time)

When its commentary last changed.

updated_byRequiredstring or null

An id that starts with usr_.

updated_by_emailRequiredstring or null

Their address, while they are a member of these books.

BoardPackChanges

Only the fields sent change; an empty one, or null, clears it.

NameTypeDescription
asksstring or null

What the company asks of its board.

challengesstring or null

What did not.

highlightsstring or null

What went well this month.

BoardPackOut

A board pack: one close of one month, and what was written for the board about it.

NameTypeDescription
asksRequiredstring or null

What the company asks of its board and investors.

challengesRequiredstring or null

What did not, and what is being done about it.

close_run_idRequiredstring

The close it was made from.

close_versionRequiredinteger

Which close of the month: 1 for the first, 2 after a reopen.

closed_atRequiredstring (date-time) or null

When that close was signed off.

created_atRequiredstring (date-time)

When the pack was opened.

highlightsRequiredstring or null

What went well this month.

idRequiredstring

The pack's id.

periodRequiredstring

The month it reports, like 2026-09.

report_run_idsRequiredarray of string

The kept reports it is made of: its figures and its three statements.

standsRequiredboolean

True while its close stands; false once the month was reopened, when the pack keeps the figures the board was given and a later close has its own pack.

through_sequenceRequiredinteger

The posting sequence every figure in the pack reads through.

updated_atRequiredstring (date-time)

When its commentary last changed.

updated_byRequiredstring or null

An id that starts with usr_.

updated_by_emailRequiredstring or null

Their address, while they are a member of these books.

BalanceSheetOut

NameTypeDescription
as_ofRequiredstring (date)
assetsRequiredBalanceSheetSectionOut
balancedRequiredboolean
currencyRequiredstring
differenceRequiredstring
equityRequiredBalanceSheetSectionOut
liabilitiesRequiredBalanceSheetSectionOut
total_assetsRequiredstring
total_liabilities_and_equityRequiredstring

CashFlowStatementOut

NameTypeDescription
balancedRequiredboolean
beginning_cashRequiredstring
currencyRequiredstring
differenceRequiredstring
ending_cashRequiredstring
net_changeRequiredstring
net_incomeRequiredstring
sectionsRequiredarray of CashFlowSectionOut
sinceRequiredstring (date)
untilRequiredstring (date)

BoardPackFiguresOut

What a month's board pack says in figures, every one read from the books through the same posting sequence.

NameTypeDescription
arrRequiredstring

MRR times twelve.

burningRequiredboolean

True when the trailing net burn is above zero.

cashRequiredstring

Cash across every cash account at the end of the month.

currencyRequiredstring

The books' currency, as an ISO 4217 code.

gross_burnRequiredstring or null

Operating cash that left in the month, as a positive figure. Null before the books began.

gross_marginRequiredstring or null

Gross profit over revenue, as a fraction (0.9 = 90%); null with no revenue.

monthsRequiredarray of BurnMonthOut

Burn for up to six complete months, oldest first, ending with this one; months before the books began are left out.

mrrRequiredstring

Subscription revenue recognized in the month, as Home reads it.

mrr_monthRequiredstring (date)

The month MRR is for: this one, by its first day.

net_burnRequiredstring or null

The month's gross burn less its operating inflows. Positive means more went out than came in.

net_incomeRequiredstring

Net income in the month.

operating_expensesRequiredstring

Operating expenses in the month.

revenueRequiredstring

Revenue in the month, from the income statement.

runway_monthsRequiredstring or null

Months of cash at the trailing net burn, to one decimal; null when not burning.

sinceRequiredstring (date)

The month's first day.

trailing_monthsRequiredinteger

How many months trailing_net_burn averages.

trailing_net_burnRequiredstring or null

Average net burn of the three complete months ending with this one: what runway divides by. The figure Home shows as net burn.

untilRequiredstring (date)

The month's last day.

IncomeStatementOut

NameTypeDescription
cost_of_revenueRequiredstring
currencyRequiredstring
gross_marginRequiredstring or null
gross_profitRequiredstring
net_incomeRequiredstring
operating_expensesRequiredstring
operating_incomeRequiredstring
other_expenseRequiredstring
other_incomeRequiredstring
revenueRequiredstring
sectionsRequiredarray of IncomeSectionOut
sinceRequiredstring (date)
untilRequiredstring (date)

BalanceSheetSectionOut

NameTypeDescription
linesRequiredarray of BalanceSheetLineOut
totalRequiredstring

CashFlowSectionOut

NameTypeDescription
keyRequiredstring
linesRequiredarray of CashFlowLineOut
nameRequiredstring
totalRequiredstring

BurnMonthOut

NameTypeDescription
completeRequiredboolean

False for the current month, which is month to date.

gross_burnRequiredstring

Operating cash that left in the month, as a positive figure.

monthRequiredstring (date)

The first day of the month.

net_burnRequiredstring

Gross burn less operating inflows. Positive means more went out than came in.

operating_inflowsRequiredstring

Operating cash that came in during the month, as a positive figure.

IncomeSectionOut

NameTypeDescription
groupsRequiredarray of IncomeGroupOut
keyRequiredstring
nameRequiredstring
totalRequiredstring

BalanceSheetLineOut

NameTypeDescription
account_idRequiredstring or null

An id that starts with gla_.

amountRequiredstring
codeRequiredstring
nameRequiredstring

CashFlowLineOut

NameTypeDescription
account_idRequiredstring

An id that starts with gla_.

amountRequiredstring
codeRequiredstring
nameRequiredstring

IncomeGroupOut

NameTypeDescription
codeRequiredstring
linesRequiredarray of IncomeLineOut
nameRequiredstring
totalRequiredstring

IncomeLineOut

NameTypeDescription
account_idRequiredstring

An id that starts with gla_.

amountRequiredstring
codeRequiredstring
nameRequiredstring