mintapi
a screen-scraping API for Mint.com.
Installation
Ensure you have Python 2 or 3 and pip (easy_install pip) and then:
pip install mintapi
If you do not want to manually find and provide your Mint session cookies, as described below, then please also install selenium and chromedriver:
pip install selenium
brew install chromedriver # or sudo apt-get install chromium-chromedriver on Ubuntu/Debian
Usage
from Python
From python, instantiate the Mint class (from the mintapi package) and you can make calls to retrieve account/budget information. We recommend using the keyring library for persisting credentials.
import mintapi
mint = mintapi.Mint(email, password)
# Get basic account information
mint.get_accounts()
# Get extended account detail at the expense of speed - requires an
# additional API call for each account
mint.get_accounts(True)
# Get budget information
mint.get_budgets()
# Get transactions
mint.get_transactions() # as pandas dataframe
mint.get_transactions_csv(include_investment=False) # as raw csv data
mint.get_transactions_json(include_investment=False, skip_duplicates=False)
# Get net worth
mint.get_net_worth()
# Initiate an account refresh
mint.initiate_account_refresh()
Run it as a sub-process from your favorite language; pip install mintapi creates a binary in your $PATH. From the command-line, the output is JSON:
usage: mintapi [-h] [--accounts] [--budgets] [--net-worth]
[--extended-accounts] [--transactions] [--extended-transactions]
[--start-date [START_DATE]] [--include-investment]
[--skip-duplicates] [--show-pending] [--filename FILENAME]
[--keyring] [--session SESSION] [--thx_guid THX_GUID]
[email] [password]
positional arguments:
email The e-mail address for your Mint.com account
password The password for your Mint.com account
optional arguments:
-h, --help show this help message and exit
--accounts Retrieve account information (default if nothing else
is specified)
--budgets Retrieve budget information
--net-worth Retrieve net worth information
--extended-accounts Retrieve extended account information (slower, implies
--accounts)
--transactions, -t Retrieve transactions
--extended-transactions
Retrieve transactions with extra information and
arguments
--start-date [START_DATE]
Earliest date for transactions to be retrieved from.
Used with --extended-transactions. Format: mm/dd/yy
--include-investment Used with --extended-transactions
--skip-duplicates Used with --extended-transactions
--show-pending Exclude pending transactions from being retrieved.
Used with --extended-transactions
--filename FILENAME, -f FILENAME
write results to file. can be {csv,json} format.
default is to write to stdout.
--keyring Use OS keyring for storing password information
>>> mintapi --keyring email@example.com
[
{
"accountName": "Chase Checking",
"lastUpdatedInString": "25 minutes",
"accountType": "bank",
"currentBalance": 100.12,
...
},
...
]
If you need to avoid using pip or setup.py, you can also clone/download this repository and run: python mintapi/api.py
Release files for mintapi 1.29
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mintapi-1.29.tar.gz | 10.5 kB | Details |
Release files / mintapi-1.29.tar.gz
| Download URL | mintapi-1.29.tar.gz |
|---|---|
| Size | 10.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0e2ee8b514938444f58da982ddf6cf370a3ac44a8b4e49ff9294181796681b8e
|
|
BLAKE2b-256 checksum How to use checksums |
5cb13f8cf899db3e674d174c8690abc879117058e54f91cfacd0b30c495e92a2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |