Firefly III
Use flowbot fireflyiii for capability fireflyiii.
CLI root is fireflyiii — do not invent flowbot fireflyiii unless cli.md lists it as an alias.
Prefer the workflows below; load references/cli.md only when you need a flag or subcommand not covered here.
JSON fields: Transaction id is a string field id in create output.
Setup
- Ensure CLI auth:
flowbot login - Set server via
FLOWBOT_SERVER_URLor--server-url; optional--profile,--debug/-d - Prefer
-o jsonwhen parsing results programmatically - Destructive commands often need
-y/--yesin non-interactive sessions — check cli.md - Token scopes:
service:fireflyiii:read/service:fireflyiii:write
Workflows
Record an expense
When a user wants to log a withdrawal or purchase:
flowbot fireflyiii create -t withdrawal --date <YYYY-MM-DD> -a <amount> -m "<description>" --source-name "<account>" --destination-name "<payee>"- Report back with the transaction ID. Source and destination must each use ---id or ---name.
Check Firefly III connectivity
When verifying the finance backend:
flowbot fireflyiii healthflowbot fireflyiii about- Summarize version and health status.
Troubleshooting
| Error | Fix |
|---|---|
| not logged in | flowbot login |
| server URL is required | set FLOWBOT_SERVER_URL or pass --server-url |
| permission denied / 403 | token missing service scopes (service:fireflyiii:read / service:fireflyiii:write) |
| hung waiting for confirm | pass -y when the command supports it (see cli.md) |
| empty results | provider not configured, wrong id/name, or empty dataset |
| unknown command | use flowbot fireflyiii, not the capability id as the CLI verb |