Skip to main content
This module provides OAuth2 PKCE (Proof Key for Code Exchange) authentication functionality for secure authorization flows. Includes code verifier generation, token management, and automatic token refresh capabilities.

class xdk.oauth2_auth.OAuth2PKCEAuth

OAuth2 PKCE authentication for the X API.

パラメーター

str
default:"'https://api.x.com'"
str
default:"'https://x.com/i'"
str or None
default:"None"
str or None
default:"None"
str or None
default:"None"
Dict[str, Any] or None
default:"None"
str or List[str] or None
default:"None"

__init__

Initialize the OAuth2 PKCE authentication.

パラメーター

str
default:"'https://api.x.com'"
The base URL for the X API token endpoint (defaults to https://api.x.com).
str
default:"'https://x.com/i'"
The base URL for OAuth2 authorization (defaults to https://x.com/i).
str or None
default:"None"
The client ID for the X API.
str or None
default:"None"
The client secret for the X API.
str or None
default:"None"
The redirect URI for OAuth2 authorization.
Dict[str, Any] or None
default:"None"
An existing OAuth2 token dictionary (if available).
str or List[str] or None
default:"None"
Space-separated string or list of strings for OAuth2 authorization scopes.

exchange_code

Exchange authorization code for tokens (matches TypeScript API).

パラメーター

str
The authorization code from the callback.
str or None
default:"None"
Optional code verifier (uses stored verifier if not provided).

戻り値

Dictstr, Any

fetch_token

Fetch token using authorization response URL (legacy method, uses exchange_code internally).

パラメーター

str
The full callback URL received after authorization

戻り値

Dictstr, Any

get_authorization_url

Get the authorization URL for the OAuth2 PKCE flow.

パラメーター

str or None
default:"None"
Optional state parameter for security.

戻り値

str

get_code_challenge

Get the current code challenge (for PKCE). :returns: The current code challenge, or None if not set. :rtype: Optional[str]

戻り値

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]

戻り値

str | None

is_token_expired

Check if the token is expired. :returns: True if the token is expired, False otherwise. :rtype: bool

戻り値

bool

refresh_token

Refresh the access token. :returns: The refreshed token dictionary :rtype: Dict[str, Any]

戻り値

Dictstr, Any

set_pkce_parameters

Manually set PKCE parameters.

パラメーター

str
The code verifier to use.
str or None
default:"None"
Optional code challenge (will be generated if not provided).