benchling_sdk.services.v2.stable.api_service module

class ApiService

Bases: benchling_sdk.services.v2.base_service.BaseService

A service for making raw API calls to Benchling using an authenticated client.

This is generally useful for using the SDK to call API endpoints which may not be supported in the SDK yet.

delete_modeled(url: str, target_type: Type[benchling_sdk.services.v2.stable.api_service.D] = DeserializableModelNoContent, additional_headers: Optional[Dict[str, Any]] = None) Optional[benchling_sdk.services.v2.stable.api_service.D]

Return a deserialized model as specified by target_type.

Automatically retries errors as configured in RetryStrategy.

Parameters
  • url – A relative URL path excluding host and scheme (e.g., /api/v2-alpha/some-endpoint)

  • target_type – A class type of DeserializableModel to deserialize from the response JSON

  • additional_headers – A dict of key/values to add to the request as HTTP headers

Returns

The deserialized modeled response

Return type

D

delete_response(url: str, additional_headers: Optional[Dict[str, Any]] = None) benchling_api_client.v2.types.Response[Dict[str, Any]]

Call the API with HTTP DELETE. Returns a Response with JSON deserialized as Dict[str, Any].

get_modeled(url: str, target_type: Type[benchling_sdk.services.v2.stable.api_service.D], additional_headers: Optional[Dict[str, Any]] = None) benchling_sdk.services.v2.stable.api_service.D

Return a deserialized model as specified by target_type.

Automatically retries errors as configured in RetryStrategy.

Parameters
  • url – A relative URL path excluding host and scheme (e.g., /api/v2-alpha/some-endpoint)

  • target_type – A class type of DeserializableModel to deserialize from the response JSON

  • additional_headers – A dict of key/values to add to the request as HTTP headers

Returns

The deserialized modeled response

Return type

D

get_response(url: str, additional_headers: Optional[Dict[str, Any]] = None) benchling_api_client.v2.types.Response[Dict[str, Any]]

Call the API with HTTP GET. Return a Response with JSON deserialized as Dict[str, Any].

Parameters
  • url – A relative URL path excluding host and scheme (e.g., /api/v2-alpha/some-endpoint)

  • additional_headers – A dict of key/values to add to the request as HTTP headers

Returns

The raw HTTP Response

Return type

Response[Dict[str, Any]]

patch_modeled(url: str, target_type: Type[benchling_sdk.services.v2.stable.api_service.D], body: Optional[benchling_sdk.services.v2.stable.api_service.S] = None, additional_headers: Optional[Dict[str, Any]] = None) Optional[benchling_sdk.services.v2.stable.api_service.D]

Return a deserialized model as specified by target_type.

Automatically retries errors as configured in RetryStrategy.

Parameters
  • url – A relative URL path excluding host and scheme (e.g., /api/v2-alpha/some-endpoint)

  • target_type – A class type of DeserializableModel to deserialize from the response JSON

  • body – Body of the PATCH request as a class implementing SerializableModel. Will be serialized to JSON

  • additional_headers – A dict of key/values to add to the request as HTTP headers

Returns

The deserialized modeled response

Return type

D

patch_response(url: str, body: Optional[Dict[str, Any]] = None, additional_headers: Optional[Dict[str, Any]] = None) benchling_api_client.v2.types.Response[Dict[str, Any]]

Call the API with HTTP PATCH. Returns a Response with JSON deserialized as Dict[str, Any].

Parameters
  • url – A relative URL path excluding host and scheme (e.g., /api/v2-alpha/some-endpoint)

  • body – Body of the PATCH request, which will be serialized to JSON

  • additional_headers – A dict of key/values to add to the request as HTTP headers

Returns

The raw HTTP Response

Return type

Response[Dict[str, Any]]

post_modeled(url: str, target_type: Type[benchling_sdk.services.v2.stable.api_service.D], body: Optional[benchling_sdk.services.v2.stable.api_service.S] = None, additional_headers: Optional[Dict[str, Any]] = None) Optional[benchling_sdk.services.v2.stable.api_service.D]

Return a deserialized model as specified by target_type.

Automatically retries errors as configured in RetryStrategy.

Parameters
  • url – A relative URL path excluding host and scheme (e.g., /api/v2-alpha/some-endpoint)

  • target_type – A class type of DeserializableModel to deserialize from the response JSON

  • body – Body of the POST request as a class implementing SerializableModel. Will be serialized to JSON

  • additional_headers – A dict of key/values to add to the request as HTTP headers

Returns

The deserialized modeled response

Return type

D

post_response(url: str, body: Optional[Dict[str, Any]] = None, additional_headers: Optional[Dict[str, Any]] = None) benchling_api_client.v2.types.Response[Dict[str, Any]]

Call the API with HTTP POST. Return a Response with JSON deserialized as Dict[str, Any].

Parameters
  • url – A relative URL path excluding host and scheme (e.g., /api/v2-alpha/some-endpoint)

  • body – Body of the POST request, which will be serialized to JSON

  • additional_headers – A dict of key/values to add to the request as HTTP headers

Returns

The raw HTTP Response

Return type

Response[Dict[str, Any]]

build_json_response(response: httpx.Response) benchling_api_client.v2.types.Response[Dict[str, Any]]

Create a Response object which corresponds to the usual code generated response.

This assumes a JSON return payload but will structure a little more than the raw HTTPX response.