swaggerpy.http_client module

HTTP client abstractions.

class swaggerpy.http_client.ApiKeyAuthenticator(host, api_key, param_name='api_key')[source]

Bases: Authenticator

?api_key authenticator.

This authenticator adds a query parameter to specify an API key.

Parameters
  • host – Host to authenticate for.

  • api_key – API key.

  • param_name – Query parameter specifying the API key.

apply(request)[source]

Apply authentication to a request.

Parameters

request – Request to add authentication information to.

class swaggerpy.http_client.Authenticator(host)[source]

Bases: object

Authenticates requests.

Parameters

host – Host to authenticate for.

apply(request)[source]

Apply authentication to a request.

Parameters

request – Request to add authentication information to.

matches(url)[source]

Returns true if this authenticator applies to the given url.

Parameters

url – URL to check.

Returns

True if matches host, port and scheme, False otherwise.

class swaggerpy.http_client.BasicAuthenticator(host, username, password)[source]

Bases: Authenticator

HTTP Basic authenticator.

Parameters
  • host – Host to authenticate for.

  • username – Username.

  • password – Password

apply(request)[source]

Apply authentication to a request.

Parameters

request – Request to add authentication information to.

class swaggerpy.http_client.HttpClient[source]

Bases: object

Interface for a minimal HTTP client.

close()[source]

Close this client resource.

request(method, url, params=None, data=None)[source]

Issue an HTTP request.

Parameters
  • method (str) – HTTP method (GET, POST, DELETE, etc.)

  • url (str) – URL to request

  • params (dict) – Query parameters (?key=value)

  • data (Dictionary, bytes, or file-like object) – Request body

Returns

Implementation specific response object

set_api_key(host, api_key, param_name='api_key')[source]

Configures client to use api_key authentication.

The api_key is added to every query parameter sent.

Parameters
  • host – Hostname to limit authentication to.

  • api_key – Value for api_key.

  • param_name – Parameter name to use in query string.

set_basic_auth(host, username, password)[source]

Configures client to use HTTP Basic authentication.

Parameters
  • host – Hostname to limit authentication to.

  • username – Username

  • password – Password

ws_connect(url, params=None)[source]

Create a WebSocket connection.

Parameters
  • url (str) – WebSocket URL.

  • params (dict) – Query parameters (?key=value)

Returns

Implmentation specific WebSocket connection object

class swaggerpy.http_client.SynchronousHttpClient[source]

Bases: HttpClient

Synchronous HTTP client implementation.

apply_authentication(req)[source]
close()[source]

Close this client resource.

request(method, url, params=None, data=None, headers=None)[source]

Requests based implementation.

Returns

Requests response

Return type

requests.Response

set_api_key(host, api_key, param_name='api_key')[source]

Configures client to use api_key authentication.

The api_key is added to every query parameter sent.

Parameters
  • host – Hostname to limit authentication to.

  • api_key – Value for api_key.

  • param_name – Parameter name to use in query string.

set_basic_auth(host, username, password)[source]

Configures client to use HTTP Basic authentication.

Parameters
  • host – Hostname to limit authentication to.

  • username – Username

  • password – Password

ws_connect(url, params=None)[source]

Websocket-client based implementation.

Returns

WebSocket connection

Return type

websocket.WebSocket