Skip to content
A fully tested, abstract interface to creating OAuth clients and servers.
Python Makefile
Branch: master
Clone or download
jaitaiwan Merge pull request #216 from SylvainDe/master
Add most recent Python versions in Travis CI
Latest commit b94f69b Feb 12, 2018

Join the chat at Build Status Coverage Number of issues Licence MIT

Note: This library implements OAuth 1.0 and not OAuth 2.0.


python-oauth2 is a python oauth library fully compatible with python versions: 2.6, 2.7, 3.3 and 3.4. This library is depended on by many other downstream packages such as Flask-Oauth.


You can install oauth2 via the PIP package.

$ pip install oauth2

We recommend using virtualenv.


Examples can be found in the wiki

Running tests

You can run tests using the following at the command line:

$ pip install -r requirements.txt
$ python test


This code was originally forked from Leah Culver and Andy Smith's code. Some of the tests come from a fork by Vic Fryzel, while a revamped Request class and more tests were merged in from Mark Paschal's fork. A number of notable differences exist between this code and its forefathers:

  • 100% unit test coverage.
  • The DataStore object has been completely ripped out. While creating unit tests for the library I found several substantial bugs with the implementation and confirmed with Andy Smith that it was never fully baked.
  • Classes are no longer prefixed with OAuth.
  • The Request class now extends from dict.
  • The library is likely no longer compatible with Python 2.3.
  • The Client class works and extends from httplib2. It's a thin wrapper that handles automatically signing any normal HTTP request you might wish to make.
You can’t perform that action at this time.