Coder Social home page Coder Social logo

fast_arrow_auth's Introduction

fast_arrow_auth

A brief python library to handler API authentication with Robinhood.

Build Status   Coverage Status   Version

example

# input username and password. Or, alternatively, pull from a config file,
# see https://github.com/westonplatter/fast_arrow_auth/blob/master/examples/auth_generated_device_token.py
username = "my_username"
password = "my_device"

client = Client(username=username, password=password)
result = client.authenticate()

user = User.fetch(client)
print("Username = {}".format(user["username"]))

install

Install the package from pypi,

pip install fast_arrow_auth

design principles

fast_arrow_auth is focused only on authenticating with Robinhood's API.

It's focused on these discrete operations,

  • authenticate via username/password or username/password/mfa
  • write auth_token, etc to file for API clients to use

development

Install pipenv, and then run,

pipenv install --dev

Run the test suite via,

make test

Run the test suite against a specific python version,

pipenv run tox -e py36

releases

Adding so I don't forget the next time I release a version,

python setup.py sdist bdist_wheel
twine upload dist/*

projects using fast_arrow_auth

Add projects here.

fast_arrow_auth's People

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

bagelbyte sm5art

fast_arrow_auth's Issues

Client.get method not passing request paramerters

fast_arrow_auth's client.py is not passing, at the very least, the params dict to the requests.get method. However, this feature did work in the previous version of client.py as found in "fast_arrow". See below for the code in master at the time of this issue:

fast_arrow_auth/client.py:

def get(self, url, params=None):
        '''
        Execute HTTP GET
        '''
        headers = self._gen_headers(self.access_token, url)
        res = requests.get(url, headers=headers)
        return res.json()

fast_arrow\client.py:

def get(self, url=None, params=None, retry=True):
        '''
        Execute HTTP GET
        '''
        headers = self._gen_headers(self.access_token, url)
        res = requests.get(url,
                           headers=headers,
                           params=params,
                           timeout=15,
                           verify=self.certs)
        res.raise_for_status()
        return res.json()

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.