samsara-api 0.0.1__py3-none-any.whl → 0.0.2__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 +298 -38
- samsara/alerts/configurations/client.py +25 -11
- samsara/alerts/configurations/raw_client.py +47 -8
- samsara/alerts/incidents/client.py +21 -11
- samsara/alerts/incidents/raw_client.py +43 -9
- samsara/assets/client.py +21 -11
- samsara/assets/location_and_speed/client.py +21 -13
- samsara/assets/location_and_speed/raw_client.py +53 -9
- samsara/assets/raw_client.py +53 -8
- samsara/attributes/client.py +21 -13
- samsara/attributes/raw_client.py +41 -8
- samsara/cameras/media/client.py +2 -2
- samsara/cameras/media/raw_client.py +2 -2
- samsara/cameras/media/retrieval/client.py +2 -12
- samsara/cameras/media/types/media_list_request_trigger_reasons_item.py +8 -1
- samsara/carrier_proposed_assignments/client.py +21 -11
- samsara/carrier_proposed_assignments/raw_client.py +43 -8
- samsara/client.py +15 -6
- samsara/coaching/driver_coach_assignments/client.py +22 -12
- samsara/coaching/driver_coach_assignments/raw_client.py +45 -8
- samsara/coaching/sessions/client.py +21 -13
- samsara/coaching/sessions/raw_client.py +51 -9
- samsara/contacts/client.py +21 -11
- samsara/contacts/raw_client.py +39 -8
- samsara/core/client_wrapper.py +2 -2
- samsara/defect_types/client.py +21 -11
- samsara/defect_types/raw_client.py +41 -9
- samsara/defects/client.py +124 -9
- samsara/defects/raw_client.py +356 -6
- samsara/devices/client.py +21 -11
- samsara/devices/raw_client.py +45 -9
- samsara/document_types/client.py +21 -11
- samsara/document_types/raw_client.py +37 -9
- samsara/documents/client.py +21 -11
- samsara/documents/raw_client.py +45 -8
- samsara/driver_trailer_assignments/client.py +23 -13
- samsara/driver_trailer_assignments/raw_client.py +43 -8
- samsara/drivers/__init__.py +1 -3
- samsara/drivers/client.py +21 -21
- samsara/drivers/raw_client.py +51 -8
- samsara/dvirs/client.py +124 -9
- samsara/dvirs/raw_client.py +356 -6
- samsara/equipment/__init__.py +2 -2
- samsara/equipment/client.py +23 -21
- samsara/equipment/locations/client.py +62 -34
- samsara/equipment/locations/raw_client.py +132 -27
- samsara/equipment/raw_client.py +45 -18
- samsara/equipment/stats/__init__.py +2 -2
- samsara/equipment/stats/client.py +81 -53
- samsara/equipment/stats/raw_client.py +157 -46
- samsara/equipment/stats/types/__init__.py +2 -2
- samsara/equipment/stats/types/{stats_get_request_types_item.py → stats_list_request_types_item.py} +1 -1
- samsara/form_submissions/client.py +46 -54
- samsara/form_submissions/pdf_exports/client.py +14 -22
- samsara/form_submissions/pdf_exports/raw_client.py +10 -18
- samsara/form_submissions/raw_client.py +74 -47
- samsara/forms/client.py +138 -0
- samsara/{beta → forms}/raw_client.py +37 -62
- samsara/function.py +99 -0
- samsara/gateways/client.py +21 -11
- samsara/gateways/raw_client.py +39 -8
- samsara/hos/__init__.py +3 -0
- samsara/hos/client.py +218 -11
- samsara/hos/raw_client.py +485 -8
- samsara/hos/types/__init__.py +7 -0
- samsara/hos/types/hos_daily_logs_request_driver_activation_status.py +5 -0
- samsara/idling/__init__.py +7 -0
- samsara/idling/client.py +287 -0
- samsara/idling/raw_client.py +521 -0
- samsara/idling/types/__init__.py +7 -0
- samsara/idling/types/idling_list_request_pto_state.py +5 -0
- samsara/inputs/client.py +21 -11
- samsara/inputs/raw_client.py +51 -9
- samsara/issues/client.py +27 -29
- samsara/issues/raw_client.py +53 -26
- samsara/live_shares/client.py +21 -13
- samsara/live_shares/raw_client.py +43 -8
- samsara/maintenance/service_tasks/client.py +21 -11
- samsara/maintenance/service_tasks/raw_client.py +41 -8
- samsara/maintenance/work_orders/client.py +40 -22
- samsara/maintenance/work_orders/raw_client.py +84 -16
- samsara/readings/client.py +524 -0
- samsara/readings/raw_client.py +1214 -0
- samsara/reports/drivers/fuel_energy/client.py +6 -6
- samsara/reports/drivers/fuel_energy/raw_client.py +2 -2
- samsara/reports/ifta/__init__.py +4 -4
- samsara/reports/ifta/vehicle/__init__.py +2 -2
- samsara/reports/ifta/vehicle/client.py +21 -21
- samsara/reports/ifta/vehicle/raw_client.py +17 -17
- samsara/reports/ifta/vehicle/types/__init__.py +4 -4
- samsara/reports/ifta/vehicle/types/{vehicle_get_request_fuel_type.py → vehicle_list_request_fuel_type.py} +1 -1
- samsara/reports/ifta/vehicle/types/{vehicle_get_request_month.py → vehicle_list_request_month.py} +1 -1
- samsara/reports/ifta/vehicle/types/vehicle_list_request_quarter.py +5 -0
- samsara/reports/vehicles/__init__.py +2 -2
- samsara/reports/vehicles/fuel_energy/__init__.py +2 -2
- samsara/reports/vehicles/fuel_energy/client.py +11 -11
- samsara/reports/vehicles/fuel_energy/raw_client.py +7 -7
- samsara/reports/vehicles/fuel_energy/types/__init__.py +2 -2
- samsara/reports/vehicles/fuel_energy/types/fuel_energy_list_request_energy_type.py +5 -0
- samsara/reports/vehicles/idling/client.py +27 -15
- samsara/reports/vehicles/idling/raw_client.py +59 -11
- samsara/routes/client.py +21 -11
- samsara/routes/raw_client.py +43 -8
- samsara/safety_events/audit_logs/client.py +21 -13
- samsara/safety_events/audit_logs/raw_client.py +39 -9
- samsara/safety_events/client.py +21 -11
- samsara/safety_events/raw_client.py +47 -9
- samsara/speeding_intervals/client.py +25 -17
- samsara/speeding_intervals/raw_client.py +55 -13
- samsara/tachograph/__init__.py +7 -0
- samsara/tachograph/client.py +44 -0
- samsara/{drivers/tachograph_files → tachograph/driver}/client.py +162 -15
- samsara/{drivers/tachograph_files → tachograph/driver}/raw_client.py +153 -4
- samsara/tachograph/raw_client.py +13 -0
- samsara/{vehicles/tachograph_files → tachograph/vehicles}/client.py +15 -15
- samsara/{vehicles/tachograph_files → tachograph/vehicles}/raw_client.py +4 -4
- samsara/tags/client.py +21 -11
- samsara/tags/raw_client.py +39 -8
- samsara/trailers/client.py +21 -11
- samsara/trailers/raw_client.py +43 -8
- samsara/training_courses/client.py +21 -11
- samsara/training_courses/raw_client.py +43 -9
- samsara/trips/client.py +21 -11
- samsara/trips/raw_client.py +49 -9
- samsara/types/__init__.py +406 -50
- samsara/types/advanced_idling_get_idling_events_bad_gateway_error_response_body.py +33 -0
- samsara/types/advanced_idling_get_idling_events_gateway_timeout_error_response_body.py +33 -0
- samsara/types/{hos_daily_logs_update_shipping_docs_internal_server_error_response_body.py → advanced_idling_get_idling_events_internal_server_error_response_body.py} +1 -1
- samsara/types/advanced_idling_get_idling_events_method_not_allowed_error_response_body.py +33 -0
- samsara/types/{hos_daily_logs_update_shipping_docs_not_found_error_response_body.py → advanced_idling_get_idling_events_not_found_error_response_body.py} +1 -1
- samsara/types/{hos_daily_logs_update_shipping_docs_not_implemented_error_response_body.py → advanced_idling_get_idling_events_not_implemented_error_response_body.py} +1 -1
- samsara/types/advanced_idling_get_idling_events_response_body.py +26 -0
- samsara/types/{hos_daily_logs_update_shipping_docs_service_unavailable_error_response_body.py → advanced_idling_get_idling_events_service_unavailable_error_response_body.py} +1 -1
- samsara/types/{hos_daily_logs_update_shipping_docs_gateway_timeout_error_response_body.py → advanced_idling_get_idling_events_too_many_requests_error_response_body.py} +2 -2
- samsara/types/advanced_idling_get_idling_events_unauthorized_error_response_body.py +33 -0
- samsara/types/alert_object_asset_response_body.py +63 -0
- samsara/types/{assets_create_asset_response_body_type.py → alert_object_asset_response_body_type.py} +1 -1
- samsara/types/assets_create_asset_response_body.py +2 -87
- samsara/types/assets_update_asset_response_body.py +2 -87
- samsara/types/continuous_reading_alert_threshold_response_body.py +49 -0
- samsara/types/continuous_reading_alert_threshold_response_body_operation.py +7 -0
- samsara/types/continuous_reading_alert_threshold_response_body_unit.py +62 -0
- samsara/types/device_response_response_body.py +1 -1
- samsara/types/device_response_response_body_model.py +1 -0
- samsara/types/dvir_defect_get_defect_bad_gateway_error_response_body.py +33 -0
- samsara/types/dvir_defect_get_defect_gateway_timeout_error_response_body.py +33 -0
- samsara/types/dvir_defect_get_defect_internal_server_error_response_body.py +33 -0
- samsara/types/dvir_defect_get_defect_method_not_allowed_error_response_body.py +33 -0
- samsara/types/dvir_defect_get_defect_not_found_error_response_body.py +33 -0
- samsara/types/dvir_defect_get_defect_not_implemented_error_response_body.py +33 -0
- samsara/types/dvir_defect_get_defect_response_body.py +91 -0
- samsara/types/dvir_defect_get_defect_service_unavailable_error_response_body.py +33 -0
- samsara/types/dvir_defect_get_defect_too_many_requests_error_response_body.py +33 -0
- samsara/types/dvir_defect_get_defect_unauthorized_error_response_body.py +33 -0
- samsara/types/dvir_get_dvir_bad_gateway_error_response_body.py +33 -0
- samsara/types/dvir_get_dvir_gateway_timeout_error_response_body.py +33 -0
- samsara/types/dvir_get_dvir_internal_server_error_response_body.py +33 -0
- samsara/types/dvir_get_dvir_method_not_allowed_error_response_body.py +33 -0
- samsara/types/dvir_get_dvir_not_found_error_response_body.py +33 -0
- samsara/types/dvir_get_dvir_not_implemented_error_response_body.py +33 -0
- samsara/types/dvir_get_dvir_response_body.py +99 -0
- samsara/types/dvir_get_dvir_response_body_safety_status.py +5 -0
- samsara/types/dvir_get_dvir_response_body_type.py +5 -0
- samsara/types/dvir_get_dvir_service_unavailable_error_response_body.py +33 -0
- samsara/types/dvir_get_dvir_too_many_requests_error_response_body.py +33 -0
- samsara/types/dvir_get_dvir_unauthorized_error_response_body.py +33 -0
- samsara/types/enum_reading_alert_threshold_response_body.py +31 -0
- samsara/types/enum_value_response_body.py +31 -0
- samsara/types/equipment_gateway_engine_seconds.py +1 -1
- samsara/types/equipment_gateway_j_1939_engine_seconds.py +1 -1
- samsara/types/equipment_obd_engine_seconds.py +1 -1
- samsara/types/event_location_response_body.py +31 -0
- samsara/types/form_submission_request_field_input_object_request_body.py +7 -1
- samsara/types/form_submission_request_field_input_object_request_body_type.py +3 -1
- samsara/types/{hos_daily_logs_update_shipping_docs_response_body.py → form_submission_request_geofence_object_request_body.py} +9 -3
- samsara/types/form_submission_request_geofence_value_object_request_body.py +24 -0
- samsara/types/form_submission_response_object_response_body.py +8 -0
- samsara/types/{form_template_reference_object_request_body.py → form_template_request_object_request_body.py} +6 -4
- samsara/types/form_template_response_object_response_body.py +74 -0
- samsara/types/form_template_section_object_response_body.py +47 -0
- samsara/types/form_templates_get_form_templates_bad_gateway_error_response_body.py +33 -0
- samsara/types/form_templates_get_form_templates_gateway_timeout_error_response_body.py +33 -0
- samsara/types/form_templates_get_form_templates_internal_server_error_response_body.py +33 -0
- samsara/types/form_templates_get_form_templates_method_not_allowed_error_response_body.py +33 -0
- samsara/types/form_templates_get_form_templates_not_found_error_response_body.py +33 -0
- samsara/types/form_templates_get_form_templates_not_implemented_error_response_body.py +33 -0
- samsara/types/form_templates_get_form_templates_response_body.py +26 -0
- samsara/types/form_templates_get_form_templates_service_unavailable_error_response_body.py +33 -0
- samsara/types/form_templates_get_form_templates_too_many_requests_error_response_body.py +33 -0
- samsara/types/form_templates_get_form_templates_unauthorized_error_response_body.py +33 -0
- samsara/types/forms_action_object_response_body.py +43 -0
- samsara/types/forms_action_object_response_body_type.py +7 -0
- samsara/types/forms_approval_config_object_response_body.py +32 -0
- samsara/types/forms_asset_object_response_body.py +8 -1
- samsara/types/forms_check_boxes_value_object_response_body.py +7 -0
- samsara/types/forms_condition_object_response_body.py +36 -0
- samsara/types/forms_condition_object_response_body_type.py +7 -0
- samsara/types/forms_conditional_action_object_response_body.py +30 -0
- samsara/types/forms_field_definition_object_response_body.py +143 -0
- samsara/types/forms_field_definition_object_response_body_allowed_asset_types_item.py +7 -0
- samsara/types/forms_field_definition_object_response_body_allowed_date_time_value_type.py +7 -0
- samsara/types/forms_field_definition_object_response_body_type.py +22 -0
- samsara/types/forms_field_input_object_response_body.py +7 -4
- samsara/types/forms_field_input_object_response_body_type.py +20 -0
- samsara/types/forms_geofence_object_response_body.py +53 -0
- samsara/types/forms_geofence_object_response_body_entry_type.py +5 -0
- samsara/types/forms_geofence_value_object_response_body.py +24 -0
- samsara/types/forms_multiple_choice_value_object_response_body.py +8 -1
- samsara/types/forms_product_submission_approval_details_object_response_body.py +26 -0
- samsara/types/forms_select_option_object_response_body.py +47 -0
- samsara/types/forms_single_approval_config_object_response_body.py +33 -0
- samsara/types/forms_table_cell_object_response_body.py +3 -4
- samsara/types/forms_table_cell_object_response_body_type.py +8 -0
- samsara/types/forms_table_column_object_response_body.py +3 -4
- samsara/types/forms_table_column_object_response_body_type.py +8 -0
- samsara/types/forms_table_field_definition_object_response_body.py +91 -0
- samsara/types/forms_table_field_definition_object_response_body_allowed_date_time_value_type.py +7 -0
- samsara/types/forms_table_field_definition_object_response_body_type.py +8 -0
- samsara/types/fuel_cost_object_response_body.py +32 -0
- samsara/types/fuel_cost_object_response_body_currency.py +5 -0
- samsara/types/fuel_volume_response_body.py +28 -0
- samsara/types/fuel_volume_response_body_unit.py +5 -0
- samsara/types/gaseous_fuel_cost_object_response_body.py +32 -0
- samsara/types/gaseous_fuel_cost_object_response_body_currency.py +7 -0
- samsara/types/gateway_details_response_response_body.py +14 -0
- samsara/types/harsh_event_trigger_details_object_request_body_types_item.py +1 -0
- samsara/types/harsh_event_trigger_details_object_response_body_types_item.py +1 -0
- samsara/types/idling_event_object_response_body.py +101 -0
- samsara/types/idling_event_object_response_body_address_type.py +17 -0
- samsara/types/inline_response_2005.py +24 -0
- samsara/types/inline_response_2006.py +24 -0
- samsara/types/reading_definition_response_body.py +59 -0
- samsara/types/reading_history_response_body.py +47 -0
- samsara/types/reading_snapshot_response_body.py +52 -0
- samsara/types/reading_trigger_continuous_value_object_request_body.py +51 -0
- samsara/types/reading_trigger_continuous_value_object_request_body_operation.py +7 -0
- samsara/types/reading_trigger_continuous_value_object_request_body_unit.py +62 -0
- samsara/types/reading_trigger_continuous_value_object_response_body.py +51 -0
- samsara/types/reading_trigger_continuous_value_object_response_body_operation.py +7 -0
- samsara/types/reading_trigger_continuous_value_object_response_body_unit.py +62 -0
- samsara/types/reading_trigger_details_object_request_body.py +48 -0
- samsara/types/reading_trigger_details_object_response_body.py +48 -0
- samsara/types/reading_trigger_details_response_body.py +38 -0
- samsara/types/reading_trigger_enum_value_object_request_body.py +31 -0
- samsara/types/reading_trigger_enum_value_object_response_body.py +31 -0
- samsara/types/reading_type_response_body.py +34 -0
- samsara/types/reading_type_response_body_data_type.py +5 -0
- samsara/types/readings_get_readings_history_bad_gateway_error_response_body.py +33 -0
- samsara/types/{hos_daily_logs_update_shipping_docs_bad_gateway_error_response_body.py → readings_get_readings_history_gateway_timeout_error_response_body.py} +2 -2
- samsara/types/readings_get_readings_history_internal_server_error_response_body.py +33 -0
- samsara/types/readings_get_readings_history_method_not_allowed_error_response_body.py +33 -0
- samsara/types/readings_get_readings_history_not_found_error_response_body.py +33 -0
- samsara/types/readings_get_readings_history_not_implemented_error_response_body.py +33 -0
- samsara/types/readings_get_readings_history_response_body.py +26 -0
- samsara/types/readings_get_readings_history_service_unavailable_error_response_body.py +33 -0
- samsara/types/readings_get_readings_history_too_many_requests_error_response_body.py +33 -0
- samsara/types/readings_get_readings_history_unauthorized_error_response_body.py +33 -0
- samsara/types/readings_get_readings_snapshot_bad_gateway_error_response_body.py +33 -0
- samsara/types/readings_get_readings_snapshot_gateway_timeout_error_response_body.py +33 -0
- samsara/types/readings_get_readings_snapshot_internal_server_error_response_body.py +33 -0
- samsara/types/readings_get_readings_snapshot_method_not_allowed_error_response_body.py +33 -0
- samsara/types/readings_get_readings_snapshot_not_found_error_response_body.py +33 -0
- samsara/types/readings_get_readings_snapshot_not_implemented_error_response_body.py +33 -0
- samsara/types/readings_get_readings_snapshot_response_body.py +26 -0
- samsara/types/readings_get_readings_snapshot_service_unavailable_error_response_body.py +33 -0
- samsara/types/{hos_daily_logs_update_shipping_docs_unauthorized_error_response_body.py → readings_get_readings_snapshot_too_many_requests_error_response_body.py} +2 -2
- samsara/types/readings_get_readings_snapshot_unauthorized_error_response_body.py +33 -0
- samsara/types/readings_list_readings_definitions_bad_gateway_error_response_body.py +33 -0
- samsara/types/{hos_daily_logs_update_shipping_docs_too_many_requests_error_response_body.py → readings_list_readings_definitions_gateway_timeout_error_response_body.py} +2 -2
- samsara/types/readings_list_readings_definitions_internal_server_error_response_body.py +33 -0
- samsara/types/readings_list_readings_definitions_method_not_allowed_error_response_body.py +33 -0
- samsara/types/readings_list_readings_definitions_not_found_error_response_body.py +33 -0
- samsara/types/readings_list_readings_definitions_not_implemented_error_response_body.py +33 -0
- samsara/types/readings_list_readings_definitions_response_body.py +26 -0
- samsara/types/readings_list_readings_definitions_service_unavailable_error_response_body.py +33 -0
- samsara/types/{hos_daily_logs_update_shipping_docs_method_not_allowed_error_response_body.py → readings_list_readings_definitions_too_many_requests_error_response_body.py} +2 -2
- samsara/types/readings_list_readings_definitions_unauthorized_error_response_body.py +33 -0
- samsara/types/safety_score_configuration_settings_object_response_body.py +7 -0
- samsara/types/single_approval_requirements_object_response_body.py +28 -0
- samsara/types/sudden_fuel_level_drop_response_body.py +33 -0
- samsara/types/sudden_fuel_level_rise_response_body.py +33 -0
- samsara/types/trigger_params_object_request_body.py +2 -0
- samsara/types/trigger_params_object_response_body.py +2 -0
- samsara/types/unit_response_body.py +39 -0
- samsara/types/unit_response_body_base_unit.py +62 -0
- samsara/types/unit_response_body_measurement_type.py +28 -0
- samsara/types/uploaded_media_object_response_body.py +1 -1
- samsara/types/uploaded_media_object_response_body_trigger_reason.py +8 -1
- samsara/types/v_1_message.py +29 -0
- samsara/types/v_1_message_response.py +41 -0
- samsara/types/v_1_message_sender.py +27 -0
- samsara/types/v_1_messages.py +7 -0
- samsara/types/v_1_messages_response.py +7 -0
- samsara/types/webhook_response_response_body_event_types_item.py +1 -0
- samsara/types/webhooks_get_webhook_response_body_event_types_item.py +1 -0
- samsara/types/webhooks_patch_webhook_response_body_event_types_item.py +1 -0
- samsara/types/webhooks_post_webhooks_response_body_event_types_item.py +1 -0
- samsara/types/workflow_geofence_event_response_object_response_body.py +6 -0
- samsara/types/workflow_incident_details_object_response_body.py +2 -0
- samsara/types/workflow_trigger_object_request_body.py +1 -0
- samsara/types/workflow_trigger_object_response_body.py +1 -0
- samsara/user_roles/client.py +21 -11
- samsara/user_roles/raw_client.py +39 -9
- samsara/users/client.py +21 -11
- samsara/users/raw_client.py +39 -8
- samsara/v_1_messages/__init__.py +4 -0
- samsara/v_1_messages/client.py +258 -0
- samsara/v_1_messages/raw_client.py +273 -0
- samsara/vehicles/__init__.py +1 -2
- samsara/vehicles/client.py +31 -16
- samsara/vehicles/immobilizer/client.py +21 -13
- samsara/vehicles/immobilizer/raw_client.py +43 -9
- samsara/vehicles/locations/client.py +60 -32
- samsara/vehicles/locations/raw_client.py +132 -25
- samsara/vehicles/raw_client.py +61 -8
- samsara/vehicles/stats/client.py +66 -38
- samsara/vehicles/stats/raw_client.py +148 -31
- samsara/webhooks/client.py +21 -11
- samsara/webhooks/raw_client.py +41 -8
- samsara/webhooks/types/webhooks_post_webhooks_request_body_event_types_item.py +1 -0
- samsara_api-0.0.2.dist-info/METADATA +29 -0
- {samsara_api-0.0.1.dist-info → samsara_api-0.0.2.dist-info}/RECORD +328 -193
- samsara/beta/client.py +0 -161
- samsara/drivers/tachograph_activity/client.py +0 -186
- samsara/drivers/tachograph_activity/raw_client.py +0 -169
- samsara/hours_of_service/__init__.py +0 -7
- samsara/hours_of_service/client.py +0 -229
- samsara/hours_of_service/raw_client.py +0 -425
- samsara/hours_of_service/types/__init__.py +0 -9
- samsara/hours_of_service/types/hours_of_service_get_daily_logs_request_driver_activation_status.py +0 -7
- samsara/reports/ifta/vehicle/types/vehicle_get_request_quarter.py +0 -5
- samsara/reports/vehicles/fuel_energy/types/fuel_energy_get_request_energy_type.py +0 -5
- samsara/types/assets_create_asset_response_body_regulation_mode.py +0 -7
- samsara/types/assets_update_asset_response_body_regulation_mode.py +0 -7
- samsara/types/assets_update_asset_response_body_type.py +0 -7
- samsara/types/patch_shipping_docs_response_body_response_body.py +0 -93
- samsara_api-0.0.1.dist-info/METADATA +0 -214
- /samsara/{beta → forms}/__init__.py +0 -0
- /samsara/{drivers/tachograph_activity → readings}/__init__.py +0 -0
- /samsara/{drivers/tachograph_files → tachograph/driver}/__init__.py +0 -0
- /samsara/{vehicles/tachograph_files → tachograph/vehicles}/__init__.py +0 -0
- {samsara_api-0.0.1.dist-info → samsara_api-0.0.2.dist-info}/LICENSE +0 -0
- {samsara_api-0.0.1.dist-info → samsara_api-0.0.2.dist-info}/WHEEL +0 -0
samsara/dvirs/client.py
CHANGED
|
@@ -3,9 +3,11 @@
|
|
|
3
3
|
import typing
|
|
4
4
|
|
|
5
5
|
from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
|
|
6
|
+
from ..core.pagination import AsyncPager, SyncPager
|
|
6
7
|
from ..core.request_options import RequestOptions
|
|
7
|
-
from ..types.
|
|
8
|
+
from ..types.dvir_get_dvir_response_body import DvirGetDvirResponseBody
|
|
8
9
|
from ..types.dvir_response import DvirResponse
|
|
10
|
+
from ..types.dvir_stream_response_data_response_body import DvirStreamResponseDataResponseBody
|
|
9
11
|
from ..types.dvirs_list_response import DvirsListResponse
|
|
10
12
|
from .raw_client import AsyncRawDvirsClient, RawDvirsClient
|
|
11
13
|
from .types.create_dvir_request_safety_status import CreateDvirRequestSafetyStatus
|
|
@@ -39,7 +41,7 @@ class DvirsClient:
|
|
|
39
41
|
end_time: typing.Optional[str] = None,
|
|
40
42
|
safety_status: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None,
|
|
41
43
|
request_options: typing.Optional[RequestOptions] = None,
|
|
42
|
-
) ->
|
|
44
|
+
) -> SyncPager[DvirStreamResponseDataResponseBody]:
|
|
43
45
|
"""
|
|
44
46
|
Returns a history/feed of changed DVIRs by updatedAtTime between startTime and endTime parameters. In case of missing `endTime` parameter it will return a never ending stream of data.
|
|
45
47
|
|
|
@@ -75,7 +77,7 @@ class DvirsClient:
|
|
|
75
77
|
|
|
76
78
|
Returns
|
|
77
79
|
-------
|
|
78
|
-
|
|
80
|
+
SyncPager[DvirStreamResponseDataResponseBody]
|
|
79
81
|
OK response.
|
|
80
82
|
|
|
81
83
|
Examples
|
|
@@ -85,11 +87,16 @@ class DvirsClient:
|
|
|
85
87
|
client = Samsara(
|
|
86
88
|
token="YOUR_TOKEN",
|
|
87
89
|
)
|
|
88
|
-
client.dvirs.stream(
|
|
90
|
+
response = client.dvirs.stream(
|
|
89
91
|
start_time="startTime",
|
|
90
92
|
)
|
|
93
|
+
for item in response:
|
|
94
|
+
yield item
|
|
95
|
+
# alternatively, you can paginate page-by-page
|
|
96
|
+
for page in response.iter_pages():
|
|
97
|
+
yield page
|
|
91
98
|
"""
|
|
92
|
-
|
|
99
|
+
return self._raw_client.stream(
|
|
93
100
|
start_time=start_time,
|
|
94
101
|
after=after,
|
|
95
102
|
limit=limit,
|
|
@@ -98,6 +105,52 @@ class DvirsClient:
|
|
|
98
105
|
safety_status=safety_status,
|
|
99
106
|
request_options=request_options,
|
|
100
107
|
)
|
|
108
|
+
|
|
109
|
+
def get(
|
|
110
|
+
self,
|
|
111
|
+
id: str,
|
|
112
|
+
*,
|
|
113
|
+
include_external_ids: typing.Optional[bool] = None,
|
|
114
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
115
|
+
) -> DvirGetDvirResponseBody:
|
|
116
|
+
"""
|
|
117
|
+
Get a single DVIR by ID.
|
|
118
|
+
|
|
119
|
+
<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>).
|
|
120
|
+
|
|
121
|
+
To use this endpoint, select **Read DVIRs** under the Maintenance 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>
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
**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.
|
|
125
|
+
|
|
126
|
+
Parameters
|
|
127
|
+
----------
|
|
128
|
+
id : str
|
|
129
|
+
Id of the DVIR.
|
|
130
|
+
|
|
131
|
+
include_external_ids : typing.Optional[bool]
|
|
132
|
+
Optional boolean indicating whether to return external IDs on supported entities
|
|
133
|
+
|
|
134
|
+
request_options : typing.Optional[RequestOptions]
|
|
135
|
+
Request-specific configuration.
|
|
136
|
+
|
|
137
|
+
Returns
|
|
138
|
+
-------
|
|
139
|
+
DvirGetDvirResponseBody
|
|
140
|
+
OK response.
|
|
141
|
+
|
|
142
|
+
Examples
|
|
143
|
+
--------
|
|
144
|
+
from samsara import Samsara
|
|
145
|
+
|
|
146
|
+
client = Samsara(
|
|
147
|
+
token="YOUR_TOKEN",
|
|
148
|
+
)
|
|
149
|
+
client.dvirs.get(
|
|
150
|
+
id="id",
|
|
151
|
+
)
|
|
152
|
+
"""
|
|
153
|
+
_response = self._raw_client.get(id, include_external_ids=include_external_ids, request_options=request_options)
|
|
101
154
|
return _response.data
|
|
102
155
|
|
|
103
156
|
def create(
|
|
@@ -346,7 +399,7 @@ class AsyncDvirsClient:
|
|
|
346
399
|
end_time: typing.Optional[str] = None,
|
|
347
400
|
safety_status: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None,
|
|
348
401
|
request_options: typing.Optional[RequestOptions] = None,
|
|
349
|
-
) ->
|
|
402
|
+
) -> AsyncPager[DvirStreamResponseDataResponseBody]:
|
|
350
403
|
"""
|
|
351
404
|
Returns a history/feed of changed DVIRs by updatedAtTime between startTime and endTime parameters. In case of missing `endTime` parameter it will return a never ending stream of data.
|
|
352
405
|
|
|
@@ -382,7 +435,7 @@ class AsyncDvirsClient:
|
|
|
382
435
|
|
|
383
436
|
Returns
|
|
384
437
|
-------
|
|
385
|
-
|
|
438
|
+
AsyncPager[DvirStreamResponseDataResponseBody]
|
|
386
439
|
OK response.
|
|
387
440
|
|
|
388
441
|
Examples
|
|
@@ -397,14 +450,20 @@ class AsyncDvirsClient:
|
|
|
397
450
|
|
|
398
451
|
|
|
399
452
|
async def main() -> None:
|
|
400
|
-
await client.dvirs.stream(
|
|
453
|
+
response = await client.dvirs.stream(
|
|
401
454
|
start_time="startTime",
|
|
402
455
|
)
|
|
456
|
+
async for item in response:
|
|
457
|
+
yield item
|
|
458
|
+
|
|
459
|
+
# alternatively, you can paginate page-by-page
|
|
460
|
+
async for page in response.iter_pages():
|
|
461
|
+
yield page
|
|
403
462
|
|
|
404
463
|
|
|
405
464
|
asyncio.run(main())
|
|
406
465
|
"""
|
|
407
|
-
|
|
466
|
+
return await self._raw_client.stream(
|
|
408
467
|
start_time=start_time,
|
|
409
468
|
after=after,
|
|
410
469
|
limit=limit,
|
|
@@ -413,6 +472,62 @@ class AsyncDvirsClient:
|
|
|
413
472
|
safety_status=safety_status,
|
|
414
473
|
request_options=request_options,
|
|
415
474
|
)
|
|
475
|
+
|
|
476
|
+
async def get(
|
|
477
|
+
self,
|
|
478
|
+
id: str,
|
|
479
|
+
*,
|
|
480
|
+
include_external_ids: typing.Optional[bool] = None,
|
|
481
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
482
|
+
) -> DvirGetDvirResponseBody:
|
|
483
|
+
"""
|
|
484
|
+
Get a single DVIR by ID.
|
|
485
|
+
|
|
486
|
+
<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>).
|
|
487
|
+
|
|
488
|
+
To use this endpoint, select **Read DVIRs** under the Maintenance 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>
|
|
489
|
+
|
|
490
|
+
|
|
491
|
+
**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.
|
|
492
|
+
|
|
493
|
+
Parameters
|
|
494
|
+
----------
|
|
495
|
+
id : str
|
|
496
|
+
Id of the DVIR.
|
|
497
|
+
|
|
498
|
+
include_external_ids : typing.Optional[bool]
|
|
499
|
+
Optional boolean indicating whether to return external IDs on supported entities
|
|
500
|
+
|
|
501
|
+
request_options : typing.Optional[RequestOptions]
|
|
502
|
+
Request-specific configuration.
|
|
503
|
+
|
|
504
|
+
Returns
|
|
505
|
+
-------
|
|
506
|
+
DvirGetDvirResponseBody
|
|
507
|
+
OK response.
|
|
508
|
+
|
|
509
|
+
Examples
|
|
510
|
+
--------
|
|
511
|
+
import asyncio
|
|
512
|
+
|
|
513
|
+
from samsara import AsyncSamsara
|
|
514
|
+
|
|
515
|
+
client = AsyncSamsara(
|
|
516
|
+
token="YOUR_TOKEN",
|
|
517
|
+
)
|
|
518
|
+
|
|
519
|
+
|
|
520
|
+
async def main() -> None:
|
|
521
|
+
await client.dvirs.get(
|
|
522
|
+
id="id",
|
|
523
|
+
)
|
|
524
|
+
|
|
525
|
+
|
|
526
|
+
asyncio.run(main())
|
|
527
|
+
"""
|
|
528
|
+
_response = await self._raw_client.get(
|
|
529
|
+
id, include_external_ids=include_external_ids, request_options=request_options
|
|
530
|
+
)
|
|
416
531
|
return _response.data
|
|
417
532
|
|
|
418
533
|
async def create(
|
samsara/dvirs/raw_client.py
CHANGED
|
@@ -7,6 +7,7 @@ from ..core.api_error import ApiError
|
|
|
7
7
|
from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
|
|
8
8
|
from ..core.http_response import AsyncHttpResponse, HttpResponse
|
|
9
9
|
from ..core.jsonable_encoder import jsonable_encoder
|
|
10
|
+
from ..core.pagination import AsyncPager, BaseHttpResponse, SyncPager
|
|
10
11
|
from ..core.pydantic_utilities import parse_obj_as
|
|
11
12
|
from ..core.request_options import RequestOptions
|
|
12
13
|
from ..errors.bad_gateway_error import BadGatewayError
|
|
@@ -18,8 +19,10 @@ from ..errors.not_implemented_error import NotImplementedError
|
|
|
18
19
|
from ..errors.service_unavailable_error import ServiceUnavailableError
|
|
19
20
|
from ..errors.too_many_requests_error import TooManyRequestsError
|
|
20
21
|
from ..errors.unauthorized_error import UnauthorizedError
|
|
22
|
+
from ..types.dvir_get_dvir_response_body import DvirGetDvirResponseBody
|
|
21
23
|
from ..types.dvir_get_dvirs_response_body import DvirGetDvirsResponseBody
|
|
22
24
|
from ..types.dvir_response import DvirResponse
|
|
25
|
+
from ..types.dvir_stream_response_data_response_body import DvirStreamResponseDataResponseBody
|
|
23
26
|
from ..types.dvirs_list_response import DvirsListResponse
|
|
24
27
|
from .types.create_dvir_request_safety_status import CreateDvirRequestSafetyStatus
|
|
25
28
|
|
|
@@ -41,7 +44,7 @@ class RawDvirsClient:
|
|
|
41
44
|
end_time: typing.Optional[str] = None,
|
|
42
45
|
safety_status: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None,
|
|
43
46
|
request_options: typing.Optional[RequestOptions] = None,
|
|
44
|
-
) ->
|
|
47
|
+
) -> SyncPager[DvirStreamResponseDataResponseBody]:
|
|
45
48
|
"""
|
|
46
49
|
Returns a history/feed of changed DVIRs by updatedAtTime between startTime and endTime parameters. In case of missing `endTime` parameter it will return a never ending stream of data.
|
|
47
50
|
|
|
@@ -77,7 +80,7 @@ class RawDvirsClient:
|
|
|
77
80
|
|
|
78
81
|
Returns
|
|
79
82
|
-------
|
|
80
|
-
|
|
83
|
+
SyncPager[DvirStreamResponseDataResponseBody]
|
|
81
84
|
OK response.
|
|
82
85
|
"""
|
|
83
86
|
_response = self._client_wrapper.httpx_client.request(
|
|
@@ -95,13 +98,185 @@ class RawDvirsClient:
|
|
|
95
98
|
)
|
|
96
99
|
try:
|
|
97
100
|
if 200 <= _response.status_code < 300:
|
|
98
|
-
|
|
101
|
+
_parsed_response = typing.cast(
|
|
99
102
|
DvirGetDvirsResponseBody,
|
|
100
103
|
parse_obj_as(
|
|
101
104
|
type_=DvirGetDvirsResponseBody, # type: ignore
|
|
102
105
|
object_=_response.json(),
|
|
103
106
|
),
|
|
104
107
|
)
|
|
108
|
+
_items = _parsed_response.data
|
|
109
|
+
_has_next = False
|
|
110
|
+
_get_next = None
|
|
111
|
+
if _parsed_response.pagination is not None:
|
|
112
|
+
_parsed_next = _parsed_response.pagination.end_cursor
|
|
113
|
+
_has_next = _parsed_next is not None and _parsed_next != ""
|
|
114
|
+
_get_next = lambda: self.stream(
|
|
115
|
+
start_time=start_time,
|
|
116
|
+
after=_parsed_next,
|
|
117
|
+
limit=limit,
|
|
118
|
+
include_external_ids=include_external_ids,
|
|
119
|
+
end_time=end_time,
|
|
120
|
+
safety_status=safety_status,
|
|
121
|
+
request_options=request_options,
|
|
122
|
+
)
|
|
123
|
+
return SyncPager(
|
|
124
|
+
has_next=_has_next, items=_items, get_next=_get_next, response=BaseHttpResponse(response=_response)
|
|
125
|
+
)
|
|
126
|
+
if _response.status_code == 401:
|
|
127
|
+
raise UnauthorizedError(
|
|
128
|
+
headers=dict(_response.headers),
|
|
129
|
+
body=typing.cast(
|
|
130
|
+
typing.Optional[typing.Any],
|
|
131
|
+
parse_obj_as(
|
|
132
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
133
|
+
object_=_response.json(),
|
|
134
|
+
),
|
|
135
|
+
),
|
|
136
|
+
)
|
|
137
|
+
if _response.status_code == 404:
|
|
138
|
+
raise NotFoundError(
|
|
139
|
+
headers=dict(_response.headers),
|
|
140
|
+
body=typing.cast(
|
|
141
|
+
typing.Optional[typing.Any],
|
|
142
|
+
parse_obj_as(
|
|
143
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
144
|
+
object_=_response.json(),
|
|
145
|
+
),
|
|
146
|
+
),
|
|
147
|
+
)
|
|
148
|
+
if _response.status_code == 405:
|
|
149
|
+
raise MethodNotAllowedError(
|
|
150
|
+
headers=dict(_response.headers),
|
|
151
|
+
body=typing.cast(
|
|
152
|
+
typing.Optional[typing.Any],
|
|
153
|
+
parse_obj_as(
|
|
154
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
155
|
+
object_=_response.json(),
|
|
156
|
+
),
|
|
157
|
+
),
|
|
158
|
+
)
|
|
159
|
+
if _response.status_code == 429:
|
|
160
|
+
raise TooManyRequestsError(
|
|
161
|
+
headers=dict(_response.headers),
|
|
162
|
+
body=typing.cast(
|
|
163
|
+
typing.Optional[typing.Any],
|
|
164
|
+
parse_obj_as(
|
|
165
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
166
|
+
object_=_response.json(),
|
|
167
|
+
),
|
|
168
|
+
),
|
|
169
|
+
)
|
|
170
|
+
if _response.status_code == 500:
|
|
171
|
+
raise InternalServerError(
|
|
172
|
+
headers=dict(_response.headers),
|
|
173
|
+
body=typing.cast(
|
|
174
|
+
typing.Optional[typing.Any],
|
|
175
|
+
parse_obj_as(
|
|
176
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
177
|
+
object_=_response.json(),
|
|
178
|
+
),
|
|
179
|
+
),
|
|
180
|
+
)
|
|
181
|
+
if _response.status_code == 501:
|
|
182
|
+
raise NotImplementedError(
|
|
183
|
+
headers=dict(_response.headers),
|
|
184
|
+
body=typing.cast(
|
|
185
|
+
typing.Optional[typing.Any],
|
|
186
|
+
parse_obj_as(
|
|
187
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
188
|
+
object_=_response.json(),
|
|
189
|
+
),
|
|
190
|
+
),
|
|
191
|
+
)
|
|
192
|
+
if _response.status_code == 502:
|
|
193
|
+
raise BadGatewayError(
|
|
194
|
+
headers=dict(_response.headers),
|
|
195
|
+
body=typing.cast(
|
|
196
|
+
typing.Optional[typing.Any],
|
|
197
|
+
parse_obj_as(
|
|
198
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
199
|
+
object_=_response.json(),
|
|
200
|
+
),
|
|
201
|
+
),
|
|
202
|
+
)
|
|
203
|
+
if _response.status_code == 503:
|
|
204
|
+
raise ServiceUnavailableError(
|
|
205
|
+
headers=dict(_response.headers),
|
|
206
|
+
body=typing.cast(
|
|
207
|
+
typing.Optional[typing.Any],
|
|
208
|
+
parse_obj_as(
|
|
209
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
210
|
+
object_=_response.json(),
|
|
211
|
+
),
|
|
212
|
+
),
|
|
213
|
+
)
|
|
214
|
+
if _response.status_code == 504:
|
|
215
|
+
raise GatewayTimeoutError(
|
|
216
|
+
headers=dict(_response.headers),
|
|
217
|
+
body=typing.cast(
|
|
218
|
+
typing.Optional[typing.Any],
|
|
219
|
+
parse_obj_as(
|
|
220
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
221
|
+
object_=_response.json(),
|
|
222
|
+
),
|
|
223
|
+
),
|
|
224
|
+
)
|
|
225
|
+
_response_json = _response.json()
|
|
226
|
+
except JSONDecodeError:
|
|
227
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
228
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
229
|
+
|
|
230
|
+
def get(
|
|
231
|
+
self,
|
|
232
|
+
id: str,
|
|
233
|
+
*,
|
|
234
|
+
include_external_ids: typing.Optional[bool] = None,
|
|
235
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
236
|
+
) -> HttpResponse[DvirGetDvirResponseBody]:
|
|
237
|
+
"""
|
|
238
|
+
Get a single DVIR by ID.
|
|
239
|
+
|
|
240
|
+
<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>).
|
|
241
|
+
|
|
242
|
+
To use this endpoint, select **Read DVIRs** under the Maintenance 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>
|
|
243
|
+
|
|
244
|
+
|
|
245
|
+
**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.
|
|
246
|
+
|
|
247
|
+
Parameters
|
|
248
|
+
----------
|
|
249
|
+
id : str
|
|
250
|
+
Id of the DVIR.
|
|
251
|
+
|
|
252
|
+
include_external_ids : typing.Optional[bool]
|
|
253
|
+
Optional boolean indicating whether to return external IDs on supported entities
|
|
254
|
+
|
|
255
|
+
request_options : typing.Optional[RequestOptions]
|
|
256
|
+
Request-specific configuration.
|
|
257
|
+
|
|
258
|
+
Returns
|
|
259
|
+
-------
|
|
260
|
+
HttpResponse[DvirGetDvirResponseBody]
|
|
261
|
+
OK response.
|
|
262
|
+
"""
|
|
263
|
+
_response = self._client_wrapper.httpx_client.request(
|
|
264
|
+
f"dvirs/{jsonable_encoder(id)}",
|
|
265
|
+
method="GET",
|
|
266
|
+
params={
|
|
267
|
+
"includeExternalIds": include_external_ids,
|
|
268
|
+
},
|
|
269
|
+
request_options=request_options,
|
|
270
|
+
)
|
|
271
|
+
try:
|
|
272
|
+
if 200 <= _response.status_code < 300:
|
|
273
|
+
_data = typing.cast(
|
|
274
|
+
DvirGetDvirResponseBody,
|
|
275
|
+
parse_obj_as(
|
|
276
|
+
type_=DvirGetDvirResponseBody, # type: ignore
|
|
277
|
+
object_=_response.json(),
|
|
278
|
+
),
|
|
279
|
+
)
|
|
105
280
|
return HttpResponse(response=_response, data=_data)
|
|
106
281
|
if _response.status_code == 401:
|
|
107
282
|
raise UnauthorizedError(
|
|
@@ -464,7 +639,7 @@ class AsyncRawDvirsClient:
|
|
|
464
639
|
end_time: typing.Optional[str] = None,
|
|
465
640
|
safety_status: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None,
|
|
466
641
|
request_options: typing.Optional[RequestOptions] = None,
|
|
467
|
-
) ->
|
|
642
|
+
) -> AsyncPager[DvirStreamResponseDataResponseBody]:
|
|
468
643
|
"""
|
|
469
644
|
Returns a history/feed of changed DVIRs by updatedAtTime between startTime and endTime parameters. In case of missing `endTime` parameter it will return a never ending stream of data.
|
|
470
645
|
|
|
@@ -500,7 +675,7 @@ class AsyncRawDvirsClient:
|
|
|
500
675
|
|
|
501
676
|
Returns
|
|
502
677
|
-------
|
|
503
|
-
|
|
678
|
+
AsyncPager[DvirStreamResponseDataResponseBody]
|
|
504
679
|
OK response.
|
|
505
680
|
"""
|
|
506
681
|
_response = await self._client_wrapper.httpx_client.request(
|
|
@@ -518,13 +693,188 @@ class AsyncRawDvirsClient:
|
|
|
518
693
|
)
|
|
519
694
|
try:
|
|
520
695
|
if 200 <= _response.status_code < 300:
|
|
521
|
-
|
|
696
|
+
_parsed_response = typing.cast(
|
|
522
697
|
DvirGetDvirsResponseBody,
|
|
523
698
|
parse_obj_as(
|
|
524
699
|
type_=DvirGetDvirsResponseBody, # type: ignore
|
|
525
700
|
object_=_response.json(),
|
|
526
701
|
),
|
|
527
702
|
)
|
|
703
|
+
_items = _parsed_response.data
|
|
704
|
+
_has_next = False
|
|
705
|
+
_get_next = None
|
|
706
|
+
if _parsed_response.pagination is not None:
|
|
707
|
+
_parsed_next = _parsed_response.pagination.end_cursor
|
|
708
|
+
_has_next = _parsed_next is not None and _parsed_next != ""
|
|
709
|
+
|
|
710
|
+
async def _get_next():
|
|
711
|
+
return await self.stream(
|
|
712
|
+
start_time=start_time,
|
|
713
|
+
after=_parsed_next,
|
|
714
|
+
limit=limit,
|
|
715
|
+
include_external_ids=include_external_ids,
|
|
716
|
+
end_time=end_time,
|
|
717
|
+
safety_status=safety_status,
|
|
718
|
+
request_options=request_options,
|
|
719
|
+
)
|
|
720
|
+
|
|
721
|
+
return AsyncPager(
|
|
722
|
+
has_next=_has_next, items=_items, get_next=_get_next, response=BaseHttpResponse(response=_response)
|
|
723
|
+
)
|
|
724
|
+
if _response.status_code == 401:
|
|
725
|
+
raise UnauthorizedError(
|
|
726
|
+
headers=dict(_response.headers),
|
|
727
|
+
body=typing.cast(
|
|
728
|
+
typing.Optional[typing.Any],
|
|
729
|
+
parse_obj_as(
|
|
730
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
731
|
+
object_=_response.json(),
|
|
732
|
+
),
|
|
733
|
+
),
|
|
734
|
+
)
|
|
735
|
+
if _response.status_code == 404:
|
|
736
|
+
raise NotFoundError(
|
|
737
|
+
headers=dict(_response.headers),
|
|
738
|
+
body=typing.cast(
|
|
739
|
+
typing.Optional[typing.Any],
|
|
740
|
+
parse_obj_as(
|
|
741
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
742
|
+
object_=_response.json(),
|
|
743
|
+
),
|
|
744
|
+
),
|
|
745
|
+
)
|
|
746
|
+
if _response.status_code == 405:
|
|
747
|
+
raise MethodNotAllowedError(
|
|
748
|
+
headers=dict(_response.headers),
|
|
749
|
+
body=typing.cast(
|
|
750
|
+
typing.Optional[typing.Any],
|
|
751
|
+
parse_obj_as(
|
|
752
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
753
|
+
object_=_response.json(),
|
|
754
|
+
),
|
|
755
|
+
),
|
|
756
|
+
)
|
|
757
|
+
if _response.status_code == 429:
|
|
758
|
+
raise TooManyRequestsError(
|
|
759
|
+
headers=dict(_response.headers),
|
|
760
|
+
body=typing.cast(
|
|
761
|
+
typing.Optional[typing.Any],
|
|
762
|
+
parse_obj_as(
|
|
763
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
764
|
+
object_=_response.json(),
|
|
765
|
+
),
|
|
766
|
+
),
|
|
767
|
+
)
|
|
768
|
+
if _response.status_code == 500:
|
|
769
|
+
raise InternalServerError(
|
|
770
|
+
headers=dict(_response.headers),
|
|
771
|
+
body=typing.cast(
|
|
772
|
+
typing.Optional[typing.Any],
|
|
773
|
+
parse_obj_as(
|
|
774
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
775
|
+
object_=_response.json(),
|
|
776
|
+
),
|
|
777
|
+
),
|
|
778
|
+
)
|
|
779
|
+
if _response.status_code == 501:
|
|
780
|
+
raise NotImplementedError(
|
|
781
|
+
headers=dict(_response.headers),
|
|
782
|
+
body=typing.cast(
|
|
783
|
+
typing.Optional[typing.Any],
|
|
784
|
+
parse_obj_as(
|
|
785
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
786
|
+
object_=_response.json(),
|
|
787
|
+
),
|
|
788
|
+
),
|
|
789
|
+
)
|
|
790
|
+
if _response.status_code == 502:
|
|
791
|
+
raise BadGatewayError(
|
|
792
|
+
headers=dict(_response.headers),
|
|
793
|
+
body=typing.cast(
|
|
794
|
+
typing.Optional[typing.Any],
|
|
795
|
+
parse_obj_as(
|
|
796
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
797
|
+
object_=_response.json(),
|
|
798
|
+
),
|
|
799
|
+
),
|
|
800
|
+
)
|
|
801
|
+
if _response.status_code == 503:
|
|
802
|
+
raise ServiceUnavailableError(
|
|
803
|
+
headers=dict(_response.headers),
|
|
804
|
+
body=typing.cast(
|
|
805
|
+
typing.Optional[typing.Any],
|
|
806
|
+
parse_obj_as(
|
|
807
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
808
|
+
object_=_response.json(),
|
|
809
|
+
),
|
|
810
|
+
),
|
|
811
|
+
)
|
|
812
|
+
if _response.status_code == 504:
|
|
813
|
+
raise GatewayTimeoutError(
|
|
814
|
+
headers=dict(_response.headers),
|
|
815
|
+
body=typing.cast(
|
|
816
|
+
typing.Optional[typing.Any],
|
|
817
|
+
parse_obj_as(
|
|
818
|
+
type_=typing.Optional[typing.Any], # type: ignore
|
|
819
|
+
object_=_response.json(),
|
|
820
|
+
),
|
|
821
|
+
),
|
|
822
|
+
)
|
|
823
|
+
_response_json = _response.json()
|
|
824
|
+
except JSONDecodeError:
|
|
825
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
826
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
827
|
+
|
|
828
|
+
async def get(
|
|
829
|
+
self,
|
|
830
|
+
id: str,
|
|
831
|
+
*,
|
|
832
|
+
include_external_ids: typing.Optional[bool] = None,
|
|
833
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
834
|
+
) -> AsyncHttpResponse[DvirGetDvirResponseBody]:
|
|
835
|
+
"""
|
|
836
|
+
Get a single DVIR by ID.
|
|
837
|
+
|
|
838
|
+
<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>).
|
|
839
|
+
|
|
840
|
+
To use this endpoint, select **Read DVIRs** under the Maintenance 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>
|
|
841
|
+
|
|
842
|
+
|
|
843
|
+
**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.
|
|
844
|
+
|
|
845
|
+
Parameters
|
|
846
|
+
----------
|
|
847
|
+
id : str
|
|
848
|
+
Id of the DVIR.
|
|
849
|
+
|
|
850
|
+
include_external_ids : typing.Optional[bool]
|
|
851
|
+
Optional boolean indicating whether to return external IDs on supported entities
|
|
852
|
+
|
|
853
|
+
request_options : typing.Optional[RequestOptions]
|
|
854
|
+
Request-specific configuration.
|
|
855
|
+
|
|
856
|
+
Returns
|
|
857
|
+
-------
|
|
858
|
+
AsyncHttpResponse[DvirGetDvirResponseBody]
|
|
859
|
+
OK response.
|
|
860
|
+
"""
|
|
861
|
+
_response = await self._client_wrapper.httpx_client.request(
|
|
862
|
+
f"dvirs/{jsonable_encoder(id)}",
|
|
863
|
+
method="GET",
|
|
864
|
+
params={
|
|
865
|
+
"includeExternalIds": include_external_ids,
|
|
866
|
+
},
|
|
867
|
+
request_options=request_options,
|
|
868
|
+
)
|
|
869
|
+
try:
|
|
870
|
+
if 200 <= _response.status_code < 300:
|
|
871
|
+
_data = typing.cast(
|
|
872
|
+
DvirGetDvirResponseBody,
|
|
873
|
+
parse_obj_as(
|
|
874
|
+
type_=DvirGetDvirResponseBody, # type: ignore
|
|
875
|
+
object_=_response.json(),
|
|
876
|
+
),
|
|
877
|
+
)
|
|
528
878
|
return AsyncHttpResponse(response=_response, data=_data)
|
|
529
879
|
if _response.status_code == 401:
|
|
530
880
|
raise UnauthorizedError(
|
samsara/equipment/__init__.py
CHANGED
|
@@ -3,12 +3,12 @@
|
|
|
3
3
|
# isort: skip_file
|
|
4
4
|
|
|
5
5
|
from . import locations, stats
|
|
6
|
-
from .stats import StatsFeedRequestTypesItem,
|
|
6
|
+
from .stats import StatsFeedRequestTypesItem, StatsHistoryRequestTypesItem, StatsListRequestTypesItem
|
|
7
7
|
|
|
8
8
|
__all__ = [
|
|
9
9
|
"StatsFeedRequestTypesItem",
|
|
10
|
-
"StatsGetRequestTypesItem",
|
|
11
10
|
"StatsHistoryRequestTypesItem",
|
|
11
|
+
"StatsListRequestTypesItem",
|
|
12
12
|
"locations",
|
|
13
13
|
"stats",
|
|
14
14
|
]
|