HTTP Client

class atproto_client.request.Response(success: bool, status_code: int, content: Dict[str, Any] | bytes | atproto_client.models.common.XrpcError | NoneType, headers: Dict[str, Any])

Bases: object

success: bool
status_code: int
content: Dict[str, Any] | bytes | XrpcError | None
headers: Dict[str, Any]
class atproto_client.request.RequestBase

Bases: object

get_headers(additional_headers: Dict[str, str] | None = None) Dict[str, str]

Get headers for the request.

Parameters:

additional_headers – Additional headers. Overrides existing headers with the same name.

Returns:

Headers for the request.

set_additional_headers(headers: Dict[str, str]) None

Set additional headers for the request.

Parameters:

headers – Additional headers.

add_additional_headers_source(callback: Callable[[], Dict[str, str]]) None

Add additional headers for the request.

Parameters:

callback – Function to get additional headers.

add_additional_header(header_name: str, header_value: str) None

Add additional headers for the request.

Note

This method overrides the existing header with the same name.

Parameters:
  • header_name – Header name.

  • header_value – Header value.

clone() Self

Clone the client instance.

Used to customize atproto proxy and set of labeler services.

Note

The clone keeps the configuration of the underlying HTTP client (timeouts, transport, proxies, and anything else passed at construction), but opens its own connection pool. Close it separately.

Returns:

Cloned client instance.

class atproto_client.request.Request(**kwargs: Any)

Bases: RequestBase

Class for handling requests errors and working with httpx.

Parameters:

**kwargs – Additional parameters for httpx.Client.

close() None
get(*args: Any, **kwargs: Any) Response
post(*args: Any, **kwargs: Any) Response
class atproto_client.request.AsyncRequest(**kwargs: Any)

Bases: RequestBase

Class for handling requests errors and working with httpx.

Parameters:

**kwargs – Additional parameters for httpx.AsyncClient.

async close() None
async get(*args: Any, **kwargs: Any) Response
async post(*args: Any, **kwargs: Any) Response