qbraid_core.Session

class qbraid_core.Session(*args, base_url=None, headers=None, auth_headers=None, **kwargs)

Custom session with handling of request urls and authentication.

This is a child class of requests.Session. It handles authentication with custom headers, and retries on specific 5xx errors. POST and PATCH are retried on those only when they carry a non-empty Idempotency-Key header or are sent inside retry_non_idempotent().

Redirects are not followed unless a caller passes allow_redirects=True. When a caller does, any hop to another scheme, host or port drops every credential header, and a hop that would replay a request body (307/308) to another origin is refused.

__init__(*args, base_url=None, headers=None, auth_headers=None, **kwargs)

Initialize custom session with default base_url and auth_headers.

Parameters:
  • base_url (optional, str) – Base URL to prepend to all requests.

  • headers (optional, dict) – Dictionary of headers to include in all requests.

  • auth_headers (optional, dict) – Dictionary of authorization headers to include in all requests. Values will be masked in error messages.

Methods

__init__(*args[, base_url, headers, ...])

Initialize custom session with default base_url and auth_headers.

add_user_agent(user_agent)

Updates the User-Agent header with additional information.

close()

Closes all adapters and as such the session

delete(url, **kwargs)

Sends a DELETE request.

get(url[, params])

Send a GET request.

get_adapter(url)

Returns the appropriate connection adapter for the given URL.

get_redirect_target(resp)

Receives a Response.

head(url, **kwargs)

Sends a HEAD request.

initialize_retry([total, connect, ...])

Set the session retry policy.

merge_environment_settings(url, proxies, ...)

Check the environment and merge it with some settings.

mount(prefix, adapter)

Registers a connection adapter to a prefix.

options(url, **kwargs)

Send an OPTIONS request.

patch(url[, data])

Sends a PATCH request.

post(url[, data, json])

Sends a POST request.

prepare_request(request)

Constructs a PreparedRequest for transmission and returns it.

put(url[, data])

Sends a PUT request.

rebuild_auth(prepared_request, response)

Remove credential headers before a redirect hop to another origin.

rebuild_method(prepared_request, response)

When being redirected we may want to change the method of the request based on certain specs or browser behavior.

rebuild_proxies(prepared_request, proxies)

This method re-evaluates the proxy configuration by considering the environment variables.

request(method, url, *args, **kwargs)

Construct, prepare, and send a Request.

resolve_redirects(resp, req[, stream, ...])

Receives a Response.

send(request, **kwargs)

Send a prepared request, unless it is a redirect hop marked as refused.

should_strip_auth(old_url, new_url)

Strip credentials on any redirect that leaves the original origin.

Attributes

base_url

Return the base URL.

headers

A case-insensitive dictionary of headers to be sent on each Request sent from this Session.

auth

Default Authentication tuple or object to attach to Request.

proxies

Dictionary mapping protocol or protocol and host to the URL of the proxy (e.g. {'http': 'foo.bar:3128', 'http://host.name': 'foo.bar:4012'}) to be used on each Request.

hooks

Event-handling hooks.

params

Dictionary of querystring data to attach to each Request.

stream

Stream response content default.

verify

SSL Verification default.

cert

SSL client certificate default, if String, path to ssl client cert file (.pem).

max_redirects

Maximum number of redirects allowed.

trust_env

Trust environment settings for proxy configuration, default authentication and similar.

cookies

A CookieJar containing all currently outstanding cookies set on this session.

adapters