tbctl 0.2.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (829) hide show
  1. tb_client/__init__.py +1 -0
  2. tb_client/api/__init__.py +1 -0
  3. tb_client/api/admin_controller_api.py +7410 -0
  4. tb_client/api/ai_model_controller_api.py +1524 -0
  5. tb_client/api/alarm_comment_controller_api.py +982 -0
  6. tb_client/api/alarm_controller_api.py +4821 -0
  7. tb_client/api/api_key_controller_api.py +1568 -0
  8. tb_client/api/asset_controller_api.py +4920 -0
  9. tb_client/api/asset_profile_controller_api.py +2973 -0
  10. tb_client/api/audit_log_controller_api.py +1691 -0
  11. tb_client/api/auth_controller_api.py +2554 -0
  12. tb_client/api/blob_entity_controller_api.py +1550 -0
  13. tb_client/api/calculated_field_controller_api.py +3493 -0
  14. tb_client/api/component_descriptor_controller_api.py +907 -0
  15. tb_client/api/converter_controller_api.py +2809 -0
  16. tb_client/api/converter_library_controller_api.py +2490 -0
  17. tb_client/api/custom_menu_controller_api.py +3101 -0
  18. tb_client/api/custom_translation_controller_api.py +2076 -0
  19. tb_client/api/customer_controller_api.py +4162 -0
  20. tb_client/api/dashboard_controller_api.py +6553 -0
  21. tb_client/api/dashboard_report_controller_api.py +657 -0
  22. tb_client/api/device_api_controller_api.py +3441 -0
  23. tb_client/api/device_connectivity_controller_api.py +869 -0
  24. tb_client/api/device_controller_api.py +7390 -0
  25. tb_client/api/device_group_ota_package_controller_api.py +887 -0
  26. tb_client/api/device_profile_controller_api.py +3548 -0
  27. tb_client/api/domain_controller_api.py +1557 -0
  28. tb_client/api/edge_controller_api.py +7752 -0
  29. tb_client/api/edge_event_controller_api.py +435 -0
  30. tb_client/api/entities_version_control_controller_api.py +3800 -0
  31. tb_client/api/entity_group_controller_api.py +11279 -0
  32. tb_client/api/entity_query_controller_api.py +2094 -0
  33. tb_client/api/entity_relation_controller_api.py +4501 -0
  34. tb_client/api/entity_view_controller_api.py +4608 -0
  35. tb_client/api/event_controller_api.py +1721 -0
  36. tb_client/api/group_permission_controller_api.py +2023 -0
  37. tb_client/api/image_controller_api.py +4427 -0
  38. tb_client/api/integration_controller_api.py +4603 -0
  39. tb_client/api/job_controller_api.py +1581 -0
  40. tb_client/api/login_endpoint_api.py +611 -0
  41. tb_client/api/lwm2m_controller_api.py +621 -0
  42. tb_client/api/mail_config_template_controller_api.py +298 -0
  43. tb_client/api/mobile_app_bundle_controller_api.py +1557 -0
  44. tb_client/api/mobile_app_controller_api.py +1838 -0
  45. tb_client/api/notification_controller_api.py +5522 -0
  46. tb_client/api/notification_rule_controller_api.py +1233 -0
  47. tb_client/api/notification_target_controller_api.py +2201 -0
  48. tb_client/api/notification_template_controller_api.py +1547 -0
  49. tb_client/api/o_auth2_config_template_controller_api.py +868 -0
  50. tb_client/api/o_auth2_controller_api.py +2070 -0
  51. tb_client/api/ota_package_controller_api.py +2880 -0
  52. tb_client/api/owner_controller_api.py +710 -0
  53. tb_client/api/qr_code_settings_controller_api.py +1664 -0
  54. tb_client/api/queue_controller_api.py +1542 -0
  55. tb_client/api/queue_stats_controller_api.py +944 -0
  56. tb_client/api/report_controller_api.py +2754 -0
  57. tb_client/api/report_template_controller_api.py +1842 -0
  58. tb_client/api/role_controller_api.py +1528 -0
  59. tb_client/api/rpc_v1_controller_api.py +647 -0
  60. tb_client/api/rpc_v2_controller_api.py +1594 -0
  61. tb_client/api/rule_chain_controller_api.py +6709 -0
  62. tb_client/api/rule_engine_controller_api.py +1332 -0
  63. tb_client/api/scheduler_event_controller_api.py +4366 -0
  64. tb_client/api/secret_controller_api.py +2385 -0
  65. tb_client/api/self_registration_controller_api.py +1734 -0
  66. tb_client/api/sign_up_controller_api.py +2603 -0
  67. tb_client/api/solution_controller_api.py +1412 -0
  68. tb_client/api/tb_resource_controller_api.py +5886 -0
  69. tb_client/api/telemetry_controller_api.py +5517 -0
  70. tb_client/api/tenant_controller_api.py +2134 -0
  71. tb_client/api/tenant_profile_controller_api.py +2673 -0
  72. tb_client/api/translation_controller_api.py +1991 -0
  73. tb_client/api/trendz_api_controller_api.py +1190 -0
  74. tb_client/api/trendz_controller_api.py +1638 -0
  75. tb_client/api/two_factor_auth_config_controller_api.py +2580 -0
  76. tb_client/api/two_factor_auth_controller_api.py +1138 -0
  77. tb_client/api/ui_settings_controller_api.py +298 -0
  78. tb_client/api/usage_info_controller_api.py +295 -0
  79. tb_client/api/user_controller_api.py +9796 -0
  80. tb_client/api/user_permissions_controller_api.py +607 -0
  81. tb_client/api/white_labeling_controller_api.py +3675 -0
  82. tb_client/api/widget_type_controller_api.py +4392 -0
  83. tb_client/api/widgets_bundle_controller_api.py +2453 -0
  84. tb_client/api_client.py +805 -0
  85. tb_client/api_response.py +21 -0
  86. tb_client/configuration.py +627 -0
  87. tb_client/exceptions.py +219 -0
  88. tb_client/models/__init__.py +16 -0
  89. tb_client/models/account_two_fa_settings.py +102 -0
  90. tb_client/models/activate_user_request.py +91 -0
  91. tb_client/models/admin_settings.py +114 -0
  92. tb_client/models/admin_settings_id.py +99 -0
  93. tb_client/models/affected_tenant_administrators_filter.py +89 -0
  94. tb_client/models/affected_user_filter.py +89 -0
  95. tb_client/models/aggregation_configuration.py +101 -0
  96. tb_client/models/aggregation_params.py +115 -0
  97. tb_client/models/ai_chat_model_config_object.py +107 -0
  98. tb_client/models/ai_chat_model_config_object_provider_config.py +236 -0
  99. tb_client/models/ai_model.py +118 -0
  100. tb_client/models/ai_model_config.py +138 -0
  101. tb_client/models/ai_model_id.py +99 -0
  102. tb_client/models/alarm.py +182 -0
  103. tb_client/models/alarm_assignee.py +99 -0
  104. tb_client/models/alarm_assignment_notification_rule_trigger_config.py +128 -0
  105. tb_client/models/alarm_comment.py +140 -0
  106. tb_client/models/alarm_comment_id.py +90 -0
  107. tb_client/models/alarm_comment_info.py +146 -0
  108. tb_client/models/alarm_comment_notification_rule_trigger_config.py +121 -0
  109. tb_client/models/alarm_condition.py +103 -0
  110. tb_client/models/alarm_condition_filter.py +118 -0
  111. tb_client/models/alarm_condition_filter_key.py +101 -0
  112. tb_client/models/alarm_condition_spec.py +115 -0
  113. tb_client/models/alarm_count_query.py +145 -0
  114. tb_client/models/alarm_data.py +222 -0
  115. tb_client/models/alarm_data_page_link.py +143 -0
  116. tb_client/models/alarm_data_query.py +137 -0
  117. tb_client/models/alarm_filter_config.py +123 -0
  118. tb_client/models/alarm_id.py +99 -0
  119. tb_client/models/alarm_info.py +194 -0
  120. tb_client/models/alarm_notification_rule_trigger_config.py +121 -0
  121. tb_client/models/alarm_rule.py +107 -0
  122. tb_client/models/alarm_schedule.py +130 -0
  123. tb_client/models/alarm_table_component.py +135 -0
  124. tb_client/models/alias_entity_id.py +111 -0
  125. tb_client/models/all_users_filter.py +89 -0
  126. tb_client/models/allow_create_new_devices_device_profile_provision_configuration.py +90 -0
  127. tb_client/models/allowed_permissions_info.py +164 -0
  128. tb_client/models/amazon_bedrock_chat_model_config.py +122 -0
  129. tb_client/models/amazon_bedrock_provider_config.py +93 -0
  130. tb_client/models/anthropic_chat_model_config.py +124 -0
  131. tb_client/models/anthropic_provider_config.py +89 -0
  132. tb_client/models/any_time_schedule.py +94 -0
  133. tb_client/models/api_auth_token_post_request.py +94 -0
  134. tb_client/models/api_key.py +124 -0
  135. tb_client/models/api_key_id.py +99 -0
  136. tb_client/models/api_key_info.py +122 -0
  137. tb_client/models/api_usage_limit_notification_rule_trigger_config.py +115 -0
  138. tb_client/models/api_usage_state_filter.py +95 -0
  139. tb_client/models/argument.py +111 -0
  140. tb_client/models/asset.py +142 -0
  141. tb_client/models/asset_id.py +99 -0
  142. tb_client/models/asset_info.py +158 -0
  143. tb_client/models/asset_profile.py +134 -0
  144. tb_client/models/asset_profile_id.py +99 -0
  145. tb_client/models/asset_profile_info.py +109 -0
  146. tb_client/models/asset_search_query.py +97 -0
  147. tb_client/models/asset_search_query_filter.py +122 -0
  148. tb_client/models/asset_type_filter.py +95 -0
  149. tb_client/models/attribute_export_data.py +101 -0
  150. tb_client/models/attributes_entity_view.py +93 -0
  151. tb_client/models/attributes_immediate_output_strategy.py +99 -0
  152. tb_client/models/attributes_output.py +98 -0
  153. tb_client/models/attributes_output_strategy.py +112 -0
  154. tb_client/models/attributes_rule_chain_output_strategy.py +89 -0
  155. tb_client/models/audit_log.py +178 -0
  156. tb_client/models/audit_log_id.py +90 -0
  157. tb_client/models/auto_version_create_config.py +101 -0
  158. tb_client/models/available_entity_keys.py +102 -0
  159. tb_client/models/aws_sns_sms_provider_configuration.py +95 -0
  160. tb_client/models/azure_open_ai_chat_model_config.py +126 -0
  161. tb_client/models/azure_open_ai_provider_config.py +93 -0
  162. tb_client/models/backup_code_two_fa_account_config.py +95 -0
  163. tb_client/models/backup_code_two_fa_provider_config.py +92 -0
  164. tb_client/models/bar_series_settings.py +127 -0
  165. tb_client/models/base_read_ts_kv_query.py +119 -0
  166. tb_client/models/basic.py +93 -0
  167. tb_client/models/blob_entity_id.py +99 -0
  168. tb_client/models/blob_entity_info.py +150 -0
  169. tb_client/models/blob_entity_with_customer_info.py +156 -0
  170. tb_client/models/boolean_filter_predicate.py +107 -0
  171. tb_client/models/branch_info.py +91 -0
  172. tb_client/models/bulk_import_request.py +103 -0
  173. tb_client/models/bulk_import_result_asset.py +105 -0
  174. tb_client/models/bulk_import_result_asset_created.py +99 -0
  175. tb_client/models/bulk_import_result_device.py +105 -0
  176. tb_client/models/bulk_import_result_edge.py +105 -0
  177. tb_client/models/button.py +112 -0
  178. tb_client/models/calculated_field.py +141 -0
  179. tb_client/models/calculated_field_debug_event_filter.py +120 -0
  180. tb_client/models/calculated_field_id.py +99 -0
  181. tb_client/models/calculated_field_info.py +143 -0
  182. tb_client/models/captcha_params.py +115 -0
  183. tb_client/models/cell_settings.py +121 -0
  184. tb_client/models/cf_argument_dynamic_source_configuration.py +112 -0
  185. tb_client/models/cf_reprocessing_job_configuration.py +111 -0
  186. tb_client/models/cf_reprocessing_job_result.py +106 -0
  187. tb_client/models/cf_reprocessing_task_failure.py +95 -0
  188. tb_client/models/cf_reprocessing_task_result.py +99 -0
  189. tb_client/models/cf_reprocessing_validation_result.py +103 -0
  190. tb_client/models/change_password_request.py +91 -0
  191. tb_client/models/chart_fill_settings.py +107 -0
  192. tb_client/models/chart_fill_settings_gradient.py +91 -0
  193. tb_client/models/check_pre_provisioned_devices_device_profile_provision_configuration.py +90 -0
  194. tb_client/models/claim_request.py +89 -0
  195. tb_client/models/clear_rule.py +100 -0
  196. tb_client/models/client_attributes_querying_snmp_communication_config.py +101 -0
  197. tb_client/models/coap_device_profile_transport_configuration.py +101 -0
  198. tb_client/models/coap_device_transport_configuration.py +107 -0
  199. tb_client/models/coap_device_type_configuration.py +112 -0
  200. tb_client/models/color_range.py +93 -0
  201. tb_client/models/column_mapping.py +101 -0
  202. tb_client/models/column_settings.py +112 -0
  203. tb_client/models/comparison_ts_value.py +98 -0
  204. tb_client/models/complex_filter_predicate.py +110 -0
  205. tb_client/models/complex_version_create_request.py +118 -0
  206. tb_client/models/component_descriptor.py +170 -0
  207. tb_client/models/component_descriptor_id.py +90 -0
  208. tb_client/models/contact_based_object.py +123 -0
  209. tb_client/models/converter.py +156 -0
  210. tb_client/models/converter_id.py +99 -0
  211. tb_client/models/converters_info.py +93 -0
  212. tb_client/models/create_report_request.py +91 -0
  213. tb_client/models/csv_report_template_config.py +118 -0
  214. tb_client/models/current_owner_dynamic_source_configuration.py +89 -0
  215. tb_client/models/custom_menu.py +141 -0
  216. tb_client/models/custom_menu_config.py +97 -0
  217. tb_client/models/custom_menu_delete_result.py +111 -0
  218. tb_client/models/custom_menu_id.py +90 -0
  219. tb_client/models/custom_menu_info.py +135 -0
  220. tb_client/models/custom_menu_item.py +135 -0
  221. tb_client/models/custom_mobile_page.py +97 -0
  222. tb_client/models/custom_time_schedule.py +106 -0
  223. tb_client/models/custom_time_schedule_item.py +95 -0
  224. tb_client/models/customer.py +160 -0
  225. tb_client/models/customer_id.py +99 -0
  226. tb_client/models/customer_info.py +176 -0
  227. tb_client/models/customer_users_filter.py +92 -0
  228. tb_client/models/dashboard.py +168 -0
  229. tb_client/models/dashboard_component.py +151 -0
  230. tb_client/models/dashboard_id.py +99 -0
  231. tb_client/models/dashboard_info.py +184 -0
  232. tb_client/models/dashboard_page.py +97 -0
  233. tb_client/models/dashboard_report_config.py +112 -0
  234. tb_client/models/data_key.py +127 -0
  235. tb_client/models/data_key_comparison_settings.py +93 -0
  236. tb_client/models/data_key_settings.py +152 -0
  237. tb_client/models/data_source.py +130 -0
  238. tb_client/models/debug_converter_event_filter.py +106 -0
  239. tb_client/models/debug_integration_event_filter.py +104 -0
  240. tb_client/models/debug_settings.py +93 -0
  241. tb_client/models/default_coap_device_type_configuration.py +95 -0
  242. tb_client/models/default_dashboard_params.py +91 -0
  243. tb_client/models/default_data_key_settings.py +89 -0
  244. tb_client/models/default_device_configuration.py +89 -0
  245. tb_client/models/default_device_profile_configuration.py +89 -0
  246. tb_client/models/default_device_profile_transport_configuration.py +89 -0
  247. tb_client/models/default_device_transport_configuration.py +89 -0
  248. tb_client/models/default_menu_item.py +110 -0
  249. tb_client/models/default_mobile_page.py +107 -0
  250. tb_client/models/default_rule_chain_create_request.py +89 -0
  251. tb_client/models/default_tenant_profile_configuration.py +263 -0
  252. tb_client/models/delivery_method_notification_template.py +127 -0
  253. tb_client/models/device.py +159 -0
  254. tb_client/models/device_activity_notification_rule_trigger_config.py +105 -0
  255. tb_client/models/device_configuration.py +109 -0
  256. tb_client/models/device_credentials.py +121 -0
  257. tb_client/models/device_credentials_id.py +90 -0
  258. tb_client/models/device_data.py +99 -0
  259. tb_client/models/device_export_data.py +134 -0
  260. tb_client/models/device_group_ota_package.py +116 -0
  261. tb_client/models/device_id.py +99 -0
  262. tb_client/models/device_info.py +179 -0
  263. tb_client/models/device_profile.py +189 -0
  264. tb_client/models/device_profile_alarm.py +121 -0
  265. tb_client/models/device_profile_configuration.py +109 -0
  266. tb_client/models/device_profile_data.py +115 -0
  267. tb_client/models/device_profile_id.py +99 -0
  268. tb_client/models/device_profile_info.py +133 -0
  269. tb_client/models/device_profile_provision_configuration.py +119 -0
  270. tb_client/models/device_profile_transport_configuration.py +121 -0
  271. tb_client/models/device_search_query.py +97 -0
  272. tb_client/models/device_search_query_filter.py +122 -0
  273. tb_client/models/device_transport_configuration.py +121 -0
  274. tb_client/models/device_type_filter.py +95 -0
  275. tb_client/models/disabled_device_profile_provision_configuration.py +90 -0
  276. tb_client/models/divider_component.py +137 -0
  277. tb_client/models/domain.py +124 -0
  278. tb_client/models/domain_id.py +99 -0
  279. tb_client/models/domain_info.py +134 -0
  280. tb_client/models/dummy_job_configuration.py +117 -0
  281. tb_client/models/dummy_job_result.py +106 -0
  282. tb_client/models/dummy_task_failure.py +93 -0
  283. tb_client/models/dummy_task_result.py +99 -0
  284. tb_client/models/duration_alarm_condition_spec.py +107 -0
  285. tb_client/models/dynamic_value_boolean.py +105 -0
  286. tb_client/models/dynamic_value_double.py +105 -0
  287. tb_client/models/dynamic_value_integer.py +105 -0
  288. tb_client/models/dynamic_value_long.py +105 -0
  289. tb_client/models/dynamic_value_string.py +105 -0
  290. tb_client/models/edge.py +152 -0
  291. tb_client/models/edge_communication_failure_notification_rule_trigger_config.py +92 -0
  292. tb_client/models/edge_connection_notification_rule_trigger_config.py +105 -0
  293. tb_client/models/edge_event.py +149 -0
  294. tb_client/models/edge_event_id.py +90 -0
  295. tb_client/models/edge_id.py +99 -0
  296. tb_client/models/edge_info.py +168 -0
  297. tb_client/models/edge_instructions.py +89 -0
  298. tb_client/models/edge_search_query.py +97 -0
  299. tb_client/models/edge_search_query_filter.py +122 -0
  300. tb_client/models/edge_type_filter.py +95 -0
  301. tb_client/models/edqs_state.py +113 -0
  302. tb_client/models/edqs_sync_request.py +100 -0
  303. tb_client/models/efento_coap_device_type_configuration.py +89 -0
  304. tb_client/models/email_delivery_method_notification_template.py +94 -0
  305. tb_client/models/email_two_fa_account_config.py +93 -0
  306. tb_client/models/email_two_fa_provider_config.py +92 -0
  307. tb_client/models/enterprise_captcha_params.py +101 -0
  308. tb_client/models/entities_by_group_name_filter.py +113 -0
  309. tb_client/models/entities_limit_notification_rule_trigger_config.py +105 -0
  310. tb_client/models/entity.py +93 -0
  311. tb_client/models/entity_action_notification_rule_trigger_config.py +108 -0
  312. tb_client/models/entity_alias.py +97 -0
  313. tb_client/models/entity_count_query.py +103 -0
  314. tb_client/models/entity_data.py +151 -0
  315. tb_client/models/entity_data_diff.py +98 -0
  316. tb_client/models/entity_data_diff_current_version.py +239 -0
  317. tb_client/models/entity_data_info.py +99 -0
  318. tb_client/models/entity_data_page_link.py +101 -0
  319. tb_client/models/entity_data_query.py +128 -0
  320. tb_client/models/entity_data_sort_order.py +105 -0
  321. tb_client/models/entity_export_data_object.py +175 -0
  322. tb_client/models/entity_filter.py +169 -0
  323. tb_client/models/entity_group.py +142 -0
  324. tb_client/models/entity_group_export_data.py +150 -0
  325. tb_client/models/entity_group_filter.py +119 -0
  326. tb_client/models/entity_group_id.py +99 -0
  327. tb_client/models/entity_group_info.py +151 -0
  328. tb_client/models/entity_group_list_filter.py +103 -0
  329. tb_client/models/entity_group_name_filter.py +103 -0
  330. tb_client/models/entity_id.py +99 -0
  331. tb_client/models/entity_info.py +95 -0
  332. tb_client/models/entity_key.py +101 -0
  333. tb_client/models/entity_list_filter.py +103 -0
  334. tb_client/models/entity_load_error.py +102 -0
  335. tb_client/models/entity_name_filter.py +103 -0
  336. tb_client/models/entity_relation.py +119 -0
  337. tb_client/models/entity_relation_info.py +127 -0
  338. tb_client/models/entity_relations_query.py +103 -0
  339. tb_client/models/entity_subtype.py +107 -0
  340. tb_client/models/entity_table_component.py +133 -0
  341. tb_client/models/entity_type_filter.py +101 -0
  342. tb_client/models/entity_type_load_result.py +111 -0
  343. tb_client/models/entity_type_version_create_config.py +116 -0
  344. tb_client/models/entity_type_version_load_config.py +105 -0
  345. tb_client/models/entity_type_version_load_request.py +107 -0
  346. tb_client/models/entity_version.py +95 -0
  347. tb_client/models/entity_view.py +149 -0
  348. tb_client/models/entity_view_id.py +99 -0
  349. tb_client/models/entity_view_info.py +165 -0
  350. tb_client/models/entity_view_search_query.py +97 -0
  351. tb_client/models/entity_view_search_query_filter.py +122 -0
  352. tb_client/models/entity_view_type_filter.py +95 -0
  353. tb_client/models/error_component.py +98 -0
  354. tb_client/models/error_component_all_of_exception.py +116 -0
  355. tb_client/models/error_component_all_of_exception_cause.py +101 -0
  356. tb_client/models/error_component_all_of_exception_cause_stack_trace.py +103 -0
  357. tb_client/models/error_event_filter.py +96 -0
  358. tb_client/models/escalated_notification_rule_recipients_config.py +92 -0
  359. tb_client/models/event_filter.py +141 -0
  360. tb_client/models/event_id.py +90 -0
  361. tb_client/models/event_info.py +124 -0
  362. tb_client/models/exportable_entity_entity_id.py +95 -0
  363. tb_client/models/failure.py +92 -0
  364. tb_client/models/favicon.py +89 -0
  365. tb_client/models/features_info.py +99 -0
  366. tb_client/models/filter.py +101 -0
  367. tb_client/models/filter_predicate_value_boolean.py +97 -0
  368. tb_client/models/filter_predicate_value_double.py +97 -0
  369. tb_client/models/filter_predicate_value_integer.py +97 -0
  370. tb_client/models/filter_predicate_value_long.py +97 -0
  371. tb_client/models/filter_predicate_value_string.py +97 -0
  372. tb_client/models/fixed_time_window.py +91 -0
  373. tb_client/models/font.py +115 -0
  374. tb_client/models/git_hub_models_chat_model_config.py +126 -0
  375. tb_client/models/git_hub_models_provider_config.py +89 -0
  376. tb_client/models/google_ai_gemini_chat_model_config.py +128 -0
  377. tb_client/models/google_ai_gemini_provider_config.py +89 -0
  378. tb_client/models/google_vertex_ai_gemini_chat_model_config.py +128 -0
  379. tb_client/models/google_vertex_ai_gemini_provider_config.py +95 -0
  380. tb_client/models/group_entity_export_data.py +128 -0
  381. tb_client/models/group_permission.py +142 -0
  382. tb_client/models/group_permission_id.py +99 -0
  383. tb_client/models/group_permission_info.py +167 -0
  384. tb_client/models/has_id_object.py +94 -0
  385. tb_client/models/header_footer.py +106 -0
  386. tb_client/models/heading.py +123 -0
  387. tb_client/models/heading_component.py +155 -0
  388. tb_client/models/history.py +115 -0
  389. tb_client/models/home_dashboard_info.py +95 -0
  390. tb_client/models/home_dashboard_params.py +91 -0
  391. tb_client/models/home_menu_item.py +125 -0
  392. tb_client/models/image_component.py +159 -0
  393. tb_client/models/insets.py +95 -0
  394. tb_client/models/integration.py +163 -0
  395. tb_client/models/integration_converters_info.py +98 -0
  396. tb_client/models/integration_id.py +99 -0
  397. tb_client/models/integration_info.py +143 -0
  398. tb_client/models/integration_lifecycle_event_notification_rule_trigger_config.py +120 -0
  399. tb_client/models/interval.py +101 -0
  400. tb_client/models/job.py +144 -0
  401. tb_client/models/job_configuration.py +126 -0
  402. tb_client/models/job_id.py +99 -0
  403. tb_client/models/job_result.py +132 -0
  404. tb_client/models/json_transport_payload_configuration.py +89 -0
  405. tb_client/models/jwt_pair.py +103 -0
  406. tb_client/models/jwt_settings.py +95 -0
  407. tb_client/models/key_filter.py +111 -0
  408. tb_client/models/key_filter_predicate.py +118 -0
  409. tb_client/models/last_visited_dashboard_info.py +98 -0
  410. tb_client/models/latest_chart_component.py +153 -0
  411. tb_client/models/latest_chart_component_all_of_latest_chart_settings.py +166 -0
  412. tb_client/models/legend_config.py +111 -0
  413. tb_client/models/license_usage_info.py +109 -0
  414. tb_client/models/life_cycle_event_filter.py +108 -0
  415. tb_client/models/line_series_settings.py +167 -0
  416. tb_client/models/login_mobile_info.py +115 -0
  417. tb_client/models/login_request.py +91 -0
  418. tb_client/models/login_response.py +91 -0
  419. tb_client/models/login_white_labeling_params.py +145 -0
  420. tb_client/models/lw_m2_m_bootstrap_server_credential.py +118 -0
  421. tb_client/models/lw_m2_m_server_security_config_default.py +143 -0
  422. tb_client/models/lw_m2m_instance.py +99 -0
  423. tb_client/models/lw_m2m_object.py +107 -0
  424. tb_client/models/lw_m2m_resource_observe.py +99 -0
  425. tb_client/models/lw_m2m_version.py +89 -0
  426. tb_client/models/lwm2m_device_profile_transport_configuration.py +113 -0
  427. tb_client/models/lwm2m_device_transport_configuration.py +107 -0
  428. tb_client/models/mapping.py +103 -0
  429. tb_client/models/menu_item.py +126 -0
  430. tb_client/models/merged_group_permission_info.py +112 -0
  431. tb_client/models/merged_group_type_permission_info.py +99 -0
  432. tb_client/models/merged_user_permissions.py +172 -0
  433. tb_client/models/microsoft_teams_delivery_method_notification_template.py +101 -0
  434. tb_client/models/microsoft_teams_notification_target_config.py +112 -0
  435. tb_client/models/mistral_ai_chat_model_config.py +126 -0
  436. tb_client/models/mistral_ai_provider_config.py +89 -0
  437. tb_client/models/mobile_app.py +144 -0
  438. tb_client/models/mobile_app_bundle.py +137 -0
  439. tb_client/models/mobile_app_bundle_id.py +99 -0
  440. tb_client/models/mobile_app_bundle_info.py +153 -0
  441. tb_client/models/mobile_app_delivery_method_notification_template.py +101 -0
  442. tb_client/models/mobile_app_id.py +99 -0
  443. tb_client/models/mobile_app_notification_delivery_method_config.py +95 -0
  444. tb_client/models/mobile_app_version_info.py +95 -0
  445. tb_client/models/mobile_layout_config.py +97 -0
  446. tb_client/models/mobile_page.py +129 -0
  447. tb_client/models/mobile_redirect_params.py +91 -0
  448. tb_client/models/mobile_self_registration_params.py +165 -0
  449. tb_client/models/mobile_session_info.py +89 -0
  450. tb_client/models/model.py +98 -0
  451. tb_client/models/model_none.py +89 -0
  452. tb_client/models/mqtt_device_profile_transport_configuration.py +107 -0
  453. tb_client/models/mqtt_device_transport_configuration.py +89 -0
  454. tb_client/models/multi_value_map_string_string.py +102 -0
  455. tb_client/models/new_platform_version_notification_rule_trigger_config.py +89 -0
  456. tb_client/models/no_sec_lw_m2_m_bootstrap_server_credential.py +137 -0
  457. tb_client/models/node_connection_info.py +93 -0
  458. tb_client/models/notification.py +162 -0
  459. tb_client/models/notification_delivery_method_config.py +112 -0
  460. tb_client/models/notification_id.py +99 -0
  461. tb_client/models/notification_info.py +101 -0
  462. tb_client/models/notification_pref.py +91 -0
  463. tb_client/models/notification_request.py +161 -0
  464. tb_client/models/notification_request_config.py +100 -0
  465. tb_client/models/notification_request_id.py +99 -0
  466. tb_client/models/notification_request_info.py +176 -0
  467. tb_client/models/notification_request_preview.py +108 -0
  468. tb_client/models/notification_request_stats.py +113 -0
  469. tb_client/models/notification_rule.py +141 -0
  470. tb_client/models/notification_rule_config.py +89 -0
  471. tb_client/models/notification_rule_id.py +99 -0
  472. tb_client/models/notification_rule_info.py +156 -0
  473. tb_client/models/notification_rule_recipients_config.py +116 -0
  474. tb_client/models/notification_rule_trigger_config.py +161 -0
  475. tb_client/models/notification_settings.py +102 -0
  476. tb_client/models/notification_target.py +112 -0
  477. tb_client/models/notification_target_config.py +116 -0
  478. tb_client/models/notification_target_id.py +99 -0
  479. tb_client/models/notification_template.py +121 -0
  480. tb_client/models/notification_template_config.py +118 -0
  481. tb_client/models/notification_template_id.py +99 -0
  482. tb_client/models/numeric_filter_predicate.py +107 -0
  483. tb_client/models/o_auth2_basic_mapper_config.py +114 -0
  484. tb_client/models/o_auth2_client.py +172 -0
  485. tb_client/models/o_auth2_client_id.py +99 -0
  486. tb_client/models/o_auth2_client_info.py +118 -0
  487. tb_client/models/o_auth2_client_login_info.py +93 -0
  488. tb_client/models/o_auth2_client_registration_template.py +136 -0
  489. tb_client/models/o_auth2_client_registration_template_id.py +90 -0
  490. tb_client/models/o_auth2_custom_mapper_config.py +95 -0
  491. tb_client/models/o_auth2_mapper_config.py +112 -0
  492. tb_client/models/object_attributes.py +120 -0
  493. tb_client/models/ollama_auth.py +115 -0
  494. tb_client/models/ollama_chat_model_config.py +126 -0
  495. tb_client/models/ollama_provider_config.py +95 -0
  496. tb_client/models/open_ai_chat_model_config.py +126 -0
  497. tb_client/models/open_ai_provider_config.py +91 -0
  498. tb_client/models/originator_entity_owner_users_filter.py +89 -0
  499. tb_client/models/ota_package.py +194 -0
  500. tb_client/models/ota_package_data.py +103 -0
  501. tb_client/models/ota_package_export_data.py +128 -0
  502. tb_client/models/ota_package_id.py +99 -0
  503. tb_client/models/ota_package_info.py +188 -0
  504. tb_client/models/other_configuration.py +119 -0
  505. tb_client/models/output.py +131 -0
  506. tb_client/models/page_break_component.py +90 -0
  507. tb_client/models/page_data_ai_model.py +111 -0
  508. tb_client/models/page_data_alarm_comment_info.py +111 -0
  509. tb_client/models/page_data_alarm_data.py +111 -0
  510. tb_client/models/page_data_alarm_info.py +111 -0
  511. tb_client/models/page_data_api_key_info.py +111 -0
  512. tb_client/models/page_data_asset.py +111 -0
  513. tb_client/models/page_data_asset_info.py +111 -0
  514. tb_client/models/page_data_asset_profile.py +111 -0
  515. tb_client/models/page_data_asset_profile_info.py +111 -0
  516. tb_client/models/page_data_audit_log.py +111 -0
  517. tb_client/models/page_data_blob_entity_with_customer_info.py +111 -0
  518. tb_client/models/page_data_calculated_field.py +111 -0
  519. tb_client/models/page_data_calculated_field_info.py +111 -0
  520. tb_client/models/page_data_contact_based_object.py +111 -0
  521. tb_client/models/page_data_converter.py +111 -0
  522. tb_client/models/page_data_custom_menu_info.py +111 -0
  523. tb_client/models/page_data_customer.py +111 -0
  524. tb_client/models/page_data_customer_info.py +111 -0
  525. tb_client/models/page_data_dashboard_info.py +111 -0
  526. tb_client/models/page_data_device.py +111 -0
  527. tb_client/models/page_data_device_info.py +111 -0
  528. tb_client/models/page_data_device_profile.py +111 -0
  529. tb_client/models/page_data_device_profile_info.py +111 -0
  530. tb_client/models/page_data_domain_info.py +111 -0
  531. tb_client/models/page_data_edge.py +111 -0
  532. tb_client/models/page_data_edge_event.py +111 -0
  533. tb_client/models/page_data_edge_info.py +111 -0
  534. tb_client/models/page_data_entity_data.py +111 -0
  535. tb_client/models/page_data_entity_group_info.py +111 -0
  536. tb_client/models/page_data_entity_info.py +111 -0
  537. tb_client/models/page_data_entity_subtype.py +111 -0
  538. tb_client/models/page_data_entity_version.py +111 -0
  539. tb_client/models/page_data_entity_view.py +111 -0
  540. tb_client/models/page_data_entity_view_info.py +111 -0
  541. tb_client/models/page_data_event_info.py +111 -0
  542. tb_client/models/page_data_integration.py +111 -0
  543. tb_client/models/page_data_integration_info.py +111 -0
  544. tb_client/models/page_data_job.py +111 -0
  545. tb_client/models/page_data_mobile_app.py +111 -0
  546. tb_client/models/page_data_mobile_app_bundle_info.py +111 -0
  547. tb_client/models/page_data_notification.py +111 -0
  548. tb_client/models/page_data_notification_request_info.py +111 -0
  549. tb_client/models/page_data_notification_rule_info.py +111 -0
  550. tb_client/models/page_data_notification_target.py +111 -0
  551. tb_client/models/page_data_notification_template.py +111 -0
  552. tb_client/models/page_data_o_auth2_client_info.py +111 -0
  553. tb_client/models/page_data_ota_package_info.py +111 -0
  554. tb_client/models/page_data_queue.py +111 -0
  555. tb_client/models/page_data_queue_stats.py +111 -0
  556. tb_client/models/page_data_report.py +111 -0
  557. tb_client/models/page_data_report_info.py +111 -0
  558. tb_client/models/page_data_report_template_info.py +111 -0
  559. tb_client/models/page_data_role.py +111 -0
  560. tb_client/models/page_data_rule_chain.py +111 -0
  561. tb_client/models/page_data_scheduled_report_info.py +111 -0
  562. tb_client/models/page_data_scheduler_event_info.py +111 -0
  563. tb_client/models/page_data_scheduler_event_with_customer_info.py +111 -0
  564. tb_client/models/page_data_secret_info.py +111 -0
  565. tb_client/models/page_data_short_entity_view.py +111 -0
  566. tb_client/models/page_data_string.py +103 -0
  567. tb_client/models/page_data_tb_resource_info.py +111 -0
  568. tb_client/models/page_data_tenant.py +111 -0
  569. tb_client/models/page_data_tenant_info.py +111 -0
  570. tb_client/models/page_data_tenant_profile.py +111 -0
  571. tb_client/models/page_data_trendz_view_config_lite.py +111 -0
  572. tb_client/models/page_data_user.py +111 -0
  573. tb_client/models/page_data_user_email_info.py +111 -0
  574. tb_client/models/page_data_user_info.py +111 -0
  575. tb_client/models/page_data_widget_type_info.py +111 -0
  576. tb_client/models/page_data_widgets_bundle.py +111 -0
  577. tb_client/models/palette.py +93 -0
  578. tb_client/models/palette_settings.py +98 -0
  579. tb_client/models/pdf_report_template_config.py +161 -0
  580. tb_client/models/platform_two_fa_settings.py +130 -0
  581. tb_client/models/platform_users_notification_target_config.py +96 -0
  582. tb_client/models/power_saving_configuration.py +105 -0
  583. tb_client/models/processing_strategy.py +107 -0
  584. tb_client/models/proto_transport_payload_configuration.py +101 -0
  585. tb_client/models/psklw_m2_m_bootstrap_server_credential.py +137 -0
  586. tb_client/models/qr_code_config.py +107 -0
  587. tb_client/models/qr_code_settings.py +133 -0
  588. tb_client/models/qr_code_settings_id.py +90 -0
  589. tb_client/models/queue.py +134 -0
  590. tb_client/models/queue_id.py +99 -0
  591. tb_client/models/queue_stats.py +107 -0
  592. tb_client/models/queue_stats_id.py +99 -0
  593. tb_client/models/rate_limits_notification_rule_trigger_config.py +102 -0
  594. tb_client/models/raw_data_event_filter.py +98 -0
  595. tb_client/models/referenced_entity_key.py +113 -0
  596. tb_client/models/relation_entity_type_filter.py +104 -0
  597. tb_client/models/relation_path_level.py +99 -0
  598. tb_client/models/relation_path_query_dynamic_source_configuration.py +99 -0
  599. tb_client/models/relations_query_filter.py +146 -0
  600. tb_client/models/relations_search_parameters.py +130 -0
  601. tb_client/models/repeating_alarm_condition_spec.py +95 -0
  602. tb_client/models/report.py +141 -0
  603. tb_client/models/report_bar_chart_settings.py +168 -0
  604. tb_client/models/report_bar_chart_with_labels_settings.py +256 -0
  605. tb_client/models/report_component.py +169 -0
  606. tb_client/models/report_doughnut_chart_settings.py +172 -0
  607. tb_client/models/report_id.py +99 -0
  608. tb_client/models/report_info.py +151 -0
  609. tb_client/models/report_job_configuration.py +154 -0
  610. tb_client/models/report_job_result.py +112 -0
  611. tb_client/models/report_latest_chart_settings.py +151 -0
  612. tb_client/models/report_pie_chart_settings.py +180 -0
  613. tb_client/models/report_range_chart_settings.py +255 -0
  614. tb_client/models/report_request.py +118 -0
  615. tb_client/models/report_task_result.py +101 -0
  616. tb_client/models/report_template.py +151 -0
  617. tb_client/models/report_template_config.py +151 -0
  618. tb_client/models/report_template_id.py +99 -0
  619. tb_client/models/report_template_info.py +149 -0
  620. tb_client/models/report_time_series_chart_settings.py +222 -0
  621. tb_client/models/repository_settings.py +119 -0
  622. tb_client/models/repository_settings_info.py +91 -0
  623. tb_client/models/reset_password_email_request.py +89 -0
  624. tb_client/models/reset_password_request.py +91 -0
  625. tb_client/models/resource_export_data.py +129 -0
  626. tb_client/models/resources_shortage_notification_rule_trigger_config.py +96 -0
  627. tb_client/models/rich_text_component.py +121 -0
  628. tb_client/models/role.py +148 -0
  629. tb_client/models/role_id.py +99 -0
  630. tb_client/models/rpc.py +158 -0
  631. tb_client/models/rpc_id.py +99 -0
  632. tb_client/models/rpklw_m2_m_bootstrap_server_credential.py +137 -0
  633. tb_client/models/rule_chain.py +145 -0
  634. tb_client/models/rule_chain_connection_info.py +104 -0
  635. tb_client/models/rule_chain_data.py +111 -0
  636. tb_client/models/rule_chain_debug_event_filter.py +100 -0
  637. tb_client/models/rule_chain_export_data.py +134 -0
  638. tb_client/models/rule_chain_id.py +99 -0
  639. tb_client/models/rule_chain_import_result.py +99 -0
  640. tb_client/models/rule_chain_meta_data.py +129 -0
  641. tb_client/models/rule_chain_output_labels_usage.py +115 -0
  642. tb_client/models/rule_engine_component_lifecycle_event_notification_rule_trigger_config.py +124 -0
  643. tb_client/models/rule_node.py +142 -0
  644. tb_client/models/rule_node_debug_event_filter.py +134 -0
  645. tb_client/models/rule_node_id.py +99 -0
  646. tb_client/models/save_device_with_credentials_request.py +99 -0
  647. tb_client/models/save_ota_package_info_request.py +192 -0
  648. tb_client/models/scheduled_report_info.py +166 -0
  649. tb_client/models/scheduler_event.py +157 -0
  650. tb_client/models/scheduler_event_export_data.py +128 -0
  651. tb_client/models/scheduler_event_filter.py +104 -0
  652. tb_client/models/scheduler_event_id.py +99 -0
  653. tb_client/models/scheduler_event_info.py +150 -0
  654. tb_client/models/scheduler_event_with_customer_info.py +158 -0
  655. tb_client/models/secret.py +123 -0
  656. tb_client/models/secret_id.py +99 -0
  657. tb_client/models/secret_info.py +119 -0
  658. tb_client/models/security_settings.py +104 -0
  659. tb_client/models/self_registration_params.py +175 -0
  660. tb_client/models/share_group_request.py +113 -0
  661. tb_client/models/shared_attributes_setting_snmp_communication_config.py +99 -0
  662. tb_client/models/short_customer_info.py +99 -0
  663. tb_client/models/short_entity_view.py +99 -0
  664. tb_client/models/sign_up_field.py +100 -0
  665. tb_client/models/sign_up_request.py +107 -0
  666. tb_client/models/sign_up_self_registration_params.py +109 -0
  667. tb_client/models/simple_alarm_condition_spec.py +89 -0
  668. tb_client/models/simple_calculated_field_configuration.py +112 -0
  669. tb_client/models/simple_entity.py +91 -0
  670. tb_client/models/single_entity_filter.py +95 -0
  671. tb_client/models/single_entity_version_create_request.py +103 -0
  672. tb_client/models/single_entity_version_load_request.py +107 -0
  673. tb_client/models/slack_conversation.py +107 -0
  674. tb_client/models/slack_delivery_method_notification_template.py +91 -0
  675. tb_client/models/slack_notification_delivery_method_config.py +92 -0
  676. tb_client/models/slack_notification_target_config.py +108 -0
  677. tb_client/models/smpp_sms_provider_configuration.py +146 -0
  678. tb_client/models/sms_delivery_method_notification_template.py +91 -0
  679. tb_client/models/sms_provider_configuration.py +115 -0
  680. tb_client/models/sms_two_fa_account_config.py +103 -0
  681. tb_client/models/sms_two_fa_provider_config.py +104 -0
  682. tb_client/models/snmp_communication_config.py +131 -0
  683. tb_client/models/snmp_device_profile_transport_configuration.py +103 -0
  684. tb_client/models/snmp_device_transport_configuration.py +143 -0
  685. tb_client/models/snmp_mapping.py +103 -0
  686. tb_client/models/solution_install_response.py +111 -0
  687. tb_client/models/specific_time_schedule.py +102 -0
  688. tb_client/models/split_view_component.py +147 -0
  689. tb_client/models/starred_dashboard_info.py +96 -0
  690. tb_client/models/state_entity_filter.py +95 -0
  691. tb_client/models/state_entity_owner_filter.py +100 -0
  692. tb_client/models/statistics_event_filter.py +100 -0
  693. tb_client/models/store_info.py +93 -0
  694. tb_client/models/string_filter_predicate.py +109 -0
  695. tb_client/models/sub_report_component.py +108 -0
  696. tb_client/models/submit_strategy.py +101 -0
  697. tb_client/models/subscription_info.py +139 -0
  698. tb_client/models/success.py +92 -0
  699. tb_client/models/system_administrators_filter.py +89 -0
  700. tb_client/models/system_info.py +99 -0
  701. tb_client/models/system_info_data.py +103 -0
  702. tb_client/models/table_sort_order.py +101 -0
  703. tb_client/models/task_processing_failure_notification_rule_trigger_config.py +89 -0
  704. tb_client/models/task_result.py +119 -0
  705. tb_client/models/tb_chat_request.py +101 -0
  706. tb_client/models/tb_chat_response.py +112 -0
  707. tb_client/models/tb_content.py +109 -0
  708. tb_client/models/tb_image_delete_result.py +116 -0
  709. tb_client/models/tb_resource.py +182 -0
  710. tb_client/models/tb_resource_delete_result.py +106 -0
  711. tb_client/models/tb_resource_id.py +99 -0
  712. tb_client/models/tb_resource_info.py +178 -0
  713. tb_client/models/tb_secret_delete_result.py +106 -0
  714. tb_client/models/tb_text_content.py +92 -0
  715. tb_client/models/tb_user_message.py +98 -0
  716. tb_client/models/telemetry_entity_view.py +95 -0
  717. tb_client/models/telemetry_mapping_configuration.py +124 -0
  718. tb_client/models/telemetry_querying_snmp_communication_config.py +101 -0
  719. tb_client/models/tenant.py +136 -0
  720. tb_client/models/tenant_administrators_filter.py +94 -0
  721. tb_client/models/tenant_id.py +99 -0
  722. tb_client/models/tenant_info.py +138 -0
  723. tb_client/models/tenant_profile.py +111 -0
  724. tb_client/models/tenant_profile_configuration.py +109 -0
  725. tb_client/models/tenant_profile_data.py +103 -0
  726. tb_client/models/tenant_profile_id.py +99 -0
  727. tb_client/models/tenant_profile_queue_configuration.py +118 -0
  728. tb_client/models/tenant_solution_template_details.py +117 -0
  729. tb_client/models/tenant_solution_template_info.py +119 -0
  730. tb_client/models/tenant_solution_template_instructions.py +109 -0
  731. tb_client/models/test_sms_request.py +97 -0
  732. tb_client/models/thingsboard_credentials_expired_response.py +138 -0
  733. tb_client/models/thingsboard_error_response.py +134 -0
  734. tb_client/models/time_series_chart_bar_width.py +93 -0
  735. tb_client/models/time_series_chart_bar_width_settings.py +91 -0
  736. tb_client/models/time_series_chart_grid_settings.py +95 -0
  737. tb_client/models/time_series_chart_key_settings.py +123 -0
  738. tb_client/models/time_series_chart_no_aggregation_bar_width_settings.py +110 -0
  739. tb_client/models/time_series_chart_state_settings.py +114 -0
  740. tb_client/models/time_series_chart_threshold.py +187 -0
  741. tb_client/models/time_series_chart_x_axis_settings.py +134 -0
  742. tb_client/models/time_series_chart_y_axis_settings.py +148 -0
  743. tb_client/models/time_series_immediate_output_strategy.py +99 -0
  744. tb_client/models/time_series_output.py +98 -0
  745. tb_client/models/time_series_output_strategy.py +112 -0
  746. tb_client/models/time_series_rule_chain_output_strategy.py +89 -0
  747. tb_client/models/time_window_configuration.py +101 -0
  748. tb_client/models/timeseries_chart_component.py +159 -0
  749. tb_client/models/timeseries_chart_component_all_of_time_series_chart_settings.py +152 -0
  750. tb_client/models/timeseries_table_component.py +151 -0
  751. tb_client/models/to_core_edqs_request.py +95 -0
  752. tb_client/models/to_device_rpc_request_snmp_communication_config.py +99 -0
  753. tb_client/models/to_server_rpc_request_snmp_communication_config.py +99 -0
  754. tb_client/models/token.py +91 -0
  755. tb_client/models/totp_two_fa_account_config.py +103 -0
  756. tb_client/models/totp_two_fa_provider_config.py +92 -0
  757. tb_client/models/translation_info.py +97 -0
  758. tb_client/models/transport_payload_type_configuration.py +112 -0
  759. tb_client/models/trendz_configuration.py +91 -0
  760. tb_client/models/trendz_healthcheck_result.py +115 -0
  761. tb_client/models/trendz_summary.py +99 -0
  762. tb_client/models/trendz_synchronization_result.py +115 -0
  763. tb_client/models/trendz_usage.py +121 -0
  764. tb_client/models/trendz_view_config.py +94 -0
  765. tb_client/models/trendz_view_config_lite.py +92 -0
  766. tb_client/models/ts_value.py +93 -0
  767. tb_client/models/twilio_sms_provider_configuration.py +95 -0
  768. tb_client/models/two_fa_account_config.py +119 -0
  769. tb_client/models/two_fa_account_config_update_request.py +89 -0
  770. tb_client/models/two_fa_provider_config.py +118 -0
  771. tb_client/models/two_fa_provider_info.py +107 -0
  772. tb_client/models/update_message.py +99 -0
  773. tb_client/models/usage_info.py +141 -0
  774. tb_client/models/user.py +157 -0
  775. tb_client/models/user_activation_link.py +91 -0
  776. tb_client/models/user_dashboards_info.py +111 -0
  777. tb_client/models/user_email_info.py +99 -0
  778. tb_client/models/user_group_list_filter.py +93 -0
  779. tb_client/models/user_id.py +99 -0
  780. tb_client/models/user_info.py +173 -0
  781. tb_client/models/user_list_filter.py +93 -0
  782. tb_client/models/user_mobile_info.py +118 -0
  783. tb_client/models/user_notification_settings.py +102 -0
  784. tb_client/models/user_password_policy.py +107 -0
  785. tb_client/models/user_role_filter.py +93 -0
  786. tb_client/models/users_filter.py +136 -0
  787. tb_client/models/v2_captcha_params.py +95 -0
  788. tb_client/models/v3_captcha_params.py +95 -0
  789. tb_client/models/vendor.py +91 -0
  790. tb_client/models/version_create_config.py +99 -0
  791. tb_client/models/version_create_request.py +124 -0
  792. tb_client/models/version_creation_result.py +103 -0
  793. tb_client/models/version_load_config.py +101 -0
  794. tb_client/models/version_load_request.py +123 -0
  795. tb_client/models/version_load_result.py +105 -0
  796. tb_client/models/versioned_entity_info.py +95 -0
  797. tb_client/models/web_delivery_method_notification_template.py +101 -0
  798. tb_client/models/web_self_registration_params.py +165 -0
  799. tb_client/models/web_view_page.py +97 -0
  800. tb_client/models/white_labeling.py +124 -0
  801. tb_client/models/white_labeling_params.py +127 -0
  802. tb_client/models/widget_bundle_info.py +95 -0
  803. tb_client/models/widget_type.py +128 -0
  804. tb_client/models/widget_type_details.py +144 -0
  805. tb_client/models/widget_type_export_data.py +128 -0
  806. tb_client/models/widget_type_id.py +99 -0
  807. tb_client/models/widget_type_info.py +147 -0
  808. tb_client/models/widgets_bundle.py +135 -0
  809. tb_client/models/widgets_bundle_export_data.py +132 -0
  810. tb_client/models/widgets_bundle_id.py +99 -0
  811. tb_client/models/x509_certificate_chain_provision_configuration.py +94 -0
  812. tb_client/models/x509_lw_m2_m_bootstrap_server_credential.py +137 -0
  813. tb_client/py.typed +0 -0
  814. tb_client/rest.py +264 -0
  815. tbctl/__init__.py +0 -0
  816. tbctl/cli.py +36 -0
  817. tbctl/commands/__init__.py +0 -0
  818. tbctl/commands/_client.py +252 -0
  819. tbctl/commands/attributes.py +70 -0
  820. tbctl/commands/config_cmd.py +73 -0
  821. tbctl/commands/device.py +223 -0
  822. tbctl/commands/ota.py +562 -0
  823. tbctl/commands/telemetry.py +273 -0
  824. tbctl/config.py +31 -0
  825. tbctl-0.2.0.dist-info/METADATA +201 -0
  826. tbctl-0.2.0.dist-info/RECORD +829 -0
  827. tbctl-0.2.0.dist-info/WHEEL +4 -0
  828. tbctl-0.2.0.dist-info/entry_points.txt +2 -0
  829. tbctl-0.2.0.dist-info/licenses/LICENSE +202 -0
@@ -0,0 +1,116 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ ThingsBoard REST API
5
+
6
+ ThingsBoard Professional Edition IoT platform REST API documentation.
7
+
8
+ The version of the OpenAPI document: 4.3.0.1PE
9
+ Contact: info@thingsboard.io
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr, field_validator
22
+ from typing import Any, ClassVar, Dict, List, Optional
23
+ from uuid import UUID
24
+ from tb_client.models.entity_group_id import EntityGroupId
25
+ from tb_client.models.ota_package_id import OtaPackageId
26
+ from typing import Optional, Set
27
+ from typing_extensions import Self
28
+ from pydantic_core import to_jsonable_python
29
+
30
+ class DeviceGroupOtaPackage(BaseModel):
31
+ """
32
+ DeviceGroupOtaPackage
33
+ """ # noqa: E501
34
+ id: Optional[UUID] = None
35
+ group_id: Optional[EntityGroupId] = Field(default=None, alias="groupId")
36
+ ota_package_type: Optional[StrictStr] = Field(default=None, alias="otaPackageType")
37
+ ota_package_id: Optional[OtaPackageId] = Field(default=None, alias="otaPackageId")
38
+ ota_package_update_time: Optional[StrictInt] = Field(default=None, alias="otaPackageUpdateTime")
39
+ __properties: ClassVar[List[str]] = ["id", "groupId", "otaPackageType", "otaPackageId", "otaPackageUpdateTime"]
40
+
41
+ @field_validator('ota_package_type')
42
+ def ota_package_type_validate_enum(cls, value):
43
+ """Validates the enum"""
44
+ if value is None:
45
+ return value
46
+
47
+ if value not in set(['FIRMWARE', 'SOFTWARE']):
48
+ raise ValueError("must be one of enum values ('FIRMWARE', 'SOFTWARE')")
49
+ return value
50
+
51
+ model_config = ConfigDict(
52
+ validate_by_name=True,
53
+ validate_by_alias=True,
54
+ validate_assignment=True,
55
+ protected_namespaces=(),
56
+ )
57
+
58
+
59
+ def to_str(self) -> str:
60
+ """Returns the string representation of the model using alias"""
61
+ return pprint.pformat(self.model_dump(by_alias=True))
62
+
63
+ def to_json(self) -> str:
64
+ """Returns the JSON representation of the model using alias"""
65
+ return json.dumps(to_jsonable_python(self.to_dict()))
66
+
67
+ @classmethod
68
+ def from_json(cls, json_str: str) -> Optional[Self]:
69
+ """Create an instance of DeviceGroupOtaPackage from a JSON string"""
70
+ return cls.from_dict(json.loads(json_str))
71
+
72
+ def to_dict(self) -> Dict[str, Any]:
73
+ """Return the dictionary representation of the model using alias.
74
+
75
+ This has the following differences from calling pydantic's
76
+ `self.model_dump(by_alias=True)`:
77
+
78
+ * `None` is only added to the output dict for nullable fields that
79
+ were set at model initialization. Other fields with value `None`
80
+ are ignored.
81
+ """
82
+ excluded_fields: Set[str] = set([
83
+ ])
84
+
85
+ _dict = self.model_dump(
86
+ by_alias=True,
87
+ exclude=excluded_fields,
88
+ exclude_none=True,
89
+ )
90
+ # override the default output from pydantic by calling `to_dict()` of group_id
91
+ if self.group_id:
92
+ _dict['groupId'] = self.group_id.to_dict()
93
+ # override the default output from pydantic by calling `to_dict()` of ota_package_id
94
+ if self.ota_package_id:
95
+ _dict['otaPackageId'] = self.ota_package_id.to_dict()
96
+ return _dict
97
+
98
+ @classmethod
99
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
100
+ """Create an instance of DeviceGroupOtaPackage from a dict"""
101
+ if obj is None:
102
+ return None
103
+
104
+ if not isinstance(obj, dict):
105
+ return cls.model_validate(obj)
106
+
107
+ _obj = cls.model_validate({
108
+ "id": obj.get("id"),
109
+ "groupId": EntityGroupId.from_dict(obj["groupId"]) if obj.get("groupId") is not None else None,
110
+ "otaPackageType": obj.get("otaPackageType"),
111
+ "otaPackageId": OtaPackageId.from_dict(obj["otaPackageId"]) if obj.get("otaPackageId") is not None else None,
112
+ "otaPackageUpdateTime": obj.get("otaPackageUpdateTime")
113
+ })
114
+ return _obj
115
+
116
+
@@ -0,0 +1,99 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ ThingsBoard REST API
5
+
6
+ ThingsBoard Professional Edition IoT platform REST API documentation.
7
+
8
+ The version of the OpenAPI document: 4.3.0.1PE
9
+ Contact: info@thingsboard.io
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
22
+ from typing import Any, ClassVar, Dict, List
23
+ from uuid import UUID
24
+ from typing import Optional, Set
25
+ from typing_extensions import Self
26
+ from pydantic_core import to_jsonable_python
27
+
28
+ class DeviceId(BaseModel):
29
+ """
30
+ DeviceId
31
+ """ # noqa: E501
32
+ id: UUID = Field(description="ID of the entity, time-based UUID v1", json_schema_extra={"examples": ["784f394c-42b6-435a-983c-b7beff2784f9"]})
33
+ entity_type: StrictStr = Field(description="string", alias="entityType", json_schema_extra={"examples": ["DEVICE"]})
34
+ __properties: ClassVar[List[str]] = ["id", "entityType"]
35
+
36
+ @field_validator('entity_type')
37
+ def entity_type_validate_enum(cls, value):
38
+ """Validates the enum"""
39
+ if value not in set(['DEVICE']):
40
+ raise ValueError("must be one of enum values ('DEVICE')")
41
+ return value
42
+
43
+ model_config = ConfigDict(
44
+ validate_by_name=True,
45
+ validate_by_alias=True,
46
+ validate_assignment=True,
47
+ protected_namespaces=(),
48
+ )
49
+
50
+
51
+ def to_str(self) -> str:
52
+ """Returns the string representation of the model using alias"""
53
+ return pprint.pformat(self.model_dump(by_alias=True))
54
+
55
+ def to_json(self) -> str:
56
+ """Returns the JSON representation of the model using alias"""
57
+ return json.dumps(to_jsonable_python(self.to_dict()))
58
+
59
+ @classmethod
60
+ def from_json(cls, json_str: str) -> Optional[Self]:
61
+ """Create an instance of DeviceId from a JSON string"""
62
+ return cls.from_dict(json.loads(json_str))
63
+
64
+ def to_dict(self) -> Dict[str, Any]:
65
+ """Return the dictionary representation of the model using alias.
66
+
67
+ This has the following differences from calling pydantic's
68
+ `self.model_dump(by_alias=True)`:
69
+
70
+ * `None` is only added to the output dict for nullable fields that
71
+ were set at model initialization. Other fields with value `None`
72
+ are ignored.
73
+ """
74
+ excluded_fields: Set[str] = set([
75
+ ])
76
+
77
+ _dict = self.model_dump(
78
+ by_alias=True,
79
+ exclude=excluded_fields,
80
+ exclude_none=True,
81
+ )
82
+ return _dict
83
+
84
+ @classmethod
85
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
86
+ """Create an instance of DeviceId from a dict"""
87
+ if obj is None:
88
+ return None
89
+
90
+ if not isinstance(obj, dict):
91
+ return cls.model_validate(obj)
92
+
93
+ _obj = cls.model_validate({
94
+ "id": obj.get("id"),
95
+ "entityType": obj.get("entityType")
96
+ })
97
+ return _obj
98
+
99
+
@@ -0,0 +1,179 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ ThingsBoard REST API
5
+
6
+ ThingsBoard Professional Edition IoT platform REST API documentation.
7
+
8
+ The version of the OpenAPI document: 4.3.0.1PE
9
+ Contact: info@thingsboard.io
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr
22
+ from typing import Any, ClassVar, Dict, List, Optional
23
+ from tb_client.models.customer_id import CustomerId
24
+ from tb_client.models.device_data import DeviceData
25
+ from tb_client.models.device_id import DeviceId
26
+ from tb_client.models.device_profile_id import DeviceProfileId
27
+ from tb_client.models.entity_id import EntityId
28
+ from tb_client.models.entity_info import EntityInfo
29
+ from tb_client.models.ota_package_id import OtaPackageId
30
+ from tb_client.models.tenant_id import TenantId
31
+ from typing import Optional, Set
32
+ from typing_extensions import Self
33
+ from pydantic_core import to_jsonable_python
34
+
35
+ class DeviceInfo(BaseModel):
36
+ """
37
+ DeviceInfo
38
+ """ # noqa: E501
39
+ id: Optional[DeviceId] = Field(default=None, description="JSON object with the Device Id. Specify this field to update the Device. Referencing non-existing Device Id will cause error. Omit this field to create new Device.")
40
+ created_time: Optional[StrictInt] = Field(default=None, description="Timestamp of the device creation, in milliseconds", alias="createdTime", json_schema_extra={"examples": [1609459200000]})
41
+ tenant_id: Optional[TenantId] = Field(default=None, description="JSON object with Tenant Id. Use 'assignDeviceToTenant' to change the Tenant Id.", alias="tenantId")
42
+ customer_id: Optional[CustomerId] = Field(default=None, description="JSON object with Customer Id. Use 'assignDeviceToCustomer' to change the Customer Id.", alias="customerId")
43
+ name: Optional[StrictStr] = Field(default=None, description="Unique Device Name in scope of Tenant", json_schema_extra={"examples": ["A4B72CCDFF33"]})
44
+ type: Optional[StrictStr] = Field(default=None, description="Device Profile Name", json_schema_extra={"examples": ["Temperature Sensor"]})
45
+ label: Optional[StrictStr] = Field(default=None, description="Label that may be used in widgets", json_schema_extra={"examples": ["Room 234 Sensor"]})
46
+ device_profile_id: DeviceProfileId = Field(description="JSON object with Device Profile Id.", alias="deviceProfileId")
47
+ firmware_id: Optional[OtaPackageId] = Field(default=None, description="JSON object with Ota Package Id.", alias="firmwareId")
48
+ software_id: Optional[OtaPackageId] = Field(default=None, description="JSON object with Ota Package Id.", alias="softwareId")
49
+ version: Optional[StrictInt] = None
50
+ owner_name: Optional[StrictStr] = Field(default=None, description="Owner name", alias="ownerName")
51
+ groups: Optional[List[EntityInfo]] = Field(default=None, description="Groups")
52
+ active: Optional[StrictBool] = Field(default=None, description="Device active flag.")
53
+ device_data: Optional[DeviceData] = Field(default=None, description="JSON object with content specific to type of transport in the device profile.", alias="deviceData")
54
+ owner_id: Optional[EntityId] = Field(default=None, description="JSON object with Customer or Tenant Id", alias="ownerId")
55
+ additional_info: Optional[Any] = Field(default=None, description="Additional parameters of the device", alias="additionalInfo")
56
+ __properties: ClassVar[List[str]] = ["id", "createdTime", "tenantId", "customerId", "name", "type", "label", "deviceProfileId", "firmwareId", "softwareId", "version", "ownerName", "groups", "active", "deviceData", "ownerId", "additionalInfo"]
57
+
58
+ model_config = ConfigDict(
59
+ validate_by_name=True,
60
+ validate_by_alias=True,
61
+ validate_assignment=True,
62
+ protected_namespaces=(),
63
+ )
64
+
65
+
66
+ def to_str(self) -> str:
67
+ """Returns the string representation of the model using alias"""
68
+ return pprint.pformat(self.model_dump(by_alias=True))
69
+
70
+ def to_json(self) -> str:
71
+ """Returns the JSON representation of the model using alias"""
72
+ return json.dumps(to_jsonable_python(self.to_dict()))
73
+
74
+ @classmethod
75
+ def from_json(cls, json_str: str) -> Optional[Self]:
76
+ """Create an instance of DeviceInfo from a JSON string"""
77
+ return cls.from_dict(json.loads(json_str))
78
+
79
+ def to_dict(self) -> Dict[str, Any]:
80
+ """Return the dictionary representation of the model using alias.
81
+
82
+ This has the following differences from calling pydantic's
83
+ `self.model_dump(by_alias=True)`:
84
+
85
+ * `None` is only added to the output dict for nullable fields that
86
+ were set at model initialization. Other fields with value `None`
87
+ are ignored.
88
+ * OpenAPI `readOnly` fields are excluded.
89
+ * OpenAPI `readOnly` fields are excluded.
90
+ * OpenAPI `readOnly` fields are excluded.
91
+ * OpenAPI `readOnly` fields are excluded.
92
+ * OpenAPI `readOnly` fields are excluded.
93
+ * OpenAPI `readOnly` fields are excluded.
94
+ * OpenAPI `readOnly` fields are excluded.
95
+ """
96
+ excluded_fields: Set[str] = set([
97
+ "created_time",
98
+ "tenant_id",
99
+ "customer_id",
100
+ "owner_name",
101
+ "groups",
102
+ "active",
103
+ "owner_id",
104
+ ])
105
+
106
+ _dict = self.model_dump(
107
+ by_alias=True,
108
+ exclude=excluded_fields,
109
+ exclude_none=True,
110
+ )
111
+ # override the default output from pydantic by calling `to_dict()` of id
112
+ if self.id:
113
+ _dict['id'] = self.id.to_dict()
114
+ # override the default output from pydantic by calling `to_dict()` of tenant_id
115
+ if self.tenant_id:
116
+ _dict['tenantId'] = self.tenant_id.to_dict()
117
+ # override the default output from pydantic by calling `to_dict()` of customer_id
118
+ if self.customer_id:
119
+ _dict['customerId'] = self.customer_id.to_dict()
120
+ # override the default output from pydantic by calling `to_dict()` of device_profile_id
121
+ if self.device_profile_id:
122
+ _dict['deviceProfileId'] = self.device_profile_id.to_dict()
123
+ # override the default output from pydantic by calling `to_dict()` of firmware_id
124
+ if self.firmware_id:
125
+ _dict['firmwareId'] = self.firmware_id.to_dict()
126
+ # override the default output from pydantic by calling `to_dict()` of software_id
127
+ if self.software_id:
128
+ _dict['softwareId'] = self.software_id.to_dict()
129
+ # override the default output from pydantic by calling `to_dict()` of each item in groups (list)
130
+ _items = []
131
+ if self.groups:
132
+ for _item_groups in self.groups:
133
+ if _item_groups:
134
+ _items.append(_item_groups.to_dict())
135
+ _dict['groups'] = _items
136
+ # override the default output from pydantic by calling `to_dict()` of device_data
137
+ if self.device_data:
138
+ _dict['deviceData'] = self.device_data.to_dict()
139
+ # override the default output from pydantic by calling `to_dict()` of owner_id
140
+ if self.owner_id:
141
+ _dict['ownerId'] = self.owner_id.to_dict()
142
+ # set to None if additional_info (nullable) is None
143
+ # and model_fields_set contains the field
144
+ if self.additional_info is None and "additional_info" in self.model_fields_set:
145
+ _dict['additionalInfo'] = None
146
+
147
+ return _dict
148
+
149
+ @classmethod
150
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
151
+ """Create an instance of DeviceInfo from a dict"""
152
+ if obj is None:
153
+ return None
154
+
155
+ if not isinstance(obj, dict):
156
+ return cls.model_validate(obj)
157
+
158
+ _obj = cls.model_validate({
159
+ "id": DeviceId.from_dict(obj["id"]) if obj.get("id") is not None else None,
160
+ "createdTime": obj.get("createdTime"),
161
+ "tenantId": TenantId.from_dict(obj["tenantId"]) if obj.get("tenantId") is not None else None,
162
+ "customerId": CustomerId.from_dict(obj["customerId"]) if obj.get("customerId") is not None else None,
163
+ "name": obj.get("name"),
164
+ "type": obj.get("type"),
165
+ "label": obj.get("label"),
166
+ "deviceProfileId": DeviceProfileId.from_dict(obj["deviceProfileId"]) if obj.get("deviceProfileId") is not None else None,
167
+ "firmwareId": OtaPackageId.from_dict(obj["firmwareId"]) if obj.get("firmwareId") is not None else None,
168
+ "softwareId": OtaPackageId.from_dict(obj["softwareId"]) if obj.get("softwareId") is not None else None,
169
+ "version": obj.get("version"),
170
+ "ownerName": obj.get("ownerName"),
171
+ "groups": [EntityInfo.from_dict(_item) for _item in obj["groups"]] if obj.get("groups") is not None else None,
172
+ "active": obj.get("active"),
173
+ "deviceData": DeviceData.from_dict(obj["deviceData"]) if obj.get("deviceData") is not None else None,
174
+ "ownerId": EntityId.from_dict(obj["ownerId"]) if obj.get("ownerId") is not None else None,
175
+ "additionalInfo": obj.get("additionalInfo")
176
+ })
177
+ return _obj
178
+
179
+
@@ -0,0 +1,189 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ ThingsBoard REST API
5
+
6
+ ThingsBoard Professional Edition IoT platform REST API documentation.
7
+
8
+ The version of the OpenAPI document: 4.3.0.1PE
9
+ Contact: info@thingsboard.io
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr, field_validator
22
+ from typing import Any, ClassVar, Dict, List, Optional
23
+ from tb_client.models.dashboard_id import DashboardId
24
+ from tb_client.models.device_profile_data import DeviceProfileData
25
+ from tb_client.models.device_profile_id import DeviceProfileId
26
+ from tb_client.models.ota_package_id import OtaPackageId
27
+ from tb_client.models.rule_chain_id import RuleChainId
28
+ from tb_client.models.tenant_id import TenantId
29
+ from typing import Optional, Set
30
+ from typing_extensions import Self
31
+ from pydantic_core import to_jsonable_python
32
+
33
+ class DeviceProfile(BaseModel):
34
+ """
35
+ A JSON value representing the device profile.
36
+ """ # noqa: E501
37
+ id: Optional[DeviceProfileId] = Field(default=None, description="JSON object with the device profile Id. Specify this field to update the device profile. Referencing non-existing device profile Id will cause error. Omit this field to create new device profile.")
38
+ created_time: Optional[StrictInt] = Field(default=None, description="Timestamp of the profile creation, in milliseconds", alias="createdTime", json_schema_extra={"examples": [1609459200000]})
39
+ tenant_id: Optional[TenantId] = Field(default=None, description="JSON object with Tenant Id that owns the profile.", alias="tenantId")
40
+ name: Optional[StrictStr] = Field(default=None, description="Unique Device Profile Name in scope of Tenant.", json_schema_extra={"examples": ["Moisture Sensor"]})
41
+ description: Optional[StrictStr] = Field(default=None, description="Device Profile description. ")
42
+ image: Optional[StrictStr] = Field(default=None, description="Either URL or Base64 data of the icon. Used in the mobile application to visualize set of device profiles in the grid view. ")
43
+ type: Optional[StrictStr] = Field(default=None, description="Type of the profile. Always 'DEFAULT' for now. Reserved for future use.")
44
+ transport_type: Optional[StrictStr] = Field(default=None, description="Type of the transport used to connect the device. Default transport supports HTTP, CoAP and MQTT.", alias="transportType")
45
+ provision_type: Optional[StrictStr] = Field(default=None, description="Provisioning strategy.", alias="provisionType")
46
+ default_rule_chain_id: Optional[RuleChainId] = Field(default=None, description="Reference to the rule chain. If present, the specified rule chain will be used to process all messages related to device, including telemetry, attribute updates, etc. Otherwise, the root rule chain will be used to process those messages.", alias="defaultRuleChainId")
47
+ default_dashboard_id: Optional[DashboardId] = Field(default=None, description="Reference to the dashboard. Used in the mobile application to open the default dashboard when user navigates to device details.", alias="defaultDashboardId")
48
+ default_queue_name: Optional[StrictStr] = Field(default=None, description="Rule engine queue name. If present, the specified queue will be used to store all unprocessed messages related to device, including telemetry, attribute updates, etc. Otherwise, the 'Main' queue will be used to store those messages.", alias="defaultQueueName")
49
+ provision_device_key: Optional[StrictStr] = Field(default=None, description="Unique provisioning key used by 'Device Provisioning' feature.", alias="provisionDeviceKey")
50
+ firmware_id: Optional[OtaPackageId] = Field(default=None, description="Reference to the firmware OTA package. If present, the specified package will be used as default device firmware. ", alias="firmwareId")
51
+ software_id: Optional[OtaPackageId] = Field(default=None, description="Reference to the software OTA package. If present, the specified package will be used as default device software. ", alias="softwareId")
52
+ default_edge_rule_chain_id: Optional[RuleChainId] = Field(default=None, description="Reference to the edge rule chain. If present, the specified edge rule chain will be used on the edge to process all messages related to device, including telemetry, attribute updates, etc. Otherwise, the edge root rule chain will be used to process those messages.", alias="defaultEdgeRuleChainId")
53
+ version: Optional[StrictInt] = None
54
+ default: Optional[StrictBool] = Field(default=None, description="Used to mark the default profile. Default profile is used when the device profile is not specified during device creation.")
55
+ profile_data: Optional[DeviceProfileData] = Field(default=None, description="Complex JSON object that includes addition device profile configuration (transport, alarm rules, etc).", alias="profileData")
56
+ __properties: ClassVar[List[str]] = ["id", "createdTime", "tenantId", "name", "description", "image", "type", "transportType", "provisionType", "defaultRuleChainId", "defaultDashboardId", "defaultQueueName", "provisionDeviceKey", "firmwareId", "softwareId", "defaultEdgeRuleChainId", "version", "default", "profileData"]
57
+
58
+ @field_validator('type')
59
+ def type_validate_enum(cls, value):
60
+ """Validates the enum"""
61
+ if value is None:
62
+ return value
63
+
64
+ if value not in set(['DEFAULT']):
65
+ raise ValueError("must be one of enum values ('DEFAULT')")
66
+ return value
67
+
68
+ @field_validator('transport_type')
69
+ def transport_type_validate_enum(cls, value):
70
+ """Validates the enum"""
71
+ if value is None:
72
+ return value
73
+
74
+ if value not in set(['DEFAULT', 'MQTT', 'COAP', 'LWM2M', 'SNMP']):
75
+ raise ValueError("must be one of enum values ('DEFAULT', 'MQTT', 'COAP', 'LWM2M', 'SNMP')")
76
+ return value
77
+
78
+ @field_validator('provision_type')
79
+ def provision_type_validate_enum(cls, value):
80
+ """Validates the enum"""
81
+ if value is None:
82
+ return value
83
+
84
+ if value not in set(['DISABLED', 'ALLOW_CREATE_NEW_DEVICES', 'CHECK_PRE_PROVISIONED_DEVICES', 'X509_CERTIFICATE_CHAIN']):
85
+ raise ValueError("must be one of enum values ('DISABLED', 'ALLOW_CREATE_NEW_DEVICES', 'CHECK_PRE_PROVISIONED_DEVICES', 'X509_CERTIFICATE_CHAIN')")
86
+ return value
87
+
88
+ model_config = ConfigDict(
89
+ validate_by_name=True,
90
+ validate_by_alias=True,
91
+ validate_assignment=True,
92
+ protected_namespaces=(),
93
+ )
94
+
95
+
96
+ def to_str(self) -> str:
97
+ """Returns the string representation of the model using alias"""
98
+ return pprint.pformat(self.model_dump(by_alias=True))
99
+
100
+ def to_json(self) -> str:
101
+ """Returns the JSON representation of the model using alias"""
102
+ return json.dumps(to_jsonable_python(self.to_dict()))
103
+
104
+ @classmethod
105
+ def from_json(cls, json_str: str) -> Optional[Self]:
106
+ """Create an instance of DeviceProfile from a JSON string"""
107
+ return cls.from_dict(json.loads(json_str))
108
+
109
+ def to_dict(self) -> Dict[str, Any]:
110
+ """Return the dictionary representation of the model using alias.
111
+
112
+ This has the following differences from calling pydantic's
113
+ `self.model_dump(by_alias=True)`:
114
+
115
+ * `None` is only added to the output dict for nullable fields that
116
+ were set at model initialization. Other fields with value `None`
117
+ are ignored.
118
+ * OpenAPI `readOnly` fields are excluded.
119
+ * OpenAPI `readOnly` fields are excluded.
120
+ """
121
+ excluded_fields: Set[str] = set([
122
+ "created_time",
123
+ "tenant_id",
124
+ ])
125
+
126
+ _dict = self.model_dump(
127
+ by_alias=True,
128
+ exclude=excluded_fields,
129
+ exclude_none=True,
130
+ )
131
+ # override the default output from pydantic by calling `to_dict()` of id
132
+ if self.id:
133
+ _dict['id'] = self.id.to_dict()
134
+ # override the default output from pydantic by calling `to_dict()` of tenant_id
135
+ if self.tenant_id:
136
+ _dict['tenantId'] = self.tenant_id.to_dict()
137
+ # override the default output from pydantic by calling `to_dict()` of default_rule_chain_id
138
+ if self.default_rule_chain_id:
139
+ _dict['defaultRuleChainId'] = self.default_rule_chain_id.to_dict()
140
+ # override the default output from pydantic by calling `to_dict()` of default_dashboard_id
141
+ if self.default_dashboard_id:
142
+ _dict['defaultDashboardId'] = self.default_dashboard_id.to_dict()
143
+ # override the default output from pydantic by calling `to_dict()` of firmware_id
144
+ if self.firmware_id:
145
+ _dict['firmwareId'] = self.firmware_id.to_dict()
146
+ # override the default output from pydantic by calling `to_dict()` of software_id
147
+ if self.software_id:
148
+ _dict['softwareId'] = self.software_id.to_dict()
149
+ # override the default output from pydantic by calling `to_dict()` of default_edge_rule_chain_id
150
+ if self.default_edge_rule_chain_id:
151
+ _dict['defaultEdgeRuleChainId'] = self.default_edge_rule_chain_id.to_dict()
152
+ # override the default output from pydantic by calling `to_dict()` of profile_data
153
+ if self.profile_data:
154
+ _dict['profileData'] = self.profile_data.to_dict()
155
+ return _dict
156
+
157
+ @classmethod
158
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
159
+ """Create an instance of DeviceProfile from a dict"""
160
+ if obj is None:
161
+ return None
162
+
163
+ if not isinstance(obj, dict):
164
+ return cls.model_validate(obj)
165
+
166
+ _obj = cls.model_validate({
167
+ "id": DeviceProfileId.from_dict(obj["id"]) if obj.get("id") is not None else None,
168
+ "createdTime": obj.get("createdTime"),
169
+ "tenantId": TenantId.from_dict(obj["tenantId"]) if obj.get("tenantId") is not None else None,
170
+ "name": obj.get("name"),
171
+ "description": obj.get("description"),
172
+ "image": obj.get("image"),
173
+ "type": obj.get("type"),
174
+ "transportType": obj.get("transportType"),
175
+ "provisionType": obj.get("provisionType"),
176
+ "defaultRuleChainId": RuleChainId.from_dict(obj["defaultRuleChainId"]) if obj.get("defaultRuleChainId") is not None else None,
177
+ "defaultDashboardId": DashboardId.from_dict(obj["defaultDashboardId"]) if obj.get("defaultDashboardId") is not None else None,
178
+ "defaultQueueName": obj.get("defaultQueueName"),
179
+ "provisionDeviceKey": obj.get("provisionDeviceKey"),
180
+ "firmwareId": OtaPackageId.from_dict(obj["firmwareId"]) if obj.get("firmwareId") is not None else None,
181
+ "softwareId": OtaPackageId.from_dict(obj["softwareId"]) if obj.get("softwareId") is not None else None,
182
+ "defaultEdgeRuleChainId": RuleChainId.from_dict(obj["defaultEdgeRuleChainId"]) if obj.get("defaultEdgeRuleChainId") is not None else None,
183
+ "version": obj.get("version"),
184
+ "default": obj.get("default"),
185
+ "profileData": DeviceProfileData.from_dict(obj["profileData"]) if obj.get("profileData") is not None else None
186
+ })
187
+ return _obj
188
+
189
+