Skip to main content

a screen-scraping API for Mint.com

Project description

a screen-scraping API for Mint.com. Build Status

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

Project details


Release history Release notifications

This version
History Node

1.29

History Node

1.28

History Node

1.27

History Node

1.26

History Node

1.25

History Node

1.24

History Node

1.23

History Node

1.22

History Node

1.21

History Node

1.20

History Node

1.19

History Node

1.18

History Node

1.17

History Node

1.16

History Node

1.15

History Node

1.14

History Node

1.13

History Node

1.12

History Node

1.11

History Node

1.10.2

History Node

1.10.1

History Node

1.10

History Node

1.9

History Node

1.8

History Node

1.7

History Node

1.6

History Node

1.5

History Node

1.4

History Node

1.3.2

History Node

1.3.1

History Node

1.3

History Node

1.2

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
mintapi-1.29.tar.gz (10.5 kB) Copy SHA256 hash SHA256 Source None Apr 23, 2018

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page