{"id":23090,"library":"fastapi-cloudauth","title":"fastapi-cloudauth","description":"FastAPI integration with cloud authentication services (AWS Cognito, Auth0, Firebase Authentication). Current version 0.4.3. Low release cadence, last release Dec 2021.","status":"maintenance","version":"0.4.3","language":"python","source_language":"en","source_url":"https://github.com/tokusumi/fastapi-cloudauth","tags":["fastapi","auth0","cognito","firebase","jwt","authentication"],"install":[{"cmd":"pip install fastapi-cloudauth","lang":"bash","label":"Core"},{"cmd":"pip install fastapi-cloudauth[firebase]","lang":"bash","label":"With Firebase dependencies (cryptography)"}],"dependencies":[{"reason":"Required for FastAPI integration","package":"fastapi","optional":false},{"reason":"Required for JWT verification, especially Firebase","package":"python-jose[cryptography]","optional":true},{"reason":"Used to fetch JWKS keys","package":"httpx","optional":false}],"imports":[{"note":"Auth0 is in a submodule, not top-level.","wrong":"from fastapi_cloudauth import Auth0","symbol":"Auth0","correct":"from fastapi_cloudauth.auth0 import Auth0"},{"note":"Cognito is in a submodule.","wrong":"from fastapi_cloudauth import Cognito","symbol":"Cognito","correct":"from fastapi_cloudauth.cognito import Cognito"},{"note":"Firebase is in a submodule.","wrong":"from fastapi_cloudauth import Firebase","symbol":"Firebase","correct":"from fastapi_cloudauth.firebase import Firebase"},{"note":"CurrentUser is in base module.","wrong":"from fastapi_cloudauth import CurrentUser","symbol":"CurrentUser","correct":"from fastapi_cloudauth.base import CurrentUser"}],"quickstart":{"code":"from fastapi import FastAPI, Depends\nfrom fastapi_cloudauth.auth0 import Auth0\n\napp = FastAPI()\nauth = Auth0(domain='your-domain.auth0.com', audience='your-audience')\n\n@app.get(\"/secure\")\ndef secure_route(user: dict = Depends(auth.get_user)):\n    return {\"user\": user}","lang":"python","description":"Basic Auth0 integration; replace domain and audience with your values."},"warnings":[{"fix":"Ensure Auth0 RBAC settings are configured to use 'permissions' claim or explicitly set scope_key='scope' when creating Auth0 instance.","message":"v0.3.0 changed Auth0's default scope key from 'scope' to 'permissions'. If you rely on the old key, update your RBAC settings.","severity":"breaking","affected_versions":">=0.3.0"},{"fix":"Use correct submodule imports: `from fastapi_cloudauth.auth0 import Auth0`.","message":"Importing from top-level 'fastapi_cloudauth' (e.g., `from fastapi_cloudauth import Auth0`) raises ImportError. Providers are in submodules.","severity":"gotcha","affected_versions":"all"},{"fix":"Pin FastAPI to <0.100 or consider migration to alternative auth libraries (e.g., fastapi-jwt-auth).","message":"Library is in maintenance mode; no major updates since 2021. Not compatible with FastAPI 0.100+ (uses deprecated `jsonable_encoder` behavior).","severity":"deprecated","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Use: from fastapi_cloudauth.auth0 import Auth0","cause":"Trying to import from the top-level package instead of submodule.","error":"ImportError: cannot import name 'Auth0' from 'fastapi_cloudauth'"},{"fix":"Verify your token is valid and the provider's JWKS URL is reachable. For local testing, ensure you use a real token.","cause":"Invalid or expired token, or missing JWKS endpoint. Common with self-signed tokens.","error":"AttributeError: 'NoneType' object has no attribute 'decode'"},{"fix":"Refresh the token or obtain a new one.","cause":"Token has expired.","error":"jose.exceptions.ExpiredSignatureError"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}