tesla-api-sdk 1.0.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. tesla_api_sdk-1.0.0.dist-info/METADATA +145 -0
  2. tesla_api_sdk-1.0.0.dist-info/RECORD +119 -0
  3. tesla_api_sdk-1.0.0.dist-info/WHEEL +5 -0
  4. tesla_api_sdk-1.0.0.dist-info/licenses/LICENSE +28 -0
  5. tesla_api_sdk-1.0.0.dist-info/top_level.txt +1 -0
  6. teslafleetmanagementapi/__init__.py +13 -0
  7. teslafleetmanagementapi/api_helper.py +19 -0
  8. teslafleetmanagementapi/configuration.py +270 -0
  9. teslafleetmanagementapi/controllers/__init__.py +11 -0
  10. teslafleetmanagementapi/controllers/base_controller.py +70 -0
  11. teslafleetmanagementapi/controllers/charging_controller.py +140 -0
  12. teslafleetmanagementapi/controllers/energy_controller.py +572 -0
  13. teslafleetmanagementapi/controllers/oauth_authorization_controller.py +165 -0
  14. teslafleetmanagementapi/controllers/partner_controller.py +181 -0
  15. teslafleetmanagementapi/controllers/user_controller.py +158 -0
  16. teslafleetmanagementapi/controllers/vehicles_controller.py +832 -0
  17. teslafleetmanagementapi/exceptions/__init__.py +6 -0
  18. teslafleetmanagementapi/exceptions/api_exception.py +36 -0
  19. teslafleetmanagementapi/exceptions/oauth_provider_exception.py +75 -0
  20. teslafleetmanagementapi/http/__init__.py +11 -0
  21. teslafleetmanagementapi/http/api_response.py +67 -0
  22. teslafleetmanagementapi/http/auth/__init__.py +6 -0
  23. teslafleetmanagementapi/http/auth/bearer_auth.py +103 -0
  24. teslafleetmanagementapi/http/auth/oauth_2.py +311 -0
  25. teslafleetmanagementapi/http/http_call_back.py +20 -0
  26. teslafleetmanagementapi/http/http_client_provider.py +23 -0
  27. teslafleetmanagementapi/http/http_method_enum.py +25 -0
  28. teslafleetmanagementapi/http/http_request.py +55 -0
  29. teslafleetmanagementapi/http/http_response.py +45 -0
  30. teslafleetmanagementapi/http/proxy_settings.py +50 -0
  31. teslafleetmanagementapi/logging/__init__.py +6 -0
  32. teslafleetmanagementapi/logging/configuration/__init__.py +5 -0
  33. teslafleetmanagementapi/logging/configuration/api_logging_configuration.py +398 -0
  34. teslafleetmanagementapi/logging/sdk_logger.py +28 -0
  35. teslafleetmanagementapi/models/__init__.py +85 -0
  36. teslafleetmanagementapi/models/api_1_dx_vehicles_options_response.py +110 -0
  37. teslafleetmanagementapi/models/api_1_dx_warranty_details_response.py +110 -0
  38. teslafleetmanagementapi/models/api_1_vehicles_mobile_enabled_response.py +109 -0
  39. teslafleetmanagementapi/models/api_1_vehicles_nearby_charging_sites_response.py +109 -0
  40. teslafleetmanagementapi/models/api_1_vehicles_response.py +162 -0
  41. teslafleetmanagementapi/models/api_1_vehicles_response_get_vehicle.py +109 -0
  42. teslafleetmanagementapi/models/api_1_vehicles_wake_up_response.py +109 -0
  43. teslafleetmanagementapi/models/backup_request.py +92 -0
  44. teslafleetmanagementapi/models/backup_response.py +95 -0
  45. teslafleetmanagementapi/models/calendar_history_response.py +96 -0
  46. teslafleetmanagementapi/models/charge_duration.py +92 -0
  47. teslafleetmanagementapi/models/charge_history.py +125 -0
  48. teslafleetmanagementapi/models/charge_history_response.py +96 -0
  49. teslafleetmanagementapi/models/charge_start_time.py +92 -0
  50. teslafleetmanagementapi/models/charging_dimension.py +128 -0
  51. teslafleetmanagementapi/models/charging_fee.py +641 -0
  52. teslafleetmanagementapi/models/charging_history_data.py +98 -0
  53. teslafleetmanagementapi/models/charging_history_item.py +336 -0
  54. teslafleetmanagementapi/models/charging_history_response.py +96 -0
  55. teslafleetmanagementapi/models/charging_invoice.py +151 -0
  56. teslafleetmanagementapi/models/charging_location.py +293 -0
  57. teslafleetmanagementapi/models/charging_period.py +136 -0
  58. teslafleetmanagementapi/models/charging_session.py +355 -0
  59. teslafleetmanagementapi/models/charging_sessions_data.py +182 -0
  60. teslafleetmanagementapi/models/charging_sessions_response.py +96 -0
  61. teslafleetmanagementapi/models/default_real_mode.py +45 -0
  62. teslafleetmanagementapi/models/driver.py +289 -0
  63. teslafleetmanagementapi/models/drivers_response.py +135 -0
  64. teslafleetmanagementapi/models/enterprise_payer_request.py +141 -0
  65. teslafleetmanagementapi/models/event.py +107 -0
  66. teslafleetmanagementapi/models/fleet_status_request.py +105 -0
  67. teslafleetmanagementapi/models/fleet_telemetry_error.py +118 -0
  68. teslafleetmanagementapi/models/fleet_telemetry_errors_response.py +96 -0
  69. teslafleetmanagementapi/models/fleet_telemetry_jws_request.py +128 -0
  70. teslafleetmanagementapi/models/generic_update_response.py +95 -0
  71. teslafleetmanagementapi/models/kind.py +45 -0
  72. teslafleetmanagementapi/models/kind_get_wall_connector_charging_history.py +42 -0
  73. teslafleetmanagementapi/models/live_status_response.py +96 -0
  74. teslafleetmanagementapi/models/location.py +128 -0
  75. teslafleetmanagementapi/models/location_1.py +128 -0
  76. teslafleetmanagementapi/models/me_response.py +95 -0
  77. teslafleetmanagementapi/models/mobile_enabled.py +128 -0
  78. teslafleetmanagementapi/models/oauth_provider_error.py +67 -0
  79. teslafleetmanagementapi/models/oauth_token.py +115 -0
  80. teslafleetmanagementapi/models/off_grid_vehicle_charging_reserve_request.py +95 -0
  81. teslafleetmanagementapi/models/operation_request.py +93 -0
  82. teslafleetmanagementapi/models/orders_response.py +111 -0
  83. teslafleetmanagementapi/models/pagination.py +225 -0
  84. teslafleetmanagementapi/models/price_component.py +151 -0
  85. teslafleetmanagementapi/models/products_response.py +128 -0
  86. teslafleetmanagementapi/models/public_key_response.py +96 -0
  87. teslafleetmanagementapi/models/region_response.py +96 -0
  88. teslafleetmanagementapi/models/register_partner_request.py +92 -0
  89. teslafleetmanagementapi/models/register_partner_response.py +96 -0
  90. teslafleetmanagementapi/models/response.py +105 -0
  91. teslafleetmanagementapi/models/response_1.py +92 -0
  92. teslafleetmanagementapi/models/response_2.py +95 -0
  93. teslafleetmanagementapi/models/response_3.py +164 -0
  94. teslafleetmanagementapi/models/response_api_1_dx_vehicles_options_response.py +112 -0
  95. teslafleetmanagementapi/models/response_api_1_dx_warranty_details_response.py +169 -0
  96. teslafleetmanagementapi/models/response_calendar_history_response.py +110 -0
  97. teslafleetmanagementapi/models/response_charge_history_response.py +98 -0
  98. teslafleetmanagementapi/models/response_fleet_telemetry_errors_response.py +98 -0
  99. teslafleetmanagementapi/models/response_live_status_response.py +310 -0
  100. teslafleetmanagementapi/models/response_me_response.py +131 -0
  101. teslafleetmanagementapi/models/response_orders_response.py +209 -0
  102. teslafleetmanagementapi/models/response_public_key_response.py +92 -0
  103. teslafleetmanagementapi/models/response_region_response.py +105 -0
  104. teslafleetmanagementapi/models/response_register_partner_response.py +331 -0
  105. teslafleetmanagementapi/models/signaling.py +118 -0
  106. teslafleetmanagementapi/models/simple_ok_response.py +105 -0
  107. teslafleetmanagementapi/models/site_info_response.py +105 -0
  108. teslafleetmanagementapi/models/storm_mode_request.py +92 -0
  109. teslafleetmanagementapi/models/tariff_element.py +136 -0
  110. teslafleetmanagementapi/models/tariffs.py +136 -0
  111. teslafleetmanagementapi/models/time_of_use_settings_request.py +95 -0
  112. teslafleetmanagementapi/models/total_cost.py +151 -0
  113. teslafleetmanagementapi/models/tou_settings.py +105 -0
  114. teslafleetmanagementapi/models/vehicle_base.py +266 -0
  115. teslafleetmanagementapi/models/vehicle_option.py +178 -0
  116. teslafleetmanagementapi/models/warranty_item.py +249 -0
  117. teslafleetmanagementapi/teslafleetmanagementapi_client.py +128 -0
  118. teslafleetmanagementapi/utilities/__init__.py +6 -0
  119. teslafleetmanagementapi/utilities/file_wrapper.py +45 -0
@@ -0,0 +1,109 @@
1
+ """teslafleetmanagementapi.
2
+
3
+ This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
4
+ """
5
+
6
+ # ruff: noqa: E501
7
+ from teslafleetmanagementapi.api_helper import (
8
+ APIHelper,
9
+ )
10
+ from teslafleetmanagementapi.models.vehicle_base import (
11
+ VehicleBase,
12
+ )
13
+
14
+
15
+ class Api1VehiclesResponseGetVehicle(object):
16
+ """Implementation of the 'Api 1 Vehicles Response_Get vehicle' model.
17
+
18
+ Attributes:
19
+ response (VehicleBase): The model property of type VehicleBase.
20
+ additional_properties (Dict[str, Any]): The additional properties for the
21
+ model.
22
+
23
+ """
24
+
25
+ # Create a mapping from Model property names to API property names
26
+ _names = {
27
+ "response": "response",
28
+ }
29
+
30
+ _optionals = [
31
+ "response",
32
+ ]
33
+
34
+ def __init__(
35
+ self,
36
+ response=APIHelper.SKIP,
37
+ additional_properties=None):
38
+ """Initialize a Api1VehiclesResponseGetVehicle instance."""
39
+ # Initialize members of the class
40
+ if response is not APIHelper.SKIP:
41
+ self.response = response
42
+
43
+ # Add additional model properties to the instance
44
+ if additional_properties is None:
45
+ additional_properties = {}
46
+ self.additional_properties = additional_properties
47
+
48
+ @classmethod
49
+ def from_dictionary(cls,
50
+ dictionary):
51
+ """Create an instance of this model from a dictionary
52
+
53
+ Args:
54
+ dictionary (dictionary): A dictionary representation of the object
55
+ as obtained from the deserialization of the server's response. The
56
+ keys MUST match property names in the API description.
57
+
58
+ Returns:
59
+ object: An instance of this structure class.
60
+
61
+ """
62
+ if not isinstance(dictionary, dict) or dictionary is None:
63
+ return None
64
+
65
+ # Extract variables from the dictionary
66
+ response =\
67
+ VehicleBase.from_dictionary(
68
+ dictionary.get("response"))\
69
+ if "response" in dictionary.keys()\
70
+ else APIHelper.SKIP
71
+
72
+ additional_properties = APIHelper.get_additional_properties(
73
+ dictionary={k: v for k, v in dictionary.items()
74
+ if k not in cls._names.values()},
75
+ unboxing_function=lambda value: value)
76
+
77
+ # Return an object of this model
78
+ return cls(response,
79
+ additional_properties)
80
+
81
+ def __repr__(self):
82
+ """Return a unambiguous string representation."""
83
+ _response=(
84
+ self.response
85
+ if hasattr(self, "response")
86
+ else None
87
+ )
88
+ _additional_properties=self.additional_properties
89
+ return (
90
+ f"{self.__class__.__name__}("
91
+ f"response={_response!r}, "
92
+ f"additional_properties={_additional_properties!r}, "
93
+ f")"
94
+ )
95
+
96
+ def __str__(self):
97
+ """Return a human-readable string representation."""
98
+ _response=(
99
+ self.response
100
+ if hasattr(self, "response")
101
+ else None
102
+ )
103
+ _additional_properties=self.additional_properties
104
+ return (
105
+ f"{self.__class__.__name__}("
106
+ f"response={_response!s}, "
107
+ f"additional_properties={_additional_properties!s}, "
108
+ f")"
109
+ )
@@ -0,0 +1,109 @@
1
+ """teslafleetmanagementapi.
2
+
3
+ This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
4
+ """
5
+
6
+ # ruff: noqa: E501
7
+ from teslafleetmanagementapi.api_helper import (
8
+ APIHelper,
9
+ )
10
+ from teslafleetmanagementapi.models.vehicle_base import (
11
+ VehicleBase,
12
+ )
13
+
14
+
15
+ class Api1VehiclesWakeUpResponse(object):
16
+ """Implementation of the 'Api 1 Vehicles Wake Up Response' model.
17
+
18
+ Attributes:
19
+ response (VehicleBase): The model property of type VehicleBase.
20
+ additional_properties (Dict[str, Any]): The additional properties for the
21
+ model.
22
+
23
+ """
24
+
25
+ # Create a mapping from Model property names to API property names
26
+ _names = {
27
+ "response": "response",
28
+ }
29
+
30
+ _optionals = [
31
+ "response",
32
+ ]
33
+
34
+ def __init__(
35
+ self,
36
+ response=APIHelper.SKIP,
37
+ additional_properties=None):
38
+ """Initialize a Api1VehiclesWakeUpResponse instance."""
39
+ # Initialize members of the class
40
+ if response is not APIHelper.SKIP:
41
+ self.response = response
42
+
43
+ # Add additional model properties to the instance
44
+ if additional_properties is None:
45
+ additional_properties = {}
46
+ self.additional_properties = additional_properties
47
+
48
+ @classmethod
49
+ def from_dictionary(cls,
50
+ dictionary):
51
+ """Create an instance of this model from a dictionary
52
+
53
+ Args:
54
+ dictionary (dictionary): A dictionary representation of the object
55
+ as obtained from the deserialization of the server's response. The
56
+ keys MUST match property names in the API description.
57
+
58
+ Returns:
59
+ object: An instance of this structure class.
60
+
61
+ """
62
+ if not isinstance(dictionary, dict) or dictionary is None:
63
+ return None
64
+
65
+ # Extract variables from the dictionary
66
+ response =\
67
+ VehicleBase.from_dictionary(
68
+ dictionary.get("response"))\
69
+ if "response" in dictionary.keys()\
70
+ else APIHelper.SKIP
71
+
72
+ additional_properties = APIHelper.get_additional_properties(
73
+ dictionary={k: v for k, v in dictionary.items()
74
+ if k not in cls._names.values()},
75
+ unboxing_function=lambda value: value)
76
+
77
+ # Return an object of this model
78
+ return cls(response,
79
+ additional_properties)
80
+
81
+ def __repr__(self):
82
+ """Return a unambiguous string representation."""
83
+ _response=(
84
+ self.response
85
+ if hasattr(self, "response")
86
+ else None
87
+ )
88
+ _additional_properties=self.additional_properties
89
+ return (
90
+ f"{self.__class__.__name__}("
91
+ f"response={_response!r}, "
92
+ f"additional_properties={_additional_properties!r}, "
93
+ f")"
94
+ )
95
+
96
+ def __str__(self):
97
+ """Return a human-readable string representation."""
98
+ _response=(
99
+ self.response
100
+ if hasattr(self, "response")
101
+ else None
102
+ )
103
+ _additional_properties=self.additional_properties
104
+ return (
105
+ f"{self.__class__.__name__}("
106
+ f"response={_response!s}, "
107
+ f"additional_properties={_additional_properties!s}, "
108
+ f")"
109
+ )
@@ -0,0 +1,92 @@
1
+ """teslafleetmanagementapi.
2
+
3
+ This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
4
+ """
5
+
6
+ # ruff: noqa: E501
7
+ from teslafleetmanagementapi.api_helper import (
8
+ APIHelper,
9
+ )
10
+
11
+
12
+ class BackupRequest(object):
13
+ """Implementation of the 'BackupRequest' model.
14
+
15
+ Attributes:
16
+ backup_reserve_percent (int): The model property of type int.
17
+ additional_properties (Dict[str, Any]): The additional properties for the
18
+ model.
19
+
20
+ """
21
+
22
+ # Create a mapping from Model property names to API property names
23
+ _names = {
24
+ "backup_reserve_percent": "backup_reserve_percent",
25
+ }
26
+
27
+ def __init__(
28
+ self,
29
+ backup_reserve_percent=None,
30
+ additional_properties=None):
31
+ """Initialize a BackupRequest instance."""
32
+ # Initialize members of the class
33
+ self.backup_reserve_percent = backup_reserve_percent
34
+
35
+ # Add additional model properties to the instance
36
+ if additional_properties is None:
37
+ additional_properties = {}
38
+ self.additional_properties = additional_properties
39
+
40
+ @classmethod
41
+ def from_dictionary(cls,
42
+ dictionary):
43
+ """Create an instance of this model from a dictionary
44
+
45
+ Args:
46
+ dictionary (dictionary): A dictionary representation of the object
47
+ as obtained from the deserialization of the server's response. The
48
+ keys MUST match property names in the API description.
49
+
50
+ Returns:
51
+ object: An instance of this structure class.
52
+
53
+ """
54
+ if not isinstance(dictionary, dict) or dictionary is None:
55
+ return None
56
+
57
+ # Extract variables from the dictionary
58
+ backup_reserve_percent =\
59
+ dictionary.get("backup_reserve_percent")\
60
+ if dictionary.get("backup_reserve_percent")\
61
+ else None
62
+
63
+ additional_properties = APIHelper.get_additional_properties(
64
+ dictionary={k: v for k, v in dictionary.items()
65
+ if k not in cls._names.values()},
66
+ unboxing_function=lambda value: value)
67
+
68
+ # Return an object of this model
69
+ return cls(backup_reserve_percent,
70
+ additional_properties)
71
+
72
+ def __repr__(self):
73
+ """Return a unambiguous string representation."""
74
+ _backup_reserve_percent=self.backup_reserve_percent
75
+ _additional_properties=self.additional_properties
76
+ return (
77
+ f"{self.__class__.__name__}("
78
+ f"backup_reserve_percent={_backup_reserve_percent!r}, "
79
+ f"additional_properties={_additional_properties!r}, "
80
+ f")"
81
+ )
82
+
83
+ def __str__(self):
84
+ """Return a human-readable string representation."""
85
+ _backup_reserve_percent=self.backup_reserve_percent
86
+ _additional_properties=self.additional_properties
87
+ return (
88
+ f"{self.__class__.__name__}("
89
+ f"backup_reserve_percent={_backup_reserve_percent!s}, "
90
+ f"additional_properties={_additional_properties!s}, "
91
+ f")"
92
+ )
@@ -0,0 +1,95 @@
1
+ """teslafleetmanagementapi.
2
+
3
+ This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
4
+ """
5
+
6
+ # ruff: noqa: E501
7
+ from teslafleetmanagementapi.api_helper import (
8
+ APIHelper,
9
+ )
10
+ from teslafleetmanagementapi.models.response import (
11
+ Response,
12
+ )
13
+
14
+
15
+ class BackupResponse(object):
16
+ """Implementation of the 'BackupResponse' model.
17
+
18
+ Attributes:
19
+ response (Response): The model property of type Response.
20
+ additional_properties (Dict[str, Any]): The additional properties for the
21
+ model.
22
+
23
+ """
24
+
25
+ # Create a mapping from Model property names to API property names
26
+ _names = {
27
+ "response": "response",
28
+ }
29
+
30
+ def __init__(
31
+ self,
32
+ response=None,
33
+ additional_properties=None):
34
+ """Initialize a BackupResponse instance."""
35
+ # Initialize members of the class
36
+ self.response = response
37
+
38
+ # Add additional model properties to the instance
39
+ if additional_properties is None:
40
+ additional_properties = {}
41
+ self.additional_properties = additional_properties
42
+
43
+ @classmethod
44
+ def from_dictionary(cls,
45
+ dictionary):
46
+ """Create an instance of this model from a dictionary
47
+
48
+ Args:
49
+ dictionary (dictionary): A dictionary representation of the object
50
+ as obtained from the deserialization of the server's response. The
51
+ keys MUST match property names in the API description.
52
+
53
+ Returns:
54
+ object: An instance of this structure class.
55
+
56
+ """
57
+ if not isinstance(dictionary, dict) or dictionary is None:
58
+ return None
59
+
60
+ # Extract variables from the dictionary
61
+ response =\
62
+ Response.from_dictionary(
63
+ dictionary.get("response"))\
64
+ if dictionary.get("response") else None
65
+
66
+ additional_properties = APIHelper.get_additional_properties(
67
+ dictionary={k: v for k, v in dictionary.items()
68
+ if k not in cls._names.values()},
69
+ unboxing_function=lambda value: value)
70
+
71
+ # Return an object of this model
72
+ return cls(response,
73
+ additional_properties)
74
+
75
+ def __repr__(self):
76
+ """Return a unambiguous string representation."""
77
+ _response=self.response
78
+ _additional_properties=self.additional_properties
79
+ return (
80
+ f"{self.__class__.__name__}("
81
+ f"response={_response!r}, "
82
+ f"additional_properties={_additional_properties!r}, "
83
+ f")"
84
+ )
85
+
86
+ def __str__(self):
87
+ """Return a human-readable string representation."""
88
+ _response=self.response
89
+ _additional_properties=self.additional_properties
90
+ return (
91
+ f"{self.__class__.__name__}("
92
+ f"response={_response!s}, "
93
+ f"additional_properties={_additional_properties!s}, "
94
+ f")"
95
+ )
@@ -0,0 +1,96 @@
1
+ """teslafleetmanagementapi.
2
+
3
+ This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
4
+ """
5
+
6
+ # ruff: noqa: E501
7
+ from teslafleetmanagementapi.api_helper import (
8
+ APIHelper,
9
+ )
10
+ from teslafleetmanagementapi.models.response_calendar_history_response import (
11
+ ResponseCalendarHistoryResponse,
12
+ )
13
+
14
+
15
+ class CalendarHistoryResponse(object):
16
+ """Implementation of the 'CalendarHistoryResponse' model.
17
+
18
+ Attributes:
19
+ response (ResponseCalendarHistoryResponse): The model property of type
20
+ ResponseCalendarHistoryResponse.
21
+ additional_properties (Dict[str, Any]): The additional properties for the
22
+ model.
23
+
24
+ """
25
+
26
+ # Create a mapping from Model property names to API property names
27
+ _names = {
28
+ "response": "response",
29
+ }
30
+
31
+ def __init__(
32
+ self,
33
+ response=None,
34
+ additional_properties=None):
35
+ """Initialize a CalendarHistoryResponse instance."""
36
+ # Initialize members of the class
37
+ self.response = response
38
+
39
+ # Add additional model properties to the instance
40
+ if additional_properties is None:
41
+ additional_properties = {}
42
+ self.additional_properties = additional_properties
43
+
44
+ @classmethod
45
+ def from_dictionary(cls,
46
+ dictionary):
47
+ """Create an instance of this model from a dictionary
48
+
49
+ Args:
50
+ dictionary (dictionary): A dictionary representation of the object
51
+ as obtained from the deserialization of the server's response. The
52
+ keys MUST match property names in the API description.
53
+
54
+ Returns:
55
+ object: An instance of this structure class.
56
+
57
+ """
58
+ if not isinstance(dictionary, dict) or dictionary is None:
59
+ return None
60
+
61
+ # Extract variables from the dictionary
62
+ response =\
63
+ ResponseCalendarHistoryResponse.from_dictionary(
64
+ dictionary.get("response"))\
65
+ if dictionary.get("response") else None
66
+
67
+ additional_properties = APIHelper.get_additional_properties(
68
+ dictionary={k: v for k, v in dictionary.items()
69
+ if k not in cls._names.values()},
70
+ unboxing_function=lambda value: value)
71
+
72
+ # Return an object of this model
73
+ return cls(response,
74
+ additional_properties)
75
+
76
+ def __repr__(self):
77
+ """Return a unambiguous string representation."""
78
+ _response=self.response
79
+ _additional_properties=self.additional_properties
80
+ return (
81
+ f"{self.__class__.__name__}("
82
+ f"response={_response!r}, "
83
+ f"additional_properties={_additional_properties!r}, "
84
+ f")"
85
+ )
86
+
87
+ def __str__(self):
88
+ """Return a human-readable string representation."""
89
+ _response=self.response
90
+ _additional_properties=self.additional_properties
91
+ return (
92
+ f"{self.__class__.__name__}("
93
+ f"response={_response!s}, "
94
+ f"additional_properties={_additional_properties!s}, "
95
+ f")"
96
+ )
@@ -0,0 +1,92 @@
1
+ """teslafleetmanagementapi.
2
+
3
+ This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
4
+ """
5
+
6
+ # ruff: noqa: E501
7
+ from teslafleetmanagementapi.api_helper import (
8
+ APIHelper,
9
+ )
10
+
11
+
12
+ class ChargeDuration(object):
13
+ """Implementation of the 'ChargeDuration' model.
14
+
15
+ Attributes:
16
+ seconds (int): The model property of type int.
17
+ additional_properties (Dict[str, Any]): The additional properties for the
18
+ model.
19
+
20
+ """
21
+
22
+ # Create a mapping from Model property names to API property names
23
+ _names = {
24
+ "seconds": "seconds",
25
+ }
26
+
27
+ def __init__(
28
+ self,
29
+ seconds=None,
30
+ additional_properties=None):
31
+ """Initialize a ChargeDuration instance."""
32
+ # Initialize members of the class
33
+ self.seconds = seconds
34
+
35
+ # Add additional model properties to the instance
36
+ if additional_properties is None:
37
+ additional_properties = {}
38
+ self.additional_properties = additional_properties
39
+
40
+ @classmethod
41
+ def from_dictionary(cls,
42
+ dictionary):
43
+ """Create an instance of this model from a dictionary
44
+
45
+ Args:
46
+ dictionary (dictionary): A dictionary representation of the object
47
+ as obtained from the deserialization of the server's response. The
48
+ keys MUST match property names in the API description.
49
+
50
+ Returns:
51
+ object: An instance of this structure class.
52
+
53
+ """
54
+ if not isinstance(dictionary, dict) or dictionary is None:
55
+ return None
56
+
57
+ # Extract variables from the dictionary
58
+ seconds =\
59
+ dictionary.get("seconds")\
60
+ if dictionary.get("seconds")\
61
+ else None
62
+
63
+ additional_properties = APIHelper.get_additional_properties(
64
+ dictionary={k: v for k, v in dictionary.items()
65
+ if k not in cls._names.values()},
66
+ unboxing_function=lambda value: value)
67
+
68
+ # Return an object of this model
69
+ return cls(seconds,
70
+ additional_properties)
71
+
72
+ def __repr__(self):
73
+ """Return a unambiguous string representation."""
74
+ _seconds=self.seconds
75
+ _additional_properties=self.additional_properties
76
+ return (
77
+ f"{self.__class__.__name__}("
78
+ f"seconds={_seconds!r}, "
79
+ f"additional_properties={_additional_properties!r}, "
80
+ f")"
81
+ )
82
+
83
+ def __str__(self):
84
+ """Return a human-readable string representation."""
85
+ _seconds=self.seconds
86
+ _additional_properties=self.additional_properties
87
+ return (
88
+ f"{self.__class__.__name__}("
89
+ f"seconds={_seconds!s}, "
90
+ f"additional_properties={_additional_properties!s}, "
91
+ f")"
92
+ )