# Authlib: Python Authentication

Release v1.5.1. (Installation)

The ultimate Python library in building OAuth and OpenID Connect servers. It is designed from low level specifications implementations to high level frameworks integrations, to meet the needs of everyone.

Authlib is compatible with Python3.6+.

## User’s Guide

This part of the documentation begins with some background information about Authlib, and installation of Authlib. Then it will explain OAuth 1.0, OAuth 2.0, and JOSE. At last, it shows the implementation in frameworks, and libraries such as Flask, Django, Requests, HTTPX, Starlette, FastAPI, and etc.

- Get Started
  - Introduction
  - Installation
  - Logging
- OAuth Clients
  - OAuth 1 Session
  - OAuth 2 Session
  - OAuth for Requests
  - OAuth for HTTPX
  - Web OAuth Clients
  - Flask OAuth Client
  - Django OAuth Client
  - Starlette OAuth Client
  - FastAPI OAuth Client
  - Client API References
- JOSE Guide
  - Usage
  - Guide
- OAuth & OpenID Connect
  - OAuth 1.0
  - OAuth 2.0
  - OpenID Connect
- Flask OAuth Providers
  - Flask OAuth 1.0 Server
  - Flask OAuth 2.0 Server
- Django OAuth Providers
  - Django OAuth 1.0 Server
  - Django OAuth 2.0 Server
- Specifications
  - RFC5849: The OAuth 1.0 Protocol
  - RFC6749: The OAuth 2.0 Authorization Framework
  - RFC6750: The OAuth 2.0 Authorization Framework: Bearer Token Usage
  - RFC7009: OAuth 2.0 Token Revocation
  - RFC7515: JSON Web Signature
  - RFC7516: JSON Web Encryption
  - RFC7517: JSON Web Key
  - RFC7518: JSON Web Algorithms
  - RFC7519: JSON Web Token
  - RFC7523: JWT Profile for OAuth 2.0 Client Authentication and Authorization Grants
  - RFC7591: OAuth 2.0 Dynamic Client Registration Protocol
  - RFC7592: OAuth 2.0 Dynamic Client Registration Management Protocol
  - RFC7636: Proof Key for Code Exchange by OAuth Public Clients
  - RFC7638: JSON Web Key (JWK) Thumbprint
  - RFC7662: OAuth 2.0 Token Introspection
  - RFC8037: CFRG Elliptic Curve Diffie-Hellman (ECDH) and Signatures in JSON Object Signing and Encryption (JOSE)
  - RFC8414: OAuth 2.0 Authorization Server Metadata
  - RFC8628: OAuth 2.0 Device Authorization Grant
  - RFC9207: OAuth 2.0 Authorization Server Issuer Identification
  - RFC9068: JSON Web Token (JWT) Profile for OAuth 2.0 Access Tokens
  - OpenID Connect 1.0
- Community
  - Funding
  - Support
  - Security Vulnerability
  - Contribution
  - Awesome Articles and Projects
  - Sustainable
  - Authors
  - Authlib Licenses

## Get Updates

Stay tuned with Authlib, here is a history of Authlib changes.

- Changelog
  - Version 1.5.1
  - Version 1.5.0
  - Version 1.4.1
  - Version 1.4.0
  - Version 1.3.2
  - Version 1.3.1
  - Version 1.3.0
  - Version 1.2.1
  - Version 1.2.0
  - Version 1.1.0
  - Version 1.0.1
  - Version 1.0.0
  - Old Versions

Consider to follow Authlib on Twitter, and subscribe Authlib Blog.