Getting Started
User Guide
API Reference
HttpClient
HttpClient.adapter
HttpClient.session
HttpClient.auth_hook
HttpClient.get()
HttpClient.post()
HttpClient.put()
HttpClient.patch()
HttpClient.delete()
HttpClient.request()
HttpClient.request_many()
HttpClient.close()
HttpClient.__enter__()
HttpClient.__exit__()
create_client()
http_client()
TokenData
TokenData.access_token
TokenData.token_type
TokenData.expires_at
TokenData.refresh_token
TokenData.scope
TokenData.extra
TokenData.is_expired
TokenData.authorization_header
TokenData.from_response()
HttpClientConfig
HttpClientConfig.base_url
HttpClientConfig.default_timeout
HttpClientConfig.default_headers
HttpClientConfig.verify_ssl
HttpClientConfig.allow_redirects
HttpClientConfig.max_redirects
HttpClientConfig.retry_strategy
HttpClientConfig.auth_hook
HttpClientConfig.request_hooks
HttpClientConfig.response_hooks
HttpClientConfig.error_hooks
HttpClientConfig.pool_connection
HttpClientConfig.pool_maxsize
HttpClientConfigBuilder
with_base_url()
with_timeout()
with_verify_ssl()
with_redirects()
with_headers()
with_header()
with_bearer_token()
with_api_key()
with_retry_strategy()
with_retry()
with_pool_connection()
with_pool_maxsize()
with_auth_hook()
with_token_auth()
with_api_key_auth()
with_basic_auth()
with_request_hook()
with_response_hook()
with_error_hook()
with_logging()
build()
HttpMethod
HttpMethod.GET
HttpMethod.POST
HttpMethod.PUT
HttpMethod.PATCH
HttpMethod.DELETE
HttpMethod.HEAD
HttpMethod.OPTIONS
HttpRequest
HttpRequest.method
HttpRequest.url
HttpRequest.headers
HttpRequest.params
HttpRequest.data
HttpRequest.json_data
HttpRequest.files
HttpRequest.timeout
HttpRequest.auth
HttpRequest.with_headers()
HttpRequest.to_dict()
HttpRequest.to_curl()
HttpResponse
HttpResponse.status_code
HttpResponse.headers
HttpResponse.content
HttpResponse.elapsed_ms
HttpResponse.url
HttpResponse.request
HttpResponse.encoding
HttpResponse.text
HttpResponse.is_success
HttpResponse.is_client_error
HttpResponse.is_server_error
HttpResponse.json()
HttpResponse.json_or_none()
RequestContext
RequestContext.request
RequestContext.attempt
RequestContext.max_retries
RequestContext.metadata
RequestContext.is_retry
RequestContext.increment_attempt()
FetchContext
FetchContext.tokens
FetchContext.metadata
FetchContext.get_token()
FetchContext.get_token_value()
FetchContext.add_token()
FetchContext.has_token()
FetchContext.has_valid_token()
RetryStrategyInterface
RetryStrategyInterface.should_retry()
RetryStrategyInterface.get_delay()
max_retries
NoRetryStrategy
SimpleRetryStrategy
SimpleRetryStrategy.max_retries
SimpleRetryStrategy.should_retry()
SimpleRetryStrategy.get_delay()
ExponentialBackoffRetryStrategy
ExponentialBackoffRetryStrategy.max_retries
ExponentialBackoffRetryStrategy.should_retry()
ExponentialBackoffRetryStrategy.get_delay()
is_retryable_status()
is_max_retry()
CircuitBreakerRetryStrategy
CircuitBreakerRetryStrategy.max_retries
CircuitBreakerRetryStrategy.state
CircuitBreakerRetryStrategy.should_retry()
CircuitBreakerRetryStrategy.get_delay()
record_success()
reset()
NoAuthRetryStrategy
SimpleAuthRetryStrategy
ExponentialAuthRetryStrategy
ConditionalAuthRetryStrategy
RequestHookInterface
ResponseHookInterface
ErrorHookInterface
AuthHookInterface
LoggingRequestHook
CorrelationIdHook
AuthorizationHook
LoggingResponseHook
RateLimitResponseHook
LoggingErrorHook
TokenAuthHook
ApiKeyAuthHook
BasicAuthHook
CompositeAuthHook
TokenManager
TokenStorageInterface
InMemoryTokenStorage
DjangoCacheTokenStorage
TokenProviderInterface
BaseOAuth2TokenProvider
ClientCredentialsTokenProvider
PasswordGrantTokenProvider
TokenFetchPipeline
TokenFetchPipeline.execute()
TokenFetchPipeline.invalidate_step()
TokenFetchPipeline.invalidate_all()
TokenFetchPipeline.get_step()
TokenFetchPipeline.step_names
PipelineTokenProvider
PipelineTokenProvider.service_name
PipelineTokenProvider.pipeline
PipelineTokenProvider.fetch_token()
PipelineTokenProvider.refresh_token()
TokenFetcherInterface
name
depends_on
ttl
TokenFetcherInterface.fetch()
on_fetch_error()
HttpTokenFetcher
close()
HeaderTokenFetcher
HeaderTokenFetcher.name
HeaderTokenFetcher.depends_on
HeaderTokenFetcher.ttl
HeaderTokenFetcher.fetch()
BodyTokenFetcher
BodyTokenFetcher.name
BodyTokenFetcher.depends_on
BodyTokenFetcher.ttl
BodyTokenFetcher.fetch()
HttpClientException
TimeoutException
ConnectionException
SSLException
MaxRetryException
ResponseParseException
RequestBuildException
HttpStatusException
BadRequestException
UnauthorizedException
ForbiddenException
NotFoundException
ServerErrorException
AuthenticationException
TokenRefreshException
to_curl()
Examples
Architecture
Development