samsara-api 3.0.0__py3-none-any.whl → 4.0.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.
- samsara/__init__.py +7438 -2443
- samsara/addresses/__init__.py +31 -1
- samsara/addresses/client.py +19 -12
- samsara/addresses/raw_client.py +13 -16
- samsara/addresses/types/__init__.py +32 -2
- samsara/addresses/types/create_address_request_address_types_item.py +9 -1
- samsara/addresses/types/update_address_request_address_types_item.py +9 -1
- samsara/alerts/__init__.py +29 -3
- samsara/alerts/client.py +811 -8
- samsara/alerts/raw_client.py +1837 -0
- samsara/alerts/types/__init__.py +34 -0
- samsara/alerts/types/get_configurations_request_status.py +5 -0
- samsara/assets/__init__.py +40 -9
- samsara/assets/client.py +710 -23
- samsara/assets/raw_client.py +673 -6
- samsara/assets/types/__init__.py +38 -5
- samsara/attributes/__init__.py +50 -16
- samsara/attributes/client.py +82 -96
- samsara/attributes/raw_client.py +57 -104
- samsara/attributes/types/__init__.py +48 -14
- samsara/attributes/types/create_attribute_request_attribute_type.py +3 -1
- samsara/attributes/types/create_attribute_request_unit.py +42 -0
- samsara/attributes/types/delete_attribute_request_entity_type.py +5 -0
- samsara/attributes/types/get_attribute_request_entity_type.py +5 -0
- samsara/attributes/types/get_attributes_by_entity_type_request_entity_type.py +5 -0
- samsara/attributes/types/update_attribute_request_attribute_type.py +3 -1
- samsara/beta_ap_is/__init__.py +70 -0
- samsara/beta_ap_is/client.py +7119 -0
- samsara/beta_ap_is/raw_client.py +16518 -0
- samsara/beta_ap_is/types/__init__.py +70 -0
- samsara/beta_ap_is/types/functions_start_function_run_request_body_params_override.py +21 -0
- samsara/beta_ap_is/types/get_assets_inputs_request_type.py +27 -0
- samsara/beta_ap_is/types/get_driver_efficiency_request_driver_activation_status.py +5 -0
- samsara/beta_ap_is/types/get_hos_eld_events_request_driver_activation_status.py +5 -0
- samsara/beta_ap_is/types/get_jobs_request_status.py +5 -0
- samsara/beta_ap_is/types/get_qualification_records_stream_request_entity_type.py +5 -0
- samsara/beta_ap_is/types/get_qualification_types_request_entity_type.py +5 -0
- samsara/beta_ap_is/types/get_tag_group_safety_scores_request_score_type.py +5 -0
- samsara/beta_ap_is/types/get_tag_safety_scores_request_score_type.py +5 -0
- samsara/beta_ap_is/types/get_trips_request_completion_status.py +5 -0
- samsara/beta_ap_is/types/get_trips_request_query_by.py +5 -0
- samsara/carrier_proposed_assignments/client.py +38 -39
- samsara/carrier_proposed_assignments/raw_client.py +23 -61
- samsara/client.py +950 -152
- samsara/coaching/__init__.py +0 -3
- samsara/coaching/client.py +442 -8
- samsara/coaching/raw_client.py +1043 -0
- samsara/contacts/client.py +48 -51
- samsara/contacts/raw_client.py +29 -61
- samsara/core/__init__.py +76 -21
- samsara/core/client_wrapper.py +20 -10
- samsara/core/force_multipart.py +4 -2
- samsara/core/http_response.py +1 -1
- samsara/core/pagination.py +1 -1
- samsara/core/pydantic_utilities.py +7 -4
- samsara/documents/__init__.py +29 -3
- samsara/documents/client.py +294 -44
- samsara/documents/raw_client.py +503 -53
- samsara/documents/types/__init__.py +30 -1
- samsara/driver_qr_codes/client.py +306 -0
- samsara/driver_qr_codes/raw_client.py +928 -0
- samsara/driver_vehicle_assignments/__init__.py +32 -2
- samsara/driver_vehicle_assignments/client.py +47 -35
- samsara/driver_vehicle_assignments/raw_client.py +19 -19
- samsara/driver_vehicle_assignments/types/__init__.py +33 -3
- samsara/driver_vehicle_assignments/types/get_driver_vehicle_assignments_request_assignment_type.py +10 -0
- samsara/driver_vehicle_assignments/types/get_driver_vehicle_assignments_request_filter_by.py +5 -0
- samsara/drivers/__init__.py +38 -11
- samsara/drivers/client.py +139 -20
- samsara/drivers/raw_client.py +111 -6
- samsara/drivers/types/__init__.py +36 -4
- samsara/equipment/__init__.py +39 -7
- samsara/equipment/client.py +1001 -62
- samsara/equipment/raw_client.py +1010 -70
- samsara/equipment/types/__init__.py +44 -0
- samsara/equipment/types/get_equipment_stats_feed_request_types_item.py +19 -0
- samsara/equipment/types/get_equipment_stats_history_request_types_item.py +19 -0
- samsara/equipment/types/get_equipment_stats_request_types_item.py +19 -0
- samsara/errors/__init__.py +46 -9
- samsara/fleet/__init__.py +34 -0
- samsara/fleet/attributes/client.py +101 -0
- samsara/fleet/attributes/raw_client.py +74 -0
- samsara/fleet/client.py +63 -0
- samsara/fleet/raw_client.py +13 -0
- samsara/forms/__init__.py +30 -0
- samsara/forms/client.py +815 -2
- samsara/forms/raw_client.py +2091 -15
- samsara/forms/types/__init__.py +38 -0
- samsara/fuel_and_energy/__init__.py +46 -0
- samsara/fuel_and_energy/client.py +960 -0
- samsara/fuel_and_energy/raw_client.py +1925 -0
- samsara/fuel_and_energy/types/__init__.py +48 -0
- samsara/fuel_and_energy/types/fuel_purchase_post_fuel_purchase_request_body_fuel_grade.py +7 -0
- samsara/fuel_and_energy/types/get_fuel_energy_vehicle_reports_request_energy_type.py +5 -0
- samsara/gateways/client.py +29 -35
- samsara/gateways/raw_client.py +14 -45
- samsara/hours_of_service/__init__.py +34 -0
- samsara/hours_of_service/client.py +1002 -0
- samsara/hours_of_service/raw_client.py +1381 -0
- samsara/hours_of_service/types/__init__.py +36 -0
- samsara/hours_of_service/types/get_hos_daily_logs_request_driver_activation_status.py +5 -0
- samsara/hubs/client.py +1073 -0
- samsara/hubs/raw_client.py +2106 -0
- samsara/idling/__init__.py +29 -2
- samsara/idling/client.py +36 -30
- samsara/idling/raw_client.py +18 -72
- samsara/idling/types/__init__.py +29 -2
- samsara/idling/types/get_idling_events_request_pto_state.py +5 -0
- samsara/ifta/__init__.py +50 -2
- samsara/ifta/client.py +634 -3
- samsara/ifta/raw_client.py +1432 -0
- samsara/ifta/types/__init__.py +53 -0
- samsara/ifta/types/get_ifta_jurisdiction_reports_request_fuel_type.py +25 -0
- samsara/ifta/types/get_ifta_jurisdiction_reports_request_month.py +21 -0
- samsara/ifta/types/get_ifta_jurisdiction_reports_request_quarter.py +5 -0
- samsara/ifta/types/get_ifta_vehicle_reports_request_fuel_type.py +25 -0
- samsara/ifta/types/get_ifta_vehicle_reports_request_month.py +21 -0
- samsara/ifta/types/get_ifta_vehicle_reports_request_quarter.py +5 -0
- samsara/industrial/client.py +2167 -0
- samsara/industrial/raw_client.py +2463 -0
- samsara/issues/__init__.py +28 -1
- samsara/issues/client.py +39 -35
- samsara/issues/raw_client.py +24 -53
- samsara/issues/types/__init__.py +30 -1
- samsara/legacy/client.py +21 -95
- samsara/legacy/raw_client.py +25 -304
- samsara/legacy_ap_is/__init__.py +34 -0
- samsara/legacy_ap_is/client.py +879 -0
- samsara/legacy_ap_is/raw_client.py +1433 -0
- samsara/legacy_ap_is/types/__init__.py +38 -0
- samsara/legacy_ap_is/types/get_drivers_vehicle_assignments_request_driver_activation_status.py +7 -0
- samsara/live_sharing_links/__init__.py +37 -0
- samsara/live_sharing_links/client.py +548 -0
- samsara/live_sharing_links/raw_client.py +1389 -0
- samsara/live_sharing_links/types/__init__.py +40 -0
- samsara/live_sharing_links/types/get_live_sharing_links_request_type.py +7 -0
- samsara/location_and_speed/client.py +236 -0
- samsara/location_and_speed/raw_client.py +414 -0
- samsara/maintenance/__init__.py +30 -20
- samsara/maintenance/client.py +1198 -8
- samsara/maintenance/raw_client.py +2249 -0
- samsara/maintenance/types/__init__.py +34 -0
- samsara/media/__init__.py +52 -0
- samsara/media/client.py +500 -0
- samsara/media/raw_client.py +1082 -0
- samsara/media/types/__init__.py +54 -0
- samsara/media/types/list_uploaded_media_request_inputs_item.py +7 -0
- samsara/media/types/list_uploaded_media_request_media_types_item.py +5 -0
- samsara/media/types/list_uploaded_media_request_trigger_reasons_item.py +17 -0
- samsara/media/types/media_retrieval_post_media_retrieval_request_body_inputs_item.py +7 -0
- samsara/messages/client.py +272 -0
- samsara/messages/raw_client.py +273 -0
- samsara/organization_info/client.py +112 -0
- samsara/organization_info/raw_client.py +101 -0
- samsara/plans/client.py +312 -0
- samsara/plans/raw_client.py +700 -0
- samsara/preview_ap_is/client.py +367 -0
- samsara/preview_ap_is/raw_client.py +956 -0
- samsara/routes/__init__.py +0 -3
- samsara/routes/client.py +459 -50
- samsara/routes/raw_client.py +913 -140
- samsara/safety/client.py +662 -0
- samsara/safety/raw_client.py +869 -0
- samsara/sensors/__init__.py +34 -0
- samsara/sensors/client.py +680 -0
- samsara/sensors/raw_client.py +746 -0
- samsara/sensors/types/__init__.py +34 -0
- samsara/sensors/types/inline_object_6_fill_missing.py +5 -0
- samsara/settings/__init__.py +0 -3
- samsara/settings/client.py +579 -13
- samsara/settings/raw_client.py +1655 -0
- samsara/speeding_intervals/__init__.py +29 -2
- samsara/speeding_intervals/client.py +20 -28
- samsara/speeding_intervals/raw_client.py +16 -58
- samsara/speeding_intervals/types/__init__.py +31 -2
- samsara/speeding_intervals/types/get_speeding_intervals_request_query_by.py +5 -0
- samsara/tachograph_eu_only/client.py +494 -0
- samsara/tachograph_eu_only/raw_client.py +475 -0
- samsara/tags/client.py +53 -58
- samsara/tags/raw_client.py +29 -63
- samsara/trailer_assignments/client.py +331 -0
- samsara/trailer_assignments/raw_client.py +313 -0
- samsara/trailers/client.py +47 -47
- samsara/trailers/raw_client.py +18 -53
- samsara/trips/__init__.py +0 -3
- samsara/trips/client.py +55 -111
- samsara/trips/raw_client.py +58 -349
- samsara/types/__init__.py +10049 -4134
- samsara/types/address.py +5 -5
- samsara/types/address_address_types_item.py +9 -1
- samsara/types/address_external_ids.py +21 -0
- samsara/types/aemp_equipment_get_aemp_equipment_list_bad_gateway_error_response_body.py +33 -0
- samsara/types/aemp_equipment_get_aemp_equipment_list_gateway_timeout_error_response_body.py +33 -0
- samsara/types/aemp_equipment_get_aemp_equipment_list_internal_server_error_response_body.py +33 -0
- samsara/types/aemp_equipment_get_aemp_equipment_list_method_not_allowed_error_response_body.py +33 -0
- samsara/types/aemp_equipment_get_aemp_equipment_list_not_found_error_response_body.py +33 -0
- samsara/types/aemp_equipment_get_aemp_equipment_list_not_implemented_error_response_body.py +33 -0
- samsara/types/aemp_equipment_get_aemp_equipment_list_response_body.py +22 -0
- samsara/types/aemp_equipment_get_aemp_equipment_list_service_unavailable_error_response_body.py +33 -0
- samsara/types/aemp_equipment_get_aemp_equipment_list_too_many_requests_error_response_body.py +33 -0
- samsara/types/aemp_equipment_get_aemp_equipment_list_unauthorized_error_response_body.py +33 -0
- samsara/types/aemp_equipment_with_additional_fields_response_body.py +48 -0
- samsara/types/aemp_fleet_list_response_body.py +49 -0
- samsara/types/aemp_link_response_body.py +31 -0
- samsara/types/anticipation_brake_event_count.py +3 -0
- samsara/types/appointment_window_request_body.py +34 -0
- samsara/types/appointment_window_response_body.py +34 -0
- samsara/types/asset_data_input.py +45 -0
- samsara/types/asset_data_input_last_point.py +28 -0
- samsara/types/asset_data_output.py +45 -0
- samsara/types/asset_data_outputs_patch_asset_data_outputs_bad_gateway_error_response_body.py +33 -0
- samsara/types/asset_data_outputs_patch_asset_data_outputs_gateway_timeout_error_response_body.py +33 -0
- samsara/types/asset_data_outputs_patch_asset_data_outputs_internal_server_error_response_body.py +33 -0
- samsara/types/asset_data_outputs_patch_asset_data_outputs_method_not_allowed_error_response_body.py +33 -0
- samsara/types/asset_data_outputs_patch_asset_data_outputs_not_found_error_response_body.py +33 -0
- samsara/types/asset_data_outputs_patch_asset_data_outputs_not_implemented_error_response_body.py +33 -0
- samsara/types/asset_data_outputs_patch_asset_data_outputs_response_body.py +23 -0
- samsara/types/asset_data_outputs_patch_asset_data_outputs_service_unavailable_error_response_body.py +33 -0
- samsara/types/asset_data_outputs_patch_asset_data_outputs_too_many_requests_error_response_body.py +33 -0
- samsara/types/asset_data_outputs_patch_asset_data_outputs_unauthorized_error_response_body.py +33 -0
- samsara/types/asset_location.py +35 -0
- samsara/types/asset_name.py +3 -0
- samsara/types/asset_response.py +71 -0
- samsara/types/asset_response_body.py +7 -0
- samsara/types/asset_response_location_data_input.py +26 -0
- samsara/types/asset_response_parent_asset.py +26 -0
- samsara/types/asset_response_running_status_data_input.py +26 -0
- samsara/types/assets_location_link_request_config_object.py +39 -0
- samsara/types/assets_location_link_response_config_object_response_body.py +40 -0
- samsara/types/attribute.py +10 -12
- samsara/types/attribute_attribute_type.py +3 -1
- samsara/types/attribute_entity.py +3 -3
- samsara/types/attribute_unit.py +42 -0
- samsara/types/base_route_response_object_response_body.py +7 -0
- samsara/types/coasting_duration_ms.py +3 -0
- samsara/types/continuous_reading_alert_threshold_response_body.py +1 -1
- samsara/types/continuous_reading_alert_threshold_response_body_unit.py +15 -0
- samsara/types/create_driver_auth_token_response_response_body.py +33 -0
- samsara/types/cruise_control_duration_ms.py +3 -0
- samsara/types/cumulative_operating_hours_response_body.py +35 -0
- samsara/types/custom_metadata.py +5 -0
- samsara/types/data_input_list_response.py +26 -0
- samsara/types/data_input_response.py +19 -0
- samsara/types/data_input_response_all_of.py +59 -0
- samsara/types/data_input_snapshot.py +19 -0
- samsara/types/data_input_snapshot_all_of.py +40 -0
- samsara/types/data_input_snapshot_response.py +26 -0
- samsara/types/data_input_tiny_response.py +52 -0
- samsara/types/data_inputs_tiny_response.py +26 -0
- samsara/types/def_remaining_response_body.py +35 -0
- samsara/types/detection_log_asset_object_response_body.py +43 -0
- samsara/types/detection_log_detection_object_response_body.py +65 -0
- samsara/types/detection_log_detection_object_response_body_trigger_detection_label.py +33 -0
- samsara/types/detection_log_driver_object_response_body.py +52 -0
- samsara/types/detection_log_get_detections_bad_gateway_error_response_body.py +33 -0
- samsara/types/detection_log_get_detections_gateway_timeout_error_response_body.py +33 -0
- samsara/types/detection_log_get_detections_internal_server_error_response_body.py +33 -0
- samsara/types/detection_log_get_detections_method_not_allowed_error_response_body.py +33 -0
- samsara/types/detection_log_get_detections_not_found_error_response_body.py +33 -0
- samsara/types/detection_log_get_detections_not_implemented_error_response_body.py +33 -0
- samsara/types/detection_log_get_detections_response_body.py +26 -0
- samsara/types/detection_log_get_detections_service_unavailable_error_response_body.py +33 -0
- samsara/types/detection_log_get_detections_too_many_requests_error_response_body.py +33 -0
- samsara/types/detection_log_get_detections_unauthorized_error_response_body.py +33 -0
- samsara/types/detection_log_safety_event_object_response_body.py +39 -0
- samsara/types/detection_log_safety_event_object_response_body_inbox_filter_reason.py +21 -0
- samsara/types/device_response_response_body.py +1 -1
- samsara/types/device_response_response_body_model.py +5 -0
- samsara/types/distance_driven_meters.py +3 -0
- samsara/types/distance_response_body.py +42 -0
- samsara/types/drive_time_duration_ms.py +3 -0
- samsara/types/driver.py +8 -0
- samsara/types/driver_app_sign_in_response_body.py +6 -0
- samsara/types/driver_efficiencies_response.py +26 -0
- samsara/types/driver_efficiencies_response_data.py +42 -0
- samsara/types/driver_efficiency.py +79 -0
- samsara/types/driver_efficiency_data_object_response_body.py +84 -0
- samsara/types/driver_efficiency_difficulty_score_data_object_response_body.py +44 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_drivers_bad_gateway_error_response_body.py +33 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_drivers_gateway_timeout_error_response_body.py +33 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_drivers_internal_server_error_response_body.py +33 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_drivers_method_not_allowed_error_response_body.py +33 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_drivers_not_found_error_response_body.py +33 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_drivers_not_implemented_error_response_body.py +33 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_drivers_response_body.py +28 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_drivers_service_unavailable_error_response_body.py +33 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_drivers_too_many_requests_error_response_body.py +33 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_drivers_unauthorized_error_response_body.py +33 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_vehicles_bad_gateway_error_response_body.py +33 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_vehicles_gateway_timeout_error_response_body.py +33 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_vehicles_internal_server_error_response_body.py +33 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_vehicles_method_not_allowed_error_response_body.py +33 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_vehicles_not_found_error_response_body.py +33 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_vehicles_not_implemented_error_response_body.py +33 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_vehicles_response_body.py +28 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_vehicles_service_unavailable_error_response_body.py +33 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_vehicles_too_many_requests_error_response_body.py +33 -0
- samsara/types/driver_efficiency_get_driver_efficiency_by_vehicles_unauthorized_error_response_body.py +33 -0
- samsara/types/driver_efficiency_percentage_data_object_response_body.py +84 -0
- samsara/types/driver_efficiency_raw_data_object_response_body.py +119 -0
- samsara/types/driver_has_vehicle_unpinning_enabled.py +3 -0
- samsara/types/driver_profile_image_base_64.py +3 -0
- samsara/types/driver_profile_image_url.py +3 -0
- samsara/types/driver_safety_score_response_body.py +59 -0
- samsara/types/drivers_auth_token_create_driver_auth_token_bad_gateway_error_response_body.py +33 -0
- samsara/types/drivers_auth_token_create_driver_auth_token_gateway_timeout_error_response_body.py +33 -0
- samsara/types/drivers_auth_token_create_driver_auth_token_internal_server_error_response_body.py +33 -0
- samsara/types/drivers_auth_token_create_driver_auth_token_method_not_allowed_error_response_body.py +33 -0
- samsara/types/drivers_auth_token_create_driver_auth_token_not_found_error_response_body.py +33 -0
- samsara/types/drivers_auth_token_create_driver_auth_token_not_implemented_error_response_body.py +33 -0
- samsara/types/drivers_auth_token_create_driver_auth_token_response_body.py +20 -0
- samsara/types/drivers_auth_token_create_driver_auth_token_service_unavailable_error_response_body.py +33 -0
- samsara/types/drivers_auth_token_create_driver_auth_token_too_many_requests_error_response_body.py +33 -0
- samsara/types/drivers_auth_token_create_driver_auth_token_unauthorized_error_response_body.py +33 -0
- samsara/types/engine_immobilizer_update_engine_immobilizer_state_bad_gateway_error_response_body.py +33 -0
- samsara/types/engine_immobilizer_update_engine_immobilizer_state_gateway_timeout_error_response_body.py +33 -0
- samsara/types/engine_immobilizer_update_engine_immobilizer_state_internal_server_error_response_body.py +33 -0
- samsara/types/engine_immobilizer_update_engine_immobilizer_state_method_not_allowed_error_response_body.py +33 -0
- samsara/types/engine_immobilizer_update_engine_immobilizer_state_not_found_error_response_body.py +33 -0
- samsara/types/engine_immobilizer_update_engine_immobilizer_state_not_implemented_error_response_body.py +33 -0
- samsara/types/engine_immobilizer_update_engine_immobilizer_state_service_unavailable_error_response_body.py +33 -0
- samsara/types/engine_immobilizer_update_engine_immobilizer_state_too_many_requests_error_response_body.py +33 -0
- samsara/types/engine_immobilizer_update_engine_immobilizer_state_unauthorized_error_response_body.py +33 -0
- samsara/types/engine_status_response_body.py +35 -0
- samsara/types/equipment_header_with_additional_fields_response_body.py +63 -0
- samsara/types/equipment_patch_equipment_bad_gateway_error_response_body.py +33 -0
- samsara/types/equipment_patch_equipment_gateway_timeout_error_response_body.py +33 -0
- samsara/types/equipment_patch_equipment_internal_server_error_response_body.py +33 -0
- samsara/types/equipment_patch_equipment_method_not_allowed_error_response_body.py +33 -0
- samsara/types/equipment_patch_equipment_not_found_error_response_body.py +33 -0
- samsara/types/equipment_patch_equipment_not_implemented_error_response_body.py +33 -0
- samsara/types/equipment_patch_equipment_response_body.py +20 -0
- samsara/types/equipment_patch_equipment_service_unavailable_error_response_body.py +33 -0
- samsara/types/equipment_patch_equipment_too_many_requests_error_response_body.py +33 -0
- samsara/types/equipment_patch_equipment_unauthorized_error_response_body.py +33 -0
- samsara/types/equipment_with_attributes_response_object_response_body.py +68 -0
- samsara/types/extended_driver_tiny_response.py +46 -0
- samsara/types/extended_driver_tiny_response_external_ids.py +21 -0
- samsara/types/fft_spectra_data_point.py +30 -0
- samsara/types/fft_spectra_data_point_fft_spectra.py +41 -0
- samsara/types/fleet_device_object_response_body.py +31 -0
- samsara/types/form_submission_request_media_item_object_request_body.py +33 -0
- samsara/types/form_submission_request_media_value_object_request_body.py +31 -0
- samsara/types/form_submission_request_signature_value_object_request_body.py +24 -0
- samsara/types/form_template_response_object_response_body.py +10 -0
- samsara/types/form_template_response_object_response_body_form_category.py +7 -0
- samsara/types/form_updated_response_body.py +24 -0
- samsara/types/fuel_consumed_ml.py +3 -0
- samsara/types/fuel_remaining_response_body.py +35 -0
- samsara/types/functions_start_function_run_bad_gateway_error_response_body.py +33 -0
- samsara/types/functions_start_function_run_gateway_timeout_error_response_body.py +33 -0
- samsara/types/functions_start_function_run_internal_server_error_response_body.py +33 -0
- samsara/types/functions_start_function_run_method_not_allowed_error_response_body.py +33 -0
- samsara/types/functions_start_function_run_not_found_error_response_body.py +33 -0
- samsara/types/functions_start_function_run_not_implemented_error_response_body.py +33 -0
- samsara/types/functions_start_function_run_response_body.py +20 -0
- samsara/types/functions_start_function_run_service_unavailable_error_response_body.py +33 -0
- samsara/types/functions_start_function_run_too_many_requests_error_response_body.py +33 -0
- samsara/types/functions_start_function_run_unauthorized_error_response_body.py +33 -0
- samsara/types/gateway_details_response_response_body.py +1 -1
- samsara/types/gateway_details_response_response_body_gateway_battery_state.py +3 -1
- samsara/types/goa_attribute_tiny.py +47 -0
- samsara/types/goa_form_tiny_response_response_body.py +26 -0
- samsara/types/goa_issue_tiny_response_response_body.py +26 -0
- samsara/types/green_band_driving_duration_ms.py +3 -0
- samsara/types/harsh_event_trigger_details_object_request_body_types_item.py +2 -0
- samsara/types/harsh_event_trigger_details_object_response_body_types_item.py +2 -0
- samsara/types/health_response_response_body.py +11 -1
- samsara/types/health_response_response_body_recommended_action.py +10 -0
- samsara/types/high_torque_ms.py +3 -0
- samsara/types/hos_daily_logs_update_shipping_docs_bad_gateway_error_response_body.py +33 -0
- samsara/types/hos_daily_logs_update_shipping_docs_gateway_timeout_error_response_body.py +33 -0
- samsara/types/hos_daily_logs_update_shipping_docs_internal_server_error_response_body.py +33 -0
- samsara/types/hos_daily_logs_update_shipping_docs_method_not_allowed_error_response_body.py +33 -0
- samsara/types/hos_daily_logs_update_shipping_docs_not_found_error_response_body.py +33 -0
- samsara/types/hos_daily_logs_update_shipping_docs_not_implemented_error_response_body.py +33 -0
- samsara/types/hos_daily_logs_update_shipping_docs_response_body.py +20 -0
- samsara/types/hos_daily_logs_update_shipping_docs_service_unavailable_error_response_body.py +33 -0
- samsara/types/hos_daily_logs_update_shipping_docs_too_many_requests_error_response_body.py +33 -0
- samsara/types/hos_daily_logs_update_shipping_docs_unauthorized_error_response_body.py +33 -0
- samsara/types/hos_drivers_eld_event_object_response_body.py +54 -0
- samsara/types/hos_drivers_eld_event_object_response_body_driver_activation_status.py +7 -0
- samsara/types/hos_eld_event_location_object_response_body.py +46 -0
- samsara/types/hos_eld_event_object_response_body.py +98 -0
- samsara/types/hos_eld_event_object_response_body_malfunction_diagnostic_code.py +7 -0
- samsara/types/hos_eld_event_remark_object_response_body.py +36 -0
- samsara/types/hos_eld_events_get_hos_eld_events_bad_gateway_error_response_body.py +33 -0
- samsara/types/hos_eld_events_get_hos_eld_events_gateway_timeout_error_response_body.py +33 -0
- samsara/types/hos_eld_events_get_hos_eld_events_internal_server_error_response_body.py +33 -0
- samsara/types/hos_eld_events_get_hos_eld_events_method_not_allowed_error_response_body.py +33 -0
- samsara/types/hos_eld_events_get_hos_eld_events_not_found_error_response_body.py +33 -0
- samsara/types/hos_eld_events_get_hos_eld_events_not_implemented_error_response_body.py +33 -0
- samsara/types/hos_eld_events_get_hos_eld_events_response_body.py +26 -0
- samsara/types/hos_eld_events_get_hos_eld_events_service_unavailable_error_response_body.py +33 -0
- samsara/types/hos_eld_events_get_hos_eld_events_too_many_requests_error_response_body.py +33 -0
- samsara/types/hos_eld_events_get_hos_eld_events_unauthorized_error_response_body.py +33 -0
- samsara/types/hub_capacities_list_hub_capacities_bad_gateway_error_response_body.py +33 -0
- samsara/types/hub_capacities_list_hub_capacities_gateway_timeout_error_response_body.py +33 -0
- samsara/types/hub_capacities_list_hub_capacities_internal_server_error_response_body.py +33 -0
- samsara/types/hub_capacities_list_hub_capacities_method_not_allowed_error_response_body.py +33 -0
- samsara/types/hub_capacities_list_hub_capacities_not_found_error_response_body.py +33 -0
- samsara/types/hub_capacities_list_hub_capacities_not_implemented_error_response_body.py +33 -0
- samsara/types/hub_capacities_list_hub_capacities_response_body.py +26 -0
- samsara/types/hub_capacities_list_hub_capacities_service_unavailable_error_response_body.py +33 -0
- samsara/types/hub_capacities_list_hub_capacities_too_many_requests_error_response_body.py +33 -0
- samsara/types/hub_capacities_list_hub_capacities_unauthorized_error_response_body.py +33 -0
- samsara/types/hub_capacity_object_response_body.py +54 -0
- samsara/types/hub_location_created_object_response_body.py +105 -0
- samsara/types/hub_location_input_object_request_body.py +94 -0
- samsara/types/hub_location_object_response_body.py +105 -0
- samsara/types/hub_location_service_window_input_request_body.py +38 -0
- samsara/types/hub_location_updated_object_response_body.py +105 -0
- samsara/types/hub_locations_create_hub_locations_bad_gateway_error_response_body.py +33 -0
- samsara/types/hub_locations_create_hub_locations_gateway_timeout_error_response_body.py +33 -0
- samsara/types/hub_locations_create_hub_locations_internal_server_error_response_body.py +33 -0
- samsara/types/hub_locations_create_hub_locations_method_not_allowed_error_response_body.py +33 -0
- samsara/types/hub_locations_create_hub_locations_not_found_error_response_body.py +33 -0
- samsara/types/hub_locations_create_hub_locations_not_implemented_error_response_body.py +33 -0
- samsara/types/hub_locations_create_hub_locations_response_body.py +23 -0
- samsara/types/hub_locations_create_hub_locations_service_unavailable_error_response_body.py +33 -0
- samsara/types/hub_locations_create_hub_locations_too_many_requests_error_response_body.py +33 -0
- samsara/types/hub_locations_create_hub_locations_unauthorized_error_response_body.py +33 -0
- samsara/types/hub_locations_list_hub_locations_bad_gateway_error_response_body.py +33 -0
- samsara/types/hub_locations_list_hub_locations_gateway_timeout_error_response_body.py +33 -0
- samsara/types/hub_locations_list_hub_locations_internal_server_error_response_body.py +33 -0
- samsara/types/hub_locations_list_hub_locations_method_not_allowed_error_response_body.py +33 -0
- samsara/types/hub_locations_list_hub_locations_not_found_error_response_body.py +33 -0
- samsara/types/hub_locations_list_hub_locations_not_implemented_error_response_body.py +33 -0
- samsara/types/hub_locations_list_hub_locations_response_body.py +26 -0
- samsara/types/hub_locations_list_hub_locations_service_unavailable_error_response_body.py +33 -0
- samsara/types/hub_locations_list_hub_locations_too_many_requests_error_response_body.py +33 -0
- samsara/types/hub_locations_list_hub_locations_unauthorized_error_response_body.py +33 -0
- samsara/types/hub_locations_update_hub_location_bad_gateway_error_response_body.py +33 -0
- samsara/types/hub_locations_update_hub_location_gateway_timeout_error_response_body.py +33 -0
- samsara/types/hub_locations_update_hub_location_internal_server_error_response_body.py +33 -0
- samsara/types/hub_locations_update_hub_location_method_not_allowed_error_response_body.py +33 -0
- samsara/types/hub_locations_update_hub_location_not_found_error_response_body.py +33 -0
- samsara/types/hub_locations_update_hub_location_not_implemented_error_response_body.py +33 -0
- samsara/types/hub_locations_update_hub_location_response_body.py +20 -0
- samsara/types/hub_locations_update_hub_location_service_unavailable_error_response_body.py +33 -0
- samsara/types/hub_locations_update_hub_location_too_many_requests_error_response_body.py +33 -0
- samsara/types/hub_locations_update_hub_location_unauthorized_error_response_body.py +33 -0
- samsara/types/hub_object_response_body.py +49 -0
- samsara/types/hub_plan_routes_list_hub_plan_routes_bad_gateway_error_response_body.py +33 -0
- samsara/types/hub_plan_routes_list_hub_plan_routes_gateway_timeout_error_response_body.py +33 -0
- samsara/types/hub_plan_routes_list_hub_plan_routes_internal_server_error_response_body.py +33 -0
- samsara/types/hub_plan_routes_list_hub_plan_routes_method_not_allowed_error_response_body.py +33 -0
- samsara/types/hub_plan_routes_list_hub_plan_routes_not_found_error_response_body.py +33 -0
- samsara/types/hub_plan_routes_list_hub_plan_routes_not_implemented_error_response_body.py +33 -0
- samsara/types/hub_plan_routes_list_hub_plan_routes_response_body.py +26 -0
- samsara/types/hub_plan_routes_list_hub_plan_routes_service_unavailable_error_response_body.py +33 -0
- samsara/types/hub_plan_routes_list_hub_plan_routes_too_many_requests_error_response_body.py +33 -0
- samsara/types/hub_plan_routes_list_hub_plan_routes_unauthorized_error_response_body.py +33 -0
- samsara/types/hub_plans_create_hub_plan_bad_gateway_error_response_body.py +33 -0
- samsara/types/hub_plans_create_hub_plan_gateway_timeout_error_response_body.py +33 -0
- samsara/types/hub_plans_create_hub_plan_internal_server_error_response_body.py +33 -0
- samsara/types/hub_plans_create_hub_plan_method_not_allowed_error_response_body.py +33 -0
- samsara/types/hub_plans_create_hub_plan_not_found_error_response_body.py +33 -0
- samsara/types/hub_plans_create_hub_plan_not_implemented_error_response_body.py +33 -0
- samsara/types/hub_plans_create_hub_plan_response_body.py +20 -0
- samsara/types/hub_plans_create_hub_plan_service_unavailable_error_response_body.py +33 -0
- samsara/types/hub_plans_create_hub_plan_too_many_requests_error_response_body.py +33 -0
- samsara/types/hub_plans_create_hub_plan_unauthorized_error_response_body.py +33 -0
- samsara/types/hub_plans_list_hub_plans_bad_gateway_error_response_body.py +33 -0
- samsara/types/hub_plans_list_hub_plans_gateway_timeout_error_response_body.py +33 -0
- samsara/types/hub_plans_list_hub_plans_internal_server_error_response_body.py +33 -0
- samsara/types/hub_plans_list_hub_plans_method_not_allowed_error_response_body.py +33 -0
- samsara/types/hub_plans_list_hub_plans_not_found_error_response_body.py +33 -0
- samsara/types/hub_plans_list_hub_plans_not_implemented_error_response_body.py +33 -0
- samsara/types/hub_plans_list_hub_plans_response_body.py +26 -0
- samsara/types/hub_plans_list_hub_plans_service_unavailable_error_response_body.py +33 -0
- samsara/types/hub_plans_list_hub_plans_too_many_requests_error_response_body.py +33 -0
- samsara/types/hub_plans_list_hub_plans_unauthorized_error_response_body.py +33 -0
- samsara/types/hub_skill_object_response_body.py +49 -0
- samsara/types/hub_skills_list_hub_skills_bad_gateway_error_response_body.py +33 -0
- samsara/types/hub_skills_list_hub_skills_gateway_timeout_error_response_body.py +33 -0
- samsara/types/hub_skills_list_hub_skills_internal_server_error_response_body.py +33 -0
- samsara/types/hub_skills_list_hub_skills_method_not_allowed_error_response_body.py +33 -0
- samsara/types/hub_skills_list_hub_skills_not_found_error_response_body.py +33 -0
- samsara/types/hub_skills_list_hub_skills_not_implemented_error_response_body.py +33 -0
- samsara/types/hub_skills_list_hub_skills_response_body.py +26 -0
- samsara/types/hub_skills_list_hub_skills_service_unavailable_error_response_body.py +33 -0
- samsara/types/hub_skills_list_hub_skills_too_many_requests_error_response_body.py +33 -0
- samsara/types/hub_skills_list_hub_skills_unauthorized_error_response_body.py +33 -0
- samsara/types/hubs_list_hubs_bad_gateway_error_response_body.py +33 -0
- samsara/types/hubs_list_hubs_gateway_timeout_error_response_body.py +33 -0
- samsara/types/hubs_list_hubs_internal_server_error_response_body.py +33 -0
- samsara/types/hubs_list_hubs_method_not_allowed_error_response_body.py +33 -0
- samsara/types/hubs_list_hubs_not_found_error_response_body.py +33 -0
- samsara/types/hubs_list_hubs_not_implemented_error_response_body.py +33 -0
- samsara/types/hubs_list_hubs_response_body.py +26 -0
- samsara/types/hubs_list_hubs_service_unavailable_error_response_body.py +33 -0
- samsara/types/hubs_list_hubs_too_many_requests_error_response_body.py +33 -0
- samsara/types/hubs_list_hubs_unauthorized_error_response_body.py +33 -0
- samsara/types/idle_time_duration_ms.py +3 -0
- samsara/types/idling_event_object_response_body.py +1 -1
- samsara/types/idling_event_object_response_body_address_type.py +2 -0
- samsara/types/industrial_asset_object_response_body.py +31 -0
- samsara/types/inline_response_200.py +20 -0
- samsara/types/inline_response_2001.py +20 -0
- samsara/types/inline_response_2002.py +22 -0
- samsara/types/inline_response_2003.py +22 -0
- samsara/types/inline_response_2004.py +20 -0
- samsara/types/inline_response_2007.py +22 -0
- samsara/types/inline_response_2008.py +20 -0
- samsara/types/inline_response_2009.py +20 -0
- samsara/types/j_1939_d_1_status_data_point.py +29 -0
- samsara/types/j_1939_d_1_status_data_point_value.py +34 -0
- samsara/types/job_location_response_object_response_body.py +41 -0
- samsara/types/job_response_object_response_body.py +106 -0
- samsara/types/job_response_object_response_body_status.py +5 -0
- samsara/types/jobs_create_job_bad_gateway_error_response_body.py +33 -0
- samsara/types/jobs_create_job_gateway_timeout_error_response_body.py +33 -0
- samsara/types/jobs_create_job_internal_server_error_response_body.py +33 -0
- samsara/types/jobs_create_job_method_not_allowed_error_response_body.py +33 -0
- samsara/types/jobs_create_job_not_found_error_response_body.py +33 -0
- samsara/types/jobs_create_job_not_implemented_error_response_body.py +33 -0
- samsara/types/jobs_create_job_response_body.py +31 -0
- samsara/types/jobs_create_job_service_unavailable_error_response_body.py +33 -0
- samsara/types/jobs_create_job_too_many_requests_error_response_body.py +33 -0
- samsara/types/jobs_create_job_unauthorized_error_response_body.py +33 -0
- samsara/types/jobs_delete_job_bad_gateway_error_response_body.py +33 -0
- samsara/types/jobs_delete_job_gateway_timeout_error_response_body.py +33 -0
- samsara/types/jobs_delete_job_internal_server_error_response_body.py +33 -0
- samsara/types/jobs_delete_job_method_not_allowed_error_response_body.py +33 -0
- samsara/types/jobs_delete_job_not_found_error_response_body.py +33 -0
- samsara/types/jobs_delete_job_not_implemented_error_response_body.py +33 -0
- samsara/types/jobs_delete_job_response_body.py +29 -0
- samsara/types/jobs_delete_job_service_unavailable_error_response_body.py +33 -0
- samsara/types/jobs_delete_job_too_many_requests_error_response_body.py +33 -0
- samsara/types/jobs_delete_job_unauthorized_error_response_body.py +33 -0
- samsara/types/jobs_get_jobs_bad_gateway_error_response_body.py +33 -0
- samsara/types/jobs_get_jobs_gateway_timeout_error_response_body.py +33 -0
- samsara/types/jobs_get_jobs_internal_server_error_response_body.py +33 -0
- samsara/types/jobs_get_jobs_method_not_allowed_error_response_body.py +33 -0
- samsara/types/jobs_get_jobs_not_found_error_response_body.py +33 -0
- samsara/types/jobs_get_jobs_not_implemented_error_response_body.py +33 -0
- samsara/types/jobs_get_jobs_response_body.py +37 -0
- samsara/types/jobs_get_jobs_service_unavailable_error_response_body.py +33 -0
- samsara/types/jobs_get_jobs_too_many_requests_error_response_body.py +33 -0
- samsara/types/jobs_get_jobs_unauthorized_error_response_body.py +33 -0
- samsara/types/jobs_patch_job_bad_gateway_error_response_body.py +33 -0
- samsara/types/jobs_patch_job_gateway_timeout_error_response_body.py +33 -0
- samsara/types/jobs_patch_job_internal_server_error_response_body.py +33 -0
- samsara/types/jobs_patch_job_method_not_allowed_error_response_body.py +33 -0
- samsara/types/jobs_patch_job_not_found_error_response_body.py +33 -0
- samsara/types/jobs_patch_job_not_implemented_error_response_body.py +33 -0
- samsara/types/jobs_patch_job_response_body.py +31 -0
- samsara/types/jobs_patch_job_service_unavailable_error_response_body.py +33 -0
- samsara/types/jobs_patch_job_too_many_requests_error_response_body.py +33 -0
- samsara/types/jobs_patch_job_unauthorized_error_response_body.py +33 -0
- samsara/types/latitude.py +3 -0
- samsara/types/list_hub_capacities_response_pagination_response_body.py +35 -0
- samsara/types/list_hub_locations_response_pagination_response_body.py +35 -0
- samsara/types/list_hub_plan_routes_response_pagination_response_body.py +35 -0
- samsara/types/list_hub_plans_response_pagination_response_body.py +35 -0
- samsara/types/list_hub_skills_response_pagination_response_body.py +35 -0
- samsara/types/list_hubs_response_pagination_response_body.py +35 -0
- samsara/types/list_industrial_assets_response.py +22 -0
- samsara/types/live_sharing_link_full_response_object_response_body.py +5 -2
- samsara/types/location_data_point.py +30 -0
- samsara/types/location_data_point_gps_location.py +57 -0
- samsara/types/location_data_point_gps_location_place.py +60 -0
- samsara/types/location_object_request_body_address_types_item.py +2 -0
- samsara/types/location_object_response_body_address_types_item.py +2 -0
- samsara/types/location_response_body.py +42 -0
- samsara/types/location_type.py +5 -0
- samsara/types/longitude.py +3 -0
- samsara/types/media_object_response_body.py +10 -2
- samsara/types/media_object_response_body_camera_role.py +28 -0
- samsara/types/media_object_response_body_input.py +3 -1
- samsara/types/media_object_response_body_status.py +3 -1
- samsara/types/number_data_point.py +28 -0
- samsara/types/order_input_object_request_body.py +59 -0
- samsara/types/order_object_response_body.py +75 -0
- samsara/types/order_quantity_input_request_body.py +33 -0
- samsara/types/order_quantity_response_body.py +33 -0
- samsara/types/order_task_object_response_body.py +54 -0
- samsara/types/order_task_request_body.py +67 -0
- samsara/types/order_task_request_body_position.py +5 -0
- samsara/types/order_task_response_body.py +67 -0
- samsara/types/order_task_response_body_position.py +5 -0
- samsara/types/order_task_skill_object_response_body.py +31 -0
- samsara/types/over_speed_ms.py +3 -0
- samsara/types/parent_id.py +3 -0
- samsara/types/part_instance_input_object_request_body.py +45 -0
- samsara/types/part_instance_object_response_body.py +45 -0
- samsara/types/patch_asset_data_outputs_single_response_response_body.py +40 -0
- samsara/types/patch_job_object_request_body.py +89 -0
- samsara/types/patch_job_objectjob_location_request_object_request_body.py +41 -0
- samsara/types/patch_shipping_docs_response_body_response_body.py +93 -0
- samsara/types/plan_object_response_body.py +49 -0
- samsara/types/plan_orders_create_plan_orders_bad_gateway_error_response_body.py +33 -0
- samsara/types/plan_orders_create_plan_orders_gateway_timeout_error_response_body.py +33 -0
- samsara/types/plan_orders_create_plan_orders_internal_server_error_response_body.py +33 -0
- samsara/types/plan_orders_create_plan_orders_method_not_allowed_error_response_body.py +33 -0
- samsara/types/plan_orders_create_plan_orders_not_found_error_response_body.py +33 -0
- samsara/types/plan_orders_create_plan_orders_not_implemented_error_response_body.py +33 -0
- samsara/types/plan_orders_create_plan_orders_response_body.py +23 -0
- samsara/types/plan_orders_create_plan_orders_service_unavailable_error_response_body.py +33 -0
- samsara/types/plan_orders_create_plan_orders_too_many_requests_error_response_body.py +33 -0
- samsara/types/plan_orders_create_plan_orders_unauthorized_error_response_body.py +33 -0
- samsara/types/post_fuel_purchase_request_body_discount_request_body.py +34 -0
- samsara/types/post_fuel_purchase_request_body_discount_request_body_currency.py +7 -0
- samsara/types/post_job_object_request_body.py +85 -0
- samsara/types/post_job_objectjob_location_request_object_request_body.py +41 -0
- samsara/types/power_take_off_duration_ms.py +3 -0
- samsara/types/qualification_field_input_object_response_body.py +75 -0
- samsara/types/qualification_field_input_object_response_body_type.py +8 -0
- samsara/types/qualification_owner_object_response_body.py +43 -0
- samsara/types/qualification_owner_object_response_body_entity_type.py +5 -0
- samsara/types/qualification_owner_request_object_request_body.py +38 -0
- samsara/types/qualification_owner_request_object_request_body_entity_type.py +5 -0
- samsara/types/qualification_record_request_field_input_object_request_body.py +77 -0
- samsara/types/qualification_record_request_field_input_object_request_body_type.py +8 -0
- samsara/types/qualification_record_response_object_response_body.py +84 -0
- samsara/types/qualification_record_response_object_response_body_record_status.py +7 -0
- samsara/types/qualification_type_reference_object_response_body.py +40 -0
- samsara/types/qualification_type_request_object_request_body.py +26 -0
- samsara/types/qualification_type_response_object_response_body.py +69 -0
- samsara/types/qualification_type_response_object_response_body_entity_type.py +5 -0
- samsara/types/qualifications_archive_qualification_record_bad_gateway_error_response_body.py +33 -0
- samsara/types/qualifications_archive_qualification_record_gateway_timeout_error_response_body.py +33 -0
- samsara/types/qualifications_archive_qualification_record_internal_server_error_response_body.py +33 -0
- samsara/types/qualifications_archive_qualification_record_method_not_allowed_error_response_body.py +33 -0
- samsara/types/qualifications_archive_qualification_record_not_found_error_response_body.py +33 -0
- samsara/types/qualifications_archive_qualification_record_not_implemented_error_response_body.py +33 -0
- samsara/types/qualifications_archive_qualification_record_service_unavailable_error_response_body.py +33 -0
- samsara/types/qualifications_archive_qualification_record_too_many_requests_error_response_body.py +33 -0
- samsara/types/qualifications_archive_qualification_record_unauthorized_error_response_body.py +33 -0
- samsara/types/qualifications_delete_qualification_record_bad_gateway_error_response_body.py +33 -0
- samsara/types/qualifications_delete_qualification_record_gateway_timeout_error_response_body.py +33 -0
- samsara/types/qualifications_delete_qualification_record_internal_server_error_response_body.py +33 -0
- samsara/types/qualifications_delete_qualification_record_method_not_allowed_error_response_body.py +33 -0
- samsara/types/qualifications_delete_qualification_record_not_found_error_response_body.py +33 -0
- samsara/types/qualifications_delete_qualification_record_not_implemented_error_response_body.py +33 -0
- samsara/types/qualifications_delete_qualification_record_service_unavailable_error_response_body.py +33 -0
- samsara/types/qualifications_delete_qualification_record_too_many_requests_error_response_body.py +33 -0
- samsara/types/qualifications_delete_qualification_record_unauthorized_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_records_bad_gateway_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_records_gateway_timeout_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_records_internal_server_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_records_method_not_allowed_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_records_not_found_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_records_not_implemented_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_records_response_body.py +23 -0
- samsara/types/qualifications_get_qualification_records_service_unavailable_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_records_stream_bad_gateway_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_records_stream_gateway_timeout_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_records_stream_internal_server_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_records_stream_method_not_allowed_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_records_stream_not_found_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_records_stream_not_implemented_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_records_stream_response_body.py +26 -0
- samsara/types/qualifications_get_qualification_records_stream_service_unavailable_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_records_stream_too_many_requests_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_records_stream_unauthorized_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_records_too_many_requests_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_records_unauthorized_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_types_bad_gateway_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_types_gateway_timeout_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_types_internal_server_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_types_method_not_allowed_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_types_not_found_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_types_not_implemented_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_types_response_body.py +26 -0
- samsara/types/qualifications_get_qualification_types_service_unavailable_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_types_too_many_requests_error_response_body.py +33 -0
- samsara/types/qualifications_get_qualification_types_unauthorized_error_response_body.py +33 -0
- samsara/types/qualifications_patch_qualification_record_bad_gateway_error_response_body.py +33 -0
- samsara/types/qualifications_patch_qualification_record_gateway_timeout_error_response_body.py +33 -0
- samsara/types/qualifications_patch_qualification_record_internal_server_error_response_body.py +33 -0
- samsara/types/qualifications_patch_qualification_record_method_not_allowed_error_response_body.py +33 -0
- samsara/types/qualifications_patch_qualification_record_not_found_error_response_body.py +33 -0
- samsara/types/qualifications_patch_qualification_record_not_implemented_error_response_body.py +33 -0
- samsara/types/qualifications_patch_qualification_record_response_body.py +20 -0
- samsara/types/qualifications_patch_qualification_record_service_unavailable_error_response_body.py +33 -0
- samsara/types/qualifications_patch_qualification_record_too_many_requests_error_response_body.py +33 -0
- samsara/types/qualifications_patch_qualification_record_unauthorized_error_response_body.py +33 -0
- samsara/types/qualifications_post_qualification_record_bad_gateway_error_response_body.py +33 -0
- samsara/types/qualifications_post_qualification_record_gateway_timeout_error_response_body.py +33 -0
- samsara/types/qualifications_post_qualification_record_internal_server_error_response_body.py +33 -0
- samsara/types/qualifications_post_qualification_record_method_not_allowed_error_response_body.py +33 -0
- samsara/types/qualifications_post_qualification_record_not_found_error_response_body.py +33 -0
- samsara/types/qualifications_post_qualification_record_not_implemented_error_response_body.py +33 -0
- samsara/types/qualifications_post_qualification_record_response_body.py +20 -0
- samsara/types/qualifications_post_qualification_record_service_unavailable_error_response_body.py +33 -0
- samsara/types/qualifications_post_qualification_record_too_many_requests_error_response_body.py +33 -0
- samsara/types/qualifications_post_qualification_record_unauthorized_error_response_body.py +33 -0
- samsara/types/qualifications_unarchive_qualification_record_bad_gateway_error_response_body.py +33 -0
- samsara/types/qualifications_unarchive_qualification_record_gateway_timeout_error_response_body.py +33 -0
- samsara/types/qualifications_unarchive_qualification_record_internal_server_error_response_body.py +33 -0
- samsara/types/qualifications_unarchive_qualification_record_method_not_allowed_error_response_body.py +33 -0
- samsara/types/qualifications_unarchive_qualification_record_not_found_error_response_body.py +33 -0
- samsara/types/qualifications_unarchive_qualification_record_not_implemented_error_response_body.py +33 -0
- samsara/types/qualifications_unarchive_qualification_record_service_unavailable_error_response_body.py +33 -0
- samsara/types/qualifications_unarchive_qualification_record_too_many_requests_error_response_body.py +33 -0
- samsara/types/qualifications_unarchive_qualification_record_unauthorized_error_response_body.py +33 -0
- samsara/types/quantity_object_response_body.py +33 -0
- samsara/types/reading_datapoint_request_body.py +50 -0
- samsara/types/reading_definition_response_body.py +5 -0
- samsara/types/reading_trigger_continuous_value_object_request_body.py +1 -1
- samsara/types/reading_trigger_continuous_value_object_request_body_unit.py +15 -0
- samsara/types/reading_trigger_continuous_value_object_response_body.py +1 -1
- samsara/types/reading_trigger_continuous_value_object_response_body_unit.py +15 -0
- samsara/types/readings_post_readings_bad_gateway_error_response_body.py +33 -0
- samsara/types/readings_post_readings_gateway_timeout_error_response_body.py +33 -0
- samsara/types/readings_post_readings_internal_server_error_response_body.py +33 -0
- samsara/types/readings_post_readings_method_not_allowed_error_response_body.py +33 -0
- samsara/types/readings_post_readings_not_found_error_response_body.py +33 -0
- samsara/types/readings_post_readings_not_implemented_error_response_body.py +33 -0
- samsara/types/readings_post_readings_service_unavailable_error_response_body.py +33 -0
- samsara/types/readings_post_readings_too_many_requests_error_response_body.py +33 -0
- samsara/types/readings_post_readings_unauthorized_error_response_body.py +33 -0
- samsara/types/reverse_geo_object_response_body.py +30 -0
- samsara/types/route_object_response_body.py +124 -0
- samsara/types/route_stop_object_response_body.py +71 -0
- samsara/types/routes_single_use_address_object_request_body.py +9 -0
- samsara/types/routes_single_use_address_object_response_body.py +9 -0
- samsara/types/routes_stop_response_object_response_body.py +12 -0
- samsara/types/safety_event_behavior_labels_response_body.py +1 -1
- samsara/types/safety_event_behavior_labels_response_body_type.py +1 -0
- samsara/types/safety_event_dismissal_reason_response_body.py +32 -0
- samsara/types/safety_event_dismissal_reason_response_body_code.py +7 -0
- samsara/types/safety_event_v_2_asset_object_response_body.py +63 -0
- samsara/types/safety_event_v_2_asset_object_response_body_type.py +7 -0
- samsara/types/safety_event_v_2_behavior_labels_response_body.py +33 -0
- samsara/types/safety_event_v_2_behavior_labels_response_body_label.py +64 -0
- samsara/types/safety_event_v_2_behavior_labels_response_body_source.py +5 -0
- samsara/types/safety_event_v_2_context_labels_response_body.py +38 -0
- samsara/types/safety_event_v_2_driver_object_response_body.py +52 -0
- samsara/types/safety_event_v_2_object_response_body.py +134 -0
- samsara/types/safety_event_v_2_object_response_body_event_state.py +10 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_bad_gateway_error_response_body.py +33 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_gateway_timeout_error_response_body.py +33 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_internal_server_error_response_body.py +33 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_method_not_allowed_error_response_body.py +33 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_not_found_error_response_body.py +33 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_not_implemented_error_response_body.py +33 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_response_body.py +26 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_service_unavailable_error_response_body.py +33 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_stream_bad_gateway_error_response_body.py +33 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_stream_gateway_timeout_error_response_body.py +33 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_stream_internal_server_error_response_body.py +33 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_stream_method_not_allowed_error_response_body.py +33 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_stream_not_found_error_response_body.py +33 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_stream_not_implemented_error_response_body.py +33 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_stream_response_body.py +26 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_stream_service_unavailable_error_response_body.py +33 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_stream_too_many_requests_error_response_body.py +33 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_stream_unauthorized_error_response_body.py +33 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_too_many_requests_error_response_body.py +33 -0
- samsara/types/safety_events_v_2_get_safety_events_v_2_unauthorized_error_response_body.py +33 -0
- samsara/types/safety_score_behavior_object_response_body.py +41 -0
- samsara/types/safety_score_behavior_object_response_body_behavior_type.py +34 -0
- samsara/types/safety_score_speeding_object_response_body.py +43 -0
- samsara/types/safety_score_speeding_object_response_body_speeding_type.py +7 -0
- samsara/types/safety_scores_get_driver_safety_score_trips_bad_gateway_error_response_body.py +33 -0
- samsara/types/safety_scores_get_driver_safety_score_trips_gateway_timeout_error_response_body.py +33 -0
- samsara/types/safety_scores_get_driver_safety_score_trips_internal_server_error_response_body.py +33 -0
- samsara/types/safety_scores_get_driver_safety_score_trips_method_not_allowed_error_response_body.py +33 -0
- samsara/types/safety_scores_get_driver_safety_score_trips_not_found_error_response_body.py +33 -0
- samsara/types/safety_scores_get_driver_safety_score_trips_not_implemented_error_response_body.py +33 -0
- samsara/types/safety_scores_get_driver_safety_score_trips_response_body.py +26 -0
- samsara/types/safety_scores_get_driver_safety_score_trips_service_unavailable_error_response_body.py +33 -0
- samsara/types/safety_scores_get_driver_safety_score_trips_too_many_requests_error_response_body.py +33 -0
- samsara/types/safety_scores_get_driver_safety_score_trips_unauthorized_error_response_body.py +33 -0
- samsara/types/safety_scores_get_driver_safety_scores_bad_gateway_error_response_body.py +33 -0
- samsara/types/safety_scores_get_driver_safety_scores_gateway_timeout_error_response_body.py +33 -0
- samsara/types/safety_scores_get_driver_safety_scores_internal_server_error_response_body.py +33 -0
- samsara/types/safety_scores_get_driver_safety_scores_method_not_allowed_error_response_body.py +33 -0
- samsara/types/safety_scores_get_driver_safety_scores_not_found_error_response_body.py +33 -0
- samsara/types/safety_scores_get_driver_safety_scores_not_implemented_error_response_body.py +33 -0
- samsara/types/safety_scores_get_driver_safety_scores_response_body.py +26 -0
- samsara/types/safety_scores_get_driver_safety_scores_service_unavailable_error_response_body.py +33 -0
- samsara/types/safety_scores_get_driver_safety_scores_too_many_requests_error_response_body.py +33 -0
- samsara/types/safety_scores_get_driver_safety_scores_unauthorized_error_response_body.py +33 -0
- samsara/types/safety_scores_get_tag_group_safety_scores_bad_gateway_error_response_body.py +33 -0
- samsara/types/safety_scores_get_tag_group_safety_scores_gateway_timeout_error_response_body.py +33 -0
- samsara/types/safety_scores_get_tag_group_safety_scores_internal_server_error_response_body.py +33 -0
- samsara/types/safety_scores_get_tag_group_safety_scores_method_not_allowed_error_response_body.py +33 -0
- samsara/types/safety_scores_get_tag_group_safety_scores_not_found_error_response_body.py +33 -0
- samsara/types/safety_scores_get_tag_group_safety_scores_not_implemented_error_response_body.py +33 -0
- samsara/types/safety_scores_get_tag_group_safety_scores_response_body.py +20 -0
- samsara/types/safety_scores_get_tag_group_safety_scores_service_unavailable_error_response_body.py +33 -0
- samsara/types/safety_scores_get_tag_group_safety_scores_too_many_requests_error_response_body.py +33 -0
- samsara/types/safety_scores_get_tag_group_safety_scores_unauthorized_error_response_body.py +33 -0
- samsara/types/safety_scores_get_tag_safety_scores_bad_gateway_error_response_body.py +33 -0
- samsara/types/safety_scores_get_tag_safety_scores_gateway_timeout_error_response_body.py +33 -0
- samsara/types/safety_scores_get_tag_safety_scores_internal_server_error_response_body.py +33 -0
- samsara/types/safety_scores_get_tag_safety_scores_method_not_allowed_error_response_body.py +33 -0
- samsara/types/safety_scores_get_tag_safety_scores_not_found_error_response_body.py +33 -0
- samsara/types/safety_scores_get_tag_safety_scores_not_implemented_error_response_body.py +33 -0
- samsara/types/safety_scores_get_tag_safety_scores_response_body.py +26 -0
- samsara/types/safety_scores_get_tag_safety_scores_service_unavailable_error_response_body.py +33 -0
- samsara/types/safety_scores_get_tag_safety_scores_too_many_requests_error_response_body.py +33 -0
- samsara/types/safety_scores_get_tag_safety_scores_unauthorized_error_response_body.py +33 -0
- samsara/types/safety_scores_get_vehicle_safety_score_trips_bad_gateway_error_response_body.py +33 -0
- samsara/types/safety_scores_get_vehicle_safety_score_trips_gateway_timeout_error_response_body.py +33 -0
- samsara/types/safety_scores_get_vehicle_safety_score_trips_internal_server_error_response_body.py +33 -0
- samsara/types/safety_scores_get_vehicle_safety_score_trips_method_not_allowed_error_response_body.py +33 -0
- samsara/types/safety_scores_get_vehicle_safety_score_trips_not_found_error_response_body.py +33 -0
- samsara/types/safety_scores_get_vehicle_safety_score_trips_not_implemented_error_response_body.py +33 -0
- samsara/types/safety_scores_get_vehicle_safety_score_trips_response_body.py +26 -0
- samsara/types/safety_scores_get_vehicle_safety_score_trips_service_unavailable_error_response_body.py +33 -0
- samsara/types/safety_scores_get_vehicle_safety_score_trips_too_many_requests_error_response_body.py +33 -0
- samsara/types/safety_scores_get_vehicle_safety_score_trips_unauthorized_error_response_body.py +33 -0
- samsara/types/safety_scores_get_vehicle_safety_scores_bad_gateway_error_response_body.py +33 -0
- samsara/types/safety_scores_get_vehicle_safety_scores_gateway_timeout_error_response_body.py +33 -0
- samsara/types/safety_scores_get_vehicle_safety_scores_internal_server_error_response_body.py +33 -0
- samsara/types/safety_scores_get_vehicle_safety_scores_method_not_allowed_error_response_body.py +33 -0
- samsara/types/safety_scores_get_vehicle_safety_scores_not_found_error_response_body.py +33 -0
- samsara/types/safety_scores_get_vehicle_safety_scores_not_implemented_error_response_body.py +33 -0
- samsara/types/safety_scores_get_vehicle_safety_scores_response_body.py +26 -0
- samsara/types/safety_scores_get_vehicle_safety_scores_service_unavailable_error_response_body.py +33 -0
- samsara/types/safety_scores_get_vehicle_safety_scores_too_many_requests_error_response_body.py +33 -0
- samsara/types/safety_scores_get_vehicle_safety_scores_unauthorized_error_response_body.py +33 -0
- samsara/types/service_task_instance_input_object_request_body.py +6 -0
- samsara/types/service_task_instance_object_response_body.py +6 -0
- samsara/types/service_window_object_response_body.py +38 -0
- samsara/types/single_driver_efficiency_by_driver_data_object_response_body.py +47 -0
- samsara/types/single_driver_efficiency_by_vehicle_data_object_response_body.py +46 -0
- samsara/types/single_use_location_object_response_body.py +36 -0
- samsara/types/skill_object_response_body.py +31 -0
- samsara/types/standard_delete_response.py +3 -0
- samsara/types/start_function_run_response_body_response_body.py +28 -0
- samsara/types/string_data_point.py +28 -0
- samsara/types/tag_group_safety_score_response_body.py +54 -0
- samsara/types/tag_ids.py +5 -0
- samsara/types/tag_safety_score_response_body.py +59 -0
- samsara/types/tire_fault_code_details_object_request_body_specific_tire_fault_codes_item.py +2 -0
- samsara/types/tire_fault_code_details_object_response_body_specific_tire_fault_codes_item.py +2 -0
- samsara/types/total_brake_event_count.py +3 -0
- samsara/types/trailer_stat_decoration_response_body.py +145 -0
- samsara/types/trailer_stat_gps_odometer_meters_type_response_body.py +31 -0
- samsara/types/trailer_stat_gps_odometer_meters_with_decorations_type_response_body.py +33 -0
- samsara/types/trailer_stat_gps_type_response_body.py +56 -0
- samsara/types/trailer_stat_gps_with_decorations_type_response_body.py +58 -0
- samsara/types/trailer_stat_reefer_alarm_response_body.py +39 -0
- samsara/types/trailer_stat_reefer_alarm_type_response_body.py +32 -0
- samsara/types/trailer_stat_reefer_alarm_with_decorations_type_response_body.py +34 -0
- samsara/types/trailer_stat_reefer_ambient_air_temperature_milli_c_type_response_body.py +31 -0
- samsara/types/trailer_stat_reefer_ambient_air_temperature_with_decorations_type_response_body.py +33 -0
- samsara/types/trailer_stat_reefer_door_state_zone_1_type_response_body.py +34 -0
- samsara/types/trailer_stat_reefer_door_state_zone_1_type_response_body_value.py +5 -0
- samsara/types/trailer_stat_reefer_door_state_zone_1_with_decorations_type_response_body.py +36 -0
- samsara/types/trailer_stat_reefer_door_state_zone_1_with_decorations_type_response_body_value.py +7 -0
- samsara/types/trailer_stat_reefer_door_state_zone_2_type_response_body.py +34 -0
- samsara/types/trailer_stat_reefer_door_state_zone_2_type_response_body_value.py +5 -0
- samsara/types/trailer_stat_reefer_door_state_zone_2_with_decorations_type_response_body.py +36 -0
- samsara/types/trailer_stat_reefer_door_state_zone_2_with_decorations_type_response_body_value.py +7 -0
- samsara/types/trailer_stat_reefer_door_state_zone_3_type_response_body.py +34 -0
- samsara/types/trailer_stat_reefer_door_state_zone_3_type_response_body_value.py +5 -0
- samsara/types/trailer_stat_reefer_door_state_zone_3_with_decorations_type_response_body.py +36 -0
- samsara/types/trailer_stat_reefer_door_state_zone_3_with_decorations_type_response_body_value.py +7 -0
- samsara/types/trailer_stat_reefer_fuel_percent_type_response_body.py +31 -0
- samsara/types/trailer_stat_reefer_fuel_percent_with_decorations_type_response_body.py +33 -0
- samsara/types/trailer_stat_reefer_obd_engine_seconds_type_response_body.py +31 -0
- samsara/types/trailer_stat_reefer_obd_engine_seconds_with_decorations_type_response_body.py +33 -0
- samsara/types/trailer_stat_reefer_return_air_temperature_milli_c_zone_1_type_response_body.py +31 -0
- samsara/types/trailer_stat_reefer_return_air_temperature_milli_c_zone_1_with_decorations_type_response_body.py +33 -0
- samsara/types/trailer_stat_reefer_return_air_temperature_milli_c_zone_2_type_response_body.py +31 -0
- samsara/types/trailer_stat_reefer_return_air_temperature_milli_c_zone_2_with_decorations_type_response_body.py +33 -0
- samsara/types/trailer_stat_reefer_return_air_temperature_milli_c_zone_3_type_response_body.py +31 -0
- samsara/types/trailer_stat_reefer_return_air_temperature_milli_c_zone_3_with_decorations_type_response_body.py +33 -0
- samsara/types/trailer_stat_reefer_run_mode_type_response_body.py +31 -0
- samsara/types/trailer_stat_reefer_run_mode_with_decorations_type_response_body.py +33 -0
- samsara/types/trailer_stat_reefer_set_point_temperature_milli_c_zone_1_type_response_body.py +31 -0
- samsara/types/trailer_stat_reefer_set_point_temperature_milli_c_zone_1_with_decorations_type_response_body.py +33 -0
- samsara/types/trailer_stat_reefer_set_point_temperature_milli_c_zone_2_type_response_body.py +31 -0
- samsara/types/trailer_stat_reefer_set_point_temperature_milli_c_zone_2_with_decorations_type_response_body.py +33 -0
- samsara/types/trailer_stat_reefer_set_point_temperature_milli_c_zone_3_type_response_body.py +31 -0
- samsara/types/trailer_stat_reefer_set_point_temperature_milli_c_zone_3_with_decorations_type_response_body.py +33 -0
- samsara/types/trailer_stat_reefer_state_type_response_body.py +40 -0
- samsara/types/trailer_stat_reefer_state_with_decorations_type_response_body.py +42 -0
- samsara/types/trailer_stat_reefer_state_zone_1_type_response_body.py +40 -0
- samsara/types/trailer_stat_reefer_state_zone_1_with_decorations_type_response_body.py +42 -0
- samsara/types/trailer_stat_reefer_state_zone_2_type_response_body.py +40 -0
- samsara/types/trailer_stat_reefer_state_zone_2_with_decorations_type_response_body.py +42 -0
- samsara/types/trailer_stat_reefer_state_zone_3_type_response_body.py +40 -0
- samsara/types/trailer_stat_reefer_state_zone_3_with_decorations_type_response_body.py +42 -0
- samsara/types/trailer_stat_reefer_supply_air_temperature_milli_c_zone_1_type_response_body.py +31 -0
- samsara/types/trailer_stat_reefer_supply_air_temperature_milli_c_zone_1_with_decorations_type_response_body.py +33 -0
- samsara/types/trailer_stat_reefer_supply_air_temperature_milli_c_zone_2_type_response_body.py +31 -0
- samsara/types/trailer_stat_reefer_supply_air_temperature_milli_c_zone_2_with_decorations_type_response_body.py +33 -0
- samsara/types/trailer_stat_reefer_supply_air_temperature_milli_c_zone_3_type_response_body.py +31 -0
- samsara/types/trailer_stat_reefer_supply_air_temperature_milli_c_zone_3_with_decorations_type_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_feed_bad_gateway_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_feed_gateway_timeout_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_feed_internal_server_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_feed_method_not_allowed_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_feed_not_found_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_feed_not_implemented_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_feed_response_body.py +26 -0
- samsara/types/trailer_stats_get_trailer_stats_feed_service_unavailable_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_feed_too_many_requests_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_feed_unauthorized_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_history_bad_gateway_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_history_gateway_timeout_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_history_internal_server_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_history_method_not_allowed_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_history_not_found_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_history_not_implemented_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_history_response_body.py +26 -0
- samsara/types/trailer_stats_get_trailer_stats_history_service_unavailable_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_history_too_many_requests_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_history_unauthorized_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_snapshot_bad_gateway_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_snapshot_gateway_timeout_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_snapshot_internal_server_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_snapshot_method_not_allowed_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_snapshot_not_found_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_snapshot_not_implemented_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_snapshot_response_body.py +26 -0
- samsara/types/trailer_stats_get_trailer_stats_snapshot_service_unavailable_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_snapshot_too_many_requests_error_response_body.py +33 -0
- samsara/types/trailer_stats_get_trailer_stats_snapshot_unauthorized_error_response_body.py +33 -0
- samsara/types/trailer_stats_object_response_body.py +281 -0
- samsara/types/trailer_stats_snapshot_object_response_body.py +155 -0
- samsara/types/trips_breakdown_response_body.py +67 -0
- samsara/types/unit_response_body.py +2 -2
- samsara/types/unit_response_body_base_unit.py +15 -0
- samsara/types/unit_response_body_measurement_type.py +4 -0
- samsara/types/update_engine_immobilizer_relay_state_request_body_request_body.py +36 -0
- samsara/types/update_engine_immobilizer_relay_state_request_body_request_body_id.py +5 -0
- samsara/types/update_hub_location_request_body_request_body.py +93 -0
- samsara/types/uploaded_media_object_response_body.py +9 -1
- samsara/types/uploaded_media_object_response_body_camera_role.py +28 -0
- samsara/types/uploaded_media_object_response_body_input.py +2 -1
- samsara/types/v_1_asset.py +56 -0
- samsara/types/v_1_asset_cable.py +30 -0
- samsara/types/v_1_asset_current_location.py +52 -0
- samsara/types/v_1_asset_current_locations_response.py +55 -0
- samsara/types/v_1_asset_location_response.py +7 -0
- samsara/types/v_1_asset_location_response_item.py +50 -0
- samsara/types/v_1_asset_reefer_response.py +45 -0
- samsara/types/v_1_asset_reefer_response_reefer_stats.py +67 -0
- samsara/types/v_1_asset_reefer_response_reefer_stats_alarms.py +43 -0
- samsara/types/v_1_asset_reefer_response_reefer_stats_alarms_1.py +28 -0
- samsara/types/v_1_asset_reefer_response_reefer_stats_engine_hours.py +33 -0
- samsara/types/v_1_asset_reefer_response_reefer_stats_fuel_percentage.py +33 -0
- samsara/types/v_1_asset_reefer_response_reefer_stats_power_status.py +31 -0
- samsara/types/v_1_asset_reefer_response_reefer_stats_return_air_temp.py +33 -0
- samsara/types/v_1_asset_reefer_response_reefer_stats_set_point.py +33 -0
- samsara/types/v_1_assets_reefer.py +45 -0
- samsara/types/v_1_assets_reefer_reefer_stats.py +91 -0
- samsara/types/v_1_assets_reefer_reefer_stats_ambient_air_temperature.py +33 -0
- samsara/types/v_1_assets_reefer_reefer_stats_discharge_air_temperature.py +33 -0
- samsara/types/v_1_assets_reefer_reefer_stats_power_status.py +32 -0
- samsara/types/v_1_assets_reefer_reefer_stats_power_status_status.py +7 -0
- samsara/types/v_1_cargo_response.py +33 -0
- samsara/types/v_1_cargo_response_sensors.py +64 -0
- samsara/types/v_1_door_response.py +33 -0
- samsara/types/v_1_door_response_sensors.py +57 -0
- samsara/types/v_1_driver_safety_score_response.py +104 -0
- samsara/types/v_1_hos_authentication_logs_response.py +25 -0
- samsara/types/v_1_hos_authentication_logs_response_authentication_logs.py +55 -0
- samsara/types/v_1_humidity_response.py +33 -0
- samsara/types/v_1_humidity_response_sensors.py +55 -0
- samsara/types/v_1_machine.py +36 -0
- samsara/types/v_1_machine_history_response.py +24 -0
- samsara/types/v_1_machine_history_response_machines.py +33 -0
- samsara/types/v_1_machine_history_response_vibrations.py +24 -0
- samsara/types/v_1_pagination.py +39 -0
- samsara/types/v_1_programs_for_the_camera_response.py +7 -0
- samsara/types/v_1_programs_for_the_camera_response_item.py +22 -0
- samsara/types/v_1_safety_report_harsh_event.py +44 -0
- samsara/types/v_1_sensor.py +40 -0
- samsara/types/v_1_sensor_history_response.py +24 -0
- samsara/types/v_1_sensor_history_response_results.py +31 -0
- samsara/types/v_1_sensors_history_series.py +34 -0
- samsara/types/v_1_sensors_history_series_field.py +25 -0
- samsara/types/v_1_temperature_response.py +33 -0
- samsara/types/v_1_temperature_response_sensors.py +71 -0
- samsara/types/v_1_trailer_assignment_response.py +40 -0
- samsara/types/v_1_trailer_assignments_response.py +19 -0
- samsara/types/v_1_trailer_assignments_response_all_of.py +24 -0
- samsara/types/v_1_trailer_base.py +27 -0
- samsara/types/v_1_trip_response.py +24 -0
- samsara/types/v_1_trip_response_end_address.py +36 -0
- samsara/types/v_1_trip_response_end_coordinates.py +24 -0
- samsara/types/v_1_trip_response_start_address.py +36 -0
- samsara/types/v_1_trip_response_start_coordinates.py +24 -0
- samsara/types/v_1_trip_response_trips.py +119 -0
- samsara/types/v_1_vehicle_harsh_event_response.py +64 -0
- samsara/types/v_1_vehicle_harsh_event_response_location.py +32 -0
- samsara/types/v_1_vehicle_maintenance.py +33 -0
- samsara/types/v_1_vehicle_maintenance_j_1939.py +36 -0
- samsara/types/v_1_vehicle_maintenance_j_1939_check_engine_light.py +28 -0
- samsara/types/v_1_vehicle_maintenance_j_1939_diagnostic_trouble_codes.py +26 -0
- samsara/types/v_1_vehicle_maintenance_passenger.py +38 -0
- samsara/types/v_1_vehicle_maintenance_passenger_check_engine_light.py +25 -0
- samsara/types/v_1_vehicle_maintenance_passenger_diagnostic_trouble_codes.py +23 -0
- samsara/types/v_1_vehicle_safety_score_response.py +104 -0
- samsara/types/v_1_vision_cameras_response.py +7 -0
- samsara/types/v_1_vision_cameras_response_item.py +24 -0
- samsara/types/v_1_vision_run_by_camera_response.py +35 -0
- samsara/types/v_1_vision_run_by_camera_response_inspection_results.py +26 -0
- samsara/types/v_1_vision_run_by_camera_response_program.py +20 -0
- samsara/types/v_1_vision_run_by_camera_response_run_summary.py +24 -0
- samsara/types/v_1_vision_runs_by_camera_and_program_response.py +30 -0
- samsara/types/v_1_vision_runs_by_camera_response.py +7 -0
- samsara/types/v_1_vision_runs_by_camera_response_item.py +29 -0
- samsara/types/v_1_vision_runs_by_camera_response_item_program.py +20 -0
- samsara/types/v_1_vision_runs_by_camera_response_item_report_metadata.py +24 -0
- samsara/types/v_1_vision_runs_response.py +24 -0
- samsara/types/v_1_vision_runs_response_report_metadata.py +51 -0
- samsara/types/v_1_vision_runs_response_vision_runs.py +28 -0
- samsara/types/v_1_vision_step_results.py +7 -0
- samsara/types/v_1_vision_step_results_item.py +68 -0
- samsara/types/v_1_vision_step_results_item_angle_check.py +48 -0
- samsara/types/v_1_vision_step_results_item_angle_check_angle_configured.py +24 -0
- samsara/types/v_1_vision_step_results_item_barcode_item.py +23 -0
- samsara/types/v_1_vision_step_results_item_boolean_logic.py +21 -0
- samsara/types/v_1_vision_step_results_item_boolean_logic_steps_item.py +20 -0
- samsara/types/v_1_vision_step_results_item_caliper.py +85 -0
- samsara/types/v_1_vision_step_results_item_caliper_angle_range.py +24 -0
- samsara/types/v_1_vision_step_results_item_caliper_contrast_range.py +24 -0
- samsara/types/v_1_vision_step_results_item_caliper_filter_polarity.py +7 -0
- samsara/types/v_1_vision_step_results_item_caliper_sharpness_range.py +24 -0
- samsara/types/v_1_vision_step_results_item_caliper_straightness_range.py +24 -0
- samsara/types/v_1_vision_step_results_item_contour.py +47 -0
- samsara/types/v_1_vision_step_results_item_distance.py +87 -0
- samsara/types/v_1_vision_step_results_item_expiration_date.py +23 -0
- samsara/types/v_1_vision_step_results_item_find_copies.py +52 -0
- samsara/types/v_1_vision_step_results_item_find_edge.py +86 -0
- samsara/types/v_1_vision_step_results_item_find_edge_angle_range.py +24 -0
- samsara/types/v_1_vision_step_results_item_find_edge_contrast_range.py +24 -0
- samsara/types/v_1_vision_step_results_item_find_edge_sharpness_range.py +24 -0
- samsara/types/v_1_vision_step_results_item_find_edge_straightness_range.py +24 -0
- samsara/types/v_1_vision_step_results_item_find_shapes.py +23 -0
- samsara/types/v_1_vision_step_results_item_fixture.py +24 -0
- samsara/types/v_1_vision_step_results_item_fixture_coordinates.py +20 -0
- samsara/types/v_1_vision_step_results_item_label_match.py +20 -0
- samsara/types/v_1_vision_step_results_item_presence_absence.py +55 -0
- samsara/types/v_1_vision_step_results_item_presence_absence_blue_range.py +20 -0
- samsara/types/v_1_vision_step_results_item_presence_absence_grayscale_range.py +20 -0
- samsara/types/v_1_vision_step_results_item_presence_absence_green_range.py +20 -0
- samsara/types/v_1_vision_step_results_item_presence_absence_hue_range.py +20 -0
- samsara/types/v_1_vision_step_results_item_presence_absence_red_range.py +20 -0
- samsara/types/v_1_vision_step_results_item_presence_absence_saturation_range.py +20 -0
- samsara/types/v_1_vision_step_results_item_presence_absence_value_range.py +20 -0
- samsara/types/v_1_vision_step_results_item_text_match.py +22 -0
- samsara/types/vehicle_fault_code_details_object_request_body.py +7 -0
- samsara/types/vehicle_fault_code_details_object_response_body.py +7 -0
- samsara/types/vehicle_safety_score_response_body.py +59 -0
- samsara/types/vehicle_stats_decorations.py +9 -0
- samsara/types/vehicle_stats_decorations_fuel_consumed_milliliters.py +20 -0
- samsara/types/vehicle_stats_decorations_idling_duration_milliseconds.py +20 -0
- samsara/types/vehicle_stats_fuel_consumed_milliliters.py +28 -0
- samsara/types/vehicle_stats_fuel_consumed_milliliters_value.py +3 -0
- samsara/types/vehicle_stats_fuel_consumed_milliliters_with_decoration.py +30 -0
- samsara/types/vehicle_stats_idling_duration_milliseconds.py +28 -0
- samsara/types/vehicle_stats_idling_duration_milliseconds_value.py +3 -0
- samsara/types/vehicle_stats_idling_duration_milliseconds_with_decoration.py +30 -0
- samsara/types/vehicle_stats_list_response_data.py +20 -0
- samsara/types/vehicle_stats_response_data.py +8 -0
- samsara/types/vehicle_stats_synthetic_engine_seconds.py +1 -1
- samsara/types/vehicle_summary.py +68 -0
- samsara/types/vehicles_lock_lock_vehicle_bad_gateway_error_response_body.py +33 -0
- samsara/types/vehicles_lock_lock_vehicle_gateway_timeout_error_response_body.py +33 -0
- samsara/types/vehicles_lock_lock_vehicle_internal_server_error_response_body.py +33 -0
- samsara/types/vehicles_lock_lock_vehicle_method_not_allowed_error_response_body.py +33 -0
- samsara/types/vehicles_lock_lock_vehicle_not_found_error_response_body.py +33 -0
- samsara/types/vehicles_lock_lock_vehicle_not_implemented_error_response_body.py +33 -0
- samsara/types/vehicles_lock_lock_vehicle_service_unavailable_error_response_body.py +33 -0
- samsara/types/vehicles_lock_lock_vehicle_too_many_requests_error_response_body.py +33 -0
- samsara/types/vehicles_lock_lock_vehicle_unauthorized_error_response_body.py +33 -0
- samsara/types/vehicles_lock_unlock_vehicle_bad_gateway_error_response_body.py +33 -0
- samsara/types/vehicles_lock_unlock_vehicle_gateway_timeout_error_response_body.py +33 -0
- samsara/types/vehicles_lock_unlock_vehicle_internal_server_error_response_body.py +33 -0
- samsara/types/vehicles_lock_unlock_vehicle_method_not_allowed_error_response_body.py +33 -0
- samsara/types/vehicles_lock_unlock_vehicle_not_found_error_response_body.py +33 -0
- samsara/types/vehicles_lock_unlock_vehicle_not_implemented_error_response_body.py +33 -0
- samsara/types/vehicles_lock_unlock_vehicle_service_unavailable_error_response_body.py +33 -0
- samsara/types/vehicles_lock_unlock_vehicle_too_many_requests_error_response_body.py +33 -0
- samsara/types/vehicles_lock_unlock_vehicle_unauthorized_error_response_body.py +33 -0
- samsara/types/webhook_response_response_body_event_types_item.py +2 -0
- samsara/types/webhooks_get_webhook_response_body_event_types_item.py +2 -0
- samsara/types/webhooks_patch_webhook_response_body_event_types_item.py +2 -0
- samsara/types/webhooks_post_webhooks_response_body_event_types_item.py +2 -0
- samsara/types/work_order_object_response_body.py +21 -0
- samsara/types/work_order_tax_create_object_request_body.py +33 -0
- samsara/types/workflow_incident_details_object_response_body.py +4 -0
- samsara/users/__init__.py +28 -1
- samsara/users/client.py +147 -51
- samsara/users/raw_client.py +138 -61
- samsara/users/types/__init__.py +32 -2
- samsara/vehicle_locations/client.py +485 -0
- samsara/vehicle_locations/raw_client.py +472 -0
- samsara/vehicle_stats/__init__.py +52 -0
- samsara/vehicle_stats/client.py +1092 -0
- samsara/vehicle_stats/raw_client.py +1091 -0
- samsara/vehicle_stats/types/__init__.py +50 -0
- samsara/vehicle_stats/types/get_vehicle_stats_feed_request_decorations_item.py +57 -0
- samsara/vehicle_stats/types/get_vehicle_stats_feed_request_types_item.py +71 -0
- samsara/vehicle_stats/types/get_vehicle_stats_history_request_decorations_item.py +57 -0
- samsara/vehicle_stats/types/get_vehicle_stats_history_request_types_item.py +71 -0
- samsara/vehicle_stats/types/get_vehicle_stats_request_types_item.py +71 -0
- samsara/vehicles/__init__.py +58 -32
- samsara/vehicles/client.py +20 -17
- samsara/vehicles/raw_client.py +2 -2
- samsara/vehicles/types/__init__.py +56 -14
- samsara/webhooks/__init__.py +36 -5
- samsara/webhooks/client.py +47 -47
- samsara/webhooks/raw_client.py +18 -51
- samsara/webhooks/types/__init__.py +34 -3
- samsara/webhooks/types/webhooks_post_webhooks_request_body_event_types_item.py +2 -0
- samsara/work_orders/__init__.py +55 -0
- samsara/work_orders/client.py +995 -0
- samsara/work_orders/raw_client.py +2258 -0
- samsara/work_orders/types/__init__.py +53 -0
- samsara/work_orders/types/stream_work_orders_request_work_order_statuses_item.py +18 -0
- samsara_api-4.0.0.dist-info/METADATA +238 -0
- samsara_api-4.0.0.dist-info/RECORD +3387 -0
- samsara/alerts/configurations/__init__.py +0 -7
- samsara/alerts/configurations/client.py +0 -720
- samsara/alerts/configurations/raw_client.py +0 -1552
- samsara/alerts/configurations/types/__init__.py +0 -7
- samsara/alerts/configurations/types/configurations_list_request_status.py +0 -5
- samsara/alerts/incidents/client.py +0 -180
- samsara/alerts/incidents/raw_client.py +0 -396
- samsara/assets/location_and_speed/client.py +0 -226
- samsara/assets/location_and_speed/raw_client.py +0 -458
- samsara/attributes/types/attributes_delete_request_entity_type.py +0 -5
- samsara/attributes/types/attributes_get_request_entity_type.py +0 -5
- samsara/attributes/types/attributes_list_request_entity_type.py +0 -5
- samsara/attributes/types/create_attribute_request_attribute_value_quantity.py +0 -5
- samsara/attributes/types/update_attribute_request_attribute_value_quantity.py +0 -5
- samsara/auth/__init__.py +0 -8
- samsara/auth/client.py +0 -39
- samsara/auth/raw_client.py +0 -13
- samsara/auth/tokens/__init__.py +0 -7
- samsara/auth/tokens/client.py +0 -185
- samsara/auth/tokens/raw_client.py +0 -210
- samsara/auth/tokens/types/__init__.py +0 -7
- samsara/auth/tokens/types/create_tokens_response.py +0 -23
- samsara/cameras/__init__.py +0 -13
- samsara/cameras/client.py +0 -39
- samsara/cameras/media/__init__.py +0 -19
- samsara/cameras/media/client.py +0 -232
- samsara/cameras/media/raw_client.py +0 -417
- samsara/cameras/media/retrieval/__init__.py +0 -13
- samsara/cameras/media/retrieval/client.py +0 -286
- samsara/cameras/media/retrieval/raw_client.py +0 -686
- samsara/cameras/media/retrieval/types/__init__.py +0 -15
- samsara/cameras/media/retrieval/types/media_retrieval_post_media_retrieval_request_body_inputs_item.py +0 -7
- samsara/cameras/media/types/__init__.py +0 -9
- samsara/cameras/media/types/media_list_request_inputs_item.py +0 -7
- samsara/cameras/media/types/media_list_request_media_types_item.py +0 -5
- samsara/cameras/media/types/media_list_request_trigger_reasons_item.py +0 -17
- samsara/cameras/raw_client.py +0 -13
- samsara/coaching/driver_coach_assignments/client.py +0 -285
- samsara/coaching/driver_coach_assignments/raw_client.py +0 -716
- samsara/coaching/sessions/client.py +0 -228
- samsara/coaching/sessions/raw_client.py +0 -448
- samsara/defect_types/client.py +0 -156
- samsara/defect_types/raw_client.py +0 -384
- samsara/defects/client.py +0 -583
- samsara/defects/raw_client.py +0 -1028
- samsara/devices/client.py +0 -190
- samsara/devices/raw_client.py +0 -412
- samsara/document_types/client.py +0 -134
- samsara/document_types/raw_client.py +0 -354
- samsara/documents/pdfs/client.py +0 -206
- samsara/documents/pdfs/raw_client.py +0 -212
- samsara/driver_trailer_assignments/client.py +0 -389
- samsara/driver_trailer_assignments/raw_client.py +0 -1044
- samsara/driver_vehicle_assignments/types/driver_vehicle_assignments_get_request_assignment_type.py +0 -10
- samsara/driver_vehicle_assignments/types/driver_vehicle_assignments_get_request_filter_by.py +0 -5
- samsara/drivers/qr_codes/client.py +0 -304
- samsara/drivers/qr_codes/raw_client.py +0 -926
- samsara/drivers/vehicle_assignments/__init__.py +0 -7
- samsara/drivers/vehicle_assignments/client.py +0 -201
- samsara/drivers/vehicle_assignments/raw_client.py +0 -397
- samsara/drivers/vehicle_assignments/types/__init__.py +0 -9
- samsara/drivers/vehicle_assignments/types/vehicle_assignments_list_request_driver_activation_status.py +0 -5
- samsara/dvirs/__init__.py +0 -7
- samsara/dvirs/client.py +0 -775
- samsara/dvirs/raw_client.py +0 -1223
- samsara/dvirs/types/__init__.py +0 -7
- samsara/equipment/locations/client.py +0 -467
- samsara/equipment/locations/raw_client.py +0 -543
- samsara/equipment/stats/__init__.py +0 -7
- samsara/equipment/stats/client.py +0 -602
- samsara/equipment/stats/raw_client.py +0 -684
- samsara/equipment/stats/types/__init__.py +0 -9
- samsara/equipment/stats/types/stats_feed_request_types_item.py +0 -19
- samsara/equipment/stats/types/stats_history_request_types_item.py +0 -19
- samsara/equipment/stats/types/stats_list_request_types_item.py +0 -19
- samsara/form_submissions/__init__.py +0 -8
- samsara/form_submissions/client.py +0 -669
- samsara/form_submissions/pdf_exports/client.py +0 -221
- samsara/form_submissions/pdf_exports/raw_client.py +0 -627
- samsara/form_submissions/raw_client.py +0 -1550
- samsara/form_submissions/types/__init__.py +0 -9
- samsara/fuel_purchases/__init__.py +0 -7
- samsara/fuel_purchases/client.py +0 -219
- samsara/fuel_purchases/raw_client.py +0 -410
- samsara/fuel_purchases/types/__init__.py +0 -9
- samsara/hos/__init__.py +0 -7
- samsara/hos/client.py +0 -695
- samsara/hos/raw_client.py +0 -1177
- samsara/hos/types/__init__.py +0 -7
- samsara/hos/types/hos_daily_logs_request_driver_activation_status.py +0 -5
- samsara/idling/types/idling_list_request_pto_state.py +0 -5
- samsara/ifta/csv/__init__.py +0 -4
- samsara/ifta/csv/client.py +0 -274
- samsara/ifta/csv/raw_client.py +0 -675
- samsara/inputs/__init__.py +0 -7
- samsara/inputs/client.py +0 -223
- samsara/inputs/raw_client.py +0 -445
- samsara/inputs/types/__init__.py +0 -7
- samsara/inputs/types/inputs_stream_request_type.py +0 -27
- samsara/live_shares/__init__.py +0 -7
- samsara/live_shares/client.py +0 -544
- samsara/live_shares/raw_client.py +0 -1418
- samsara/live_shares/types/__init__.py +0 -10
- samsara/live_shares/types/live_shares_list_request_type.py +0 -7
- samsara/maintenance/service_tasks/__init__.py +0 -4
- samsara/maintenance/service_tasks/client.py +0 -322
- samsara/maintenance/service_tasks/raw_client.py +0 -529
- samsara/maintenance/work_orders/__init__.py +0 -21
- samsara/maintenance/work_orders/client.py +0 -867
- samsara/maintenance/work_orders/raw_client.py +0 -1980
- samsara/maintenance/work_orders/types/__init__.py +0 -19
- samsara/maintenance/work_orders/types/work_orders_stream_request_work_order_statuses_item.py +0 -18
- samsara/me/__init__.py +0 -4
- samsara/me/client.py +0 -108
- samsara/me/raw_client.py +0 -99
- samsara/readings/__init__.py +0 -4
- samsara/readings/client.py +0 -524
- samsara/readings/raw_client.py +0 -1214
- samsara/reports/__init__.py +0 -7
- samsara/reports/client.py +0 -49
- samsara/reports/drivers/__init__.py +0 -7
- samsara/reports/drivers/client.py +0 -39
- samsara/reports/drivers/fuel_energy/__init__.py +0 -4
- samsara/reports/drivers/fuel_energy/client.py +0 -194
- samsara/reports/drivers/fuel_energy/raw_client.py +0 -384
- samsara/reports/drivers/raw_client.py +0 -13
- samsara/reports/ifta/__init__.py +0 -18
- samsara/reports/ifta/client.py +0 -44
- samsara/reports/ifta/jurisdiction/__init__.py +0 -7
- samsara/reports/ifta/jurisdiction/client.py +0 -217
- samsara/reports/ifta/jurisdiction/raw_client.py +0 -409
- samsara/reports/ifta/jurisdiction/types/__init__.py +0 -9
- samsara/reports/ifta/jurisdiction/types/jurisdiction_get_request_fuel_type.py +0 -25
- samsara/reports/ifta/jurisdiction/types/jurisdiction_get_request_month.py +0 -21
- samsara/reports/ifta/jurisdiction/types/jurisdiction_get_request_quarter.py +0 -5
- samsara/reports/ifta/raw_client.py +0 -13
- samsara/reports/ifta/vehicle/__init__.py +0 -7
- samsara/reports/ifta/vehicle/client.py +0 -227
- samsara/reports/ifta/vehicle/raw_client.py +0 -419
- samsara/reports/ifta/vehicle/types/__init__.py +0 -9
- samsara/reports/ifta/vehicle/types/vehicle_list_request_fuel_type.py +0 -25
- samsara/reports/ifta/vehicle/types/vehicle_list_request_month.py +0 -21
- samsara/reports/ifta/vehicle/types/vehicle_list_request_quarter.py +0 -5
- samsara/reports/raw_client.py +0 -13
- samsara/reports/vehicles/__init__.py +0 -8
- samsara/reports/vehicles/client.py +0 -44
- samsara/reports/vehicles/fuel_energy/__init__.py +0 -7
- samsara/reports/vehicles/fuel_energy/client.py +0 -205
- samsara/reports/vehicles/fuel_energy/raw_client.py +0 -395
- samsara/reports/vehicles/fuel_energy/types/__init__.py +0 -7
- samsara/reports/vehicles/fuel_energy/types/fuel_energy_list_request_energy_type.py +0 -5
- samsara/reports/vehicles/idling/__init__.py +0 -4
- samsara/reports/vehicles/idling/client.py +0 -236
- samsara/reports/vehicles/idling/raw_client.py +0 -462
- samsara/reports/vehicles/raw_client.py +0 -13
- samsara/routes/audit_logs/__init__.py +0 -4
- samsara/routes/audit_logs/client.py +0 -146
- samsara/routes/audit_logs/raw_client.py +0 -350
- samsara/safety_events/__init__.py +0 -7
- samsara/safety_events/audit_logs/__init__.py +0 -4
- samsara/safety_events/audit_logs/client.py +0 -160
- samsara/safety_events/audit_logs/raw_client.py +0 -386
- samsara/safety_events/client.py +0 -199
- samsara/safety_events/raw_client.py +0 -207
- samsara/settings/compliance/__init__.py +0 -4
- samsara/settings/compliance/client.py +0 -308
- samsara/settings/compliance/raw_client.py +0 -718
- samsara/settings/driver_app/__init__.py +0 -4
- samsara/settings/driver_app/client.py +0 -270
- samsara/settings/driver_app/raw_client.py +0 -697
- samsara/settings/safety/__init__.py +0 -4
- samsara/settings/safety/client.py +0 -118
- samsara/settings/safety/raw_client.py +0 -314
- samsara/speeding_intervals/types/speeding_intervals_stream_request_query_by.py +0 -5
- samsara/tachograph/__init__.py +0 -7
- samsara/tachograph/client.py +0 -44
- samsara/tachograph/driver/__init__.py +0 -4
- samsara/tachograph/driver/client.py +0 -337
- samsara/tachograph/driver/raw_client.py +0 -322
- samsara/tachograph/raw_client.py +0 -13
- samsara/tachograph/vehicles/__init__.py +0 -4
- samsara/tachograph/vehicles/client.py +0 -190
- samsara/tachograph/vehicles/raw_client.py +0 -173
- samsara/training_assignments/__init__.py +0 -4
- samsara/training_assignments/client.py +0 -520
- samsara/training_assignments/raw_client.py +0 -1326
- samsara/training_courses/__init__.py +0 -4
- samsara/training_courses/client.py +0 -178
- samsara/training_courses/raw_client.py +0 -398
- samsara/trips/types/__init__.py +0 -8
- samsara/trips/types/trips_stream_request_completion_status.py +0 -5
- samsara/trips/types/trips_stream_request_query_by.py +0 -5
- samsara/types/alert_event.py +0 -74
- samsara/types/alert_event_alert_condition_id.py +0 -40
- samsara/types/alert_event_device.py +0 -37
- samsara/types/alert_event_driver.py +0 -27
- samsara/types/alert_event_dvir.py +0 -52
- samsara/types/alert_event_dvir_defects_item.py +0 -44
- samsara/types/alert_event_dvir_driver.py +0 -27
- samsara/types/alert_event_dvir_inspection_type.py +0 -7
- samsara/types/alert_event_dvir_safety_status.py +0 -5
- samsara/types/alert_event_dvir_trailer.py +0 -27
- samsara/types/alert_event_dvir_vehicle.py +0 -27
- samsara/types/assets_location_link_config_object.py +0 -31
- samsara/types/assets_location_link_config_object_response_body.py +0 -33
- samsara/types/attribute_attribute_value_quantity.py +0 -5
- samsara/types/external_ids.py +0 -5
- samsara/types/webhook_event.py +0 -37
- samsara/user_roles/__init__.py +0 -4
- samsara/user_roles/client.py +0 -142
- samsara/user_roles/raw_client.py +0 -159
- samsara/v_1_messages/__init__.py +0 -4
- samsara/v_1_messages/client.py +0 -258
- samsara/v_1_messages/raw_client.py +0 -273
- samsara/vehicles/immobilizer/__init__.py +0 -4
- samsara/vehicles/immobilizer/client.py +0 -182
- samsara/vehicles/immobilizer/raw_client.py +0 -398
- samsara/vehicles/locations/__init__.py +0 -4
- samsara/vehicles/locations/client.py +0 -501
- samsara/vehicles/locations/raw_client.py +0 -579
- samsara/vehicles/stats/__init__.py +0 -19
- samsara/vehicles/stats/client.py +0 -1076
- samsara/vehicles/stats/raw_client.py +0 -1164
- samsara/vehicles/stats/types/__init__.py +0 -17
- samsara/vehicles/stats/types/stats_feed_request_decorations_item.py +0 -54
- samsara/vehicles/stats/types/stats_feed_request_types_item.py +0 -68
- samsara/vehicles/stats/types/stats_history_request_decorations_item.py +0 -54
- samsara/vehicles/stats/types/stats_history_request_types_item.py +0 -68
- samsara/vehicles/stats/types/stats_list_request_types_item.py +0 -68
- samsara_api-3.0.0.dist-info/METADATA +0 -238
- samsara_api-3.0.0.dist-info/RECORD +0 -2664
- /samsara/{alerts/incidents → driver_qr_codes}/__init__.py +0 -0
- /samsara/{assets/location_and_speed → fleet/attributes}/__init__.py +0 -0
- /samsara/{form_submissions → forms}/types/form_submissions_patch_form_submission_request_body_status.py +0 -0
- /samsara/{fuel_purchases → fuel_and_energy}/types/fuel_purchase_post_fuel_purchase_request_body_ifta_fuel_type.py +0 -0
- /samsara/{coaching/driver_coach_assignments → hubs}/__init__.py +0 -0
- /samsara/{coaching/sessions → industrial}/__init__.py +0 -0
- /samsara/{live_shares → live_sharing_links}/types/live_sharing_links_create_live_sharing_link_request_body_type.py +0 -0
- /samsara/{defect_types → location_and_speed}/__init__.py +0 -0
- /samsara/{dvirs → maintenance}/types/create_dvir_request_safety_status.py +0 -0
- /samsara/{cameras/media/retrieval → media}/types/media_retrieval_post_media_retrieval_request_body_media_type.py +0 -0
- /samsara/{defects → messages}/__init__.py +0 -0
- /samsara/{devices → organization_info}/__init__.py +0 -0
- /samsara/{document_types → plans}/__init__.py +0 -0
- /samsara/{documents/pdfs → preview_ap_is}/__init__.py +0 -0
- /samsara/{driver_trailer_assignments → safety}/__init__.py +0 -0
- /samsara/{drivers/qr_codes → tachograph_eu_only}/__init__.py +0 -0
- /samsara/{equipment/locations → trailer_assignments}/__init__.py +0 -0
- /samsara/{form_submissions/pdf_exports → vehicle_locations}/__init__.py +0 -0
- /samsara/{maintenance/work_orders → work_orders}/types/work_orders_patch_work_orders_request_body_category.py +0 -0
- /samsara/{maintenance/work_orders → work_orders}/types/work_orders_patch_work_orders_request_body_priority.py +0 -0
- /samsara/{maintenance/work_orders → work_orders}/types/work_orders_patch_work_orders_request_body_status.py +0 -0
- /samsara/{maintenance/work_orders → work_orders}/types/work_orders_post_work_orders_request_body_category.py +0 -0
- /samsara/{maintenance/work_orders → work_orders}/types/work_orders_post_work_orders_request_body_priority.py +0 -0
- {samsara_api-3.0.0.dist-info → samsara_api-4.0.0.dist-info}/LICENSE +0 -0
- {samsara_api-3.0.0.dist-info → samsara_api-4.0.0.dist-info}/WHEEL +0 -0
samsara/routes/raw_client.py
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
# This file was auto-generated by Fern from our API Definition.
|
|
2
2
|
|
|
3
|
+
import datetime as dt
|
|
3
4
|
import typing
|
|
4
5
|
from json.decoder import JSONDecodeError
|
|
5
6
|
|
|
6
7
|
from ..core.api_error import ApiError
|
|
7
8
|
from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
|
|
9
|
+
from ..core.datetime_utils import serialize_datetime
|
|
8
10
|
from ..core.http_response import AsyncHttpResponse, HttpResponse
|
|
9
11
|
from ..core.jsonable_encoder import jsonable_encoder
|
|
10
|
-
from ..core.pagination import AsyncPager, BaseHttpResponse, SyncPager
|
|
11
12
|
from ..core.pydantic_utilities import parse_obj_as
|
|
12
13
|
from ..core.request_options import RequestOptions
|
|
13
14
|
from ..core.serialization import convert_and_respect_annotation_metadata
|
|
@@ -20,12 +21,13 @@ from ..errors.not_implemented_error import NotImplementedError
|
|
|
20
21
|
from ..errors.service_unavailable_error import ServiceUnavailableError
|
|
21
22
|
from ..errors.too_many_requests_error import TooManyRequestsError
|
|
22
23
|
from ..errors.unauthorized_error import UnauthorizedError
|
|
23
|
-
from ..types.base_route_response_object_response_body import BaseRouteResponseObjectResponseBody
|
|
24
24
|
from ..types.create_routes_stop_request_object_request_body import CreateRoutesStopRequestObjectRequestBody
|
|
25
|
+
from ..types.hub_plan_routes_list_hub_plan_routes_response_body import HubPlanRoutesListHubPlanRoutesResponseBody
|
|
25
26
|
from ..types.route_settings_request_body import RouteSettingsRequestBody
|
|
26
27
|
from ..types.routes_create_route_response_body import RoutesCreateRouteResponseBody
|
|
27
28
|
from ..types.routes_fetch_route_response_body import RoutesFetchRouteResponseBody
|
|
28
29
|
from ..types.routes_fetch_routes_response_body import RoutesFetchRoutesResponseBody
|
|
30
|
+
from ..types.routes_get_routes_feed_response_body import RoutesGetRoutesFeedResponseBody
|
|
29
31
|
from ..types.routes_patch_route_response_body import RoutesPatchRouteResponseBody
|
|
30
32
|
from ..types.update_routes_stop_request_object_request_body import UpdateRoutesStopRequestObjectRequestBody
|
|
31
33
|
|
|
@@ -37,7 +39,7 @@ class RawRoutesClient:
|
|
|
37
39
|
def __init__(self, *, client_wrapper: SyncClientWrapper):
|
|
38
40
|
self._client_wrapper = client_wrapper
|
|
39
41
|
|
|
40
|
-
def
|
|
42
|
+
def fetch_routes(
|
|
41
43
|
self,
|
|
42
44
|
*,
|
|
43
45
|
start_time: str,
|
|
@@ -45,7 +47,7 @@ class RawRoutesClient:
|
|
|
45
47
|
limit: typing.Optional[int] = None,
|
|
46
48
|
after: typing.Optional[str] = None,
|
|
47
49
|
request_options: typing.Optional[RequestOptions] = None,
|
|
48
|
-
) ->
|
|
50
|
+
) -> HttpResponse[RoutesFetchRoutesResponseBody]:
|
|
49
51
|
"""
|
|
50
52
|
Returns multiple routes. The legacy version of this endpoint can be found at [samsara.com/api-legacy](https://www.samsara.com/api-legacy#operation/fetchAllDispatchRoutes).
|
|
51
53
|
|
|
@@ -75,7 +77,7 @@ class RawRoutesClient:
|
|
|
75
77
|
|
|
76
78
|
Returns
|
|
77
79
|
-------
|
|
78
|
-
|
|
80
|
+
HttpResponse[RoutesFetchRoutesResponseBody]
|
|
79
81
|
OK response.
|
|
80
82
|
"""
|
|
81
83
|
_response = self._client_wrapper.httpx_client.request(
|
|
@@ -91,29 +93,14 @@ class RawRoutesClient:
|
|
|
91
93
|
)
|
|
92
94
|
try:
|
|
93
95
|
if 200 <= _response.status_code < 300:
|
|
94
|
-
|
|
96
|
+
_data = typing.cast(
|
|
95
97
|
RoutesFetchRoutesResponseBody,
|
|
96
98
|
parse_obj_as(
|
|
97
99
|
type_=RoutesFetchRoutesResponseBody, # type: ignore
|
|
98
100
|
object_=_response.json(),
|
|
99
101
|
),
|
|
100
102
|
)
|
|
101
|
-
|
|
102
|
-
_has_next = False
|
|
103
|
-
_get_next = None
|
|
104
|
-
if _parsed_response.pagination is not None:
|
|
105
|
-
_parsed_next = _parsed_response.pagination.end_cursor
|
|
106
|
-
_has_next = _parsed_next is not None and _parsed_next != ""
|
|
107
|
-
_get_next = lambda: self.list(
|
|
108
|
-
start_time=start_time,
|
|
109
|
-
end_time=end_time,
|
|
110
|
-
limit=limit,
|
|
111
|
-
after=_parsed_next,
|
|
112
|
-
request_options=request_options,
|
|
113
|
-
)
|
|
114
|
-
return SyncPager(
|
|
115
|
-
has_next=_has_next, items=_items, get_next=_get_next, response=BaseHttpResponse(response=_response)
|
|
116
|
-
)
|
|
103
|
+
return HttpResponse(response=_response, data=_data)
|
|
117
104
|
if _response.status_code == 401:
|
|
118
105
|
raise UnauthorizedError(
|
|
119
106
|
headers=dict(_response.headers),
|
|
@@ -218,7 +205,7 @@ class RawRoutesClient:
|
|
|
218
205
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
219
206
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
220
207
|
|
|
221
|
-
def
|
|
208
|
+
def create_route(
|
|
222
209
|
self,
|
|
223
210
|
*,
|
|
224
211
|
name: str,
|
|
@@ -228,6 +215,7 @@ class RawRoutesClient:
|
|
|
228
215
|
notes: typing.Optional[str] = OMIT,
|
|
229
216
|
recompute_scheduled_times: typing.Optional[bool] = OMIT,
|
|
230
217
|
settings: typing.Optional[RouteSettingsRequestBody] = OMIT,
|
|
218
|
+
tag_ids: typing.Optional[typing.Sequence[str]] = OMIT,
|
|
231
219
|
vehicle_id: typing.Optional[str] = OMIT,
|
|
232
220
|
request_options: typing.Optional[RequestOptions] = None,
|
|
233
221
|
) -> HttpResponse[RoutesCreateRouteResponseBody]:
|
|
@@ -263,6 +251,9 @@ class RawRoutesClient:
|
|
|
263
251
|
|
|
264
252
|
settings : typing.Optional[RouteSettingsRequestBody]
|
|
265
253
|
|
|
254
|
+
tag_ids : typing.Optional[typing.Sequence[str]]
|
|
255
|
+
An array of IDs of tags to associate with this route.
|
|
256
|
+
|
|
266
257
|
vehicle_id : typing.Optional[str]
|
|
267
258
|
ID of the vehicle. Can be either a unique Samsara ID or an [external ID](https://developers.samsara.com/docs/external-ids) for the vehicle.
|
|
268
259
|
|
|
@@ -291,6 +282,7 @@ class RawRoutesClient:
|
|
|
291
282
|
annotation=typing.Sequence[CreateRoutesStopRequestObjectRequestBody],
|
|
292
283
|
direction="write",
|
|
293
284
|
),
|
|
285
|
+
"tagIds": tag_ids,
|
|
294
286
|
"vehicleId": vehicle_id,
|
|
295
287
|
},
|
|
296
288
|
headers={
|
|
@@ -413,7 +405,167 @@ class RawRoutesClient:
|
|
|
413
405
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
414
406
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
415
407
|
|
|
416
|
-
def
|
|
408
|
+
def get_routes_feed(
|
|
409
|
+
self,
|
|
410
|
+
*,
|
|
411
|
+
after: typing.Optional[str] = None,
|
|
412
|
+
expand: typing.Optional[typing.Literal["route"]] = None,
|
|
413
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
414
|
+
) -> HttpResponse[RoutesGetRoutesFeedResponseBody]:
|
|
415
|
+
"""
|
|
416
|
+
Subscribes to a feed of immutable, append-only updates for routes. The initial request to this feed endpoint returns a cursor, which can be used on the next request to fetch updated routes that have had state changes since that request.
|
|
417
|
+
|
|
418
|
+
The legacy version of this endpoint can be found at [samsara.com/api-legacy](https://www.samsara.com/api-legacy#operation/fetchAllRouteJobUpdates).
|
|
419
|
+
|
|
420
|
+
<b>Rate limit:</b> 5 requests/sec (learn more about rate limits <a href="https://developers.samsara.com/docs/rate-limits" target="_blank">here</a>).
|
|
421
|
+
|
|
422
|
+
To use this endpoint, select **Read Routes** under the Driver Workflow category when creating or editing an API token. <a href="https://developers.samsara.com/docs/authentication#scopes-for-api-tokens" target="_blank">Learn More.</a>
|
|
423
|
+
|
|
424
|
+
|
|
425
|
+
**Submit Feedback**: Likes, dislikes, and API feature requests should be filed as feedback in our <a href="https://forms.gle/zkD4NCH7HjKb7mm69" target="_blank">API feedback form</a>. If you encountered an issue or noticed inaccuracies in the API documentation, please <a href="https://www.samsara.com/help" target="_blank">submit a case</a> to our support team.
|
|
426
|
+
|
|
427
|
+
Parameters
|
|
428
|
+
----------
|
|
429
|
+
after : typing.Optional[str]
|
|
430
|
+
If specified, this should be the endCursor value from the previous page of results. When present, this request will return the next page of results that occur immediately after the previous page of results.
|
|
431
|
+
|
|
432
|
+
expand : typing.Optional[typing.Literal["route"]]
|
|
433
|
+
Expands the specified value(s) in the response object. Expansion populates additional fields in an object, if supported. Unsupported fields are ignored. To expand multiple fields, input a comma-separated list.
|
|
434
|
+
|
|
435
|
+
Valid value: `route` Valid values: `route`
|
|
436
|
+
|
|
437
|
+
request_options : typing.Optional[RequestOptions]
|
|
438
|
+
Request-specific configuration.
|
|
439
|
+
|
|
440
|
+
Returns
|
|
441
|
+
-------
|
|
442
|
+
HttpResponse[RoutesGetRoutesFeedResponseBody]
|
|
443
|
+
OK response.
|
|
444
|
+
"""
|
|
445
|
+
_response = self._client_wrapper.httpx_client.request(
|
|
446
|
+
"fleet/routes/audit-logs/feed",
|
|
447
|
+
method="GET",
|
|
448
|
+
params={
|
|
449
|
+
"after": after,
|
|
450
|
+
"expand": expand,
|
|
451
|
+
},
|
|
452
|
+
request_options=request_options,
|
|
453
|
+
)
|
|
454
|
+
try:
|
|
455
|
+
if 200 <= _response.status_code < 300:
|
|
456
|
+
_data = typing.cast(
|
|
457
|
+
RoutesGetRoutesFeedResponseBody,
|
|
458
|
+
parse_obj_as(
|
|
459
|
+
type_=RoutesGetRoutesFeedResponseBody, # type: ignore
|
|
460
|
+
object_=_response.json(),
|
|
461
|
+
),
|
|
462
|
+
)
|
|
463
|
+
return HttpResponse(response=_response, data=_data)
|
|
464
|
+
if _response.status_code == 401:
|
|
465
|
+
raise UnauthorizedError(
|
|
466
|
+
headers=dict(_response.headers),
|
|
467
|
+
body=typing.cast(
|
|
468
|
+
typing.Optional[typing.Any],
|
|
469
|
+
parse_obj_as(
|
|
470
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
471
|
+
object_=_response.json(),
|
|
472
|
+
),
|
|
473
|
+
),
|
|
474
|
+
)
|
|
475
|
+
if _response.status_code == 404:
|
|
476
|
+
raise NotFoundError(
|
|
477
|
+
headers=dict(_response.headers),
|
|
478
|
+
body=typing.cast(
|
|
479
|
+
typing.Optional[typing.Any],
|
|
480
|
+
parse_obj_as(
|
|
481
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
482
|
+
object_=_response.json(),
|
|
483
|
+
),
|
|
484
|
+
),
|
|
485
|
+
)
|
|
486
|
+
if _response.status_code == 405:
|
|
487
|
+
raise MethodNotAllowedError(
|
|
488
|
+
headers=dict(_response.headers),
|
|
489
|
+
body=typing.cast(
|
|
490
|
+
typing.Optional[typing.Any],
|
|
491
|
+
parse_obj_as(
|
|
492
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
493
|
+
object_=_response.json(),
|
|
494
|
+
),
|
|
495
|
+
),
|
|
496
|
+
)
|
|
497
|
+
if _response.status_code == 429:
|
|
498
|
+
raise TooManyRequestsError(
|
|
499
|
+
headers=dict(_response.headers),
|
|
500
|
+
body=typing.cast(
|
|
501
|
+
typing.Optional[typing.Any],
|
|
502
|
+
parse_obj_as(
|
|
503
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
504
|
+
object_=_response.json(),
|
|
505
|
+
),
|
|
506
|
+
),
|
|
507
|
+
)
|
|
508
|
+
if _response.status_code == 500:
|
|
509
|
+
raise InternalServerError(
|
|
510
|
+
headers=dict(_response.headers),
|
|
511
|
+
body=typing.cast(
|
|
512
|
+
typing.Optional[typing.Any],
|
|
513
|
+
parse_obj_as(
|
|
514
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
515
|
+
object_=_response.json(),
|
|
516
|
+
),
|
|
517
|
+
),
|
|
518
|
+
)
|
|
519
|
+
if _response.status_code == 501:
|
|
520
|
+
raise NotImplementedError(
|
|
521
|
+
headers=dict(_response.headers),
|
|
522
|
+
body=typing.cast(
|
|
523
|
+
typing.Optional[typing.Any],
|
|
524
|
+
parse_obj_as(
|
|
525
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
526
|
+
object_=_response.json(),
|
|
527
|
+
),
|
|
528
|
+
),
|
|
529
|
+
)
|
|
530
|
+
if _response.status_code == 502:
|
|
531
|
+
raise BadGatewayError(
|
|
532
|
+
headers=dict(_response.headers),
|
|
533
|
+
body=typing.cast(
|
|
534
|
+
typing.Optional[typing.Any],
|
|
535
|
+
parse_obj_as(
|
|
536
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
537
|
+
object_=_response.json(),
|
|
538
|
+
),
|
|
539
|
+
),
|
|
540
|
+
)
|
|
541
|
+
if _response.status_code == 503:
|
|
542
|
+
raise ServiceUnavailableError(
|
|
543
|
+
headers=dict(_response.headers),
|
|
544
|
+
body=typing.cast(
|
|
545
|
+
typing.Optional[typing.Any],
|
|
546
|
+
parse_obj_as(
|
|
547
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
548
|
+
object_=_response.json(),
|
|
549
|
+
),
|
|
550
|
+
),
|
|
551
|
+
)
|
|
552
|
+
if _response.status_code == 504:
|
|
553
|
+
raise GatewayTimeoutError(
|
|
554
|
+
headers=dict(_response.headers),
|
|
555
|
+
body=typing.cast(
|
|
556
|
+
typing.Optional[typing.Any],
|
|
557
|
+
parse_obj_as(
|
|
558
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
559
|
+
object_=_response.json(),
|
|
560
|
+
),
|
|
561
|
+
),
|
|
562
|
+
)
|
|
563
|
+
_response_json = _response.json()
|
|
564
|
+
except JSONDecodeError:
|
|
565
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
566
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
567
|
+
|
|
568
|
+
def fetch_route(
|
|
417
569
|
self, id: str, *, request_options: typing.Optional[RequestOptions] = None
|
|
418
570
|
) -> HttpResponse[RoutesFetchRouteResponseBody]:
|
|
419
571
|
"""
|
|
@@ -558,7 +710,7 @@ class RawRoutesClient:
|
|
|
558
710
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
559
711
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
560
712
|
|
|
561
|
-
def
|
|
713
|
+
def delete_route(self, id: str, *, request_options: typing.Optional[RequestOptions] = None) -> HttpResponse[None]:
|
|
562
714
|
"""
|
|
563
715
|
Delete a dispatch route and its associated stops.
|
|
564
716
|
|
|
@@ -693,7 +845,7 @@ class RawRoutesClient:
|
|
|
693
845
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
694
846
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
695
847
|
|
|
696
|
-
def
|
|
848
|
+
def patch_route(
|
|
697
849
|
self,
|
|
698
850
|
id: str,
|
|
699
851
|
*,
|
|
@@ -704,6 +856,7 @@ class RawRoutesClient:
|
|
|
704
856
|
recompute_scheduled_times: typing.Optional[bool] = OMIT,
|
|
705
857
|
settings: typing.Optional[RouteSettingsRequestBody] = OMIT,
|
|
706
858
|
stops: typing.Optional[typing.Sequence[UpdateRoutesStopRequestObjectRequestBody]] = OMIT,
|
|
859
|
+
tag_ids: typing.Optional[typing.Sequence[str]] = OMIT,
|
|
707
860
|
vehicle_id: typing.Optional[str] = OMIT,
|
|
708
861
|
request_options: typing.Optional[RequestOptions] = None,
|
|
709
862
|
) -> HttpResponse[RoutesPatchRouteResponseBody]:
|
|
@@ -746,6 +899,9 @@ class RawRoutesClient:
|
|
|
746
899
|
stops : typing.Optional[typing.Sequence[UpdateRoutesStopRequestObjectRequestBody]]
|
|
747
900
|
List of stops along the route. If a valid `id` of a stop is provided, that stop will be updated. If no `id` is provided for a passed in stop, that stop will be created. If `id` value are passed in for some stops and not for others, those with `id` value specified will be retained and updated in the original route, those without `id` value specified in the body will be created, and those without `id` value specified that already existed on the route will be deleted. For each new stop, exactly one of `addressId` and `singleUseLocation` are required. Depending on the `settings` on your route, either a `scheduledArrivalTime` or `scheduledDepartureTime` must be specified for the first job, if a new first job is being added.
|
|
748
901
|
|
|
902
|
+
tag_ids : typing.Optional[typing.Sequence[str]]
|
|
903
|
+
An array of IDs of tags to associate with this route.
|
|
904
|
+
|
|
749
905
|
vehicle_id : typing.Optional[str]
|
|
750
906
|
ID of the vehicle. Can be either a unique Samsara ID or an [external ID](https://developers.samsara.com/docs/external-ids) for the vehicle.
|
|
751
907
|
|
|
@@ -774,6 +930,7 @@ class RawRoutesClient:
|
|
|
774
930
|
annotation=typing.Sequence[UpdateRoutesStopRequestObjectRequestBody],
|
|
775
931
|
direction="write",
|
|
776
932
|
),
|
|
933
|
+
"tagIds": tag_ids,
|
|
777
934
|
"vehicleId": vehicle_id,
|
|
778
935
|
},
|
|
779
936
|
headers={
|
|
@@ -896,24 +1053,21 @@ class RawRoutesClient:
|
|
|
896
1053
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
897
1054
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
898
1055
|
|
|
899
|
-
|
|
900
|
-
class AsyncRawRoutesClient:
|
|
901
|
-
def __init__(self, *, client_wrapper: AsyncClientWrapper):
|
|
902
|
-
self._client_wrapper = client_wrapper
|
|
903
|
-
|
|
904
|
-
async def list(
|
|
1056
|
+
def list_hub_plan_routes(
|
|
905
1057
|
self,
|
|
906
1058
|
*,
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
1059
|
+
plan_id: str,
|
|
1060
|
+
route_ids: typing.Optional[str] = None,
|
|
1061
|
+
start_time: typing.Optional[dt.datetime] = None,
|
|
1062
|
+
end_time: typing.Optional[dt.datetime] = None,
|
|
910
1063
|
after: typing.Optional[str] = None,
|
|
1064
|
+
limit: typing.Optional[int] = None,
|
|
911
1065
|
request_options: typing.Optional[RequestOptions] = None,
|
|
912
|
-
) ->
|
|
1066
|
+
) -> HttpResponse[HubPlanRoutesListHubPlanRoutesResponseBody]:
|
|
913
1067
|
"""
|
|
914
|
-
|
|
1068
|
+
Retrieve routes for a specific plan.
|
|
915
1069
|
|
|
916
|
-
<b>Rate limit:</b>
|
|
1070
|
+
<b>Rate limit:</b> 10 requests/sec (learn more about rate limits <a href="https://developers.samsara.com/docs/rate-limits" target="_blank">here</a>).
|
|
917
1071
|
|
|
918
1072
|
To use this endpoint, select **Read Routes** under the Driver Workflow category when creating or editing an API token. <a href="https://developers.samsara.com/docs/authentication#scopes-for-api-tokens" target="_blank">Learn More.</a>
|
|
919
1073
|
|
|
@@ -922,65 +1076,55 @@ class AsyncRawRoutesClient:
|
|
|
922
1076
|
|
|
923
1077
|
Parameters
|
|
924
1078
|
----------
|
|
925
|
-
|
|
926
|
-
|
|
1079
|
+
plan_id : str
|
|
1080
|
+
The plan identifier
|
|
927
1081
|
|
|
928
|
-
|
|
929
|
-
|
|
1082
|
+
route_ids : typing.Optional[str]
|
|
1083
|
+
Comma-separated list of route IDs for filtering.
|
|
930
1084
|
|
|
931
|
-
|
|
932
|
-
|
|
1085
|
+
start_time : typing.Optional[dt.datetime]
|
|
1086
|
+
Time filter of when the route was updated, in RFC 3339 format
|
|
1087
|
+
|
|
1088
|
+
end_time : typing.Optional[dt.datetime]
|
|
1089
|
+
Time filter of when the route was updated, in RFC 3339 format
|
|
933
1090
|
|
|
934
1091
|
after : typing.Optional[str]
|
|
935
|
-
|
|
1092
|
+
If specified, should be the endCursor from the previous page of results. When present, this request will return the next page of results that occur immediately after the previous page of results.
|
|
1093
|
+
|
|
1094
|
+
limit : typing.Optional[int]
|
|
1095
|
+
Maximum number of objects to return. Default and maximum is 100
|
|
936
1096
|
|
|
937
1097
|
request_options : typing.Optional[RequestOptions]
|
|
938
1098
|
Request-specific configuration.
|
|
939
1099
|
|
|
940
1100
|
Returns
|
|
941
1101
|
-------
|
|
942
|
-
|
|
1102
|
+
HttpResponse[HubPlanRoutesListHubPlanRoutesResponseBody]
|
|
943
1103
|
OK response.
|
|
944
1104
|
"""
|
|
945
|
-
_response =
|
|
946
|
-
"
|
|
1105
|
+
_response = self._client_wrapper.httpx_client.request(
|
|
1106
|
+
"hub/plan/routes",
|
|
947
1107
|
method="GET",
|
|
948
1108
|
params={
|
|
949
|
-
"
|
|
950
|
-
"
|
|
951
|
-
"
|
|
1109
|
+
"planId": plan_id,
|
|
1110
|
+
"routeIds": route_ids,
|
|
1111
|
+
"startTime": serialize_datetime(start_time) if start_time is not None else None,
|
|
1112
|
+
"endTime": serialize_datetime(end_time) if end_time is not None else None,
|
|
952
1113
|
"after": after,
|
|
1114
|
+
"limit": limit,
|
|
953
1115
|
},
|
|
954
1116
|
request_options=request_options,
|
|
955
1117
|
)
|
|
956
1118
|
try:
|
|
957
1119
|
if 200 <= _response.status_code < 300:
|
|
958
|
-
|
|
959
|
-
|
|
1120
|
+
_data = typing.cast(
|
|
1121
|
+
HubPlanRoutesListHubPlanRoutesResponseBody,
|
|
960
1122
|
parse_obj_as(
|
|
961
|
-
type_=
|
|
1123
|
+
type_=HubPlanRoutesListHubPlanRoutesResponseBody, # type: ignore
|
|
962
1124
|
object_=_response.json(),
|
|
963
1125
|
),
|
|
964
1126
|
)
|
|
965
|
-
|
|
966
|
-
_has_next = False
|
|
967
|
-
_get_next = None
|
|
968
|
-
if _parsed_response.pagination is not None:
|
|
969
|
-
_parsed_next = _parsed_response.pagination.end_cursor
|
|
970
|
-
_has_next = _parsed_next is not None and _parsed_next != ""
|
|
971
|
-
|
|
972
|
-
async def _get_next():
|
|
973
|
-
return await self.list(
|
|
974
|
-
start_time=start_time,
|
|
975
|
-
end_time=end_time,
|
|
976
|
-
limit=limit,
|
|
977
|
-
after=_parsed_next,
|
|
978
|
-
request_options=request_options,
|
|
979
|
-
)
|
|
980
|
-
|
|
981
|
-
return AsyncPager(
|
|
982
|
-
has_next=_has_next, items=_items, get_next=_get_next, response=BaseHttpResponse(response=_response)
|
|
983
|
-
)
|
|
1127
|
+
return HttpResponse(response=_response, data=_data)
|
|
984
1128
|
if _response.status_code == 401:
|
|
985
1129
|
raise UnauthorizedError(
|
|
986
1130
|
headers=dict(_response.headers),
|
|
@@ -1085,80 +1229,47 @@ class AsyncRawRoutesClient:
|
|
|
1085
1229
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
1086
1230
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
1087
1231
|
|
|
1088
|
-
|
|
1232
|
+
def v_1_delete_dispatch_route_by_id(
|
|
1089
1233
|
self,
|
|
1234
|
+
route_id_or_external_id: str,
|
|
1090
1235
|
*,
|
|
1091
|
-
|
|
1092
|
-
stops: typing.Sequence[CreateRoutesStopRequestObjectRequestBody],
|
|
1093
|
-
driver_id: typing.Optional[str] = OMIT,
|
|
1094
|
-
external_ids: typing.Optional[typing.Dict[str, str]] = OMIT,
|
|
1095
|
-
notes: typing.Optional[str] = OMIT,
|
|
1096
|
-
recompute_scheduled_times: typing.Optional[bool] = OMIT,
|
|
1097
|
-
settings: typing.Optional[RouteSettingsRequestBody] = OMIT,
|
|
1098
|
-
vehicle_id: typing.Optional[str] = OMIT,
|
|
1236
|
+
apply_to_future_routes: typing.Optional[bool] = OMIT,
|
|
1099
1237
|
request_options: typing.Optional[RequestOptions] = None,
|
|
1100
|
-
) ->
|
|
1238
|
+
) -> HttpResponse[None]:
|
|
1101
1239
|
"""
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1240
|
+
<n class="warning">
|
|
1241
|
+
<nh>
|
|
1242
|
+
<i class="fa fa-exclamation-circle"></i>
|
|
1243
|
+
This endpoint is still on our legacy API.
|
|
1244
|
+
</nh>
|
|
1245
|
+
</n>
|
|
1107
1246
|
|
|
1247
|
+
Delete a dispatch route and its associated jobs.
|
|
1108
1248
|
|
|
1109
1249
|
**Submit Feedback**: Likes, dislikes, and API feature requests should be filed as feedback in our <a href="https://forms.gle/zkD4NCH7HjKb7mm69" target="_blank">API feedback form</a>. If you encountered an issue or noticed inaccuracies in the API documentation, please <a href="https://www.samsara.com/help" target="_blank">submit a case</a> to our support team.
|
|
1110
1250
|
|
|
1251
|
+
To use this endpoint, select **Write Routes** under the Driver Workflow category when creating or editing an API token. <a href="https://developers.samsara.com/docs/authentication#scopes-for-api-tokens" target="_blank">Learn More.</a>
|
|
1252
|
+
|
|
1111
1253
|
Parameters
|
|
1112
1254
|
----------
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
stops : typing.Sequence[CreateRoutesStopRequestObjectRequestBody]
|
|
1117
|
-
List of stops along the route. For each stop, exactly one of `addressId` and `singleUseLocation` are required. Depending on the `settings` on your route, either a `scheduledArrivalTime` or `scheduledDepartureTime` must be specified for the first job.
|
|
1118
|
-
|
|
1119
|
-
driver_id : typing.Optional[str]
|
|
1120
|
-
ID of the driver. Can be either a unique Samsara ID or an [external ID](https://developers.samsara.com/docs/external-ids) for the driver.
|
|
1121
|
-
|
|
1122
|
-
external_ids : typing.Optional[typing.Dict[str, str]]
|
|
1123
|
-
A map of external ids
|
|
1124
|
-
|
|
1125
|
-
notes : typing.Optional[str]
|
|
1126
|
-
Notes about the route.
|
|
1127
|
-
|
|
1128
|
-
recompute_scheduled_times : typing.Optional[bool]
|
|
1129
|
-
This optional boolean parameter controls whether route schedule arrival and departure times are recalculated. When set to true, the system will automatically recompute the scheduledArrivalTime and scheduledDepartureTime for each stop along the route during route creation. This process overrides any manually provided values, with the exception of the first stop, which retains its user-defined schedule.
|
|
1130
|
-
|
|
1131
|
-
settings : typing.Optional[RouteSettingsRequestBody]
|
|
1255
|
+
route_id_or_external_id : str
|
|
1256
|
+
ID of the route. This can either be the Samsara-specified ID, or an external ID. External IDs are customer specified key-value pairs created in the POST or PATCH requests of this resource. To specify an external ID as part of a path parameter, use the following format: `key:value`. For example, `payrollId:ABFS18600`
|
|
1132
1257
|
|
|
1133
|
-
|
|
1134
|
-
|
|
1258
|
+
apply_to_future_routes : typing.Optional[bool]
|
|
1259
|
+
This is only for a recurring route. If set to true, delete all following runs of the route. If set to false, only delete the current route.
|
|
1135
1260
|
|
|
1136
1261
|
request_options : typing.Optional[RequestOptions]
|
|
1137
1262
|
Request-specific configuration.
|
|
1138
1263
|
|
|
1139
1264
|
Returns
|
|
1140
1265
|
-------
|
|
1141
|
-
|
|
1142
|
-
OK response.
|
|
1266
|
+
HttpResponse[None]
|
|
1143
1267
|
"""
|
|
1144
|
-
_response =
|
|
1145
|
-
"fleet/routes",
|
|
1146
|
-
method="
|
|
1268
|
+
_response = self._client_wrapper.httpx_client.request(
|
|
1269
|
+
f"v1/fleet/dispatch/routes/{jsonable_encoder(route_id_or_external_id)}",
|
|
1270
|
+
method="DELETE",
|
|
1147
1271
|
json={
|
|
1148
|
-
"
|
|
1149
|
-
"externalIds": external_ids,
|
|
1150
|
-
"name": name,
|
|
1151
|
-
"notes": notes,
|
|
1152
|
-
"recomputeScheduledTimes": recompute_scheduled_times,
|
|
1153
|
-
"settings": convert_and_respect_annotation_metadata(
|
|
1154
|
-
object_=settings, annotation=RouteSettingsRequestBody, direction="write"
|
|
1155
|
-
),
|
|
1156
|
-
"stops": convert_and_respect_annotation_metadata(
|
|
1157
|
-
object_=stops,
|
|
1158
|
-
annotation=typing.Sequence[CreateRoutesStopRequestObjectRequestBody],
|
|
1159
|
-
direction="write",
|
|
1160
|
-
),
|
|
1161
|
-
"vehicleId": vehicle_id,
|
|
1272
|
+
"apply_to_future_routes": apply_to_future_routes,
|
|
1162
1273
|
},
|
|
1163
1274
|
headers={
|
|
1164
1275
|
"content-type": "application/json",
|
|
@@ -1168,15 +1279,440 @@ class AsyncRawRoutesClient:
|
|
|
1168
1279
|
)
|
|
1169
1280
|
try:
|
|
1170
1281
|
if 200 <= _response.status_code < 300:
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1282
|
+
return HttpResponse(response=_response, data=None)
|
|
1283
|
+
_response_json = _response.json()
|
|
1284
|
+
except JSONDecodeError:
|
|
1285
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
1286
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
1287
|
+
|
|
1288
|
+
|
|
1289
|
+
class AsyncRawRoutesClient:
|
|
1290
|
+
def __init__(self, *, client_wrapper: AsyncClientWrapper):
|
|
1291
|
+
self._client_wrapper = client_wrapper
|
|
1292
|
+
|
|
1293
|
+
async def fetch_routes(
|
|
1294
|
+
self,
|
|
1295
|
+
*,
|
|
1296
|
+
start_time: str,
|
|
1297
|
+
end_time: str,
|
|
1298
|
+
limit: typing.Optional[int] = None,
|
|
1299
|
+
after: typing.Optional[str] = None,
|
|
1300
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
1301
|
+
) -> AsyncHttpResponse[RoutesFetchRoutesResponseBody]:
|
|
1302
|
+
"""
|
|
1303
|
+
Returns multiple routes. The legacy version of this endpoint can be found at [samsara.com/api-legacy](https://www.samsara.com/api-legacy#operation/fetchAllDispatchRoutes).
|
|
1304
|
+
|
|
1305
|
+
<b>Rate limit:</b> 5 requests/sec (learn more about rate limits <a href="https://developers.samsara.com/docs/rate-limits" target="_blank">here</a>).
|
|
1306
|
+
|
|
1307
|
+
To use this endpoint, select **Read Routes** under the Driver Workflow category when creating or editing an API token. <a href="https://developers.samsara.com/docs/authentication#scopes-for-api-tokens" target="_blank">Learn More.</a>
|
|
1308
|
+
|
|
1309
|
+
|
|
1310
|
+
**Submit Feedback**: Likes, dislikes, and API feature requests should be filed as feedback in our <a href="https://forms.gle/zkD4NCH7HjKb7mm69" target="_blank">API feedback form</a>. If you encountered an issue or noticed inaccuracies in the API documentation, please <a href="https://www.samsara.com/help" target="_blank">submit a case</a> to our support team.
|
|
1311
|
+
|
|
1312
|
+
Parameters
|
|
1313
|
+
----------
|
|
1314
|
+
start_time : str
|
|
1315
|
+
A start time in RFC 3339 format. Defaults to now if not provided. Millisecond precision and timezones are supported. (Examples: 2019-06-13T19:08:25Z, 2019-06-13T19:08:25.455Z, OR 2015-09-15T14:00:12-04:00).
|
|
1316
|
+
|
|
1317
|
+
end_time : str
|
|
1318
|
+
An end time in RFC 3339 format. Defaults to now if not provided. Millisecond precision and timezones are supported. (Examples: 2019-06-13T19:08:25Z, 2019-06-13T19:08:25.455Z, OR 2015-09-15T14:00:12-04:00).
|
|
1319
|
+
|
|
1320
|
+
limit : typing.Optional[int]
|
|
1321
|
+
The limit for how many objects will be in the response. Default and max for this value is 512 objects.
|
|
1322
|
+
|
|
1323
|
+
after : typing.Optional[str]
|
|
1324
|
+
If specified, this should be the endCursor value from the previous page of results. When present, this request will return the next page of results that occur immediately after the previous page of results.
|
|
1325
|
+
|
|
1326
|
+
request_options : typing.Optional[RequestOptions]
|
|
1327
|
+
Request-specific configuration.
|
|
1328
|
+
|
|
1329
|
+
Returns
|
|
1330
|
+
-------
|
|
1331
|
+
AsyncHttpResponse[RoutesFetchRoutesResponseBody]
|
|
1332
|
+
OK response.
|
|
1333
|
+
"""
|
|
1334
|
+
_response = await self._client_wrapper.httpx_client.request(
|
|
1335
|
+
"fleet/routes",
|
|
1336
|
+
method="GET",
|
|
1337
|
+
params={
|
|
1338
|
+
"startTime": start_time,
|
|
1339
|
+
"endTime": end_time,
|
|
1340
|
+
"limit": limit,
|
|
1341
|
+
"after": after,
|
|
1342
|
+
},
|
|
1343
|
+
request_options=request_options,
|
|
1344
|
+
)
|
|
1345
|
+
try:
|
|
1346
|
+
if 200 <= _response.status_code < 300:
|
|
1347
|
+
_data = typing.cast(
|
|
1348
|
+
RoutesFetchRoutesResponseBody,
|
|
1349
|
+
parse_obj_as(
|
|
1350
|
+
type_=RoutesFetchRoutesResponseBody, # type: ignore
|
|
1351
|
+
object_=_response.json(),
|
|
1352
|
+
),
|
|
1353
|
+
)
|
|
1354
|
+
return AsyncHttpResponse(response=_response, data=_data)
|
|
1355
|
+
if _response.status_code == 401:
|
|
1356
|
+
raise UnauthorizedError(
|
|
1357
|
+
headers=dict(_response.headers),
|
|
1358
|
+
body=typing.cast(
|
|
1359
|
+
typing.Optional[typing.Any],
|
|
1360
|
+
parse_obj_as(
|
|
1361
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1362
|
+
object_=_response.json(),
|
|
1363
|
+
),
|
|
1364
|
+
),
|
|
1365
|
+
)
|
|
1366
|
+
if _response.status_code == 404:
|
|
1367
|
+
raise NotFoundError(
|
|
1368
|
+
headers=dict(_response.headers),
|
|
1369
|
+
body=typing.cast(
|
|
1370
|
+
typing.Optional[typing.Any],
|
|
1371
|
+
parse_obj_as(
|
|
1372
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1373
|
+
object_=_response.json(),
|
|
1374
|
+
),
|
|
1375
|
+
),
|
|
1376
|
+
)
|
|
1377
|
+
if _response.status_code == 405:
|
|
1378
|
+
raise MethodNotAllowedError(
|
|
1379
|
+
headers=dict(_response.headers),
|
|
1380
|
+
body=typing.cast(
|
|
1381
|
+
typing.Optional[typing.Any],
|
|
1382
|
+
parse_obj_as(
|
|
1383
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1384
|
+
object_=_response.json(),
|
|
1385
|
+
),
|
|
1386
|
+
),
|
|
1387
|
+
)
|
|
1388
|
+
if _response.status_code == 429:
|
|
1389
|
+
raise TooManyRequestsError(
|
|
1390
|
+
headers=dict(_response.headers),
|
|
1391
|
+
body=typing.cast(
|
|
1392
|
+
typing.Optional[typing.Any],
|
|
1393
|
+
parse_obj_as(
|
|
1394
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1395
|
+
object_=_response.json(),
|
|
1396
|
+
),
|
|
1397
|
+
),
|
|
1398
|
+
)
|
|
1399
|
+
if _response.status_code == 500:
|
|
1400
|
+
raise InternalServerError(
|
|
1401
|
+
headers=dict(_response.headers),
|
|
1402
|
+
body=typing.cast(
|
|
1403
|
+
typing.Optional[typing.Any],
|
|
1404
|
+
parse_obj_as(
|
|
1405
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1406
|
+
object_=_response.json(),
|
|
1407
|
+
),
|
|
1408
|
+
),
|
|
1409
|
+
)
|
|
1410
|
+
if _response.status_code == 501:
|
|
1411
|
+
raise NotImplementedError(
|
|
1412
|
+
headers=dict(_response.headers),
|
|
1413
|
+
body=typing.cast(
|
|
1414
|
+
typing.Optional[typing.Any],
|
|
1415
|
+
parse_obj_as(
|
|
1416
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1417
|
+
object_=_response.json(),
|
|
1418
|
+
),
|
|
1419
|
+
),
|
|
1420
|
+
)
|
|
1421
|
+
if _response.status_code == 502:
|
|
1422
|
+
raise BadGatewayError(
|
|
1423
|
+
headers=dict(_response.headers),
|
|
1424
|
+
body=typing.cast(
|
|
1425
|
+
typing.Optional[typing.Any],
|
|
1426
|
+
parse_obj_as(
|
|
1427
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1428
|
+
object_=_response.json(),
|
|
1429
|
+
),
|
|
1430
|
+
),
|
|
1431
|
+
)
|
|
1432
|
+
if _response.status_code == 503:
|
|
1433
|
+
raise ServiceUnavailableError(
|
|
1434
|
+
headers=dict(_response.headers),
|
|
1435
|
+
body=typing.cast(
|
|
1436
|
+
typing.Optional[typing.Any],
|
|
1437
|
+
parse_obj_as(
|
|
1438
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1439
|
+
object_=_response.json(),
|
|
1440
|
+
),
|
|
1441
|
+
),
|
|
1442
|
+
)
|
|
1443
|
+
if _response.status_code == 504:
|
|
1444
|
+
raise GatewayTimeoutError(
|
|
1445
|
+
headers=dict(_response.headers),
|
|
1446
|
+
body=typing.cast(
|
|
1447
|
+
typing.Optional[typing.Any],
|
|
1448
|
+
parse_obj_as(
|
|
1449
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1450
|
+
object_=_response.json(),
|
|
1451
|
+
),
|
|
1452
|
+
),
|
|
1453
|
+
)
|
|
1454
|
+
_response_json = _response.json()
|
|
1455
|
+
except JSONDecodeError:
|
|
1456
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
1457
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
1458
|
+
|
|
1459
|
+
async def create_route(
|
|
1460
|
+
self,
|
|
1461
|
+
*,
|
|
1462
|
+
name: str,
|
|
1463
|
+
stops: typing.Sequence[CreateRoutesStopRequestObjectRequestBody],
|
|
1464
|
+
driver_id: typing.Optional[str] = OMIT,
|
|
1465
|
+
external_ids: typing.Optional[typing.Dict[str, str]] = OMIT,
|
|
1466
|
+
notes: typing.Optional[str] = OMIT,
|
|
1467
|
+
recompute_scheduled_times: typing.Optional[bool] = OMIT,
|
|
1468
|
+
settings: typing.Optional[RouteSettingsRequestBody] = OMIT,
|
|
1469
|
+
tag_ids: typing.Optional[typing.Sequence[str]] = OMIT,
|
|
1470
|
+
vehicle_id: typing.Optional[str] = OMIT,
|
|
1471
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
1472
|
+
) -> AsyncHttpResponse[RoutesCreateRouteResponseBody]:
|
|
1473
|
+
"""
|
|
1474
|
+
Create a route. The legacy version of this endpoint can be found at [samsara.com/api-legacy](https://www.samsara.com/api-legacy#operation/createDispatchRoute).
|
|
1475
|
+
|
|
1476
|
+
<b>Rate limit:</b> 100 requests/min (learn more about rate limits <a href="https://developers.samsara.com/docs/rate-limits" target="_blank">here</a>).
|
|
1477
|
+
|
|
1478
|
+
To use this endpoint, select **Write Routes** under the Driver Workflow category when creating or editing an API token. <a href="https://developers.samsara.com/docs/authentication#scopes-for-api-tokens" target="_blank">Learn More.</a>
|
|
1479
|
+
|
|
1480
|
+
|
|
1481
|
+
**Submit Feedback**: Likes, dislikes, and API feature requests should be filed as feedback in our <a href="https://forms.gle/zkD4NCH7HjKb7mm69" target="_blank">API feedback form</a>. If you encountered an issue or noticed inaccuracies in the API documentation, please <a href="https://www.samsara.com/help" target="_blank">submit a case</a> to our support team.
|
|
1482
|
+
|
|
1483
|
+
Parameters
|
|
1484
|
+
----------
|
|
1485
|
+
name : str
|
|
1486
|
+
Name for the route
|
|
1487
|
+
|
|
1488
|
+
stops : typing.Sequence[CreateRoutesStopRequestObjectRequestBody]
|
|
1489
|
+
List of stops along the route. For each stop, exactly one of `addressId` and `singleUseLocation` are required. Depending on the `settings` on your route, either a `scheduledArrivalTime` or `scheduledDepartureTime` must be specified for the first job.
|
|
1490
|
+
|
|
1491
|
+
driver_id : typing.Optional[str]
|
|
1492
|
+
ID of the driver. Can be either a unique Samsara ID or an [external ID](https://developers.samsara.com/docs/external-ids) for the driver.
|
|
1493
|
+
|
|
1494
|
+
external_ids : typing.Optional[typing.Dict[str, str]]
|
|
1495
|
+
A map of external ids
|
|
1496
|
+
|
|
1497
|
+
notes : typing.Optional[str]
|
|
1498
|
+
Notes about the route.
|
|
1499
|
+
|
|
1500
|
+
recompute_scheduled_times : typing.Optional[bool]
|
|
1501
|
+
This optional boolean parameter controls whether route schedule arrival and departure times are recalculated. When set to true, the system will automatically recompute the scheduledArrivalTime and scheduledDepartureTime for each stop along the route during route creation. This process overrides any manually provided values, with the exception of the first stop, which retains its user-defined schedule.
|
|
1502
|
+
|
|
1503
|
+
settings : typing.Optional[RouteSettingsRequestBody]
|
|
1504
|
+
|
|
1505
|
+
tag_ids : typing.Optional[typing.Sequence[str]]
|
|
1506
|
+
An array of IDs of tags to associate with this route.
|
|
1507
|
+
|
|
1508
|
+
vehicle_id : typing.Optional[str]
|
|
1509
|
+
ID of the vehicle. Can be either a unique Samsara ID or an [external ID](https://developers.samsara.com/docs/external-ids) for the vehicle.
|
|
1510
|
+
|
|
1511
|
+
request_options : typing.Optional[RequestOptions]
|
|
1512
|
+
Request-specific configuration.
|
|
1513
|
+
|
|
1514
|
+
Returns
|
|
1515
|
+
-------
|
|
1516
|
+
AsyncHttpResponse[RoutesCreateRouteResponseBody]
|
|
1517
|
+
OK response.
|
|
1518
|
+
"""
|
|
1519
|
+
_response = await self._client_wrapper.httpx_client.request(
|
|
1520
|
+
"fleet/routes",
|
|
1521
|
+
method="POST",
|
|
1522
|
+
json={
|
|
1523
|
+
"driverId": driver_id,
|
|
1524
|
+
"externalIds": external_ids,
|
|
1525
|
+
"name": name,
|
|
1526
|
+
"notes": notes,
|
|
1527
|
+
"recomputeScheduledTimes": recompute_scheduled_times,
|
|
1528
|
+
"settings": convert_and_respect_annotation_metadata(
|
|
1529
|
+
object_=settings, annotation=RouteSettingsRequestBody, direction="write"
|
|
1530
|
+
),
|
|
1531
|
+
"stops": convert_and_respect_annotation_metadata(
|
|
1532
|
+
object_=stops,
|
|
1533
|
+
annotation=typing.Sequence[CreateRoutesStopRequestObjectRequestBody],
|
|
1534
|
+
direction="write",
|
|
1535
|
+
),
|
|
1536
|
+
"tagIds": tag_ids,
|
|
1537
|
+
"vehicleId": vehicle_id,
|
|
1538
|
+
},
|
|
1539
|
+
headers={
|
|
1540
|
+
"content-type": "application/json",
|
|
1541
|
+
},
|
|
1542
|
+
request_options=request_options,
|
|
1543
|
+
omit=OMIT,
|
|
1544
|
+
)
|
|
1545
|
+
try:
|
|
1546
|
+
if 200 <= _response.status_code < 300:
|
|
1547
|
+
_data = typing.cast(
|
|
1548
|
+
RoutesCreateRouteResponseBody,
|
|
1549
|
+
parse_obj_as(
|
|
1550
|
+
type_=RoutesCreateRouteResponseBody, # type: ignore
|
|
1551
|
+
object_=_response.json(),
|
|
1552
|
+
),
|
|
1553
|
+
)
|
|
1554
|
+
return AsyncHttpResponse(response=_response, data=_data)
|
|
1555
|
+
if _response.status_code == 401:
|
|
1556
|
+
raise UnauthorizedError(
|
|
1557
|
+
headers=dict(_response.headers),
|
|
1558
|
+
body=typing.cast(
|
|
1559
|
+
typing.Optional[typing.Any],
|
|
1560
|
+
parse_obj_as(
|
|
1561
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1562
|
+
object_=_response.json(),
|
|
1563
|
+
),
|
|
1564
|
+
),
|
|
1565
|
+
)
|
|
1566
|
+
if _response.status_code == 404:
|
|
1567
|
+
raise NotFoundError(
|
|
1568
|
+
headers=dict(_response.headers),
|
|
1569
|
+
body=typing.cast(
|
|
1570
|
+
typing.Optional[typing.Any],
|
|
1571
|
+
parse_obj_as(
|
|
1572
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1573
|
+
object_=_response.json(),
|
|
1574
|
+
),
|
|
1575
|
+
),
|
|
1576
|
+
)
|
|
1577
|
+
if _response.status_code == 405:
|
|
1578
|
+
raise MethodNotAllowedError(
|
|
1579
|
+
headers=dict(_response.headers),
|
|
1580
|
+
body=typing.cast(
|
|
1581
|
+
typing.Optional[typing.Any],
|
|
1582
|
+
parse_obj_as(
|
|
1583
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1584
|
+
object_=_response.json(),
|
|
1585
|
+
),
|
|
1586
|
+
),
|
|
1587
|
+
)
|
|
1588
|
+
if _response.status_code == 429:
|
|
1589
|
+
raise TooManyRequestsError(
|
|
1590
|
+
headers=dict(_response.headers),
|
|
1591
|
+
body=typing.cast(
|
|
1592
|
+
typing.Optional[typing.Any],
|
|
1593
|
+
parse_obj_as(
|
|
1594
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1595
|
+
object_=_response.json(),
|
|
1596
|
+
),
|
|
1597
|
+
),
|
|
1598
|
+
)
|
|
1599
|
+
if _response.status_code == 500:
|
|
1600
|
+
raise InternalServerError(
|
|
1601
|
+
headers=dict(_response.headers),
|
|
1602
|
+
body=typing.cast(
|
|
1603
|
+
typing.Optional[typing.Any],
|
|
1604
|
+
parse_obj_as(
|
|
1605
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1606
|
+
object_=_response.json(),
|
|
1607
|
+
),
|
|
1608
|
+
),
|
|
1609
|
+
)
|
|
1610
|
+
if _response.status_code == 501:
|
|
1611
|
+
raise NotImplementedError(
|
|
1612
|
+
headers=dict(_response.headers),
|
|
1613
|
+
body=typing.cast(
|
|
1614
|
+
typing.Optional[typing.Any],
|
|
1615
|
+
parse_obj_as(
|
|
1616
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1617
|
+
object_=_response.json(),
|
|
1618
|
+
),
|
|
1619
|
+
),
|
|
1620
|
+
)
|
|
1621
|
+
if _response.status_code == 502:
|
|
1622
|
+
raise BadGatewayError(
|
|
1623
|
+
headers=dict(_response.headers),
|
|
1624
|
+
body=typing.cast(
|
|
1625
|
+
typing.Optional[typing.Any],
|
|
1626
|
+
parse_obj_as(
|
|
1627
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1628
|
+
object_=_response.json(),
|
|
1629
|
+
),
|
|
1630
|
+
),
|
|
1631
|
+
)
|
|
1632
|
+
if _response.status_code == 503:
|
|
1633
|
+
raise ServiceUnavailableError(
|
|
1634
|
+
headers=dict(_response.headers),
|
|
1635
|
+
body=typing.cast(
|
|
1636
|
+
typing.Optional[typing.Any],
|
|
1637
|
+
parse_obj_as(
|
|
1638
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1639
|
+
object_=_response.json(),
|
|
1640
|
+
),
|
|
1641
|
+
),
|
|
1642
|
+
)
|
|
1643
|
+
if _response.status_code == 504:
|
|
1644
|
+
raise GatewayTimeoutError(
|
|
1645
|
+
headers=dict(_response.headers),
|
|
1646
|
+
body=typing.cast(
|
|
1647
|
+
typing.Optional[typing.Any],
|
|
1648
|
+
parse_obj_as(
|
|
1649
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
1650
|
+
object_=_response.json(),
|
|
1651
|
+
),
|
|
1652
|
+
),
|
|
1653
|
+
)
|
|
1654
|
+
_response_json = _response.json()
|
|
1655
|
+
except JSONDecodeError:
|
|
1656
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
1657
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
1658
|
+
|
|
1659
|
+
async def get_routes_feed(
|
|
1660
|
+
self,
|
|
1661
|
+
*,
|
|
1662
|
+
after: typing.Optional[str] = None,
|
|
1663
|
+
expand: typing.Optional[typing.Literal["route"]] = None,
|
|
1664
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
1665
|
+
) -> AsyncHttpResponse[RoutesGetRoutesFeedResponseBody]:
|
|
1666
|
+
"""
|
|
1667
|
+
Subscribes to a feed of immutable, append-only updates for routes. The initial request to this feed endpoint returns a cursor, which can be used on the next request to fetch updated routes that have had state changes since that request.
|
|
1668
|
+
|
|
1669
|
+
The legacy version of this endpoint can be found at [samsara.com/api-legacy](https://www.samsara.com/api-legacy#operation/fetchAllRouteJobUpdates).
|
|
1670
|
+
|
|
1671
|
+
<b>Rate limit:</b> 5 requests/sec (learn more about rate limits <a href="https://developers.samsara.com/docs/rate-limits" target="_blank">here</a>).
|
|
1672
|
+
|
|
1673
|
+
To use this endpoint, select **Read Routes** under the Driver Workflow category when creating or editing an API token. <a href="https://developers.samsara.com/docs/authentication#scopes-for-api-tokens" target="_blank">Learn More.</a>
|
|
1674
|
+
|
|
1675
|
+
|
|
1676
|
+
**Submit Feedback**: Likes, dislikes, and API feature requests should be filed as feedback in our <a href="https://forms.gle/zkD4NCH7HjKb7mm69" target="_blank">API feedback form</a>. If you encountered an issue or noticed inaccuracies in the API documentation, please <a href="https://www.samsara.com/help" target="_blank">submit a case</a> to our support team.
|
|
1677
|
+
|
|
1678
|
+
Parameters
|
|
1679
|
+
----------
|
|
1680
|
+
after : typing.Optional[str]
|
|
1681
|
+
If specified, this should be the endCursor value from the previous page of results. When present, this request will return the next page of results that occur immediately after the previous page of results.
|
|
1682
|
+
|
|
1683
|
+
expand : typing.Optional[typing.Literal["route"]]
|
|
1684
|
+
Expands the specified value(s) in the response object. Expansion populates additional fields in an object, if supported. Unsupported fields are ignored. To expand multiple fields, input a comma-separated list.
|
|
1685
|
+
|
|
1686
|
+
Valid value: `route` Valid values: `route`
|
|
1687
|
+
|
|
1688
|
+
request_options : typing.Optional[RequestOptions]
|
|
1689
|
+
Request-specific configuration.
|
|
1690
|
+
|
|
1691
|
+
Returns
|
|
1692
|
+
-------
|
|
1693
|
+
AsyncHttpResponse[RoutesGetRoutesFeedResponseBody]
|
|
1694
|
+
OK response.
|
|
1695
|
+
"""
|
|
1696
|
+
_response = await self._client_wrapper.httpx_client.request(
|
|
1697
|
+
"fleet/routes/audit-logs/feed",
|
|
1698
|
+
method="GET",
|
|
1699
|
+
params={
|
|
1700
|
+
"after": after,
|
|
1701
|
+
"expand": expand,
|
|
1702
|
+
},
|
|
1703
|
+
request_options=request_options,
|
|
1704
|
+
)
|
|
1705
|
+
try:
|
|
1706
|
+
if 200 <= _response.status_code < 300:
|
|
1707
|
+
_data = typing.cast(
|
|
1708
|
+
RoutesGetRoutesFeedResponseBody,
|
|
1709
|
+
parse_obj_as(
|
|
1710
|
+
type_=RoutesGetRoutesFeedResponseBody, # type: ignore
|
|
1711
|
+
object_=_response.json(),
|
|
1712
|
+
),
|
|
1713
|
+
)
|
|
1714
|
+
return AsyncHttpResponse(response=_response, data=_data)
|
|
1715
|
+
if _response.status_code == 401:
|
|
1180
1716
|
raise UnauthorizedError(
|
|
1181
1717
|
headers=dict(_response.headers),
|
|
1182
1718
|
body=typing.cast(
|
|
@@ -1280,7 +1816,7 @@ class AsyncRawRoutesClient:
|
|
|
1280
1816
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
1281
1817
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
1282
1818
|
|
|
1283
|
-
async def
|
|
1819
|
+
async def fetch_route(
|
|
1284
1820
|
self, id: str, *, request_options: typing.Optional[RequestOptions] = None
|
|
1285
1821
|
) -> AsyncHttpResponse[RoutesFetchRouteResponseBody]:
|
|
1286
1822
|
"""
|
|
@@ -1425,7 +1961,7 @@ class AsyncRawRoutesClient:
|
|
|
1425
1961
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
1426
1962
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
1427
1963
|
|
|
1428
|
-
async def
|
|
1964
|
+
async def delete_route(
|
|
1429
1965
|
self, id: str, *, request_options: typing.Optional[RequestOptions] = None
|
|
1430
1966
|
) -> AsyncHttpResponse[None]:
|
|
1431
1967
|
"""
|
|
@@ -1562,7 +2098,7 @@ class AsyncRawRoutesClient:
|
|
|
1562
2098
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
1563
2099
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
1564
2100
|
|
|
1565
|
-
async def
|
|
2101
|
+
async def patch_route(
|
|
1566
2102
|
self,
|
|
1567
2103
|
id: str,
|
|
1568
2104
|
*,
|
|
@@ -1573,6 +2109,7 @@ class AsyncRawRoutesClient:
|
|
|
1573
2109
|
recompute_scheduled_times: typing.Optional[bool] = OMIT,
|
|
1574
2110
|
settings: typing.Optional[RouteSettingsRequestBody] = OMIT,
|
|
1575
2111
|
stops: typing.Optional[typing.Sequence[UpdateRoutesStopRequestObjectRequestBody]] = OMIT,
|
|
2112
|
+
tag_ids: typing.Optional[typing.Sequence[str]] = OMIT,
|
|
1576
2113
|
vehicle_id: typing.Optional[str] = OMIT,
|
|
1577
2114
|
request_options: typing.Optional[RequestOptions] = None,
|
|
1578
2115
|
) -> AsyncHttpResponse[RoutesPatchRouteResponseBody]:
|
|
@@ -1615,6 +2152,9 @@ class AsyncRawRoutesClient:
|
|
|
1615
2152
|
stops : typing.Optional[typing.Sequence[UpdateRoutesStopRequestObjectRequestBody]]
|
|
1616
2153
|
List of stops along the route. If a valid `id` of a stop is provided, that stop will be updated. If no `id` is provided for a passed in stop, that stop will be created. If `id` value are passed in for some stops and not for others, those with `id` value specified will be retained and updated in the original route, those without `id` value specified in the body will be created, and those without `id` value specified that already existed on the route will be deleted. For each new stop, exactly one of `addressId` and `singleUseLocation` are required. Depending on the `settings` on your route, either a `scheduledArrivalTime` or `scheduledDepartureTime` must be specified for the first job, if a new first job is being added.
|
|
1617
2154
|
|
|
2155
|
+
tag_ids : typing.Optional[typing.Sequence[str]]
|
|
2156
|
+
An array of IDs of tags to associate with this route.
|
|
2157
|
+
|
|
1618
2158
|
vehicle_id : typing.Optional[str]
|
|
1619
2159
|
ID of the vehicle. Can be either a unique Samsara ID or an [external ID](https://developers.samsara.com/docs/external-ids) for the vehicle.
|
|
1620
2160
|
|
|
@@ -1643,6 +2183,7 @@ class AsyncRawRoutesClient:
|
|
|
1643
2183
|
annotation=typing.Sequence[UpdateRoutesStopRequestObjectRequestBody],
|
|
1644
2184
|
direction="write",
|
|
1645
2185
|
),
|
|
2186
|
+
"tagIds": tag_ids,
|
|
1646
2187
|
"vehicleId": vehicle_id,
|
|
1647
2188
|
},
|
|
1648
2189
|
headers={
|
|
@@ -1764,3 +2305,235 @@ class AsyncRawRoutesClient:
|
|
|
1764
2305
|
except JSONDecodeError:
|
|
1765
2306
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
1766
2307
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
2308
|
+
|
|
2309
|
+
async def list_hub_plan_routes(
|
|
2310
|
+
self,
|
|
2311
|
+
*,
|
|
2312
|
+
plan_id: str,
|
|
2313
|
+
route_ids: typing.Optional[str] = None,
|
|
2314
|
+
start_time: typing.Optional[dt.datetime] = None,
|
|
2315
|
+
end_time: typing.Optional[dt.datetime] = None,
|
|
2316
|
+
after: typing.Optional[str] = None,
|
|
2317
|
+
limit: typing.Optional[int] = None,
|
|
2318
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
2319
|
+
) -> AsyncHttpResponse[HubPlanRoutesListHubPlanRoutesResponseBody]:
|
|
2320
|
+
"""
|
|
2321
|
+
Retrieve routes for a specific plan.
|
|
2322
|
+
|
|
2323
|
+
<b>Rate limit:</b> 10 requests/sec (learn more about rate limits <a href="https://developers.samsara.com/docs/rate-limits" target="_blank">here</a>).
|
|
2324
|
+
|
|
2325
|
+
To use this endpoint, select **Read Routes** under the Driver Workflow category when creating or editing an API token. <a href="https://developers.samsara.com/docs/authentication#scopes-for-api-tokens" target="_blank">Learn More.</a>
|
|
2326
|
+
|
|
2327
|
+
|
|
2328
|
+
**Submit Feedback**: Likes, dislikes, and API feature requests should be filed as feedback in our <a href="https://forms.gle/zkD4NCH7HjKb7mm69" target="_blank">API feedback form</a>. If you encountered an issue or noticed inaccuracies in the API documentation, please <a href="https://www.samsara.com/help" target="_blank">submit a case</a> to our support team.
|
|
2329
|
+
|
|
2330
|
+
Parameters
|
|
2331
|
+
----------
|
|
2332
|
+
plan_id : str
|
|
2333
|
+
The plan identifier
|
|
2334
|
+
|
|
2335
|
+
route_ids : typing.Optional[str]
|
|
2336
|
+
Comma-separated list of route IDs for filtering.
|
|
2337
|
+
|
|
2338
|
+
start_time : typing.Optional[dt.datetime]
|
|
2339
|
+
Time filter of when the route was updated, in RFC 3339 format
|
|
2340
|
+
|
|
2341
|
+
end_time : typing.Optional[dt.datetime]
|
|
2342
|
+
Time filter of when the route was updated, in RFC 3339 format
|
|
2343
|
+
|
|
2344
|
+
after : typing.Optional[str]
|
|
2345
|
+
If specified, should be the endCursor from the previous page of results. When present, this request will return the next page of results that occur immediately after the previous page of results.
|
|
2346
|
+
|
|
2347
|
+
limit : typing.Optional[int]
|
|
2348
|
+
Maximum number of objects to return. Default and maximum is 100
|
|
2349
|
+
|
|
2350
|
+
request_options : typing.Optional[RequestOptions]
|
|
2351
|
+
Request-specific configuration.
|
|
2352
|
+
|
|
2353
|
+
Returns
|
|
2354
|
+
-------
|
|
2355
|
+
AsyncHttpResponse[HubPlanRoutesListHubPlanRoutesResponseBody]
|
|
2356
|
+
OK response.
|
|
2357
|
+
"""
|
|
2358
|
+
_response = await self._client_wrapper.httpx_client.request(
|
|
2359
|
+
"hub/plan/routes",
|
|
2360
|
+
method="GET",
|
|
2361
|
+
params={
|
|
2362
|
+
"planId": plan_id,
|
|
2363
|
+
"routeIds": route_ids,
|
|
2364
|
+
"startTime": serialize_datetime(start_time) if start_time is not None else None,
|
|
2365
|
+
"endTime": serialize_datetime(end_time) if end_time is not None else None,
|
|
2366
|
+
"after": after,
|
|
2367
|
+
"limit": limit,
|
|
2368
|
+
},
|
|
2369
|
+
request_options=request_options,
|
|
2370
|
+
)
|
|
2371
|
+
try:
|
|
2372
|
+
if 200 <= _response.status_code < 300:
|
|
2373
|
+
_data = typing.cast(
|
|
2374
|
+
HubPlanRoutesListHubPlanRoutesResponseBody,
|
|
2375
|
+
parse_obj_as(
|
|
2376
|
+
type_=HubPlanRoutesListHubPlanRoutesResponseBody, # type: ignore
|
|
2377
|
+
object_=_response.json(),
|
|
2378
|
+
),
|
|
2379
|
+
)
|
|
2380
|
+
return AsyncHttpResponse(response=_response, data=_data)
|
|
2381
|
+
if _response.status_code == 401:
|
|
2382
|
+
raise UnauthorizedError(
|
|
2383
|
+
headers=dict(_response.headers),
|
|
2384
|
+
body=typing.cast(
|
|
2385
|
+
typing.Optional[typing.Any],
|
|
2386
|
+
parse_obj_as(
|
|
2387
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
2388
|
+
object_=_response.json(),
|
|
2389
|
+
),
|
|
2390
|
+
),
|
|
2391
|
+
)
|
|
2392
|
+
if _response.status_code == 404:
|
|
2393
|
+
raise NotFoundError(
|
|
2394
|
+
headers=dict(_response.headers),
|
|
2395
|
+
body=typing.cast(
|
|
2396
|
+
typing.Optional[typing.Any],
|
|
2397
|
+
parse_obj_as(
|
|
2398
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
2399
|
+
object_=_response.json(),
|
|
2400
|
+
),
|
|
2401
|
+
),
|
|
2402
|
+
)
|
|
2403
|
+
if _response.status_code == 405:
|
|
2404
|
+
raise MethodNotAllowedError(
|
|
2405
|
+
headers=dict(_response.headers),
|
|
2406
|
+
body=typing.cast(
|
|
2407
|
+
typing.Optional[typing.Any],
|
|
2408
|
+
parse_obj_as(
|
|
2409
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
2410
|
+
object_=_response.json(),
|
|
2411
|
+
),
|
|
2412
|
+
),
|
|
2413
|
+
)
|
|
2414
|
+
if _response.status_code == 429:
|
|
2415
|
+
raise TooManyRequestsError(
|
|
2416
|
+
headers=dict(_response.headers),
|
|
2417
|
+
body=typing.cast(
|
|
2418
|
+
typing.Optional[typing.Any],
|
|
2419
|
+
parse_obj_as(
|
|
2420
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
2421
|
+
object_=_response.json(),
|
|
2422
|
+
),
|
|
2423
|
+
),
|
|
2424
|
+
)
|
|
2425
|
+
if _response.status_code == 500:
|
|
2426
|
+
raise InternalServerError(
|
|
2427
|
+
headers=dict(_response.headers),
|
|
2428
|
+
body=typing.cast(
|
|
2429
|
+
typing.Optional[typing.Any],
|
|
2430
|
+
parse_obj_as(
|
|
2431
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
2432
|
+
object_=_response.json(),
|
|
2433
|
+
),
|
|
2434
|
+
),
|
|
2435
|
+
)
|
|
2436
|
+
if _response.status_code == 501:
|
|
2437
|
+
raise NotImplementedError(
|
|
2438
|
+
headers=dict(_response.headers),
|
|
2439
|
+
body=typing.cast(
|
|
2440
|
+
typing.Optional[typing.Any],
|
|
2441
|
+
parse_obj_as(
|
|
2442
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
2443
|
+
object_=_response.json(),
|
|
2444
|
+
),
|
|
2445
|
+
),
|
|
2446
|
+
)
|
|
2447
|
+
if _response.status_code == 502:
|
|
2448
|
+
raise BadGatewayError(
|
|
2449
|
+
headers=dict(_response.headers),
|
|
2450
|
+
body=typing.cast(
|
|
2451
|
+
typing.Optional[typing.Any],
|
|
2452
|
+
parse_obj_as(
|
|
2453
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
2454
|
+
object_=_response.json(),
|
|
2455
|
+
),
|
|
2456
|
+
),
|
|
2457
|
+
)
|
|
2458
|
+
if _response.status_code == 503:
|
|
2459
|
+
raise ServiceUnavailableError(
|
|
2460
|
+
headers=dict(_response.headers),
|
|
2461
|
+
body=typing.cast(
|
|
2462
|
+
typing.Optional[typing.Any],
|
|
2463
|
+
parse_obj_as(
|
|
2464
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
2465
|
+
object_=_response.json(),
|
|
2466
|
+
),
|
|
2467
|
+
),
|
|
2468
|
+
)
|
|
2469
|
+
if _response.status_code == 504:
|
|
2470
|
+
raise GatewayTimeoutError(
|
|
2471
|
+
headers=dict(_response.headers),
|
|
2472
|
+
body=typing.cast(
|
|
2473
|
+
typing.Optional[typing.Any],
|
|
2474
|
+
parse_obj_as(
|
|
2475
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
2476
|
+
object_=_response.json(),
|
|
2477
|
+
),
|
|
2478
|
+
),
|
|
2479
|
+
)
|
|
2480
|
+
_response_json = _response.json()
|
|
2481
|
+
except JSONDecodeError:
|
|
2482
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
2483
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
2484
|
+
|
|
2485
|
+
async def v_1_delete_dispatch_route_by_id(
|
|
2486
|
+
self,
|
|
2487
|
+
route_id_or_external_id: str,
|
|
2488
|
+
*,
|
|
2489
|
+
apply_to_future_routes: typing.Optional[bool] = OMIT,
|
|
2490
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
2491
|
+
) -> AsyncHttpResponse[None]:
|
|
2492
|
+
"""
|
|
2493
|
+
<n class="warning">
|
|
2494
|
+
<nh>
|
|
2495
|
+
<i class="fa fa-exclamation-circle"></i>
|
|
2496
|
+
This endpoint is still on our legacy API.
|
|
2497
|
+
</nh>
|
|
2498
|
+
</n>
|
|
2499
|
+
|
|
2500
|
+
Delete a dispatch route and its associated jobs.
|
|
2501
|
+
|
|
2502
|
+
**Submit Feedback**: Likes, dislikes, and API feature requests should be filed as feedback in our <a href="https://forms.gle/zkD4NCH7HjKb7mm69" target="_blank">API feedback form</a>. If you encountered an issue or noticed inaccuracies in the API documentation, please <a href="https://www.samsara.com/help" target="_blank">submit a case</a> to our support team.
|
|
2503
|
+
|
|
2504
|
+
To use this endpoint, select **Write Routes** under the Driver Workflow category when creating or editing an API token. <a href="https://developers.samsara.com/docs/authentication#scopes-for-api-tokens" target="_blank">Learn More.</a>
|
|
2505
|
+
|
|
2506
|
+
Parameters
|
|
2507
|
+
----------
|
|
2508
|
+
route_id_or_external_id : str
|
|
2509
|
+
ID of the route. This can either be the Samsara-specified ID, or an external ID. External IDs are customer specified key-value pairs created in the POST or PATCH requests of this resource. To specify an external ID as part of a path parameter, use the following format: `key:value`. For example, `payrollId:ABFS18600`
|
|
2510
|
+
|
|
2511
|
+
apply_to_future_routes : typing.Optional[bool]
|
|
2512
|
+
This is only for a recurring route. If set to true, delete all following runs of the route. If set to false, only delete the current route.
|
|
2513
|
+
|
|
2514
|
+
request_options : typing.Optional[RequestOptions]
|
|
2515
|
+
Request-specific configuration.
|
|
2516
|
+
|
|
2517
|
+
Returns
|
|
2518
|
+
-------
|
|
2519
|
+
AsyncHttpResponse[None]
|
|
2520
|
+
"""
|
|
2521
|
+
_response = await self._client_wrapper.httpx_client.request(
|
|
2522
|
+
f"v1/fleet/dispatch/routes/{jsonable_encoder(route_id_or_external_id)}",
|
|
2523
|
+
method="DELETE",
|
|
2524
|
+
json={
|
|
2525
|
+
"apply_to_future_routes": apply_to_future_routes,
|
|
2526
|
+
},
|
|
2527
|
+
headers={
|
|
2528
|
+
"content-type": "application/json",
|
|
2529
|
+
},
|
|
2530
|
+
request_options=request_options,
|
|
2531
|
+
omit=OMIT,
|
|
2532
|
+
)
|
|
2533
|
+
try:
|
|
2534
|
+
if 200 <= _response.status_code < 300:
|
|
2535
|
+
return AsyncHttpResponse(response=_response, data=None)
|
|
2536
|
+
_response_json = _response.json()
|
|
2537
|
+
except JSONDecodeError:
|
|
2538
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
2539
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|