Monarch Money API

raw JSON →
0.1.15 verified Mon Apr 27 auth: no python

An unofficial Python wrapper for the Monarch Money GraphQL API. Version 0.1.15 provides access to accounts, transactions, budgets, categories, and more. Release cadence is irregular, with frequent bugfixes for API changes.

pip install monarchmoney
error HTTP 403 error after upgrading monarchmoney
cause Monarch invalidated old saved sessions; session file is incompatible.
fix
Delete the .mm session file: rm -fR .mm and then call mm.login() again.
error ModuleNotFoundError: No module named 'monarchmoney'
cause The library is not installed or installed in a different environment.
fix
Install using pip: pip install monarchmoney
error AttributeError: module 'monarchmoney' has no attribute 'MonarchMoney'
cause Incorrect import statement; trying to use the module as a class.
fix
Use: from monarchmoney import MonarchMoney
error requests.exceptions.ConnectionError: HTTPSConnectionPool
cause Network issue or API endpoint unreachable (e.g., invalid URL or proxy).
fix
Check your internet connection and ensure no proxy blocks requests to api.monarchmoney.com.
breaking Saved sessions older than v0.1.14 may cause 403 errors. Delete the .mm session file if you encounter auth failures after upgrade.
fix Run: rm -fR .mm in the directory where the session was saved, then re-authenticate.
deprecated The alpha/beta status of this library means the API may change without notice. Pin your version to avoid sudden breakage.
fix Use monarchmoney==0.1.15 in your requirements.txt or poetry.lock.
gotcha The library uses an unsupported, unofficial API. Monarch Money may ban your account for excessive or abnormal usage.
fix Limit request frequency and avoid scraping; use as intended for personal finance management.

Initialize MonarchMoney, log in, and fetch accounts.

from monarchmoney import MonarchMoney

mm = MonarchMoney()
mm.login(username='your-email', password='your-password')
accounts = mm.get_accounts()
print(accounts)