POST /api/v1/reports.
submit_report
Send a message to the family’s dashboard. Thetitle IS the message — it’s rendered as the primary line in the dashboard feed, like a direct message. Most users will only read the title. Write it as a complete past-tense sentence with specific numbers and outcomes.
The body is where structure, headers, and detail go — the UI renders markdown with ## section headers, bullet lists, tables, and inline transaction links ([Transaction Name](/transactions/ID)).
Read breadbox://report-format for the full style guide and report templates (review report, spending report, anomaly report).
Parameters
string
required
Concise 1–2 sentence summary. This is the primary thing the family sees. Good: “Reviewed 47 transactions this week — 3 recategorized and no suspicious activity found.” Bad: “Weekly Review Complete” (too vague).
string
required
Markdown body with sections, bullets, and transaction links. Use
## headers. Skip # entirely.string
default:"info"
info (routine updates), warning (needs attention), critical (urgent action).array of strings
Short labels for categorizing reports (e.g.
weekly-review, anomaly). Max 10.string
Custom author name (e.g.
Review Agent, Budget Monitor). Overrides the API key name for display.Example input
Author the markdown body first — this is what the household sees rendered in the dashboard feed:body field on the tool call. Newlines become \n:
Example output
The session link is recorded server-side (the session row gets a
report_id) but is not echoed back on this response — the submission carries session_id in, not out.