# Assent v0.4.0 - Table of Contents > Multi-provider authentication framework ## Pages - [Changelog](CHANGELOG.md) ## Modules - [Assent](Assent.md): - Base strategies - [Assent.Strategy.OAuth](Assent.Strategy.OAuth.md): OAuth 1.0a strategy. - [Assent.Strategy.OAuth2](Assent.Strategy.OAuth2.md): OAuth 2.0 strategy. - [Assent.Strategy.OIDC](Assent.Strategy.OIDC.md): OpenID Connect strategy. - Custom strategies - [Assent.Strategy](Assent.Strategy.md): Used for creating strategies. - [Assent.Strategy.OAuth.Base](Assent.Strategy.OAuth.Base.md): OAuth 1.0a strategy base. - [Assent.Strategy.OAuth2.Base](Assent.Strategy.OAuth2.Base.md): OAuth 2.0 strategy base. - [Assent.Strategy.OIDC.Base](Assent.Strategy.OIDC.Base.md): OpenID Connect strategy base. - Strategies - [Assent.Strategy.Apple](Assent.Strategy.Apple.md): Apple Sign In OpenID Connect strategy. - [Assent.Strategy.Auth0](Assent.Strategy.Auth0.md): Auth0 OpenID Connect strategy. - [Assent.Strategy.AzureAD](Assent.Strategy.AzureAD.md): Azure Active Directory OpenID Connect strategy. - [Assent.Strategy.Basecamp](Assent.Strategy.Basecamp.md): Basecamp OAuth 2.0 strategy. - [Assent.Strategy.Bitbucket](Assent.Strategy.Bitbucket.md): Bitbucket Cloud OAuth 2.0 strategy. - [Assent.Strategy.DigitalOcean](Assent.Strategy.DigitalOcean.md): DigitalOcean OAuth 2.0 strategy. - [Assent.Strategy.Discord](Assent.Strategy.Discord.md): Discord OAuth 2.0 strategy. - [Assent.Strategy.Facebook](Assent.Strategy.Facebook.md): Facebook OAuth 2.0 strategy. - [Assent.Strategy.Github](Assent.Strategy.Github.md): GitHub OAuth 2.0 strategy. - [Assent.Strategy.Gitlab](Assent.Strategy.Gitlab.md): GitLab OpenID Connect strategy. - [Assent.Strategy.Google](Assent.Strategy.Google.md): Google OpenID Connect strategy. - [Assent.Strategy.LINE](Assent.Strategy.LINE.md): LINE Login OpenID Connect strategy. - [Assent.Strategy.Linkedin](Assent.Strategy.Linkedin.md): Sign In with LinkedIn V2 OpenID Connect strategy. - [Assent.Strategy.Slack](Assent.Strategy.Slack.md): Slack OpenID Connect strategy. - [Assent.Strategy.Spotify](Assent.Strategy.Spotify.md): Spotify OAuth 2.0 strategy. - [Assent.Strategy.Strava](Assent.Strategy.Strava.md): Strava OAuth 2.0 strategy. - [Assent.Strategy.Stripe](Assent.Strategy.Stripe.md): Stripe Connect OAuth 2.0 strategy. - [Assent.Strategy.Telegram](Assent.Strategy.Telegram.md): Telegram authorization strategy. - [Assent.Strategy.Twitch](Assent.Strategy.Twitch.md): Twitch OpenID Connect strategy. - [Assent.Strategy.Twitter](Assent.Strategy.Twitter.md): Twitter OAuth 1.0a strategy. - [Assent.Strategy.VK](Assent.Strategy.VK.md): VK.com OAuth 2.0 strategy. - [Assent.Strategy.Zitadel](Assent.Strategy.Zitadel.md): Zitadel OpenID Connect strategy. - HTTP - [Assent.HTTPAdapter](Assent.HTTPAdapter.md): HTTP adapter helper module. - [Assent.HTTPAdapter.HTTPRequest](Assent.HTTPAdapter.HTTPRequest.md): Struct used by HTTP adapters to normalize HTTP requests. - [Assent.HTTPAdapter.HTTPResponse](Assent.HTTPAdapter.HTTPResponse.md): Struct used by HTTP adapters to normalize HTTP responses. - [Assent.HTTPAdapter.Httpc](Assent.HTTPAdapter.Httpc.md): HTTP adapter module for making http requests with `:httpc`. - [Assent.HTTPAdapter.Req](Assent.HTTPAdapter.Req.md): HTTP adapter module for making http requests with Req. - JWT - [Assent.JWTAdapter](Assent.JWTAdapter.md): JWT adapter helper module. - [Assent.JWTAdapter.AssentJWT](Assent.JWTAdapter.AssentJWT.md): JWT adapter module for parsing JSON Web Tokens natively. - [Assent.JWTAdapter.JOSE](Assent.JWTAdapter.JOSE.md): JWT adapter module for parsing JSON Web Tokens with JOSE. - Errors - [Assent.HTTPAdapter.InvalidResponseError](Assent.HTTPAdapter.InvalidResponseError.md): An exception for when an HTTP response is invalid. - [Assent.HTTPAdapter.RequestError](Assent.HTTPAdapter.RequestError.md): An exception for when a provider rejects an HTTP request. - [Assent.HTTPAdapter.ServerUnreachableError](Assent.HTTPAdapter.ServerUnreachableError.md): An exception for when a server is unreachable. - [Assent.HTTPAdapter.UnexpectedResponseError](Assent.HTTPAdapter.UnexpectedResponseError.md): An exception for when an HTTP response is unexpected. - [Assent.JWTAdapter.AssentJWT.Error](Assent.JWTAdapter.AssentJWT.Error.md): An exception for JWT errors. - [Assent.MissingConfigError](Assent.MissingConfigError.md): An exception for when a required configuration key is missing. - [Assent.MissingParamError](Assent.MissingParamError.md): An exception for when a required parameter is missing. - [Assent.Strategy.CallbackCSRFError](Assent.Strategy.CallbackCSRFError.md): An exception for when callback CSRF validation fails. - [Assent.Strategy.CallbackError](Assent.Strategy.CallbackError.md): An exception for an error reported or detected during an authorization callback. - [Assent.Strategy.CastError](Assent.Strategy.CastError.md): An exception for when claims cannot be cast to the requested types. - [Assent.Strategy.OAuth2.UnsupportedTokenTypeError](Assent.Strategy.OAuth2.UnsupportedTokenTypeError.md): An exception for when an OAuth2 token type is unsupported. - [Assent.Strategy.OIDC.InvalidIDTokenError](Assent.Strategy.OIDC.InvalidIDTokenError.md): An exception for when an OpenID Connect ID Token is invalid. - [Assent.Strategy.OIDC.InvalidOpenIDConfigurationError](Assent.Strategy.OIDC.InvalidOpenIDConfigurationError.md): An exception for when an OpenID Connect Provider configuration is invalid. - [Assent.Strategy.OIDC.InvalidUserInfoError](Assent.Strategy.OIDC.InvalidUserInfoError.md): An exception for when an OpenID Connect UserInfo response is invalid.