Skip to content

Python bindings for the figo Connect API.

Notifications You must be signed in to change notification settings

mikamai/python-figo

This branch is 37 commits behind figo-connect/python-figo:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

author
Martin Domke
Apr 16, 2019
ff43b52 · Apr 16, 2019
Mar 15, 2016
Apr 16, 2019
Apr 16, 2019
Jul 15, 2014
Feb 8, 2018
Dec 6, 2017
Apr 16, 2019
Jan 19, 2017
Apr 16, 2019
Apr 16, 2019
Nov 14, 2017
Aug 7, 2017
Jul 3, 2017
Aug 7, 2017
Jun 19, 2017
Apr 16, 2019

Repository files navigation

python-figo Build Status PyPi Version Code Coverage

Python bindings for the figo Connect API: http://docs.figo.io/v3/

Usage

First, you have to install the package:

pip install python-figo

Now you can create a new session from the demo access token and read data:

from figo import FigoSession

session = FigoSession("ASHWLIkouP2O6_bgA2wWReRhletgWKHYjLqDaqb0LFfamim9RjexTo22ujRIP_cjLiRiSyQXyt2kM1eXU2XLFZQ0Hro15HikJQT_eNeT_9XQ")

# Print out a list of accounts including its balance
for account in session.accounts:
    print account
    print account.balance

# Print out the list of all transactions on a specific account
for transaction in session.get_account("A1.2").transactions:
    print transaction

It is just as simple to allow users to login through the API:

import webbrowser
from figo import FigoConnection, FigoSession

connection = FigoConnection("<client ID>", "<client secret>", "http://my-domain.org/redirect-url")

def start_login():
    # open the webbrowser to kick off the login process
    webbrowser.open(connection.login_url(scope="accounts=ro transactions=ro", state="qweqwe"))

def process_redirect(authentication_code, state):
    # handle the redirect url invocation, which gets passed an authentication code and the state (from the initial login_url call)

    # authenticate the call
    if state != "qweqwe":
        raise Exception("Bogus redirect, wrong state")

    # trade in authentication code for access token
    token_dict = connection.convert_authentication_code(authentication_code)

    # start session
    session = FigoSession(token_dict["access_token"])

    # access data
    for account in session.accounts:
        print account.name

You can find more documentation at http://python-figo.readthedocs.org

Demos

In this repository you can also have a look at a simple console (console_demo.py) and web demo (web_demo). While the console demo simply accesses the figo API, the web demo implements the full OAuth flow.

To install dependencies for the web demo, use

pip install python-figo[webdemo]

Environment variables

  • FIGO_API_ENDPOINT
    • Override the default API endpoint by setting the environment variable.
  • FIGO_CLIENT_ID, FIGO_CLIENT_SECRET
    • Override to run tests with a client other than the demo client

About

Python bindings for the figo Connect API.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 97.2%
  • HTML 2.8%