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

"""BriteCore V2 watercrafts 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_watercraft( watercraft: dict[str, Any] | None = None, skip_rules: bool | None = None, **kwargs: Unpack[RequestParameters], ) -> Any: """Create Watercraft. POST /api/v2/watercrafts/create_watercraft """ request_json: dict[str, Any] = { "watercraft": watercraft, "skip_rules": skip_rules, } 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/watercrafts/create_watercraft", json=filtered_json, method="POST", **kwargs, ) return API_CLIENT.process_result( request_result, endpoint="/api/v2/watercrafts/create_watercraft" )
[docs] def delete_watercraft( id: str | None = None, **kwargs: Unpack[RequestParameters], ) -> Any: """Delete Watercraft. POST /api/v2/watercrafts/delete_watercraft """ request_json: dict[str, Any] = { "id": 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/watercrafts/delete_watercraft", json=filtered_json, method="POST", **kwargs, ) return API_CLIENT.process_result( request_result, endpoint="/api/v2/watercrafts/delete_watercraft" )
[docs] def get_watercraft( id: str | None = None, **kwargs: Unpack[RequestParameters], ) -> Any: """Get Watercraft. POST /api/v2/watercrafts/get_watercraft """ request_json: dict[str, Any] = { "id": 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/watercrafts/get_watercraft", json=filtered_json, method="POST", **kwargs, ) return API_CLIENT.process_result( request_result, endpoint="/api/v2/watercrafts/get_watercraft" )
[docs] def list_custom_fields_types( quote_id: str | None = None, **kwargs: Unpack[RequestParameters], ) -> Any: """List Custom Fields Types. POST /api/v2/watercrafts/list_custom_fields_types """ request_json: dict[str, Any] = { "quote_id": quote_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/watercrafts/list_custom_fields_types", json=filtered_json, method="POST", **kwargs, ) return API_CLIENT.process_result( request_result, endpoint="/api/v2/watercrafts/list_custom_fields_types" )
[docs] def list_watercrafts_for_quote( quote_id: str | None = None, **kwargs: Unpack[RequestParameters], ) -> Any: """List Watercrafts For Quote. POST /api/v2/watercrafts/list_watercrafts_for_quote """ request_json: dict[str, Any] = { "quote_id": quote_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/watercrafts/list_watercrafts_for_quote", json=filtered_json, method="POST", **kwargs, ) return API_CLIENT.process_result( request_result, endpoint="/api/v2/watercrafts/list_watercrafts_for_quote" )
[docs] def update_watercraft( watercraft: dict[str, Any] | None = None, skip_rules: bool | None = None, **kwargs: Unpack[RequestParameters], ) -> Any: """Update Watercraft. POST /api/v2/watercrafts/update_watercraft """ request_json: dict[str, Any] = { "watercraft": watercraft, "skip_rules": skip_rules, } 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/watercrafts/update_watercraft", json=filtered_json, method="POST", **kwargs, ) return API_CLIENT.process_result( request_result, endpoint="/api/v2/watercrafts/update_watercraft" )
__all__ = [ "create_watercraft", "delete_watercraft", "get_watercraft", "list_custom_fields_types", "list_watercrafts_for_quote", "update_watercraft", ]