"""BriteCore V2 vehicles 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 add_additional_interest(
additional_interest: Any | None = None,
**kwargs: Unpack[RequestParameters],
) -> Any:
"""Add Additional Interest.
POST /api/v2/vehicles/add_additional_interest
"""
request_json: dict[str, Any] = {"additional_interest": additional_interest}
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/vehicles/add_additional_interest",
json=filtered_json,
method="POST",
**kwargs,
)
return API_CLIENT.process_result(
request_result, endpoint="/api/v2/vehicles/add_additional_interest"
)
[docs]
def create_vehicle(
vehicle: Any | None = None,
**kwargs: Unpack[RequestParameters],
) -> Any:
"""Create Vehicle.
POST /api/v2/vehicles/create_vehicle
"""
request_json: dict[str, Any] = {"vehicle": vehicle}
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/vehicles/create_vehicle",
json=filtered_json,
method="POST",
**kwargs,
)
return API_CLIENT.process_result(
request_result, endpoint="/api/v2/vehicles/create_vehicle"
)
[docs]
def delete_additional_interest(
id: Any | None = None,
**kwargs: Unpack[RequestParameters],
) -> Any:
"""Delete Additional Interest.
POST /api/v2/vehicles/delete_additional_interest
"""
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/vehicles/delete_additional_interest",
json=filtered_json,
method="POST",
**kwargs,
)
return API_CLIENT.process_result(
request_result, endpoint="/api/v2/vehicles/delete_additional_interest"
)
[docs]
def delete_vehicle(
id: Any | None = None,
**kwargs: Unpack[RequestParameters],
) -> Any:
"""Delete Vehicle.
POST /api/v2/vehicles/delete_vehicle
"""
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/vehicles/delete_vehicle",
json=filtered_json,
method="POST",
**kwargs,
)
return API_CLIENT.process_result(
request_result, endpoint="/api/v2/vehicles/delete_vehicle"
)
[docs]
def get_additional_interest(
id: Any | None = None,
**kwargs: Unpack[RequestParameters],
) -> Any:
"""Get Additional Interest.
POST /api/v2/vehicles/get_additional_interest
"""
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/vehicles/get_additional_interest",
json=filtered_json,
method="POST",
**kwargs,
)
return API_CLIENT.process_result(
request_result, endpoint="/api/v2/vehicles/get_additional_interest"
)
[docs]
def get_vehicle(
id: Any | None = None,
**kwargs: Unpack[RequestParameters],
) -> Any:
"""Get Vehicle.
POST /api/v2/vehicles/get_vehicle
"""
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/vehicles/get_vehicle",
json=filtered_json,
method="POST",
**kwargs,
)
return API_CLIENT.process_result(
request_result, endpoint="/api/v2/vehicles/get_vehicle"
)
[docs]
def list_additional_interests_for_vehicle(
vehicle_id: Any | None = None,
**kwargs: Unpack[RequestParameters],
) -> Any:
"""List Additional Interests For Vehicle.
POST /api/v2/vehicles/list_additional_interests_for_vehicle
"""
request_json: dict[str, Any] = {"vehicle_id": vehicle_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/vehicles/list_additional_interests_for_vehicle",
json=filtered_json,
method="POST",
**kwargs,
)
return API_CLIENT.process_result(
request_result,
endpoint="/api/v2/vehicles/list_additional_interests_for_vehicle",
)
[docs]
def list_custom_fields_types(
quote_id: str | None = None,
**kwargs: Unpack[RequestParameters],
) -> Any:
"""List Custom Fields Types.
POST /api/v2/vehicles/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/vehicles/list_custom_fields_types",
json=filtered_json,
method="POST",
**kwargs,
)
return API_CLIENT.process_result(
request_result, endpoint="/api/v2/vehicles/list_custom_fields_types"
)
[docs]
def list_vehicles_for_quote(
quote_id: Any | None = None,
**kwargs: Unpack[RequestParameters],
) -> Any:
"""List Vehicles For Quote.
POST /api/v2/vehicles/list_vehicles_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/vehicles/list_vehicles_for_quote",
json=filtered_json,
method="POST",
**kwargs,
)
return API_CLIENT.process_result(
request_result, endpoint="/api/v2/vehicles/list_vehicles_for_quote"
)
[docs]
def update_additional_interest(
additional_interest: Any | None = None,
**kwargs: Unpack[RequestParameters],
) -> Any:
"""Update Additional Interest.
POST /api/v2/vehicles/update_additional_interest
"""
request_json: dict[str, Any] = {"additional_interest": additional_interest}
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/vehicles/update_additional_interest",
json=filtered_json,
method="POST",
**kwargs,
)
return API_CLIENT.process_result(
request_result, endpoint="/api/v2/vehicles/update_additional_interest"
)
[docs]
def update_vehicle(
vehicle: Any | None = None,
**kwargs: Unpack[RequestParameters],
) -> Any:
"""Update Vehicle.
POST /api/v2/vehicles/update_vehicle
"""
request_json: dict[str, Any] = {"vehicle": vehicle}
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/vehicles/update_vehicle",
json=filtered_json,
method="POST",
**kwargs,
)
return API_CLIENT.process_result(
request_result, endpoint="/api/v2/vehicles/update_vehicle"
)
[docs]
def vehicle_prefill_fallback(
vehicle_year: int | None = None,
cost_new: float | int | None = None,
api_key: str | None = None,
quote_id: str | None = None,
**kwargs: Unpack[RequestParameters],
) -> Any:
"""Vehicle Prefill Fallback.
POST /api/v2/vehicles/vehicle_prefill_fallback
"""
request_json: dict[str, Any] = {
"vehicle_year": vehicle_year,
"cost_new": cost_new,
"api_key": api_key,
"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/vehicles/vehicle_prefill_fallback",
json=filtered_json,
method="POST",
**kwargs,
)
return API_CLIENT.process_result(
request_result, endpoint="/api/v2/vehicles/vehicle_prefill_fallback"
)
__all__ = [
"add_additional_interest",
"check_vehicle_prefill_fallback_configured",
"create_vehicle",
"delete_additional_interest",
"delete_vehicle",
"get_additional_interest",
"get_vehicle",
"list_additional_interests_for_vehicle",
"list_custom_fields_types",
"list_vehicles_for_quote",
"update_additional_interest",
"update_vehicle",
"vehicle_prefill_fallback",
]