HTTPConfig
http_config - HTTP client configuration for USPTO API requests.
This module provides configuration for HTTP transport-level settings including timeouts, retries, connection pooling, and custom headers.
- class pyUSPTO.http_config.HTTPConfig(timeout=30.0, connect_timeout=10.0, max_retries=3, backoff_factor=2.0, retry_status_codes=<factory>, pool_connections=10, pool_maxsize=10, download_chunk_size=8192, custom_headers=None)[source]
Bases:
objectHTTP client configuration for request handling.
This class separates transport-level HTTP concerns from API-level configuration, allowing fine-grained control over request behavior.
- timeout
Read timeout in seconds for requests (default: 30.0)
- connect_timeout
Connection establishment timeout in seconds (default: 10.0)
- max_retries
Maximum number of retry attempts (default: 3)
- backoff_factor
Exponential backoff multiplier for retries (default: 2.0)
- retry_status_codes
HTTP status codes that trigger retries
- pool_connections
Number of connection pools to cache (default: 10)
- pool_maxsize
Maximum number of connections per pool (default: 10)
- download_chunk_size
Chunk size in bytes for streaming file downloads (default: 8192)
- custom_headers
Additional headers to include in all requests
- classmethod from_env()[source]
Create HTTPConfig from environment variables.
- Environment variables:
USPTO_REQUEST_TIMEOUT: Request timeout in seconds USPTO_CONNECT_TIMEOUT: Connection timeout in seconds USPTO_MAX_RETRIES: Maximum retry attempts USPTO_BACKOFF_FACTOR: Retry backoff factor USPTO_POOL_CONNECTIONS: Connection pool size USPTO_POOL_MAXSIZE: Max connections per pool USPTO_DOWNLOAD_CHUNK_SIZE: Chunk size for streaming downloads (bytes)
- Return type:
- Returns:
HTTPConfig instance with values from environment or defaults