HLEDGER-WEB(1) hledger User Manuals HLEDGER-WEB(1) (NAME) hledger-web - API hledger (SYNOPSIS) hledger-web [OPTS] [QUERY] hledger web [OPTS] [QUERY] (DESCRIPTION) hledger 1.52 . hledger . hledger . hledger ledger(1) beancount(1) . hledger-web . (CLI) (TUI) hledger-ui ( ) . hledger-web (journal) . . () . hledger LEDGER_FILE ( ) ( $HOME/.hledger.journal) -f . timeclock timedot CSV/SSV/TSV . ( hledger(1) -> Input .) hledger-web : o --serve-browse ( ): JSON API ( ) . o --serve: JSON API . o --serve-api: JSON API . hledger-web stdout . (OPTIONS) hledger-web : Flags: --serve --server --serve-api --serve JSON web API --allow=view|add|edit (: `add`). `sandstorm` ( `X-Sandstorm-Permissions` ). --cors=ORIGIN cross-origin ORIGIN "*" --host=IPADDR IP (: 127.0.0.1) --port=PORT TCP (: 5000) --socket=SOCKET IP ( --serve ) --base-url=BASEURL URL (: http://IPADDR:PORT) --test hledger-web . hspec -- : hledger-web --test --help hledger-web 127.0.0.1 . --host . 0.0.0.0 . --port TCP . hledger-web . --socket hledger-web TCP . nginx . ( : proxy_pass http://unix:/tmp/hledger/${remote_user}.socket;.) --base-url hledger-web . hledger-web . http://HOST:PORT/ TCP ( http://HOST ). URL (route parsing) . hledger-web hledger : General input/data transformation flags: -f --file=[FMT:]FILE FILE stdin FILE - FMT:. . $LEDGER_FILE $HOME/.hledger.journal . --rules=RULESFILE CSV/SSV/TSV . FILE.csv.rules FILE.csv . --alias=A=B|/RGX/=RPL A B --auto ("=") --forecast[=PERIOD] ("~") . (PERIOD) ( ). . hledger-ui . -I --ignore-assertions (balance assertions) --txn-balancing=... : 'old': 'exact': () --infer-costs --infer-equity --infer-market-prices --pivot=TAGNAME -s --strict ( -I) --verbose-tags / General output/reporting flags (supported by some commands): -b --begin=DATE / / -e --end=DATE / ( ) -D --daily -W --weekly -M --monthly -Q --quarterly ( ) -Y --yearly -p --period=PERIODEXP / --today=DATE ( ) --date2 / () -U --unmarked / -P --pending / (pending) -C --cleared / (cleared) ( -U/-P/-C ) -R --real -E --empty . hledger-ui hledger-web . --depth=DEPTHEXP ( NUM-) : NUM . REGEXP=NUM . -B --cost / -V --market () . --value=end. -X --exchange=COMM () . --value=end,COMM. --value=WHEN[,COMM] () . WHEN : 'then': 'end': () 'now': YYYY-MM-DD: -c --commodity-style=S . : -c '.' -c '1.000,00 EUR' --pretty[=YN] 'y'/'yes' 'n'/'no' . YN . General help flags: -h --help --tldr tldr --info info --man man --version --debug=[1-9] (: 1) --pager=YN (pager) y/yes () n/no --color=YNA --colour ANSI y/yes n/no auto () hledger-web ( hledger-ui hledger). -E/--empty . -E . ( hledger-web .) / (query) ( ). bash TAB . Install > Shell completions . (PERMISSIONS) hledger-web . : o IP ( --host ). 127.0.0.1 . o caddy apache o --allow=ACCESSLEVEL . ACCESSLEVEL : o view - () o add - o edit - () o sandstorm - ( Sandstorm hledger-web:) view add edit HTTP X-Sandstorm-Permissions add . (EDITING, UPLOADING, DOWNLOADING) manage <<>> . . hledger ( ) . hledger-web ( ). hledger-web (commit) ( cron job entr). () ( ) . ( .) (RELOADING) hledger-web ( hledger-web ) . hledger-web . (: .) (JSON API) hledger-web JSON API . JSON API --serve-api . : $ hledger-web -f examples/sample.journal --serve-api ... JSON : /version /accountnames /transactions /prices /commodities /accounts /accounttransactions/ACCOUNTNAME ( accounts). ( hledger-web ): $ curl -s http://127.0.0.1:5000/accountnames | python -m json.tool [ "assets", "assets:bank", "assets:bank:checking", "assets:bank:saving", "assets:cash", "expenses", "expenses:food", "expenses:supplies", "income", "income:gifts", "income:salary", "liabilities", "liabilities:debts" ] : $ curl -s http://127.0.0.1:5000/transactions | python -m json.tool [ { "tcode": "", "tcomment": "", "tdate": "2008-01-01", "tdate2": null, "tdescription": "income", "tindex": 1, "tpostings": [ { "paccount": "assets:bank:checking", "pamount": [ { "acommodity": "$", "aismultiplier": false, "aprice": null, ... JSON hledger haddock Hledger.Data.Json Transaction . . OpenAPI . JSON "Report" . haddock Hledger.Web.Handler.MiscR . /accounttransactions getAccounttransactionsR "accountTransactionsReport ..." . haddock accounttransactions/ AccountTransactionsReport AccountTransactionsReportItem ( ) . PUT /add hledger-web add ( ). (payload) JSON hledger ( ). JSON /transactions /accounttransactions hledger-web hledger-lib : .../hledger$ stack ghci hledger-lib >>> writeJsonFile "txn.json" (head $ jtxns samplejournal) >>> :q hledger-1.17 ( JSON Transaction hledger ): { "tcomment": "", "tpostings": [ { "pbalanceassertion": null, "pstatus": "Unmarked", "pamount": [ { "aprice": null, "acommodity": "$", "aquantity": { "floatingPoint": 1, "decimalPlaces": 10, "decimalMantissa": 10000000000 }, "aismultiplier": false, "astyle": { "ascommodityside": "L", "asdigitgroups": null, "ascommodityspaced": false, "asprecision": 2, "asdecimalpoint": "." } } ], "ptransaction_": "1", "paccount": "assets:bank:checking", "pdate": null, "ptype": "RegularPosting", "pcomment": "", "pdate2": null, "ptags": [], "poriginal": null }, { "pbalanceassertion": null, "pstatus": "Unmarked", "pamount": [ { "aprice": null, "acommodity": "$", "aquantity": { "floatingPoint": -1, "decimalPlaces": 10, "decimalMantissa": -10000000000 }, "aismultiplier": false, "astyle": { "ascommodityside": "L", "asdigitgroups": null, "ascommodityspaced": false, "asprecision": 2, "asdecimalpoint": "." } } ], "ptransaction_": "1", "paccount": "income:salary", "pdate": null, "ptype": "RegularPosting", "pcomment": "", "pdate2": null, "ptags": [], "poriginal": null } ], "ttags": [], "tsourcepos": { "tag": "JournalSourcePos", "contents": [ "", [ 1, 1 ] ] }, "tdate": "2008-01-01", "tcode": "", "tindex": 1, "tprecedingcomment": "", "tdate2": null, "tdescription": "income", "tstatus": "Unmarked" } curl . : $ curl http://127.0.0.1:5000/add -X PUT -H 'Content-Type: application/json' --data-binary @txn.json (DEBUG OUTPUT) --debug[=N] . N ( ) ( ) . . stderr stdout . stderr : hledger-web --debug=3 2>hledger-web.log. (ENVIRONMENT) LEDGER_FILE -f/--file . : $HOME/.hledger.journal. (BUGS) hledger (https://bugs.hledger.org) hledger (https://hledger.org/support) . : . (AUTHORS) Simon Michael . http://hledger.org/CREDITS.html . (COPYRIGHT) 2007-2023 Simon Michael . (LICENSE) GNU GPL . (SEE ALSO) hledger(1), hledger-ui(1), hledger-web(1), ledger(1) hledger-web-1.52 March 2026 HLEDGER-WEB(1)