Skip to content


Subversion checkout URL

You can clone with
Download ZIP
A fully tested, abstract interface to creating OAuth clients and servers.
Python Makefile
Latest commit 5fd84a6 @jaitaiwan jaitaiwan Merge pull request #200 from stevepeak/master
Submit coverage reports to Codecov

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


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.
Something went wrong with that request. Please try again.