class xdk.oauth2_auth.OAuth2PKCEAuth
OAuth2 PKCE authentication for the X API.
Parameters
__init__
Initialize the OAuth2 PKCE authentication.
Parameters
The base URL for the X API token endpoint (defaults to https://api.x.com).
The base URL for OAuth2 authorization (defaults to https://x.com/i).
The client ID for the X API.
The client secret for the X API.
The redirect URI for OAuth2 authorization.
An existing OAuth2 token dictionary (if available).
Space-separated string or list of strings for OAuth2 authorization scopes.
exchange_code
Exchange authorization code for tokens (matches TypeScript API).
Parameters
The authorization code from the callback.
Optional code verifier (uses stored verifier if not provided).
Returns
Dictstr, Any
fetch_token
Fetch token using authorization response URL (legacy method, uses exchange_code internally).
Parameters
The full callback URL received after authorization
Returns
Dictstr, Any
get_authorization_url
Get the authorization URL for the OAuth2 PKCE flow.
Parameters
Optional state parameter for security.
Returns
str
get_code_challenge
Get the current code challenge (for PKCE).
:returns: The current code challenge, or None if not set.
:rtype: Optional[str]
Returns
str | None
get_code_verifier
Get the current code verifier (for PKCE).
:returns: The current code verifier, or None if not set.
:rtype: Optional[str]
Returns
str | None
is_token_expired
Check if the token is expired.
:returns: True if the token is expired, False otherwise.
:rtype: bool
Returns
bool
refresh_token
Refresh the access token.
:returns: The refreshed token dictionary
:rtype: Dict[str, Any]
Returns
Dictstr, Any
set_pkce_parameters
Manually set PKCE parameters.
Parameters
The code verifier to use.
Optional code challenge (will be generated if not provided).