"""BriteCore V2 drivers 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_driver(
driver: Any | None = None,
**kwargs: Unpack[RequestParameters],
) -> Any:
"""Create Driver.
POST /api/v2/drivers/create_driver
"""
request_json: dict[str, Any] = {"driver": driver}
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/drivers/create_driver",
json=filtered_json,
method="POST",
**kwargs,
)
return API_CLIENT.process_result(
request_result, endpoint="/api/v2/drivers/create_driver"
)
[docs]
def delete_driver(
id: Any | None = None,
**kwargs: Unpack[RequestParameters],
) -> Any:
"""Delete Driver.
POST /api/v2/drivers/delete_driver
"""
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/drivers/delete_driver",
json=filtered_json,
method="POST",
**kwargs,
)
return API_CLIENT.process_result(
request_result, endpoint="/api/v2/drivers/delete_driver"
)
[docs]
def get_driver(
id: Any | None = None,
**kwargs: Unpack[RequestParameters],
) -> Any:
"""Get Driver.
POST /api/v2/drivers/get_driver
"""
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/drivers/get_driver",
json=filtered_json,
method="POST",
**kwargs,
)
return API_CLIENT.process_result(
request_result, endpoint="/api/v2/drivers/get_driver"
)
[docs]
def list_custom_fields_types(
quote_id: str | None = None,
**kwargs: Unpack[RequestParameters],
) -> Any:
"""List Custom Fields Types.
POST /api/v2/drivers/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/drivers/list_custom_fields_types",
json=filtered_json,
method="POST",
**kwargs,
)
return API_CLIENT.process_result(
request_result, endpoint="/api/v2/drivers/list_custom_fields_types"
)
[docs]
def list_driver_integration_reports(
driver_id: Any | None = None,
**kwargs: Unpack[RequestParameters],
) -> Any:
"""List Driver Integration Reports.
POST /api/v2/drivers/list_driver_integration_reports
"""
request_json: dict[str, Any] = {"driver_id": driver_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/drivers/list_driver_integration_reports",
json=filtered_json,
method="POST",
**kwargs,
)
return API_CLIENT.process_result(
request_result, endpoint="/api/v2/drivers/list_driver_integration_reports"
)
[docs]
def list_drivers_for_quote(
quote_id: Any | None = None,
**kwargs: Unpack[RequestParameters],
) -> Any:
"""List Drivers For Quote.
POST /api/v2/drivers/list_drivers_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/drivers/list_drivers_for_quote",
json=filtered_json,
method="POST",
**kwargs,
)
return API_CLIENT.process_result(
request_result, endpoint="/api/v2/drivers/list_drivers_for_quote"
)
[docs]
def update_driver(
driver: Any | None = None,
**kwargs: Unpack[RequestParameters],
) -> Any:
"""Update Driver.
POST /api/v2/drivers/update_driver
"""
request_json: dict[str, Any] = {"driver": driver}
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/drivers/update_driver",
json=filtered_json,
method="POST",
**kwargs,
)
return API_CLIENT.process_result(
request_result, endpoint="/api/v2/drivers/update_driver"
)
__all__ = [
"create_driver",
"delete_driver",
"get_driver",
"list_custom_fields_types",
"list_driver_integration_reports",
"list_drivers_for_quote",
"update_driver",
]