requests-oauthlib
OAuthlib authentication support for Requests.
Install
requests-oauthlib on PyPI
pip
pip install requests-oauthlibuv
uv add requests-oauthlibpoetry
poetry add requests-oauthlibPackage facts
| License | ISC (permissive) |
| Python support | supports the current Python release (>=3.4) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — oauthlib, requests |
| Maintenance | aging — 874 days since the last release |
| Last repo commit | |
| First released | |
| Popularity | one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-13) |
Evidence: requests_oauthlib-2.0.0-py2.py3-none-any.whl
About requests-oauthlib
from the package's own PyPI description — quoted content, verbatim
Requests-OAuthlib |build-status| |coverage-status| |docs|
This project provides first-class OAuth library support for Requests <https://requests.readthedocs.io>_.
The OAuth 1 workflow
OAuth 1 can seem overly complicated and it sure has its quirks. Luckily, requests_oauthlib hides most of these and let you focus at the task at hand.
Accessing protected resources using requests_oauthlib is as simple as:
.. code-block:: pycon
>>> from requests_oauthlib import OAuth1Session
>>> twitter = OAuth1Session('client_key',
client_secret='client_secret',
resource_owner_key='resource_owner_key',
resource_owner_secret='resource_owner_secret')
>>> url = 'https://api.twitter.com/1/account/settings.json'
>>> r = twitter.get(url)
Before accessing resources you will need to obtain a few credentials from your provider (e.g. Twitter) and authorization from the user for whom you wish to retrieve resources for. You can read all about this in the full `OAuth 1 workflow guide on RTD...
Read as markdown · JSON record · Source repository · Homepage
AI interpretation — verify before relying
AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page
Provides OAuth 1 and OAuth 2 authentication support for the Requests HTTP library, enabling seamless integration with OAuth-protected APIs and services.
Low friction: pure-Python wheel with only two runtime dependencies (oauthlib and requests). Maintenance status is aging—874 days since the last release (v2.0.0 on 2024-03-22)—though the repository remains active with recent commits and is not archived.
Licensed under ISC (permissive), allowing commercial and private use with minimal restrictions; suitable for most projects.
Usage
pip install requests-oauthlib
from requests_oauthlib import OAuth1Session
twitter = OAuth1Session('client_key', client_secret='client_secret',
resource_owner_key='resource_owner_key',
resource_owner_secret='resource_owner_secret')
r = twitter.get('https://api.twitter.com/1/account/settings.json')
Verdict: Production-stable OAuth library (Development Status 5) with broad Python 3 support (3.4–3.12) and no known vulnerabilities. Install friction is low and dependencies are minimal. The aging maintenance status (874 days since release) warrants monitoring, but the active repository and top-1000 popularity suggest continued viability for OAuth workflows.
Needs verification
- Whether the 874-day release gap reflects deliberate stability or reduced maintenance capacity
- Compatibility status with the latest oauthlib versions and whether any breaking changes are expected
Similar packages
permissive · top 1,000 on PyPI
Authlibpermissive · top 1,000 on PyPI
oauth2clientpermissive · top 1,000 on PyPI
google-auth-oauthlibpermissive · top 1,000 on PyPI
supabase-functionspermissive · top 1,000 on PyPI
mpmathpermissive · top 1,000 on PyPI
pydata-google-authpermissive · top 1,000 on PyPI
httpcorepermissive · top 100 on PyPI
google-authpermissive · top 100 on PyPI
google-auth-httplib2permissive · top 1,000 on PyPI