Source code for britecore_sdk.api.api_calls.v2.suspensions

"""BriteCore V2 suspensions API endpoint wrappers."""

from typing import Any, Unpack

from britecore_sdk.api.api_calls import (
    BritecoreAPIClient,
    RequestParameters,
    api_client,
)

API_CLIENT: BritecoreAPIClient = api_client

# --- Autogenerated spec wrappers ---


[docs] def create_suspension( suspension: Any | None = None, **kwargs: Unpack[RequestParameters], ) -> Any: """Create Suspension. POST /api/v2/suspensions/create_suspension """ request_json: dict[str, Any] = {"suspension": suspension} filtered_json = {k: v for k, v in request_json.items() if v is not None} request_result = API_CLIENT.do_request( path="/api/v2/suspensions/create_suspension", json=filtered_json, method="POST", **kwargs, ) return API_CLIENT.process_result( request_result, endpoint="/api/v2/suspensions/create_suspension" )
[docs] def delete_suspension( **kwargs: Unpack[RequestParameters], ) -> Any: """Delete Suspension. POST /api/v2/suspensions/delete_suspension """ request_json: dict[str, Any] = {} filtered_json = {k: v for k, v in request_json.items() if v is not None} request_result = API_CLIENT.do_request( path="/api/v2/suspensions/delete_suspension", json=filtered_json, method="POST", **kwargs, ) return API_CLIENT.process_result( request_result, endpoint="/api/v2/suspensions/delete_suspension" )
[docs] def get_policy_applicable_suspensions( suspension_actions: list[str] | None = None, policy_id: str | None = None, **kwargs: Unpack[RequestParameters], ) -> Any: """Get Policy Applicable Suspensions. POST /api/v2/suspensions/get_policy_applicable_suspensions """ request_json: dict[str, Any] = { "suspension_actions": suspension_actions, "policy_id": policy_id, } filtered_json = {k: v for k, v in request_json.items() if v is not None} request_result = API_CLIENT.do_request( path="/api/v2/suspensions/get_policy_applicable_suspensions", json=filtered_json, method="POST", **kwargs, ) return API_CLIENT.process_result( request_result, endpoint="/api/v2/suspensions/get_policy_applicable_suspensions" )
[docs] def get_revision_suspensions( revision_id: Any | None = None, **kwargs: Unpack[RequestParameters], ) -> Any: """Get Revision Suspensions. POST /api/v2/suspensions/get_revision_suspensions """ request_json: dict[str, Any] = {"revision_id": revision_id} filtered_json = {k: v for k, v in request_json.items() if v is not None} request_result = API_CLIENT.do_request( path="/api/v2/suspensions/get_revision_suspensions", json=filtered_json, method="POST", **kwargs, ) return API_CLIENT.process_result( request_result, endpoint="/api/v2/suspensions/get_revision_suspensions" )
[docs] def get_user_suspensions_with_geometries( date: str | None = None, state: str | None = None, **kwargs: Unpack[RequestParameters], ) -> Any: """Get User Suspensions With Geometries. POST /api/v2/suspensions/get_user_suspensions_with_geometries """ request_json: dict[str, Any] = { "date": date, "state": state, } filtered_json = {k: v for k, v in request_json.items() if v is not None} request_result = API_CLIENT.do_request( path="/api/v2/suspensions/get_user_suspensions_with_geometries", json=filtered_json, method="POST", **kwargs, ) return API_CLIENT.process_result( request_result, endpoint="/api/v2/suspensions/get_user_suspensions_with_geometries", )
[docs] def list_suspensions( **kwargs: Unpack[RequestParameters], ) -> Any: """List Suspensions. POST /api/v2/suspensions/list_suspensions """ request_json: dict[str, Any] = {} filtered_json = {k: v for k, v in request_json.items() if v is not None} request_result = API_CLIENT.do_request( path="/api/v2/suspensions/list_suspensions", json=filtered_json, method="POST", **kwargs, ) return API_CLIENT.process_result( request_result, endpoint="/api/v2/suspensions/list_suspensions" )
[docs] def update_suspension( suspension: Any | None = None, **kwargs: Unpack[RequestParameters], ) -> Any: """Update Suspension. POST /api/v2/suspensions/update_suspension """ request_json: dict[str, Any] = {"suspension": suspension} filtered_json = {k: v for k, v in request_json.items() if v is not None} request_result = API_CLIENT.do_request( path="/api/v2/suspensions/update_suspension", json=filtered_json, method="POST", **kwargs, ) return API_CLIENT.process_result( request_result, endpoint="/api/v2/suspensions/update_suspension" )
__all__ = [ "create_suspension", "delete_suspension", "get_policy_applicable_suspensions", "get_revision_suspensions", "get_user_suspensions_with_geometries", "list_suspensions", "update_suspension", ]