samsara-api 4.1.1__py3-none-any.whl → 4.3.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. samsara/__init__.py +84 -15
  2. samsara/addresses/client.py +7 -14
  3. samsara/addresses/raw_client.py +7 -11
  4. samsara/alerts/client.py +2 -10
  5. samsara/alerts/raw_client.py +180 -180
  6. samsara/assets/__init__.py +3 -3
  7. samsara/assets/client.py +14 -45
  8. samsara/assets/raw_client.py +156 -160
  9. samsara/assets/types/__init__.py +3 -3
  10. samsara/assets/types/{assets_list_request_type.py → list_assets_request_type.py} +1 -1
  11. samsara/attributes/client.py +0 -4
  12. samsara/beta_ap_is/client.py +139 -189
  13. samsara/beta_ap_is/raw_client.py +2035 -1702
  14. samsara/carrier_proposed_assignments/client.py +2 -10
  15. samsara/client.py +5 -0
  16. samsara/coaching/client.py +2 -22
  17. samsara/coaching/raw_client.py +108 -108
  18. samsara/contacts/client.py +2 -8
  19. samsara/core/__init__.py +5 -0
  20. samsara/core/client_wrapper.py +18 -10
  21. samsara/core/custom_pagination.py +152 -0
  22. samsara/core/http_client.py +176 -90
  23. samsara/core/http_sse/__init__.py +42 -0
  24. samsara/core/http_sse/_api.py +112 -0
  25. samsara/core/http_sse/_decoders.py +61 -0
  26. samsara/core/http_sse/_exceptions.py +7 -0
  27. samsara/core/http_sse/_models.py +17 -0
  28. samsara/core/pagination.py +14 -14
  29. samsara/core/pydantic_utilities.py +3 -1
  30. samsara/documents/client.py +2 -12
  31. samsara/documents/raw_client.py +180 -180
  32. samsara/driver_qr_codes/raw_client.py +108 -108
  33. samsara/driver_vehicle_assignments/client.py +0 -12
  34. samsara/driver_vehicle_assignments/raw_client.py +144 -144
  35. samsara/drivers/__init__.py +3 -3
  36. samsara/drivers/client.py +12 -23
  37. samsara/drivers/raw_client.py +48 -52
  38. samsara/drivers/types/__init__.py +3 -3
  39. samsara/drivers/types/{drivers_list_request_driver_activation_status.py → list_drivers_request_driver_activation_status.py} +1 -1
  40. samsara/equipment/client.py +6 -22
  41. samsara/errors/bad_gateway_error.py +1 -1
  42. samsara/errors/gateway_timeout_error.py +1 -1
  43. samsara/errors/internal_server_error.py +1 -1
  44. samsara/errors/method_not_allowed_error.py +1 -1
  45. samsara/errors/not_found_error.py +1 -1
  46. samsara/errors/not_implemented_error.py +1 -1
  47. samsara/errors/service_unavailable_error.py +1 -1
  48. samsara/errors/too_many_requests_error.py +1 -1
  49. samsara/errors/unauthorized_error.py +1 -1
  50. samsara/forms/__init__.py +9 -3
  51. samsara/forms/client.py +17 -10
  52. samsara/forms/raw_client.py +265 -254
  53. samsara/forms/types/__init__.py +6 -2
  54. samsara/forms/types/form_submissions_post_form_submission_request_body_status.py +5 -0
  55. samsara/fuel_and_energy/client.py +0 -30
  56. samsara/fuel_and_energy/raw_client.py +180 -180
  57. samsara/gateways/client.py +2 -6
  58. samsara/gateways/raw_client.py +108 -108
  59. samsara/hours_of_service/__init__.py +6 -3
  60. samsara/hours_of_service/client.py +13 -52
  61. samsara/hours_of_service/raw_client.py +77 -76
  62. samsara/hours_of_service/types/__init__.py +4 -2
  63. samsara/hours_of_service/types/get_hos_daily_logs_request_expand.py +5 -0
  64. samsara/hubs/client.py +2 -94
  65. samsara/hubs/raw_client.py +216 -216
  66. samsara/idling/client.py +10 -16
  67. samsara/idling/raw_client.py +46 -36
  68. samsara/ifta/client.py +4 -34
  69. samsara/ifta/raw_client.py +144 -144
  70. samsara/industrial/client.py +12 -56
  71. samsara/industrial/raw_client.py +40 -48
  72. samsara/issues/client.py +0 -4
  73. samsara/issues/raw_client.py +108 -108
  74. samsara/legacy_ap_is/client.py +4 -56
  75. samsara/legacy_ap_is/raw_client.py +108 -108
  76. samsara/live_sharing_links/client.py +2 -10
  77. samsara/live_sharing_links/raw_client.py +144 -144
  78. samsara/location_and_speed/client.py +2 -20
  79. samsara/location_and_speed/raw_client.py +36 -36
  80. samsara/maintenance/__init__.py +3 -3
  81. samsara/maintenance/client.py +15 -30
  82. samsara/maintenance/raw_client.py +191 -182
  83. samsara/maintenance/types/__init__.py +6 -2
  84. samsara/maintenance/types/create_dvir_request_type.py +5 -0
  85. samsara/media/client.py +2 -16
  86. samsara/media/raw_client.py +108 -108
  87. samsara/messages/client.py +2 -8
  88. samsara/plans/client.py +0 -21
  89. samsara/plans/raw_client.py +72 -72
  90. samsara/preview_ap_is/client.py +0 -140
  91. samsara/preview_ap_is/raw_client.py +72 -430
  92. samsara/route_events/client.py +2 -12
  93. samsara/route_events/raw_client.py +36 -36
  94. samsara/routes/__init__.py +30 -0
  95. samsara/routes/client.py +7 -35
  96. samsara/routes/raw_client.py +257 -256
  97. samsara/routes/types/__init__.py +34 -0
  98. samsara/routes/types/get_routes_feed_request_expand.py +5 -0
  99. samsara/safety/client.py +2 -10
  100. samsara/safety/raw_client.py +36 -36
  101. samsara/settings/raw_client.py +180 -180
  102. samsara/speeding_intervals/raw_client.py +36 -36
  103. samsara/tachograph_eu_only/client.py +0 -6
  104. samsara/tags/client.py +2 -8
  105. samsara/trailer_assignments/client.py +2 -18
  106. samsara/trailers/client.py +2 -12
  107. samsara/trailers/raw_client.py +180 -180
  108. samsara/types/__init__.py +71 -6
  109. samsara/types/advanced_idling_get_idling_events_response_body.py +2 -2
  110. samsara/types/create_routes_stop_request_object_request_body.py +7 -0
  111. samsara/types/driver_assignment_object_response_body.py +2 -1
  112. samsara/types/driver_assignment_object_response_body_assignment_type.py +5 -0
  113. samsara/types/driver_external_ids.py +1 -1
  114. samsara/types/forms_approval_config_object_response_body.py +2 -1
  115. samsara/types/forms_approval_config_object_response_body_type.py +5 -0
  116. samsara/types/fuel_level_trigger_details_object_request_body.py +2 -1
  117. samsara/types/fuel_level_trigger_details_object_request_body_operation.py +5 -0
  118. samsara/types/fuel_level_trigger_details_object_response_body.py +4 -1
  119. samsara/types/fuel_level_trigger_details_object_response_body_operation.py +5 -0
  120. samsara/types/harsh_event_trigger_details_object_request_body_types_item.py +1 -0
  121. samsara/types/harsh_event_trigger_details_object_response_body_types_item.py +1 -0
  122. samsara/types/idling_event_address_object_response_body.py +46 -0
  123. samsara/types/{idling_event_object_response_body_address_type.py → idling_event_address_object_response_body_address_types_item.py} +1 -1
  124. samsara/types/idling_event_asset_object_response_body.py +35 -0
  125. samsara/types/{idling_event_object_response_body.py → idling_event_object_v_20251023_response_body.py} +18 -28
  126. samsara/types/idling_event_object_v_20251023_response_body_pto_state.py +5 -0
  127. samsara/types/idling_event_operator_object_response_body.py +35 -0
  128. samsara/types/patch_issue_request_body_assigned_to_request_body.py +2 -1
  129. samsara/types/patch_issue_request_body_assigned_to_request_body_type.py +5 -0
  130. samsara/types/reading_datapoint_request_body.py +5 -4
  131. samsara/types/reading_datapoint_request_body_entity_type.py +5 -0
  132. samsara/types/reading_history_response_body.py +1 -1
  133. samsara/types/reading_snapshot_response_body.py +1 -1
  134. samsara/types/resolved_by.py +2 -1
  135. samsara/types/resolved_by_type.py +5 -0
  136. samsara/types/route_feed_object_response_body.py +2 -1
  137. samsara/types/route_feed_object_response_body_type.py +5 -0
  138. samsara/types/route_settings_request_body.py +8 -0
  139. samsara/types/route_settings_request_body_sequencing_method.py +7 -0
  140. samsara/types/route_settings_response_body.py +8 -0
  141. samsara/types/route_settings_response_body_sequencing_method.py +7 -0
  142. samsara/types/route_stop_details_object_response_body.py +2 -1
  143. samsara/types/route_stop_details_object_response_body_type.py +5 -0
  144. samsara/types/routes_stop_response_object_response_body.py +7 -0
  145. samsara/types/training_learner_object_response_body.py +2 -1
  146. samsara/types/training_learner_object_response_body_type.py +5 -0
  147. samsara/types/update_routes_stop_request_object_request_body.py +7 -0
  148. samsara/types/vehicle_assignment_object_response_body.py +4 -3
  149. samsara/types/vehicle_assignment_object_response_body_assignment_type.py +5 -0
  150. samsara/types/vehicle_external_ids.py +1 -1
  151. samsara/types/work_order_money_object_request_body.py +2 -1
  152. samsara/types/work_order_money_object_request_body_currency.py +5 -0
  153. samsara/types/work_order_money_object_response_body.py +2 -1
  154. samsara/types/work_order_money_object_response_body_currency.py +5 -0
  155. samsara/users/client.py +4 -16
  156. samsara/vehicle_locations/client.py +4 -16
  157. samsara/vehicles/client.py +7 -22
  158. samsara/vehicles/raw_client.py +43 -47
  159. samsara/webhooks/client.py +2 -10
  160. samsara/webhooks/raw_client.py +180 -180
  161. samsara/work_orders/client.py +4 -18
  162. samsara/work_orders/raw_client.py +216 -216
  163. {samsara_api-4.1.1.dist-info → samsara_api-4.3.0.dist-info}/METADATA +2 -1
  164. {samsara_api-4.1.1.dist-info → samsara_api-4.3.0.dist-info}/RECORD +166 -136
  165. {samsara_api-4.1.1.dist-info → samsara_api-4.3.0.dist-info}/LICENSE +0 -0
  166. {samsara_api-4.1.1.dist-info → samsara_api-4.3.0.dist-info}/WHEEL +0 -0
samsara/types/__init__.py CHANGED
@@ -795,6 +795,7 @@ if typing.TYPE_CHECKING:
795
795
  from .driver_app_sign_out_response_body import DriverAppSignOutResponseBody
796
796
  from .driver_assignment_metadata_tiny_object_response_body import DriverAssignmentMetadataTinyObjectResponseBody
797
797
  from .driver_assignment_object_response_body import DriverAssignmentObjectResponseBody
798
+ from .driver_assignment_object_response_body_assignment_type import DriverAssignmentObjectResponseBodyAssignmentType
798
799
  from .driver_carrier_settings import DriverCarrierSettings
799
800
  from .driver_coach_assignments_get_driver_coach_assignment_bad_gateway_error_response_body import (
800
801
  DriverCoachAssignmentsGetDriverCoachAssignmentBadGatewayErrorResponseBody,
@@ -1851,6 +1852,7 @@ if typing.TYPE_CHECKING:
1851
1852
  from .forms_action_object_response_body import FormsActionObjectResponseBody
1852
1853
  from .forms_action_object_response_body_type import FormsActionObjectResponseBodyType
1853
1854
  from .forms_approval_config_object_response_body import FormsApprovalConfigObjectResponseBody
1855
+ from .forms_approval_config_object_response_body_type import FormsApprovalConfigObjectResponseBodyType
1854
1856
  from .forms_asset_object_response_body import FormsAssetObjectResponseBody
1855
1857
  from .forms_asset_object_response_body_entry_type import FormsAssetObjectResponseBodyEntryType
1856
1858
  from .forms_asset_value_object_response_body import FormsAssetValueObjectResponseBody
@@ -1984,7 +1986,13 @@ if typing.TYPE_CHECKING:
1984
1986
  from .fuel_energy_vehicle_report_object_response_body import FuelEnergyVehicleReportObjectResponseBody
1985
1987
  from .fuel_level_percentage_response_body import FuelLevelPercentageResponseBody
1986
1988
  from .fuel_level_trigger_details_object_request_body import FuelLevelTriggerDetailsObjectRequestBody
1989
+ from .fuel_level_trigger_details_object_request_body_operation import (
1990
+ FuelLevelTriggerDetailsObjectRequestBodyOperation,
1991
+ )
1987
1992
  from .fuel_level_trigger_details_object_response_body import FuelLevelTriggerDetailsObjectResponseBody
1993
+ from .fuel_level_trigger_details_object_response_body_operation import (
1994
+ FuelLevelTriggerDetailsObjectResponseBodyOperation,
1995
+ )
1988
1996
  from .fuel_purchase_post_fuel_purchase_bad_gateway_error_response_body import (
1989
1997
  FuelPurchasePostFuelPurchaseBadGatewayErrorResponseBody,
1990
1998
  )
@@ -2629,8 +2637,14 @@ if typing.TYPE_CHECKING:
2629
2637
  from .hubs_list_hubs_too_many_requests_error_response_body import HubsListHubsTooManyRequestsErrorResponseBody
2630
2638
  from .hubs_list_hubs_unauthorized_error_response_body import HubsListHubsUnauthorizedErrorResponseBody
2631
2639
  from .idle_time_duration_ms import IdleTimeDurationMs
2632
- from .idling_event_object_response_body import IdlingEventObjectResponseBody
2633
- from .idling_event_object_response_body_address_type import IdlingEventObjectResponseBodyAddressType
2640
+ from .idling_event_address_object_response_body import IdlingEventAddressObjectResponseBody
2641
+ from .idling_event_address_object_response_body_address_types_item import (
2642
+ IdlingEventAddressObjectResponseBodyAddressTypesItem,
2643
+ )
2644
+ from .idling_event_asset_object_response_body import IdlingEventAssetObjectResponseBody
2645
+ from .idling_event_object_v_20251023_response_body import IdlingEventObjectV20251023ResponseBody
2646
+ from .idling_event_object_v_20251023_response_body_pto_state import IdlingEventObjectV20251023ResponseBodyPtoState
2647
+ from .idling_event_operator_object_response_body import IdlingEventOperatorObjectResponseBody
2634
2648
  from .idling_report_event_address_response_body import IdlingReportEventAddressResponseBody
2635
2649
  from .idling_report_event_response_body import IdlingReportEventResponseBody
2636
2650
  from .idling_reports_get_vehicle_idling_reports_bad_gateway_error_response_body import (
@@ -3250,6 +3264,7 @@ if typing.TYPE_CHECKING:
3250
3264
  PatchDriverVehicleAssignmentsV2ResponseBodyResponseBody,
3251
3265
  )
3252
3266
  from .patch_issue_request_body_assigned_to_request_body import PatchIssueRequestBodyAssignedToRequestBody
3267
+ from .patch_issue_request_body_assigned_to_request_body_type import PatchIssueRequestBodyAssignedToRequestBodyType
3253
3268
  from .patch_job_object_request_body import PatchJobObjectRequestBody
3254
3269
  from .patch_job_objectjob_location_request_object_request_body import (
3255
3270
  PatchJobObjectjobLocationRequestObjectRequestBody,
@@ -3587,6 +3602,7 @@ if typing.TYPE_CHECKING:
3587
3602
  )
3588
3603
  from .quantity_object_response_body import QuantityObjectResponseBody
3589
3604
  from .reading_datapoint_request_body import ReadingDatapointRequestBody
3605
+ from .reading_datapoint_request_body_entity_type import ReadingDatapointRequestBodyEntityType
3590
3606
  from .reading_definition_response_body import ReadingDefinitionResponseBody
3591
3607
  from .reading_history_response_body import ReadingHistoryResponseBody
3592
3608
  from .reading_snapshot_response_body import ReadingSnapshotResponseBody
@@ -3726,6 +3742,7 @@ if typing.TYPE_CHECKING:
3726
3742
  from .recipient_object_response_body_type import RecipientObjectResponseBodyType
3727
3743
  from .reefer_temperature_response_body import ReeferTemperatureResponseBody
3728
3744
  from .resolved_by import ResolvedBy
3745
+ from .resolved_by_type import ResolvedByType
3729
3746
  from .reverse_geo import ReverseGeo
3730
3747
  from .reverse_geo_object_response_body import ReverseGeoObjectResponseBody
3731
3748
  from .rolling_stop_detection_alert_settings_object_response_body import (
@@ -3740,17 +3757,21 @@ if typing.TYPE_CHECKING:
3740
3757
  from .route_feed_object_response_body import RouteFeedObjectResponseBody
3741
3758
  from .route_feed_object_response_body_operation import RouteFeedObjectResponseBodyOperation
3742
3759
  from .route_feed_object_response_body_source import RouteFeedObjectResponseBodySource
3760
+ from .route_feed_object_response_body_type import RouteFeedObjectResponseBodyType
3743
3761
  from .route_object_response_body import RouteObjectResponseBody
3744
3762
  from .route_settings_request_body import RouteSettingsRequestBody
3745
3763
  from .route_settings_request_body_route_completion_condition import RouteSettingsRequestBodyRouteCompletionCondition
3746
3764
  from .route_settings_request_body_route_starting_condition import RouteSettingsRequestBodyRouteStartingCondition
3765
+ from .route_settings_request_body_sequencing_method import RouteSettingsRequestBodySequencingMethod
3747
3766
  from .route_settings_response_body import RouteSettingsResponseBody
3748
3767
  from .route_settings_response_body_route_completion_condition import (
3749
3768
  RouteSettingsResponseBodyRouteCompletionCondition,
3750
3769
  )
3751
3770
  from .route_settings_response_body_route_starting_condition import RouteSettingsResponseBodyRouteStartingCondition
3771
+ from .route_settings_response_body_sequencing_method import RouteSettingsResponseBodySequencingMethod
3752
3772
  from .route_stop_details_object_response_body import RouteStopDetailsObjectResponseBody
3753
3773
  from .route_stop_details_object_response_body_operation import RouteStopDetailsObjectResponseBodyOperation
3774
+ from .route_stop_details_object_response_body_type import RouteStopDetailsObjectResponseBodyType
3754
3775
  from .route_stop_estimated_arrival_details_object_request_body import (
3755
3776
  RouteStopEstimatedArrivalDetailsObjectRequestBody,
3756
3777
  )
@@ -5168,6 +5189,7 @@ if typing.TYPE_CHECKING:
5168
5189
  TrainingCoursesGetTrainingCoursesUnauthorizedErrorResponseBody,
5169
5190
  )
5170
5191
  from .training_learner_object_response_body import TrainingLearnerObjectResponseBody
5192
+ from .training_learner_object_response_body_type import TrainingLearnerObjectResponseBodyType
5171
5193
  from .trigger_params_object_request_body import TriggerParamsObjectRequestBody
5172
5194
  from .trigger_params_object_response_body import TriggerParamsObjectResponseBody
5173
5195
  from .trip_asset_response_body import TripAssetResponseBody
@@ -5370,6 +5392,9 @@ if typing.TYPE_CHECKING:
5370
5392
  from .v_1_vision_step_results_item_text_match import V1VisionStepResultsItemTextMatch
5371
5393
  from .vehicle import Vehicle
5372
5394
  from .vehicle_assignment_object_response_body import VehicleAssignmentObjectResponseBody
5395
+ from .vehicle_assignment_object_response_body_assignment_type import (
5396
+ VehicleAssignmentObjectResponseBodyAssignmentType,
5397
+ )
5373
5398
  from .vehicle_aux_input_name import VehicleAuxInputName
5374
5399
  from .vehicle_aux_input_type import VehicleAuxInputType
5375
5400
  from .vehicle_aux_input_type_1 import VehicleAuxInputType1
@@ -5979,7 +6004,9 @@ if typing.TYPE_CHECKING:
5979
6004
  from .work_order_item_object_response_body import WorkOrderItemObjectResponseBody
5980
6005
  from .work_order_item_object_response_body_type import WorkOrderItemObjectResponseBodyType
5981
6006
  from .work_order_money_object_request_body import WorkOrderMoneyObjectRequestBody
6007
+ from .work_order_money_object_request_body_currency import WorkOrderMoneyObjectRequestBodyCurrency
5982
6008
  from .work_order_money_object_response_body import WorkOrderMoneyObjectResponseBody
6009
+ from .work_order_money_object_response_body_currency import WorkOrderMoneyObjectResponseBodyCurrency
5983
6010
  from .work_order_object_response_body import WorkOrderObjectResponseBody
5984
6011
  from .work_order_object_response_body_category import WorkOrderObjectResponseBodyCategory
5985
6012
  from .work_order_object_response_body_priority import WorkOrderObjectResponseBodyPriority
@@ -6594,6 +6621,7 @@ _dynamic_imports: typing.Dict[str, str] = {
6594
6621
  "DriverAppSignOutResponseBody": ".driver_app_sign_out_response_body",
6595
6622
  "DriverAssignmentMetadataTinyObjectResponseBody": ".driver_assignment_metadata_tiny_object_response_body",
6596
6623
  "DriverAssignmentObjectResponseBody": ".driver_assignment_object_response_body",
6624
+ "DriverAssignmentObjectResponseBodyAssignmentType": ".driver_assignment_object_response_body_assignment_type",
6597
6625
  "DriverCarrierSettings": ".driver_carrier_settings",
6598
6626
  "DriverCoachAssignmentsGetDriverCoachAssignmentBadGatewayErrorResponseBody": ".driver_coach_assignments_get_driver_coach_assignment_bad_gateway_error_response_body",
6599
6627
  "DriverCoachAssignmentsGetDriverCoachAssignmentGatewayTimeoutErrorResponseBody": ".driver_coach_assignments_get_driver_coach_assignment_gateway_timeout_error_response_body",
@@ -7090,6 +7118,7 @@ _dynamic_imports: typing.Dict[str, str] = {
7090
7118
  "FormsActionObjectResponseBody": ".forms_action_object_response_body",
7091
7119
  "FormsActionObjectResponseBodyType": ".forms_action_object_response_body_type",
7092
7120
  "FormsApprovalConfigObjectResponseBody": ".forms_approval_config_object_response_body",
7121
+ "FormsApprovalConfigObjectResponseBodyType": ".forms_approval_config_object_response_body_type",
7093
7122
  "FormsAssetObjectResponseBody": ".forms_asset_object_response_body",
7094
7123
  "FormsAssetObjectResponseBodyEntryType": ".forms_asset_object_response_body_entry_type",
7095
7124
  "FormsAssetValueObjectResponseBody": ".forms_asset_value_object_response_body",
@@ -7169,7 +7198,9 @@ _dynamic_imports: typing.Dict[str, str] = {
7169
7198
  "FuelEnergyVehicleReportObjectResponseBody": ".fuel_energy_vehicle_report_object_response_body",
7170
7199
  "FuelLevelPercentageResponseBody": ".fuel_level_percentage_response_body",
7171
7200
  "FuelLevelTriggerDetailsObjectRequestBody": ".fuel_level_trigger_details_object_request_body",
7201
+ "FuelLevelTriggerDetailsObjectRequestBodyOperation": ".fuel_level_trigger_details_object_request_body_operation",
7172
7202
  "FuelLevelTriggerDetailsObjectResponseBody": ".fuel_level_trigger_details_object_response_body",
7203
+ "FuelLevelTriggerDetailsObjectResponseBodyOperation": ".fuel_level_trigger_details_object_response_body_operation",
7173
7204
  "FuelPurchasePostFuelPurchaseBadGatewayErrorResponseBody": ".fuel_purchase_post_fuel_purchase_bad_gateway_error_response_body",
7174
7205
  "FuelPurchasePostFuelPurchaseGatewayTimeoutErrorResponseBody": ".fuel_purchase_post_fuel_purchase_gateway_timeout_error_response_body",
7175
7206
  "FuelPurchasePostFuelPurchaseInternalServerErrorResponseBody": ".fuel_purchase_post_fuel_purchase_internal_server_error_response_body",
@@ -7474,8 +7505,12 @@ _dynamic_imports: typing.Dict[str, str] = {
7474
7505
  "HubsListHubsTooManyRequestsErrorResponseBody": ".hubs_list_hubs_too_many_requests_error_response_body",
7475
7506
  "HubsListHubsUnauthorizedErrorResponseBody": ".hubs_list_hubs_unauthorized_error_response_body",
7476
7507
  "IdleTimeDurationMs": ".idle_time_duration_ms",
7477
- "IdlingEventObjectResponseBody": ".idling_event_object_response_body",
7478
- "IdlingEventObjectResponseBodyAddressType": ".idling_event_object_response_body_address_type",
7508
+ "IdlingEventAddressObjectResponseBody": ".idling_event_address_object_response_body",
7509
+ "IdlingEventAddressObjectResponseBodyAddressTypesItem": ".idling_event_address_object_response_body_address_types_item",
7510
+ "IdlingEventAssetObjectResponseBody": ".idling_event_asset_object_response_body",
7511
+ "IdlingEventObjectV20251023ResponseBody": ".idling_event_object_v_20251023_response_body",
7512
+ "IdlingEventObjectV20251023ResponseBodyPtoState": ".idling_event_object_v_20251023_response_body_pto_state",
7513
+ "IdlingEventOperatorObjectResponseBody": ".idling_event_operator_object_response_body",
7479
7514
  "IdlingReportEventAddressResponseBody": ".idling_report_event_address_response_body",
7480
7515
  "IdlingReportEventResponseBody": ".idling_report_event_response_body",
7481
7516
  "IdlingReportsGetVehicleIdlingReportsBadGatewayErrorResponseBody": ".idling_reports_get_vehicle_idling_reports_bad_gateway_error_response_body",
@@ -7807,6 +7842,7 @@ _dynamic_imports: typing.Dict[str, str] = {
7807
7842
  "PatchDriverVehicleAssignmentsV2RequestBodyMetadataRequestBody": ".patch_driver_vehicle_assignments_v_2_request_body_metadata_request_body",
7808
7843
  "PatchDriverVehicleAssignmentsV2ResponseBodyResponseBody": ".patch_driver_vehicle_assignments_v_2_response_body_response_body",
7809
7844
  "PatchIssueRequestBodyAssignedToRequestBody": ".patch_issue_request_body_assigned_to_request_body",
7845
+ "PatchIssueRequestBodyAssignedToRequestBodyType": ".patch_issue_request_body_assigned_to_request_body_type",
7810
7846
  "PatchJobObjectRequestBody": ".patch_job_object_request_body",
7811
7847
  "PatchJobObjectjobLocationRequestObjectRequestBody": ".patch_job_objectjob_location_request_object_request_body",
7812
7848
  "PatchResponseWorkflowConfigurationObjectResponseBody": ".patch_response_workflow_configuration_object_response_body",
@@ -7940,6 +7976,7 @@ _dynamic_imports: typing.Dict[str, str] = {
7940
7976
  "QualificationsUnarchiveQualificationRecordUnauthorizedErrorResponseBody": ".qualifications_unarchive_qualification_record_unauthorized_error_response_body",
7941
7977
  "QuantityObjectResponseBody": ".quantity_object_response_body",
7942
7978
  "ReadingDatapointRequestBody": ".reading_datapoint_request_body",
7979
+ "ReadingDatapointRequestBodyEntityType": ".reading_datapoint_request_body_entity_type",
7943
7980
  "ReadingDefinitionResponseBody": ".reading_definition_response_body",
7944
7981
  "ReadingHistoryResponseBody": ".reading_history_response_body",
7945
7982
  "ReadingSnapshotResponseBody": ".reading_snapshot_response_body",
@@ -8003,6 +8040,7 @@ _dynamic_imports: typing.Dict[str, str] = {
8003
8040
  "RecipientObjectResponseBodyType": ".recipient_object_response_body_type",
8004
8041
  "ReeferTemperatureResponseBody": ".reefer_temperature_response_body",
8005
8042
  "ResolvedBy": ".resolved_by",
8043
+ "ResolvedByType": ".resolved_by_type",
8006
8044
  "ReverseGeo": ".reverse_geo",
8007
8045
  "ReverseGeoObjectResponseBody": ".reverse_geo_object_response_body",
8008
8046
  "RollingStopDetectionAlertSettingsObjectResponseBody": ".rolling_stop_detection_alert_settings_object_response_body",
@@ -8015,15 +8053,19 @@ _dynamic_imports: typing.Dict[str, str] = {
8015
8053
  "RouteFeedObjectResponseBody": ".route_feed_object_response_body",
8016
8054
  "RouteFeedObjectResponseBodyOperation": ".route_feed_object_response_body_operation",
8017
8055
  "RouteFeedObjectResponseBodySource": ".route_feed_object_response_body_source",
8056
+ "RouteFeedObjectResponseBodyType": ".route_feed_object_response_body_type",
8018
8057
  "RouteObjectResponseBody": ".route_object_response_body",
8019
8058
  "RouteSettingsRequestBody": ".route_settings_request_body",
8020
8059
  "RouteSettingsRequestBodyRouteCompletionCondition": ".route_settings_request_body_route_completion_condition",
8021
8060
  "RouteSettingsRequestBodyRouteStartingCondition": ".route_settings_request_body_route_starting_condition",
8061
+ "RouteSettingsRequestBodySequencingMethod": ".route_settings_request_body_sequencing_method",
8022
8062
  "RouteSettingsResponseBody": ".route_settings_response_body",
8023
8063
  "RouteSettingsResponseBodyRouteCompletionCondition": ".route_settings_response_body_route_completion_condition",
8024
8064
  "RouteSettingsResponseBodyRouteStartingCondition": ".route_settings_response_body_route_starting_condition",
8065
+ "RouteSettingsResponseBodySequencingMethod": ".route_settings_response_body_sequencing_method",
8025
8066
  "RouteStopDetailsObjectResponseBody": ".route_stop_details_object_response_body",
8026
8067
  "RouteStopDetailsObjectResponseBodyOperation": ".route_stop_details_object_response_body_operation",
8068
+ "RouteStopDetailsObjectResponseBodyType": ".route_stop_details_object_response_body_type",
8027
8069
  "RouteStopEstimatedArrivalDetailsObjectRequestBody": ".route_stop_estimated_arrival_details_object_request_body",
8028
8070
  "RouteStopEstimatedArrivalDetailsObjectResponseBody": ".route_stop_estimated_arrival_details_object_response_body",
8029
8071
  "RouteStopEtaResponseBody": ".route_stop_eta_response_body",
@@ -8649,6 +8691,7 @@ _dynamic_imports: typing.Dict[str, str] = {
8649
8691
  "TrainingCoursesGetTrainingCoursesTooManyRequestsErrorResponseBody": ".training_courses_get_training_courses_too_many_requests_error_response_body",
8650
8692
  "TrainingCoursesGetTrainingCoursesUnauthorizedErrorResponseBody": ".training_courses_get_training_courses_unauthorized_error_response_body",
8651
8693
  "TrainingLearnerObjectResponseBody": ".training_learner_object_response_body",
8694
+ "TrainingLearnerObjectResponseBodyType": ".training_learner_object_response_body_type",
8652
8695
  "TriggerParamsObjectRequestBody": ".trigger_params_object_request_body",
8653
8696
  "TriggerParamsObjectResponseBody": ".trigger_params_object_response_body",
8654
8697
  "TripAssetResponseBody": ".trip_asset_response_body",
@@ -8823,6 +8866,7 @@ _dynamic_imports: typing.Dict[str, str] = {
8823
8866
  "V1VisionStepResultsItemTextMatch": ".v_1_vision_step_results_item_text_match",
8824
8867
  "Vehicle": ".vehicle",
8825
8868
  "VehicleAssignmentObjectResponseBody": ".vehicle_assignment_object_response_body",
8869
+ "VehicleAssignmentObjectResponseBodyAssignmentType": ".vehicle_assignment_object_response_body_assignment_type",
8826
8870
  "VehicleAuxInputName": ".vehicle_aux_input_name",
8827
8871
  "VehicleAuxInputType": ".vehicle_aux_input_type",
8828
8872
  "VehicleAuxInputType1": ".vehicle_aux_input_type_1",
@@ -9218,7 +9262,9 @@ _dynamic_imports: typing.Dict[str, str] = {
9218
9262
  "WorkOrderItemObjectResponseBody": ".work_order_item_object_response_body",
9219
9263
  "WorkOrderItemObjectResponseBodyType": ".work_order_item_object_response_body_type",
9220
9264
  "WorkOrderMoneyObjectRequestBody": ".work_order_money_object_request_body",
9265
+ "WorkOrderMoneyObjectRequestBodyCurrency": ".work_order_money_object_request_body_currency",
9221
9266
  "WorkOrderMoneyObjectResponseBody": ".work_order_money_object_response_body",
9267
+ "WorkOrderMoneyObjectResponseBodyCurrency": ".work_order_money_object_response_body_currency",
9222
9268
  "WorkOrderObjectResponseBody": ".work_order_object_response_body",
9223
9269
  "WorkOrderObjectResponseBodyCategory": ".work_order_object_response_body_category",
9224
9270
  "WorkOrderObjectResponseBodyPriority": ".work_order_object_response_body_priority",
@@ -9747,6 +9793,7 @@ __all__ = [
9747
9793
  "DriverAppSignOutResponseBody",
9748
9794
  "DriverAssignmentMetadataTinyObjectResponseBody",
9749
9795
  "DriverAssignmentObjectResponseBody",
9796
+ "DriverAssignmentObjectResponseBodyAssignmentType",
9750
9797
  "DriverCarrierSettings",
9751
9798
  "DriverCoachAssignmentsGetDriverCoachAssignmentBadGatewayErrorResponseBody",
9752
9799
  "DriverCoachAssignmentsGetDriverCoachAssignmentGatewayTimeoutErrorResponseBody",
@@ -10243,6 +10290,7 @@ __all__ = [
10243
10290
  "FormsActionObjectResponseBody",
10244
10291
  "FormsActionObjectResponseBodyType",
10245
10292
  "FormsApprovalConfigObjectResponseBody",
10293
+ "FormsApprovalConfigObjectResponseBodyType",
10246
10294
  "FormsAssetObjectResponseBody",
10247
10295
  "FormsAssetObjectResponseBodyEntryType",
10248
10296
  "FormsAssetValueObjectResponseBody",
@@ -10322,7 +10370,9 @@ __all__ = [
10322
10370
  "FuelEnergyVehicleReportObjectResponseBody",
10323
10371
  "FuelLevelPercentageResponseBody",
10324
10372
  "FuelLevelTriggerDetailsObjectRequestBody",
10373
+ "FuelLevelTriggerDetailsObjectRequestBodyOperation",
10325
10374
  "FuelLevelTriggerDetailsObjectResponseBody",
10375
+ "FuelLevelTriggerDetailsObjectResponseBodyOperation",
10326
10376
  "FuelPurchasePostFuelPurchaseBadGatewayErrorResponseBody",
10327
10377
  "FuelPurchasePostFuelPurchaseGatewayTimeoutErrorResponseBody",
10328
10378
  "FuelPurchasePostFuelPurchaseInternalServerErrorResponseBody",
@@ -10627,8 +10677,12 @@ __all__ = [
10627
10677
  "HubsListHubsTooManyRequestsErrorResponseBody",
10628
10678
  "HubsListHubsUnauthorizedErrorResponseBody",
10629
10679
  "IdleTimeDurationMs",
10630
- "IdlingEventObjectResponseBody",
10631
- "IdlingEventObjectResponseBodyAddressType",
10680
+ "IdlingEventAddressObjectResponseBody",
10681
+ "IdlingEventAddressObjectResponseBodyAddressTypesItem",
10682
+ "IdlingEventAssetObjectResponseBody",
10683
+ "IdlingEventObjectV20251023ResponseBody",
10684
+ "IdlingEventObjectV20251023ResponseBodyPtoState",
10685
+ "IdlingEventOperatorObjectResponseBody",
10632
10686
  "IdlingReportEventAddressResponseBody",
10633
10687
  "IdlingReportEventResponseBody",
10634
10688
  "IdlingReportsGetVehicleIdlingReportsBadGatewayErrorResponseBody",
@@ -10960,6 +11014,7 @@ __all__ = [
10960
11014
  "PatchDriverVehicleAssignmentsV2RequestBodyMetadataRequestBody",
10961
11015
  "PatchDriverVehicleAssignmentsV2ResponseBodyResponseBody",
10962
11016
  "PatchIssueRequestBodyAssignedToRequestBody",
11017
+ "PatchIssueRequestBodyAssignedToRequestBodyType",
10963
11018
  "PatchJobObjectRequestBody",
10964
11019
  "PatchJobObjectjobLocationRequestObjectRequestBody",
10965
11020
  "PatchResponseWorkflowConfigurationObjectResponseBody",
@@ -11093,6 +11148,7 @@ __all__ = [
11093
11148
  "QualificationsUnarchiveQualificationRecordUnauthorizedErrorResponseBody",
11094
11149
  "QuantityObjectResponseBody",
11095
11150
  "ReadingDatapointRequestBody",
11151
+ "ReadingDatapointRequestBodyEntityType",
11096
11152
  "ReadingDefinitionResponseBody",
11097
11153
  "ReadingHistoryResponseBody",
11098
11154
  "ReadingSnapshotResponseBody",
@@ -11156,6 +11212,7 @@ __all__ = [
11156
11212
  "RecipientObjectResponseBodyType",
11157
11213
  "ReeferTemperatureResponseBody",
11158
11214
  "ResolvedBy",
11215
+ "ResolvedByType",
11159
11216
  "ReverseGeo",
11160
11217
  "ReverseGeoObjectResponseBody",
11161
11218
  "RollingStopDetectionAlertSettingsObjectResponseBody",
@@ -11168,15 +11225,19 @@ __all__ = [
11168
11225
  "RouteFeedObjectResponseBody",
11169
11226
  "RouteFeedObjectResponseBodyOperation",
11170
11227
  "RouteFeedObjectResponseBodySource",
11228
+ "RouteFeedObjectResponseBodyType",
11171
11229
  "RouteObjectResponseBody",
11172
11230
  "RouteSettingsRequestBody",
11173
11231
  "RouteSettingsRequestBodyRouteCompletionCondition",
11174
11232
  "RouteSettingsRequestBodyRouteStartingCondition",
11233
+ "RouteSettingsRequestBodySequencingMethod",
11175
11234
  "RouteSettingsResponseBody",
11176
11235
  "RouteSettingsResponseBodyRouteCompletionCondition",
11177
11236
  "RouteSettingsResponseBodyRouteStartingCondition",
11237
+ "RouteSettingsResponseBodySequencingMethod",
11178
11238
  "RouteStopDetailsObjectResponseBody",
11179
11239
  "RouteStopDetailsObjectResponseBodyOperation",
11240
+ "RouteStopDetailsObjectResponseBodyType",
11180
11241
  "RouteStopEstimatedArrivalDetailsObjectRequestBody",
11181
11242
  "RouteStopEstimatedArrivalDetailsObjectResponseBody",
11182
11243
  "RouteStopEtaResponseBody",
@@ -11802,6 +11863,7 @@ __all__ = [
11802
11863
  "TrainingCoursesGetTrainingCoursesTooManyRequestsErrorResponseBody",
11803
11864
  "TrainingCoursesGetTrainingCoursesUnauthorizedErrorResponseBody",
11804
11865
  "TrainingLearnerObjectResponseBody",
11866
+ "TrainingLearnerObjectResponseBodyType",
11805
11867
  "TriggerParamsObjectRequestBody",
11806
11868
  "TriggerParamsObjectResponseBody",
11807
11869
  "TripAssetResponseBody",
@@ -11976,6 +12038,7 @@ __all__ = [
11976
12038
  "V1VisionStepResultsItemTextMatch",
11977
12039
  "Vehicle",
11978
12040
  "VehicleAssignmentObjectResponseBody",
12041
+ "VehicleAssignmentObjectResponseBodyAssignmentType",
11979
12042
  "VehicleAuxInputName",
11980
12043
  "VehicleAuxInputType",
11981
12044
  "VehicleAuxInputType1",
@@ -12371,7 +12434,9 @@ __all__ = [
12371
12434
  "WorkOrderItemObjectResponseBody",
12372
12435
  "WorkOrderItemObjectResponseBodyType",
12373
12436
  "WorkOrderMoneyObjectRequestBody",
12437
+ "WorkOrderMoneyObjectRequestBodyCurrency",
12374
12438
  "WorkOrderMoneyObjectResponseBody",
12439
+ "WorkOrderMoneyObjectResponseBodyCurrency",
12375
12440
  "WorkOrderObjectResponseBody",
12376
12441
  "WorkOrderObjectResponseBodyCategory",
12377
12442
  "WorkOrderObjectResponseBodyPriority",
@@ -5,11 +5,11 @@ import typing
5
5
  import pydantic
6
6
  from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
7
  from .goa_pagination_response_response_body import GoaPaginationResponseResponseBody
8
- from .idling_event_object_response_body import IdlingEventObjectResponseBody
8
+ from .idling_event_object_v_20251023_response_body import IdlingEventObjectV20251023ResponseBody
9
9
 
10
10
 
11
11
  class AdvancedIdlingGetIdlingEventsResponseBody(UniversalBaseModel):
12
- data: typing.List[IdlingEventObjectResponseBody] = pydantic.Field()
12
+ data: typing.List[IdlingEventObjectV20251023ResponseBody] = pydantic.Field()
13
13
  """
14
14
  List of idling event objects.
15
15
  """
@@ -63,6 +63,13 @@ class CreateRoutesStopRequestObjectRequestBody(UniversalBaseModel):
63
63
  This is a required field for all stops EXCEPT the start and end, based on route start and stop settings selected.
64
64
  """
65
65
 
66
+ sequence_number: typing_extensions.Annotated[typing.Optional[int], FieldMetadata(alias="sequenceNumber")] = (
67
+ pydantic.Field(default=None)
68
+ )
69
+ """
70
+ Manual sequence position for this stop. Only meaningful when route.settings.sequencingMethod=manual. Must be unique and positive when specified.
71
+ """
72
+
66
73
  single_use_location: typing_extensions.Annotated[
67
74
  typing.Optional[RoutesSingleUseAddressObjectRequestBody], FieldMetadata(alias="singleUseLocation")
68
75
  ] = None
@@ -6,12 +6,13 @@ import pydantic
6
6
  import typing_extensions
7
7
  from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
8
8
  from ..core.serialization import FieldMetadata
9
+ from .driver_assignment_object_response_body_assignment_type import DriverAssignmentObjectResponseBodyAssignmentType
9
10
  from .goa_driver_tiny_response_response_body import GoaDriverTinyResponseResponseBody
10
11
 
11
12
 
12
13
  class DriverAssignmentObjectResponseBody(UniversalBaseModel):
13
14
  assignment_type: typing_extensions.Annotated[
14
- typing.Optional[typing.Literal["driverApp"]], FieldMetadata(alias="assignmentType")
15
+ typing.Optional[DriverAssignmentObjectResponseBodyAssignmentType], FieldMetadata(alias="assignmentType")
15
16
  ] = pydantic.Field(default=None)
16
17
  """
17
18
  Assignment type of the driver-vehicle assignment, indicating the provenance of the assignment. The only type of assignment supported right now is `driverApp` assignments. This list could change, so it is recommended that clients gracefully handle any types not enumerated in this list. Valid values: `driverApp`
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ DriverAssignmentObjectResponseBodyAssignmentType = typing.Union[typing.Literal["driverApp"], typing.Any]
@@ -2,4 +2,4 @@
2
2
 
3
3
  import typing
4
4
 
5
- DriverExternalIds = typing.Dict[str, typing.Optional[typing.Any]]
5
+ DriverExternalIds = typing.Dict[str, typing.Any]
@@ -6,6 +6,7 @@ import pydantic
6
6
  import typing_extensions
7
7
  from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
8
8
  from ..core.serialization import FieldMetadata
9
+ from .forms_approval_config_object_response_body_type import FormsApprovalConfigObjectResponseBodyType
9
10
  from .forms_single_approval_config_object_response_body import FormsSingleApprovalConfigObjectResponseBody
10
11
 
11
12
 
@@ -17,7 +18,7 @@ class FormsApprovalConfigObjectResponseBody(UniversalBaseModel):
17
18
  single_approval_config: typing_extensions.Annotated[
18
19
  typing.Optional[FormsSingleApprovalConfigObjectResponseBody], FieldMetadata(alias="singleApprovalConfig")
19
20
  ] = None
20
- type: typing.Literal["singleApproval"] = pydantic.Field(default="singleApproval")
21
+ type: FormsApprovalConfigObjectResponseBodyType = pydantic.Field()
21
22
  """
22
23
  Type of approval. Valid values: `singleApproval`
23
24
  """
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ FormsApprovalConfigObjectResponseBodyType = typing.Union[typing.Literal["singleApproval"], typing.Any]
@@ -6,6 +6,7 @@ import pydantic
6
6
  import typing_extensions
7
7
  from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
8
8
  from ..core.serialization import FieldMetadata
9
+ from .fuel_level_trigger_details_object_request_body_operation import FuelLevelTriggerDetailsObjectRequestBodyOperation
9
10
 
10
11
 
11
12
  class FuelLevelTriggerDetailsObjectRequestBody(UniversalBaseModel):
@@ -25,7 +26,7 @@ class FuelLevelTriggerDetailsObjectRequestBody(UniversalBaseModel):
25
26
  The number of milliseconds the trigger needs to stay active before alerting.
26
27
  """
27
28
 
28
- operation: typing.Literal["LESS"] = pydantic.Field(default="LESS")
29
+ operation: FuelLevelTriggerDetailsObjectRequestBodyOperation = pydantic.Field()
29
30
  """
30
31
  How to evaluate the threshold. Valid values: `LESS`
31
32
  """
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ FuelLevelTriggerDetailsObjectRequestBodyOperation = typing.Union[typing.Literal["LESS"], typing.Any]
@@ -6,6 +6,9 @@ import pydantic
6
6
  import typing_extensions
7
7
  from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
8
8
  from ..core.serialization import FieldMetadata
9
+ from .fuel_level_trigger_details_object_response_body_operation import (
10
+ FuelLevelTriggerDetailsObjectResponseBodyOperation,
11
+ )
9
12
 
10
13
 
11
14
  class FuelLevelTriggerDetailsObjectResponseBody(UniversalBaseModel):
@@ -25,7 +28,7 @@ class FuelLevelTriggerDetailsObjectResponseBody(UniversalBaseModel):
25
28
  The number of milliseconds the trigger needs to stay active before alerting.
26
29
  """
27
30
 
28
- operation: typing.Literal["LESS"] = pydantic.Field(default="LESS")
31
+ operation: FuelLevelTriggerDetailsObjectResponseBodyOperation = pydantic.Field()
29
32
  """
30
33
  How to evaluate the threshold. Valid values: `LESS`
31
34
  """
@@ -0,0 +1,5 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ FuelLevelTriggerDetailsObjectResponseBodyOperation = typing.Union[typing.Literal["LESS"], typing.Any]
@@ -39,6 +39,7 @@ HarshEventTriggerDetailsObjectRequestBodyTypesItem = typing.Union[
39
39
  "haTailgating",
40
40
  "haTileRollingRailroadCrossing",
41
41
  "haTileRollingStopSign",
42
+ "haTrafficLightDetection",
42
43
  "haUnsafeParking",
43
44
  "haVulnerableRoadUserCollisionWarning",
44
45
  "haYawControlBrakeControlActivated",
@@ -39,6 +39,7 @@ HarshEventTriggerDetailsObjectResponseBodyTypesItem = typing.Union[
39
39
  "haTailgating",
40
40
  "haTileRollingRailroadCrossing",
41
41
  "haTileRollingStopSign",
42
+ "haTrafficLightDetection",
42
43
  "haUnsafeParking",
43
44
  "haVulnerableRoadUserCollisionWarning",
44
45
  "haYawControlBrakeControlActivated",
@@ -0,0 +1,46 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ import typing_extensions
7
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
8
+ from ..core.serialization import FieldMetadata
9
+ from .idling_event_address_object_response_body_address_types_item import (
10
+ IdlingEventAddressObjectResponseBodyAddressTypesItem,
11
+ )
12
+
13
+
14
+ class IdlingEventAddressObjectResponseBody(UniversalBaseModel):
15
+ """
16
+ The geofence address associated with the idling event, if applicable.
17
+ """
18
+
19
+ address_types: typing_extensions.Annotated[
20
+ typing.Optional[typing.List[IdlingEventAddressObjectResponseBodyAddressTypesItem]],
21
+ FieldMetadata(alias="addressTypes"),
22
+ ] = pydantic.Field(default=None)
23
+ """
24
+ The types of the geofence address of the idling location. An address can have multiple types.
25
+ """
26
+
27
+ external_ids: typing_extensions.Annotated[
28
+ typing.Optional[typing.Dict[str, str]], FieldMetadata(alias="externalIds")
29
+ ] = pydantic.Field(default=None)
30
+ """
31
+ A map of external ids for the address.
32
+ """
33
+
34
+ id: str = pydantic.Field()
35
+ """
36
+ The ID of the geofence address of the idling location. It will be the address at the time of idling.
37
+ """
38
+
39
+ if IS_PYDANTIC_V2:
40
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
41
+ else:
42
+
43
+ class Config:
44
+ frozen = True
45
+ smart_union = True
46
+ extra = pydantic.Extra.allow
@@ -2,7 +2,7 @@
2
2
 
3
3
  import typing
4
4
 
5
- IdlingEventObjectResponseBodyAddressType = typing.Union[
5
+ IdlingEventAddressObjectResponseBodyAddressTypesItem = typing.Union[
6
6
  typing.Literal[
7
7
  "agricultureSource",
8
8
  "alertsOnly",
@@ -0,0 +1,35 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ import typing_extensions
7
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
8
+ from ..core.serialization import FieldMetadata
9
+
10
+
11
+ class IdlingEventAssetObjectResponseBody(UniversalBaseModel):
12
+ """
13
+ The asset associated with the idling event. Returns vehicle details at this time.
14
+ """
15
+
16
+ external_ids: typing_extensions.Annotated[
17
+ typing.Optional[typing.Dict[str, str]], FieldMetadata(alias="externalIds")
18
+ ] = pydantic.Field(default=None)
19
+ """
20
+ A map of external ids for the asset.
21
+ """
22
+
23
+ id: int = pydantic.Field()
24
+ """
25
+ Samsara ID of the asset assigned to the event. Returns vehicle ID at this time.
26
+ """
27
+
28
+ if IS_PYDANTIC_V2:
29
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
30
+ else:
31
+
32
+ class Config:
33
+ frozen = True
34
+ smart_union = True
35
+ extra = pydantic.Extra.allow