├── .all-contributorsrc ├── .editorconfig ├── .github ├── FUNDING.yml ├── dependabot.yml └── workflows │ ├── build.yml │ └── documentation.yml ├── .gitignore ├── .vscode └── settings.json ├── LICENSE ├── README.md ├── docs ├── assets │ └── stylesheets │ │ └── extra.css ├── fastapi.md ├── index.md ├── reference │ ├── httpx_oauth.clients.md │ ├── httpx_oauth.exceptions.md │ ├── httpx_oauth.integrations.fastapi.md │ └── httpx_oauth.oauth2.md └── usage.md ├── httpx_oauth ├── __init__.py ├── branding.py ├── clients │ ├── __init__.py │ ├── discord.py │ ├── facebook.py │ ├── franceconnect.py │ ├── github.py │ ├── google.py │ ├── kakao.py │ ├── linkedin.py │ ├── microsoft.py │ ├── naver.py │ ├── okta.py │ ├── openid.py │ ├── reddit.py │ └── shopify.py ├── exceptions.py ├── integrations │ ├── __init__.py │ └── fastapi.py ├── oauth2.py └── py.typed ├── mkdocs.yml ├── pyproject.toml ├── tests ├── __init__.py ├── conftest.py ├── mock │ ├── error.json │ ├── facebook_success_long_lived_access_token.json │ ├── github_success_refresh_token.json │ ├── google_success_access_token.json │ ├── google_success_refresh_token.json │ └── reddit_success_identity.json ├── test_branding.py ├── test_clients_discord.py ├── test_clients_facebook.py ├── test_clients_franceconnect.py ├── test_clients_github.py ├── test_clients_google.py ├── test_clients_kakao.py ├── test_clients_linkedin.py ├── test_clients_microsoft.py ├── test_clients_naver.py ├── test_clients_okta.py ├── test_clients_openid.py ├── test_clients_reddit.py ├── test_clients_shopify.py ├── test_integrations_fastapi.py └── test_oauth2.py └── uv.lock /.all-contributorsrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/.all-contributorsrc -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/.editorconfig -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | polar: frankie567 2 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.github/workflows/build.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/.github/workflows/build.yml -------------------------------------------------------------------------------- /.github/workflows/documentation.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/.github/workflows/documentation.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/.gitignore -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/README.md -------------------------------------------------------------------------------- /docs/assets/stylesheets/extra.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/docs/assets/stylesheets/extra.css -------------------------------------------------------------------------------- /docs/fastapi.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/docs/fastapi.md -------------------------------------------------------------------------------- /docs/index.md: -------------------------------------------------------------------------------- 1 | --8<-- "README.md" 2 | -------------------------------------------------------------------------------- /docs/reference/httpx_oauth.clients.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/docs/reference/httpx_oauth.clients.md -------------------------------------------------------------------------------- /docs/reference/httpx_oauth.exceptions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/docs/reference/httpx_oauth.exceptions.md -------------------------------------------------------------------------------- /docs/reference/httpx_oauth.integrations.fastapi.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/docs/reference/httpx_oauth.integrations.fastapi.md -------------------------------------------------------------------------------- /docs/reference/httpx_oauth.oauth2.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/docs/reference/httpx_oauth.oauth2.md -------------------------------------------------------------------------------- /docs/usage.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/docs/usage.md -------------------------------------------------------------------------------- /httpx_oauth/__init__.py: -------------------------------------------------------------------------------- 1 | """Async OAuth client using HTTPX.""" 2 | 3 | __version__ = "0.16.1" 4 | -------------------------------------------------------------------------------- /httpx_oauth/branding.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/httpx_oauth/branding.py -------------------------------------------------------------------------------- /httpx_oauth/clients/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /httpx_oauth/clients/discord.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/httpx_oauth/clients/discord.py -------------------------------------------------------------------------------- /httpx_oauth/clients/facebook.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/httpx_oauth/clients/facebook.py -------------------------------------------------------------------------------- /httpx_oauth/clients/franceconnect.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/httpx_oauth/clients/franceconnect.py -------------------------------------------------------------------------------- /httpx_oauth/clients/github.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/httpx_oauth/clients/github.py -------------------------------------------------------------------------------- /httpx_oauth/clients/google.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/httpx_oauth/clients/google.py -------------------------------------------------------------------------------- /httpx_oauth/clients/kakao.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/httpx_oauth/clients/kakao.py -------------------------------------------------------------------------------- /httpx_oauth/clients/linkedin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/httpx_oauth/clients/linkedin.py -------------------------------------------------------------------------------- /httpx_oauth/clients/microsoft.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/httpx_oauth/clients/microsoft.py -------------------------------------------------------------------------------- /httpx_oauth/clients/naver.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/httpx_oauth/clients/naver.py -------------------------------------------------------------------------------- /httpx_oauth/clients/okta.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/httpx_oauth/clients/okta.py -------------------------------------------------------------------------------- /httpx_oauth/clients/openid.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/httpx_oauth/clients/openid.py -------------------------------------------------------------------------------- /httpx_oauth/clients/reddit.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/httpx_oauth/clients/reddit.py -------------------------------------------------------------------------------- /httpx_oauth/clients/shopify.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/httpx_oauth/clients/shopify.py -------------------------------------------------------------------------------- /httpx_oauth/exceptions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/httpx_oauth/exceptions.py -------------------------------------------------------------------------------- /httpx_oauth/integrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /httpx_oauth/integrations/fastapi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/httpx_oauth/integrations/fastapi.py -------------------------------------------------------------------------------- /httpx_oauth/oauth2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/httpx_oauth/oauth2.py -------------------------------------------------------------------------------- /httpx_oauth/py.typed: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /mkdocs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/mkdocs.yml -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/pyproject.toml -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/conftest.py -------------------------------------------------------------------------------- /tests/mock/error.json: -------------------------------------------------------------------------------- 1 | { 2 | "error": "invalid_request" 3 | } 4 | -------------------------------------------------------------------------------- /tests/mock/facebook_success_long_lived_access_token.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/mock/facebook_success_long_lived_access_token.json -------------------------------------------------------------------------------- /tests/mock/github_success_refresh_token.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/mock/github_success_refresh_token.json -------------------------------------------------------------------------------- /tests/mock/google_success_access_token.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/mock/google_success_access_token.json -------------------------------------------------------------------------------- /tests/mock/google_success_refresh_token.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/mock/google_success_refresh_token.json -------------------------------------------------------------------------------- /tests/mock/reddit_success_identity.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/mock/reddit_success_identity.json -------------------------------------------------------------------------------- /tests/test_branding.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/test_branding.py -------------------------------------------------------------------------------- /tests/test_clients_discord.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/test_clients_discord.py -------------------------------------------------------------------------------- /tests/test_clients_facebook.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/test_clients_facebook.py -------------------------------------------------------------------------------- /tests/test_clients_franceconnect.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/test_clients_franceconnect.py -------------------------------------------------------------------------------- /tests/test_clients_github.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/test_clients_github.py -------------------------------------------------------------------------------- /tests/test_clients_google.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/test_clients_google.py -------------------------------------------------------------------------------- /tests/test_clients_kakao.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/test_clients_kakao.py -------------------------------------------------------------------------------- /tests/test_clients_linkedin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/test_clients_linkedin.py -------------------------------------------------------------------------------- /tests/test_clients_microsoft.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/test_clients_microsoft.py -------------------------------------------------------------------------------- /tests/test_clients_naver.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/test_clients_naver.py -------------------------------------------------------------------------------- /tests/test_clients_okta.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/test_clients_okta.py -------------------------------------------------------------------------------- /tests/test_clients_openid.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/test_clients_openid.py -------------------------------------------------------------------------------- /tests/test_clients_reddit.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/test_clients_reddit.py -------------------------------------------------------------------------------- /tests/test_clients_shopify.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/test_clients_shopify.py -------------------------------------------------------------------------------- /tests/test_integrations_fastapi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/test_integrations_fastapi.py -------------------------------------------------------------------------------- /tests/test_oauth2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/tests/test_oauth2.py -------------------------------------------------------------------------------- /uv.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/frankie567/httpx-oauth/HEAD/uv.lock --------------------------------------------------------------------------------