Need help with aioauth-client?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

134 Stars 43 Forks MIT License 284 Commits 4 Opened issues


OAuth client for aiohttp

Services available


Need anything else?

Contributors list

AIOAuth Client

.. _description:

AIOAuth Client -- OAuth support for Asyncio_ / Trio_ libraries.

.. _badges:

.. image:: :target: :alt: Tests Status

.. image:: :target: :alt: PYPI Version

.. image:: :target: :alt: Python Versions

.. _contents:

.. contents::

.. _requirements:


  • python >= 3.7

.. _installation:


AIOAuth Client should be installed using pip: ::

pip install aioauth-client

.. _usage:


.. code:: python

# OAuth2
from aioauth_client import GithubClient

github = GithubClient( client_id='b6281b6fe88fa4c313e6', client_secret='21ff23d9f1cad775daee6a38d230e1ee05b04f7c', )

authorize_url = github.get_authorize_url(scope="user:email")


Reload client to authorize_url and get code


otoken, _ = await github.get_access_token(code)

Save the token for later use


github = GithubClient( client_id='b6281b6fe88fa4c313e6', client_secret='21ff23d9f1cad775daee6a38d230e1ee05b04f7c', access_token=otoken, )

Or you can use this if you have initilized client already

github.access_token = otoken

response = await github.request('GET', 'user') user_info = await response.json()

.. code:: python

# OAuth1
from aioauth_client import TwitterClient

twitter = TwitterClient( consumer_key='J8MoJG4bQ9gcmGh8H7XhMg', consumer_secret='7WAscbSy65GmiVOvMU5EBYn5z80fhQkcFWSLMJJu4', )

request_token, _ = await twitter.get_request_token()

authorize_url = twitter.get_authorize_url(request_token) print("Open",authorize_url,"in a browser")


Reload client to authorize_url and get oauth_verifier


print("PIN code:") oauth_verifier = input() oauth_token, data = await twitter.get_access_token(oauth_verifier) oauth_token_secret = data.get('oauth_token_secret')

Save the tokens for later use


twitter = TwitterClient( consumer_key='J8MoJG4bQ9gcmGh8H7XhMg', consumer_secret='7WAscbSy65GmiVOvMU5EBYn5z80fhQkcFWSLMJJu4', oauth_token=oauth_token, oauth_token_secret=oauth_token_secret, )

Or you can use this if you have initilized client already

twitter.access_token = oauth_token

twitter.access_token_secret = oauth_token_secret

timeline = await twitter.request('GET', 'statuses/home_timeline.json') content = await print(content)


Run example with command: ::

make example

Open http://localhost:5000 in your browser.

.. _bugtracker:

Bug tracker

If you have any suggestions, bug reports or annoyances please report them to the issue tracker at

.. _contributing:


Development of AIOAuth Client happens at:

.. _license:


Licensed under a

MIT license

.. _links:

.. _klen: .. _Asyncio: .. _Trio:

.. _MIT license:

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.