1"""
2oauthlib.oauth2
3~~~~~~~~~~~~~~
4
5This module is a wrapper for the most recent implementation of OAuth 2.0 Client
6and Server classes.
7"""
8
9from .rfc6749.clients import (
10 BackendApplicationClient,
11 Client,
12 LegacyApplicationClient,
13 MobileApplicationClient,
14 ServiceApplicationClient,
15 WebApplicationClient,
16)
17from .rfc6749.endpoints import (
18 AuthorizationEndpoint,
19 BackendApplicationServer,
20 IntrospectEndpoint,
21 LegacyApplicationServer,
22 MetadataEndpoint,
23 MobileApplicationServer,
24 ResourceEndpoint,
25 RevocationEndpoint,
26 Server,
27 TokenEndpoint,
28 WebApplicationServer,
29)
30from .rfc6749.errors import (
31 AccessDeniedError,
32 FatalClientError,
33 InsecureTransportError,
34 InvalidClientError,
35 InvalidClientIdError,
36 InvalidGrantError,
37 InvalidRedirectURIError,
38 InvalidRequestError,
39 InvalidRequestFatalError,
40 InvalidScopeError,
41 MismatchingRedirectURIError,
42 MismatchingStateError,
43 MissingClientIdError,
44 MissingCodeError,
45 MissingRedirectURIError,
46 MissingResponseTypeError,
47 MissingTokenError,
48 MissingTokenTypeError,
49 OAuth2Error,
50 ServerError,
51 TemporarilyUnavailableError,
52 TokenExpiredError,
53 UnauthorizedClientError,
54 UnsupportedGrantTypeError,
55 UnsupportedResponseTypeError,
56 UnsupportedTokenTypeError,
57)
58from .rfc6749.grant_types import (
59 AuthorizationCodeGrant,
60 ClientCredentialsGrant,
61 ImplicitGrant,
62 RefreshTokenGrant,
63 ResourceOwnerPasswordCredentialsGrant,
64)
65from .rfc6749.request_validator import RequestValidator
66from .rfc6749.tokens import BearerToken, OAuth2Token
67from .rfc6749.utils import is_secure_transport
68from .rfc8628.clients import DeviceClient
69from oauthlib.oauth2.rfc8628.endpoints import DeviceAuthorizationEndpoint, DeviceApplicationServer
70from oauthlib.oauth2.rfc8628.grant_types import DeviceCodeGrant