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.
Files changed (343) hide show
  1. samsara/__init__.py +298 -38
  2. samsara/alerts/configurations/client.py +25 -11
  3. samsara/alerts/configurations/raw_client.py +47 -8
  4. samsara/alerts/incidents/client.py +21 -11
  5. samsara/alerts/incidents/raw_client.py +43 -9
  6. samsara/assets/client.py +21 -11
  7. samsara/assets/location_and_speed/client.py +21 -13
  8. samsara/assets/location_and_speed/raw_client.py +53 -9
  9. samsara/assets/raw_client.py +53 -8
  10. samsara/attributes/client.py +21 -13
  11. samsara/attributes/raw_client.py +41 -8
  12. samsara/cameras/media/client.py +2 -2
  13. samsara/cameras/media/raw_client.py +2 -2
  14. samsara/cameras/media/retrieval/client.py +2 -12
  15. samsara/cameras/media/types/media_list_request_trigger_reasons_item.py +8 -1
  16. samsara/carrier_proposed_assignments/client.py +21 -11
  17. samsara/carrier_proposed_assignments/raw_client.py +43 -8
  18. samsara/client.py +15 -6
  19. samsara/coaching/driver_coach_assignments/client.py +22 -12
  20. samsara/coaching/driver_coach_assignments/raw_client.py +45 -8
  21. samsara/coaching/sessions/client.py +21 -13
  22. samsara/coaching/sessions/raw_client.py +51 -9
  23. samsara/contacts/client.py +21 -11
  24. samsara/contacts/raw_client.py +39 -8
  25. samsara/core/client_wrapper.py +2 -2
  26. samsara/defect_types/client.py +21 -11
  27. samsara/defect_types/raw_client.py +41 -9
  28. samsara/defects/client.py +124 -9
  29. samsara/defects/raw_client.py +356 -6
  30. samsara/devices/client.py +21 -11
  31. samsara/devices/raw_client.py +45 -9
  32. samsara/document_types/client.py +21 -11
  33. samsara/document_types/raw_client.py +37 -9
  34. samsara/documents/client.py +21 -11
  35. samsara/documents/raw_client.py +45 -8
  36. samsara/driver_trailer_assignments/client.py +23 -13
  37. samsara/driver_trailer_assignments/raw_client.py +43 -8
  38. samsara/drivers/__init__.py +1 -3
  39. samsara/drivers/client.py +21 -21
  40. samsara/drivers/raw_client.py +51 -8
  41. samsara/dvirs/client.py +124 -9
  42. samsara/dvirs/raw_client.py +356 -6
  43. samsara/equipment/__init__.py +2 -2
  44. samsara/equipment/client.py +23 -21
  45. samsara/equipment/locations/client.py +62 -34
  46. samsara/equipment/locations/raw_client.py +132 -27
  47. samsara/equipment/raw_client.py +45 -18
  48. samsara/equipment/stats/__init__.py +2 -2
  49. samsara/equipment/stats/client.py +81 -53
  50. samsara/equipment/stats/raw_client.py +157 -46
  51. samsara/equipment/stats/types/__init__.py +2 -2
  52. samsara/equipment/stats/types/{stats_get_request_types_item.py → stats_list_request_types_item.py} +1 -1
  53. samsara/form_submissions/client.py +46 -54
  54. samsara/form_submissions/pdf_exports/client.py +14 -22
  55. samsara/form_submissions/pdf_exports/raw_client.py +10 -18
  56. samsara/form_submissions/raw_client.py +74 -47
  57. samsara/forms/client.py +138 -0
  58. samsara/{beta → forms}/raw_client.py +37 -62
  59. samsara/function.py +99 -0
  60. samsara/gateways/client.py +21 -11
  61. samsara/gateways/raw_client.py +39 -8
  62. samsara/hos/__init__.py +3 -0
  63. samsara/hos/client.py +218 -11
  64. samsara/hos/raw_client.py +485 -8
  65. samsara/hos/types/__init__.py +7 -0
  66. samsara/hos/types/hos_daily_logs_request_driver_activation_status.py +5 -0
  67. samsara/idling/__init__.py +7 -0
  68. samsara/idling/client.py +287 -0
  69. samsara/idling/raw_client.py +521 -0
  70. samsara/idling/types/__init__.py +7 -0
  71. samsara/idling/types/idling_list_request_pto_state.py +5 -0
  72. samsara/inputs/client.py +21 -11
  73. samsara/inputs/raw_client.py +51 -9
  74. samsara/issues/client.py +27 -29
  75. samsara/issues/raw_client.py +53 -26
  76. samsara/live_shares/client.py +21 -13
  77. samsara/live_shares/raw_client.py +43 -8
  78. samsara/maintenance/service_tasks/client.py +21 -11
  79. samsara/maintenance/service_tasks/raw_client.py +41 -8
  80. samsara/maintenance/work_orders/client.py +40 -22
  81. samsara/maintenance/work_orders/raw_client.py +84 -16
  82. samsara/readings/client.py +524 -0
  83. samsara/readings/raw_client.py +1214 -0
  84. samsara/reports/drivers/fuel_energy/client.py +6 -6
  85. samsara/reports/drivers/fuel_energy/raw_client.py +2 -2
  86. samsara/reports/ifta/__init__.py +4 -4
  87. samsara/reports/ifta/vehicle/__init__.py +2 -2
  88. samsara/reports/ifta/vehicle/client.py +21 -21
  89. samsara/reports/ifta/vehicle/raw_client.py +17 -17
  90. samsara/reports/ifta/vehicle/types/__init__.py +4 -4
  91. samsara/reports/ifta/vehicle/types/{vehicle_get_request_fuel_type.py → vehicle_list_request_fuel_type.py} +1 -1
  92. samsara/reports/ifta/vehicle/types/{vehicle_get_request_month.py → vehicle_list_request_month.py} +1 -1
  93. samsara/reports/ifta/vehicle/types/vehicle_list_request_quarter.py +5 -0
  94. samsara/reports/vehicles/__init__.py +2 -2
  95. samsara/reports/vehicles/fuel_energy/__init__.py +2 -2
  96. samsara/reports/vehicles/fuel_energy/client.py +11 -11
  97. samsara/reports/vehicles/fuel_energy/raw_client.py +7 -7
  98. samsara/reports/vehicles/fuel_energy/types/__init__.py +2 -2
  99. samsara/reports/vehicles/fuel_energy/types/fuel_energy_list_request_energy_type.py +5 -0
  100. samsara/reports/vehicles/idling/client.py +27 -15
  101. samsara/reports/vehicles/idling/raw_client.py +59 -11
  102. samsara/routes/client.py +21 -11
  103. samsara/routes/raw_client.py +43 -8
  104. samsara/safety_events/audit_logs/client.py +21 -13
  105. samsara/safety_events/audit_logs/raw_client.py +39 -9
  106. samsara/safety_events/client.py +21 -11
  107. samsara/safety_events/raw_client.py +47 -9
  108. samsara/speeding_intervals/client.py +25 -17
  109. samsara/speeding_intervals/raw_client.py +55 -13
  110. samsara/tachograph/__init__.py +7 -0
  111. samsara/tachograph/client.py +44 -0
  112. samsara/{drivers/tachograph_files → tachograph/driver}/client.py +162 -15
  113. samsara/{drivers/tachograph_files → tachograph/driver}/raw_client.py +153 -4
  114. samsara/tachograph/raw_client.py +13 -0
  115. samsara/{vehicles/tachograph_files → tachograph/vehicles}/client.py +15 -15
  116. samsara/{vehicles/tachograph_files → tachograph/vehicles}/raw_client.py +4 -4
  117. samsara/tags/client.py +21 -11
  118. samsara/tags/raw_client.py +39 -8
  119. samsara/trailers/client.py +21 -11
  120. samsara/trailers/raw_client.py +43 -8
  121. samsara/training_courses/client.py +21 -11
  122. samsara/training_courses/raw_client.py +43 -9
  123. samsara/trips/client.py +21 -11
  124. samsara/trips/raw_client.py +49 -9
  125. samsara/types/__init__.py +406 -50
  126. samsara/types/advanced_idling_get_idling_events_bad_gateway_error_response_body.py +33 -0
  127. samsara/types/advanced_idling_get_idling_events_gateway_timeout_error_response_body.py +33 -0
  128. 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
  129. samsara/types/advanced_idling_get_idling_events_method_not_allowed_error_response_body.py +33 -0
  130. 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
  131. 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
  132. samsara/types/advanced_idling_get_idling_events_response_body.py +26 -0
  133. 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
  134. 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
  135. samsara/types/advanced_idling_get_idling_events_unauthorized_error_response_body.py +33 -0
  136. samsara/types/alert_object_asset_response_body.py +63 -0
  137. samsara/types/{assets_create_asset_response_body_type.py → alert_object_asset_response_body_type.py} +1 -1
  138. samsara/types/assets_create_asset_response_body.py +2 -87
  139. samsara/types/assets_update_asset_response_body.py +2 -87
  140. samsara/types/continuous_reading_alert_threshold_response_body.py +49 -0
  141. samsara/types/continuous_reading_alert_threshold_response_body_operation.py +7 -0
  142. samsara/types/continuous_reading_alert_threshold_response_body_unit.py +62 -0
  143. samsara/types/device_response_response_body.py +1 -1
  144. samsara/types/device_response_response_body_model.py +1 -0
  145. samsara/types/dvir_defect_get_defect_bad_gateway_error_response_body.py +33 -0
  146. samsara/types/dvir_defect_get_defect_gateway_timeout_error_response_body.py +33 -0
  147. samsara/types/dvir_defect_get_defect_internal_server_error_response_body.py +33 -0
  148. samsara/types/dvir_defect_get_defect_method_not_allowed_error_response_body.py +33 -0
  149. samsara/types/dvir_defect_get_defect_not_found_error_response_body.py +33 -0
  150. samsara/types/dvir_defect_get_defect_not_implemented_error_response_body.py +33 -0
  151. samsara/types/dvir_defect_get_defect_response_body.py +91 -0
  152. samsara/types/dvir_defect_get_defect_service_unavailable_error_response_body.py +33 -0
  153. samsara/types/dvir_defect_get_defect_too_many_requests_error_response_body.py +33 -0
  154. samsara/types/dvir_defect_get_defect_unauthorized_error_response_body.py +33 -0
  155. samsara/types/dvir_get_dvir_bad_gateway_error_response_body.py +33 -0
  156. samsara/types/dvir_get_dvir_gateway_timeout_error_response_body.py +33 -0
  157. samsara/types/dvir_get_dvir_internal_server_error_response_body.py +33 -0
  158. samsara/types/dvir_get_dvir_method_not_allowed_error_response_body.py +33 -0
  159. samsara/types/dvir_get_dvir_not_found_error_response_body.py +33 -0
  160. samsara/types/dvir_get_dvir_not_implemented_error_response_body.py +33 -0
  161. samsara/types/dvir_get_dvir_response_body.py +99 -0
  162. samsara/types/dvir_get_dvir_response_body_safety_status.py +5 -0
  163. samsara/types/dvir_get_dvir_response_body_type.py +5 -0
  164. samsara/types/dvir_get_dvir_service_unavailable_error_response_body.py +33 -0
  165. samsara/types/dvir_get_dvir_too_many_requests_error_response_body.py +33 -0
  166. samsara/types/dvir_get_dvir_unauthorized_error_response_body.py +33 -0
  167. samsara/types/enum_reading_alert_threshold_response_body.py +31 -0
  168. samsara/types/enum_value_response_body.py +31 -0
  169. samsara/types/equipment_gateway_engine_seconds.py +1 -1
  170. samsara/types/equipment_gateway_j_1939_engine_seconds.py +1 -1
  171. samsara/types/equipment_obd_engine_seconds.py +1 -1
  172. samsara/types/event_location_response_body.py +31 -0
  173. samsara/types/form_submission_request_field_input_object_request_body.py +7 -1
  174. samsara/types/form_submission_request_field_input_object_request_body_type.py +3 -1
  175. samsara/types/{hos_daily_logs_update_shipping_docs_response_body.py → form_submission_request_geofence_object_request_body.py} +9 -3
  176. samsara/types/form_submission_request_geofence_value_object_request_body.py +24 -0
  177. samsara/types/form_submission_response_object_response_body.py +8 -0
  178. samsara/types/{form_template_reference_object_request_body.py → form_template_request_object_request_body.py} +6 -4
  179. samsara/types/form_template_response_object_response_body.py +74 -0
  180. samsara/types/form_template_section_object_response_body.py +47 -0
  181. samsara/types/form_templates_get_form_templates_bad_gateway_error_response_body.py +33 -0
  182. samsara/types/form_templates_get_form_templates_gateway_timeout_error_response_body.py +33 -0
  183. samsara/types/form_templates_get_form_templates_internal_server_error_response_body.py +33 -0
  184. samsara/types/form_templates_get_form_templates_method_not_allowed_error_response_body.py +33 -0
  185. samsara/types/form_templates_get_form_templates_not_found_error_response_body.py +33 -0
  186. samsara/types/form_templates_get_form_templates_not_implemented_error_response_body.py +33 -0
  187. samsara/types/form_templates_get_form_templates_response_body.py +26 -0
  188. samsara/types/form_templates_get_form_templates_service_unavailable_error_response_body.py +33 -0
  189. samsara/types/form_templates_get_form_templates_too_many_requests_error_response_body.py +33 -0
  190. samsara/types/form_templates_get_form_templates_unauthorized_error_response_body.py +33 -0
  191. samsara/types/forms_action_object_response_body.py +43 -0
  192. samsara/types/forms_action_object_response_body_type.py +7 -0
  193. samsara/types/forms_approval_config_object_response_body.py +32 -0
  194. samsara/types/forms_asset_object_response_body.py +8 -1
  195. samsara/types/forms_check_boxes_value_object_response_body.py +7 -0
  196. samsara/types/forms_condition_object_response_body.py +36 -0
  197. samsara/types/forms_condition_object_response_body_type.py +7 -0
  198. samsara/types/forms_conditional_action_object_response_body.py +30 -0
  199. samsara/types/forms_field_definition_object_response_body.py +143 -0
  200. samsara/types/forms_field_definition_object_response_body_allowed_asset_types_item.py +7 -0
  201. samsara/types/forms_field_definition_object_response_body_allowed_date_time_value_type.py +7 -0
  202. samsara/types/forms_field_definition_object_response_body_type.py +22 -0
  203. samsara/types/forms_field_input_object_response_body.py +7 -4
  204. samsara/types/forms_field_input_object_response_body_type.py +20 -0
  205. samsara/types/forms_geofence_object_response_body.py +53 -0
  206. samsara/types/forms_geofence_object_response_body_entry_type.py +5 -0
  207. samsara/types/forms_geofence_value_object_response_body.py +24 -0
  208. samsara/types/forms_multiple_choice_value_object_response_body.py +8 -1
  209. samsara/types/forms_product_submission_approval_details_object_response_body.py +26 -0
  210. samsara/types/forms_select_option_object_response_body.py +47 -0
  211. samsara/types/forms_single_approval_config_object_response_body.py +33 -0
  212. samsara/types/forms_table_cell_object_response_body.py +3 -4
  213. samsara/types/forms_table_cell_object_response_body_type.py +8 -0
  214. samsara/types/forms_table_column_object_response_body.py +3 -4
  215. samsara/types/forms_table_column_object_response_body_type.py +8 -0
  216. samsara/types/forms_table_field_definition_object_response_body.py +91 -0
  217. samsara/types/forms_table_field_definition_object_response_body_allowed_date_time_value_type.py +7 -0
  218. samsara/types/forms_table_field_definition_object_response_body_type.py +8 -0
  219. samsara/types/fuel_cost_object_response_body.py +32 -0
  220. samsara/types/fuel_cost_object_response_body_currency.py +5 -0
  221. samsara/types/fuel_volume_response_body.py +28 -0
  222. samsara/types/fuel_volume_response_body_unit.py +5 -0
  223. samsara/types/gaseous_fuel_cost_object_response_body.py +32 -0
  224. samsara/types/gaseous_fuel_cost_object_response_body_currency.py +7 -0
  225. samsara/types/gateway_details_response_response_body.py +14 -0
  226. samsara/types/harsh_event_trigger_details_object_request_body_types_item.py +1 -0
  227. samsara/types/harsh_event_trigger_details_object_response_body_types_item.py +1 -0
  228. samsara/types/idling_event_object_response_body.py +101 -0
  229. samsara/types/idling_event_object_response_body_address_type.py +17 -0
  230. samsara/types/inline_response_2005.py +24 -0
  231. samsara/types/inline_response_2006.py +24 -0
  232. samsara/types/reading_definition_response_body.py +59 -0
  233. samsara/types/reading_history_response_body.py +47 -0
  234. samsara/types/reading_snapshot_response_body.py +52 -0
  235. samsara/types/reading_trigger_continuous_value_object_request_body.py +51 -0
  236. samsara/types/reading_trigger_continuous_value_object_request_body_operation.py +7 -0
  237. samsara/types/reading_trigger_continuous_value_object_request_body_unit.py +62 -0
  238. samsara/types/reading_trigger_continuous_value_object_response_body.py +51 -0
  239. samsara/types/reading_trigger_continuous_value_object_response_body_operation.py +7 -0
  240. samsara/types/reading_trigger_continuous_value_object_response_body_unit.py +62 -0
  241. samsara/types/reading_trigger_details_object_request_body.py +48 -0
  242. samsara/types/reading_trigger_details_object_response_body.py +48 -0
  243. samsara/types/reading_trigger_details_response_body.py +38 -0
  244. samsara/types/reading_trigger_enum_value_object_request_body.py +31 -0
  245. samsara/types/reading_trigger_enum_value_object_response_body.py +31 -0
  246. samsara/types/reading_type_response_body.py +34 -0
  247. samsara/types/reading_type_response_body_data_type.py +5 -0
  248. samsara/types/readings_get_readings_history_bad_gateway_error_response_body.py +33 -0
  249. 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
  250. samsara/types/readings_get_readings_history_internal_server_error_response_body.py +33 -0
  251. samsara/types/readings_get_readings_history_method_not_allowed_error_response_body.py +33 -0
  252. samsara/types/readings_get_readings_history_not_found_error_response_body.py +33 -0
  253. samsara/types/readings_get_readings_history_not_implemented_error_response_body.py +33 -0
  254. samsara/types/readings_get_readings_history_response_body.py +26 -0
  255. samsara/types/readings_get_readings_history_service_unavailable_error_response_body.py +33 -0
  256. samsara/types/readings_get_readings_history_too_many_requests_error_response_body.py +33 -0
  257. samsara/types/readings_get_readings_history_unauthorized_error_response_body.py +33 -0
  258. samsara/types/readings_get_readings_snapshot_bad_gateway_error_response_body.py +33 -0
  259. samsara/types/readings_get_readings_snapshot_gateway_timeout_error_response_body.py +33 -0
  260. samsara/types/readings_get_readings_snapshot_internal_server_error_response_body.py +33 -0
  261. samsara/types/readings_get_readings_snapshot_method_not_allowed_error_response_body.py +33 -0
  262. samsara/types/readings_get_readings_snapshot_not_found_error_response_body.py +33 -0
  263. samsara/types/readings_get_readings_snapshot_not_implemented_error_response_body.py +33 -0
  264. samsara/types/readings_get_readings_snapshot_response_body.py +26 -0
  265. samsara/types/readings_get_readings_snapshot_service_unavailable_error_response_body.py +33 -0
  266. 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
  267. samsara/types/readings_get_readings_snapshot_unauthorized_error_response_body.py +33 -0
  268. samsara/types/readings_list_readings_definitions_bad_gateway_error_response_body.py +33 -0
  269. 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
  270. samsara/types/readings_list_readings_definitions_internal_server_error_response_body.py +33 -0
  271. samsara/types/readings_list_readings_definitions_method_not_allowed_error_response_body.py +33 -0
  272. samsara/types/readings_list_readings_definitions_not_found_error_response_body.py +33 -0
  273. samsara/types/readings_list_readings_definitions_not_implemented_error_response_body.py +33 -0
  274. samsara/types/readings_list_readings_definitions_response_body.py +26 -0
  275. samsara/types/readings_list_readings_definitions_service_unavailable_error_response_body.py +33 -0
  276. 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
  277. samsara/types/readings_list_readings_definitions_unauthorized_error_response_body.py +33 -0
  278. samsara/types/safety_score_configuration_settings_object_response_body.py +7 -0
  279. samsara/types/single_approval_requirements_object_response_body.py +28 -0
  280. samsara/types/sudden_fuel_level_drop_response_body.py +33 -0
  281. samsara/types/sudden_fuel_level_rise_response_body.py +33 -0
  282. samsara/types/trigger_params_object_request_body.py +2 -0
  283. samsara/types/trigger_params_object_response_body.py +2 -0
  284. samsara/types/unit_response_body.py +39 -0
  285. samsara/types/unit_response_body_base_unit.py +62 -0
  286. samsara/types/unit_response_body_measurement_type.py +28 -0
  287. samsara/types/uploaded_media_object_response_body.py +1 -1
  288. samsara/types/uploaded_media_object_response_body_trigger_reason.py +8 -1
  289. samsara/types/v_1_message.py +29 -0
  290. samsara/types/v_1_message_response.py +41 -0
  291. samsara/types/v_1_message_sender.py +27 -0
  292. samsara/types/v_1_messages.py +7 -0
  293. samsara/types/v_1_messages_response.py +7 -0
  294. samsara/types/webhook_response_response_body_event_types_item.py +1 -0
  295. samsara/types/webhooks_get_webhook_response_body_event_types_item.py +1 -0
  296. samsara/types/webhooks_patch_webhook_response_body_event_types_item.py +1 -0
  297. samsara/types/webhooks_post_webhooks_response_body_event_types_item.py +1 -0
  298. samsara/types/workflow_geofence_event_response_object_response_body.py +6 -0
  299. samsara/types/workflow_incident_details_object_response_body.py +2 -0
  300. samsara/types/workflow_trigger_object_request_body.py +1 -0
  301. samsara/types/workflow_trigger_object_response_body.py +1 -0
  302. samsara/user_roles/client.py +21 -11
  303. samsara/user_roles/raw_client.py +39 -9
  304. samsara/users/client.py +21 -11
  305. samsara/users/raw_client.py +39 -8
  306. samsara/v_1_messages/__init__.py +4 -0
  307. samsara/v_1_messages/client.py +258 -0
  308. samsara/v_1_messages/raw_client.py +273 -0
  309. samsara/vehicles/__init__.py +1 -2
  310. samsara/vehicles/client.py +31 -16
  311. samsara/vehicles/immobilizer/client.py +21 -13
  312. samsara/vehicles/immobilizer/raw_client.py +43 -9
  313. samsara/vehicles/locations/client.py +60 -32
  314. samsara/vehicles/locations/raw_client.py +132 -25
  315. samsara/vehicles/raw_client.py +61 -8
  316. samsara/vehicles/stats/client.py +66 -38
  317. samsara/vehicles/stats/raw_client.py +148 -31
  318. samsara/webhooks/client.py +21 -11
  319. samsara/webhooks/raw_client.py +41 -8
  320. samsara/webhooks/types/webhooks_post_webhooks_request_body_event_types_item.py +1 -0
  321. samsara_api-0.0.2.dist-info/METADATA +29 -0
  322. {samsara_api-0.0.1.dist-info → samsara_api-0.0.2.dist-info}/RECORD +328 -193
  323. samsara/beta/client.py +0 -161
  324. samsara/drivers/tachograph_activity/client.py +0 -186
  325. samsara/drivers/tachograph_activity/raw_client.py +0 -169
  326. samsara/hours_of_service/__init__.py +0 -7
  327. samsara/hours_of_service/client.py +0 -229
  328. samsara/hours_of_service/raw_client.py +0 -425
  329. samsara/hours_of_service/types/__init__.py +0 -9
  330. samsara/hours_of_service/types/hours_of_service_get_daily_logs_request_driver_activation_status.py +0 -7
  331. samsara/reports/ifta/vehicle/types/vehicle_get_request_quarter.py +0 -5
  332. samsara/reports/vehicles/fuel_energy/types/fuel_energy_get_request_energy_type.py +0 -5
  333. samsara/types/assets_create_asset_response_body_regulation_mode.py +0 -7
  334. samsara/types/assets_update_asset_response_body_regulation_mode.py +0 -7
  335. samsara/types/assets_update_asset_response_body_type.py +0 -7
  336. samsara/types/patch_shipping_docs_response_body_response_body.py +0 -93
  337. samsara_api-0.0.1.dist-info/METADATA +0 -214
  338. /samsara/{beta → forms}/__init__.py +0 -0
  339. /samsara/{drivers/tachograph_activity → readings}/__init__.py +0 -0
  340. /samsara/{drivers/tachograph_files → tachograph/driver}/__init__.py +0 -0
  341. /samsara/{vehicles/tachograph_files → tachograph/vehicles}/__init__.py +0 -0
  342. {samsara_api-0.0.1.dist-info → samsara_api-0.0.2.dist-info}/LICENSE +0 -0
  343. {samsara_api-0.0.1.dist-info → samsara_api-0.0.2.dist-info}/WHEEL +0 -0
@@ -3,9 +3,10 @@
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.vehicle_stats_list_response import VehicleStatsListResponse
8
- from ...types.vehicle_stats_response import VehicleStatsResponse
8
+ from ...types.vehicle_stats_list_response_data import VehicleStatsListResponseData
9
+ from ...types.vehicle_stats_response_data import VehicleStatsResponseData
9
10
  from .raw_client import AsyncRawStatsClient, RawStatsClient
10
11
  from .types.stats_feed_request_decorations_item import StatsFeedRequestDecorationsItem
11
12
  from .types.stats_feed_request_types_item import StatsFeedRequestTypesItem
@@ -41,7 +42,7 @@ class StatsClient:
41
42
  typing.Union[StatsListRequestTypesItem, typing.Sequence[StatsListRequestTypesItem]]
42
43
  ] = None,
43
44
  request_options: typing.Optional[RequestOptions] = None,
44
- ) -> VehicleStatsResponse:
45
+ ) -> SyncPager[VehicleStatsResponseData]:
45
46
  """
46
47
  Returns the last known stats of all vehicles at the given `time`. If no `time` is specified, the current time is used.
47
48
 
@@ -71,7 +72,7 @@ class StatsClient:
71
72
  types : typing.Optional[typing.Union[StatsListRequestTypesItem, typing.Sequence[StatsListRequestTypesItem]]]
72
73
  The stat types you want this endpoint to return information on. See also the <a href="/docs/telematics#query-parameters" target="_blank">Telematics</a> guide for more details.
73
74
 
74
- You may list ***up to 3*** types using comma-separated format. For example: `types=gps,engineStates,obdOdometerMeters`.
75
+ You may list ***up to 4*** types using comma-separated format. For example: `types=gps,engineStates,obdOdometerMeters`.
75
76
 
76
77
  *Note:* `auxInput3`-`auxInput10` count as a single type against the limit of 3. For example, you could list `types=engineStates,obdOdometerMeters,auxInput3,auxInput4` because `auxInput3` and `auxInput4` count as a single stat type. `auxInput1` and `auxInput2` still count as their own individual types.
77
78
 
@@ -128,7 +129,7 @@ class StatsClient:
128
129
 
129
130
  Returns
130
131
  -------
131
- VehicleStatsResponse
132
+ SyncPager[VehicleStatsResponseData]
132
133
  Vehicle stats snapshot
133
134
 
134
135
  Examples
@@ -138,9 +139,14 @@ class StatsClient:
138
139
  client = Samsara(
139
140
  token="YOUR_TOKEN",
140
141
  )
141
- client.vehicles.stats.list()
142
+ response = client.vehicles.stats.list()
143
+ for item in response:
144
+ yield item
145
+ # alternatively, you can paginate page-by-page
146
+ for page in response.iter_pages():
147
+ yield page
142
148
  """
143
- _response = self._raw_client.list(
149
+ return self._raw_client.list(
144
150
  after=after,
145
151
  time=time,
146
152
  parent_tag_ids=parent_tag_ids,
@@ -149,7 +155,6 @@ class StatsClient:
149
155
  types=types,
150
156
  request_options=request_options,
151
157
  )
152
- return _response.data
153
158
 
154
159
  def feed(
155
160
  self,
@@ -165,7 +170,7 @@ class StatsClient:
165
170
  typing.Union[StatsFeedRequestDecorationsItem, typing.Sequence[StatsFeedRequestDecorationsItem]]
166
171
  ] = None,
167
172
  request_options: typing.Optional[RequestOptions] = None,
168
- ) -> VehicleStatsListResponse:
173
+ ) -> SyncPager[VehicleStatsListResponseData]:
169
174
  """
170
175
  Follow a feed of vehicle stats.
171
176
 
@@ -198,7 +203,7 @@ class StatsClient:
198
203
  types : typing.Optional[typing.Union[StatsFeedRequestTypesItem, typing.Sequence[StatsFeedRequestTypesItem]]]
199
204
  The stat types you want this endpoint to return information on. See also the <a href="/docs/telematics#query-parameters" target="_blank">Telematics</a> guide for more details.
200
205
 
201
- You may list ***up to 3*** types using comma-separated format. For example: `types=gps,engineStates,obdOdometerMeters`.
206
+ You may list ***up to 4*** types using comma-separated format. For example: `types=gps,engineStates,obdOdometerMeters`.
202
207
 
203
208
  *Note:* `auxInput3`-`auxInput10` count as a single type against the limit of 3. For example, you could list `types=engineStates,obdOdometerMeters,auxInput3,auxInput4` because `auxInput3` and `auxInput4` count as a single stat type. `auxInput1` and `auxInput2` still count as their own individual types.
204
209
 
@@ -308,7 +313,7 @@ class StatsClient:
308
313
 
309
314
  Returns
310
315
  -------
311
- VehicleStatsListResponse
316
+ SyncPager[VehicleStatsListResponseData]
312
317
  List of stat events for the specified vehicles and stat types.
313
318
 
314
319
  Examples
@@ -318,9 +323,14 @@ class StatsClient:
318
323
  client = Samsara(
319
324
  token="YOUR_TOKEN",
320
325
  )
321
- client.vehicles.stats.feed()
326
+ response = client.vehicles.stats.feed()
327
+ for item in response:
328
+ yield item
329
+ # alternatively, you can paginate page-by-page
330
+ for page in response.iter_pages():
331
+ yield page
322
332
  """
323
- _response = self._raw_client.feed(
333
+ return self._raw_client.feed(
324
334
  after=after,
325
335
  parent_tag_ids=parent_tag_ids,
326
336
  tag_ids=tag_ids,
@@ -329,7 +339,6 @@ class StatsClient:
329
339
  decorations=decorations,
330
340
  request_options=request_options,
331
341
  )
332
- return _response.data
333
342
 
334
343
  def history(
335
344
  self,
@@ -347,7 +356,7 @@ class StatsClient:
347
356
  typing.Union[StatsHistoryRequestDecorationsItem, typing.Sequence[StatsHistoryRequestDecorationsItem]]
348
357
  ] = None,
349
358
  request_options: typing.Optional[RequestOptions] = None,
350
- ) -> VehicleStatsListResponse:
359
+ ) -> SyncPager[VehicleStatsListResponseData]:
351
360
  """
352
361
  Returns vehicle stats during the given time range for all vehicles. This can be optionally filtered by tags or specific vehicle IDs.
353
362
 
@@ -380,7 +389,7 @@ class StatsClient:
380
389
  types : typing.Optional[typing.Union[StatsHistoryRequestTypesItem, typing.Sequence[StatsHistoryRequestTypesItem]]]
381
390
  The stat types you want this endpoint to return information on. See also the <a href="/docs/telematics#query-parameters" target="_blank">Telematics</a> guide for more details.
382
391
 
383
- You may list ***up to 3*** types using comma-separated format. For example: `types=gps,engineStates,obdOdometerMeters`.
392
+ You may list ***up to 4*** types using comma-separated format. For example: `types=gps,engineStates,obdOdometerMeters`.
384
393
 
385
394
  *Note:* `auxInput3`-`auxInput10` count as a single type against the limit of 3. For example, you could list `types=engineStates,obdOdometerMeters,auxInput3,auxInput4` because `auxInput3` and `auxInput4` count as a single stat type. `auxInput1` and `auxInput2` still count as their own individual types.
386
395
 
@@ -490,7 +499,7 @@ class StatsClient:
490
499
 
491
500
  Returns
492
501
  -------
493
- VehicleStatsListResponse
502
+ SyncPager[VehicleStatsListResponseData]
494
503
  List of vehicle stats for the specified vehicles, stat type, and time range.
495
504
 
496
505
  Examples
@@ -500,12 +509,17 @@ class StatsClient:
500
509
  client = Samsara(
501
510
  token="YOUR_TOKEN",
502
511
  )
503
- client.vehicles.stats.history(
512
+ response = client.vehicles.stats.history(
504
513
  start_time="startTime",
505
514
  end_time="endTime",
506
515
  )
516
+ for item in response:
517
+ yield item
518
+ # alternatively, you can paginate page-by-page
519
+ for page in response.iter_pages():
520
+ yield page
507
521
  """
508
- _response = self._raw_client.history(
522
+ return self._raw_client.history(
509
523
  start_time=start_time,
510
524
  end_time=end_time,
511
525
  after=after,
@@ -516,7 +530,6 @@ class StatsClient:
516
530
  decorations=decorations,
517
531
  request_options=request_options,
518
532
  )
519
- return _response.data
520
533
 
521
534
 
522
535
  class AsyncStatsClient:
@@ -546,7 +559,7 @@ class AsyncStatsClient:
546
559
  typing.Union[StatsListRequestTypesItem, typing.Sequence[StatsListRequestTypesItem]]
547
560
  ] = None,
548
561
  request_options: typing.Optional[RequestOptions] = None,
549
- ) -> VehicleStatsResponse:
562
+ ) -> AsyncPager[VehicleStatsResponseData]:
550
563
  """
551
564
  Returns the last known stats of all vehicles at the given `time`. If no `time` is specified, the current time is used.
552
565
 
@@ -576,7 +589,7 @@ class AsyncStatsClient:
576
589
  types : typing.Optional[typing.Union[StatsListRequestTypesItem, typing.Sequence[StatsListRequestTypesItem]]]
577
590
  The stat types you want this endpoint to return information on. See also the <a href="/docs/telematics#query-parameters" target="_blank">Telematics</a> guide for more details.
578
591
 
579
- You may list ***up to 3*** types using comma-separated format. For example: `types=gps,engineStates,obdOdometerMeters`.
592
+ You may list ***up to 4*** types using comma-separated format. For example: `types=gps,engineStates,obdOdometerMeters`.
580
593
 
581
594
  *Note:* `auxInput3`-`auxInput10` count as a single type against the limit of 3. For example, you could list `types=engineStates,obdOdometerMeters,auxInput3,auxInput4` because `auxInput3` and `auxInput4` count as a single stat type. `auxInput1` and `auxInput2` still count as their own individual types.
582
595
 
@@ -633,7 +646,7 @@ class AsyncStatsClient:
633
646
 
634
647
  Returns
635
648
  -------
636
- VehicleStatsResponse
649
+ AsyncPager[VehicleStatsResponseData]
637
650
  Vehicle stats snapshot
638
651
 
639
652
  Examples
@@ -648,12 +661,18 @@ class AsyncStatsClient:
648
661
 
649
662
 
650
663
  async def main() -> None:
651
- await client.vehicles.stats.list()
664
+ response = await client.vehicles.stats.list()
665
+ async for item in response:
666
+ yield item
667
+
668
+ # alternatively, you can paginate page-by-page
669
+ async for page in response.iter_pages():
670
+ yield page
652
671
 
653
672
 
654
673
  asyncio.run(main())
655
674
  """
656
- _response = await self._raw_client.list(
675
+ return await self._raw_client.list(
657
676
  after=after,
658
677
  time=time,
659
678
  parent_tag_ids=parent_tag_ids,
@@ -662,7 +681,6 @@ class AsyncStatsClient:
662
681
  types=types,
663
682
  request_options=request_options,
664
683
  )
665
- return _response.data
666
684
 
667
685
  async def feed(
668
686
  self,
@@ -678,7 +696,7 @@ class AsyncStatsClient:
678
696
  typing.Union[StatsFeedRequestDecorationsItem, typing.Sequence[StatsFeedRequestDecorationsItem]]
679
697
  ] = None,
680
698
  request_options: typing.Optional[RequestOptions] = None,
681
- ) -> VehicleStatsListResponse:
699
+ ) -> AsyncPager[VehicleStatsListResponseData]:
682
700
  """
683
701
  Follow a feed of vehicle stats.
684
702
 
@@ -711,7 +729,7 @@ class AsyncStatsClient:
711
729
  types : typing.Optional[typing.Union[StatsFeedRequestTypesItem, typing.Sequence[StatsFeedRequestTypesItem]]]
712
730
  The stat types you want this endpoint to return information on. See also the <a href="/docs/telematics#query-parameters" target="_blank">Telematics</a> guide for more details.
713
731
 
714
- You may list ***up to 3*** types using comma-separated format. For example: `types=gps,engineStates,obdOdometerMeters`.
732
+ You may list ***up to 4*** types using comma-separated format. For example: `types=gps,engineStates,obdOdometerMeters`.
715
733
 
716
734
  *Note:* `auxInput3`-`auxInput10` count as a single type against the limit of 3. For example, you could list `types=engineStates,obdOdometerMeters,auxInput3,auxInput4` because `auxInput3` and `auxInput4` count as a single stat type. `auxInput1` and `auxInput2` still count as their own individual types.
717
735
 
@@ -821,7 +839,7 @@ class AsyncStatsClient:
821
839
 
822
840
  Returns
823
841
  -------
824
- VehicleStatsListResponse
842
+ AsyncPager[VehicleStatsListResponseData]
825
843
  List of stat events for the specified vehicles and stat types.
826
844
 
827
845
  Examples
@@ -836,12 +854,18 @@ class AsyncStatsClient:
836
854
 
837
855
 
838
856
  async def main() -> None:
839
- await client.vehicles.stats.feed()
857
+ response = await client.vehicles.stats.feed()
858
+ async for item in response:
859
+ yield item
860
+
861
+ # alternatively, you can paginate page-by-page
862
+ async for page in response.iter_pages():
863
+ yield page
840
864
 
841
865
 
842
866
  asyncio.run(main())
843
867
  """
844
- _response = await self._raw_client.feed(
868
+ return await self._raw_client.feed(
845
869
  after=after,
846
870
  parent_tag_ids=parent_tag_ids,
847
871
  tag_ids=tag_ids,
@@ -850,7 +874,6 @@ class AsyncStatsClient:
850
874
  decorations=decorations,
851
875
  request_options=request_options,
852
876
  )
853
- return _response.data
854
877
 
855
878
  async def history(
856
879
  self,
@@ -868,7 +891,7 @@ class AsyncStatsClient:
868
891
  typing.Union[StatsHistoryRequestDecorationsItem, typing.Sequence[StatsHistoryRequestDecorationsItem]]
869
892
  ] = None,
870
893
  request_options: typing.Optional[RequestOptions] = None,
871
- ) -> VehicleStatsListResponse:
894
+ ) -> AsyncPager[VehicleStatsListResponseData]:
872
895
  """
873
896
  Returns vehicle stats during the given time range for all vehicles. This can be optionally filtered by tags or specific vehicle IDs.
874
897
 
@@ -901,7 +924,7 @@ class AsyncStatsClient:
901
924
  types : typing.Optional[typing.Union[StatsHistoryRequestTypesItem, typing.Sequence[StatsHistoryRequestTypesItem]]]
902
925
  The stat types you want this endpoint to return information on. See also the <a href="/docs/telematics#query-parameters" target="_blank">Telematics</a> guide for more details.
903
926
 
904
- You may list ***up to 3*** types using comma-separated format. For example: `types=gps,engineStates,obdOdometerMeters`.
927
+ You may list ***up to 4*** types using comma-separated format. For example: `types=gps,engineStates,obdOdometerMeters`.
905
928
 
906
929
  *Note:* `auxInput3`-`auxInput10` count as a single type against the limit of 3. For example, you could list `types=engineStates,obdOdometerMeters,auxInput3,auxInput4` because `auxInput3` and `auxInput4` count as a single stat type. `auxInput1` and `auxInput2` still count as their own individual types.
907
930
 
@@ -1011,7 +1034,7 @@ class AsyncStatsClient:
1011
1034
 
1012
1035
  Returns
1013
1036
  -------
1014
- VehicleStatsListResponse
1037
+ AsyncPager[VehicleStatsListResponseData]
1015
1038
  List of vehicle stats for the specified vehicles, stat type, and time range.
1016
1039
 
1017
1040
  Examples
@@ -1026,15 +1049,21 @@ class AsyncStatsClient:
1026
1049
 
1027
1050
 
1028
1051
  async def main() -> None:
1029
- await client.vehicles.stats.history(
1052
+ response = await client.vehicles.stats.history(
1030
1053
  start_time="startTime",
1031
1054
  end_time="endTime",
1032
1055
  )
1056
+ async for item in response:
1057
+ yield item
1058
+
1059
+ # alternatively, you can paginate page-by-page
1060
+ async for page in response.iter_pages():
1061
+ yield page
1033
1062
 
1034
1063
 
1035
1064
  asyncio.run(main())
1036
1065
  """
1037
- _response = await self._raw_client.history(
1066
+ return await self._raw_client.history(
1038
1067
  start_time=start_time,
1039
1068
  end_time=end_time,
1040
1069
  after=after,
@@ -1045,4 +1074,3 @@ class AsyncStatsClient:
1045
1074
  decorations=decorations,
1046
1075
  request_options=request_options,
1047
1076
  )
1048
- return _response.data