Reports: Get income statement
get_income_statement Get an income statement (profit & loss) for a time period.
The window spans exactly ``months`` calendar months back from today.
When that predates the user's first transaction, the start is clamped
to the first-activity date and ``period.clamped_to_first_activity`` is
true (``period.requested_start_date`` echoes the un-clamped start) —
so a "6 months" label backed by only 3 months of real data is
detectable, matching the other analytics tools (rule 35).
Args:
months: Number of months to cover (default: 6). Values <= 0 return
a validation error. Values > 24 are clamped to a 24-month window
but ``period.requested_months`` / ``period.clamped_months`` echo
the original request so the clamp is detectable.
Returns:
Income and expense breakdown by category with totals, plus a
``period`` block with start/end/months + the clamp metadata
(requested_months, clamped_months, requested_start_date,
clamped_to_first_activity).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| months | No |