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,641 @@
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 ChargingFee(object):
13
+ """Implementation of the 'ChargingFee' model.
14
+
15
+ Attributes:
16
+ session_fee_id (int): The model property of type int.
17
+ fee_type (str): The model property of type str.
18
+ currency_code (str): The model property of type str.
19
+ pricing_type (str): The model property of type str.
20
+ rate_base (float): The model property of type float.
21
+ rate_tier_1 (float): The model property of type float.
22
+ rate_tier_2 (float): The model property of type float.
23
+ rate_tier_3 (float): The model property of type float.
24
+ rate_tier_4 (float): The model property of type float.
25
+ usage_base (float): The model property of type float.
26
+ usage_tier_1 (float): The model property of type float.
27
+ usage_tier_2 (float): The model property of type float.
28
+ usage_tier_3 (float): The model property of type float.
29
+ usage_tier_4 (float): The model property of type float.
30
+ total_base (float): The model property of type float.
31
+ total_tier_1 (float): The model property of type float.
32
+ total_tier_2 (float): The model property of type float.
33
+ total_tier_3 (float): The model property of type float.
34
+ total_tier_4 (float): The model property of type float.
35
+ total_due (float): The model property of type float.
36
+ net_due (float): The model property of type float.
37
+ uom (str): The model property of type str.
38
+ is_paid (bool): The model property of type bool.
39
+ status (str): The model property of type str.
40
+ additional_properties (Dict[str, Any]): The additional properties for the
41
+ model.
42
+
43
+ """
44
+
45
+ # Create a mapping from Model property names to API property names
46
+ _names = {
47
+ "session_fee_id": "sessionFeeId",
48
+ "fee_type": "feeType",
49
+ "currency_code": "currencyCode",
50
+ "pricing_type": "pricingType",
51
+ "rate_base": "rateBase",
52
+ "rate_tier_1": "rateTier1",
53
+ "rate_tier_2": "rateTier2",
54
+ "rate_tier_3": "rateTier3",
55
+ "rate_tier_4": "rateTier4",
56
+ "usage_base": "usageBase",
57
+ "usage_tier_1": "usageTier1",
58
+ "usage_tier_2": "usageTier2",
59
+ "usage_tier_3": "usageTier3",
60
+ "usage_tier_4": "usageTier4",
61
+ "total_base": "totalBase",
62
+ "total_tier_1": "totalTier1",
63
+ "total_tier_2": "totalTier2",
64
+ "total_tier_3": "totalTier3",
65
+ "total_tier_4": "totalTier4",
66
+ "total_due": "totalDue",
67
+ "net_due": "netDue",
68
+ "uom": "uom",
69
+ "is_paid": "isPaid",
70
+ "status": "status",
71
+ }
72
+
73
+ _optionals = [
74
+ "session_fee_id",
75
+ "fee_type",
76
+ "currency_code",
77
+ "pricing_type",
78
+ "rate_base",
79
+ "rate_tier_1",
80
+ "rate_tier_2",
81
+ "rate_tier_3",
82
+ "rate_tier_4",
83
+ "usage_base",
84
+ "usage_tier_1",
85
+ "usage_tier_2",
86
+ "usage_tier_3",
87
+ "usage_tier_4",
88
+ "total_base",
89
+ "total_tier_1",
90
+ "total_tier_2",
91
+ "total_tier_3",
92
+ "total_tier_4",
93
+ "total_due",
94
+ "net_due",
95
+ "uom",
96
+ "is_paid",
97
+ "status",
98
+ ]
99
+
100
+ _nullables = [
101
+ "rate_tier_3",
102
+ "rate_tier_4",
103
+ "usage_tier_3",
104
+ "usage_tier_4",
105
+ ]
106
+
107
+ def __init__(
108
+ self,
109
+ session_fee_id=APIHelper.SKIP,
110
+ fee_type=APIHelper.SKIP,
111
+ currency_code=APIHelper.SKIP,
112
+ pricing_type=APIHelper.SKIP,
113
+ rate_base=APIHelper.SKIP,
114
+ rate_tier_1=APIHelper.SKIP,
115
+ rate_tier_2=APIHelper.SKIP,
116
+ rate_tier_3=APIHelper.SKIP,
117
+ rate_tier_4=APIHelper.SKIP,
118
+ usage_base=APIHelper.SKIP,
119
+ usage_tier_1=APIHelper.SKIP,
120
+ usage_tier_2=APIHelper.SKIP,
121
+ usage_tier_3=APIHelper.SKIP,
122
+ usage_tier_4=APIHelper.SKIP,
123
+ total_base=APIHelper.SKIP,
124
+ total_tier_1=APIHelper.SKIP,
125
+ total_tier_2=APIHelper.SKIP,
126
+ total_tier_3=APIHelper.SKIP,
127
+ total_tier_4=APIHelper.SKIP,
128
+ total_due=APIHelper.SKIP,
129
+ net_due=APIHelper.SKIP,
130
+ uom=APIHelper.SKIP,
131
+ is_paid=APIHelper.SKIP,
132
+ status=APIHelper.SKIP,
133
+ additional_properties=None):
134
+ """Initialize a ChargingFee instance."""
135
+ # Initialize members of the class
136
+ if session_fee_id is not APIHelper.SKIP:
137
+ self.session_fee_id = session_fee_id
138
+ if fee_type is not APIHelper.SKIP:
139
+ self.fee_type = fee_type
140
+ if currency_code is not APIHelper.SKIP:
141
+ self.currency_code = currency_code
142
+ if pricing_type is not APIHelper.SKIP:
143
+ self.pricing_type = pricing_type
144
+ if rate_base is not APIHelper.SKIP:
145
+ self.rate_base = rate_base
146
+ if rate_tier_1 is not APIHelper.SKIP:
147
+ self.rate_tier_1 = rate_tier_1
148
+ if rate_tier_2 is not APIHelper.SKIP:
149
+ self.rate_tier_2 = rate_tier_2
150
+ if rate_tier_3 is not APIHelper.SKIP:
151
+ self.rate_tier_3 = rate_tier_3
152
+ if rate_tier_4 is not APIHelper.SKIP:
153
+ self.rate_tier_4 = rate_tier_4
154
+ if usage_base is not APIHelper.SKIP:
155
+ self.usage_base = usage_base
156
+ if usage_tier_1 is not APIHelper.SKIP:
157
+ self.usage_tier_1 = usage_tier_1
158
+ if usage_tier_2 is not APIHelper.SKIP:
159
+ self.usage_tier_2 = usage_tier_2
160
+ if usage_tier_3 is not APIHelper.SKIP:
161
+ self.usage_tier_3 = usage_tier_3
162
+ if usage_tier_4 is not APIHelper.SKIP:
163
+ self.usage_tier_4 = usage_tier_4
164
+ if total_base is not APIHelper.SKIP:
165
+ self.total_base = total_base
166
+ if total_tier_1 is not APIHelper.SKIP:
167
+ self.total_tier_1 = total_tier_1
168
+ if total_tier_2 is not APIHelper.SKIP:
169
+ self.total_tier_2 = total_tier_2
170
+ if total_tier_3 is not APIHelper.SKIP:
171
+ self.total_tier_3 = total_tier_3
172
+ if total_tier_4 is not APIHelper.SKIP:
173
+ self.total_tier_4 = total_tier_4
174
+ if total_due is not APIHelper.SKIP:
175
+ self.total_due = total_due
176
+ if net_due is not APIHelper.SKIP:
177
+ self.net_due = net_due
178
+ if uom is not APIHelper.SKIP:
179
+ self.uom = uom
180
+ if is_paid is not APIHelper.SKIP:
181
+ self.is_paid = is_paid
182
+ if status is not APIHelper.SKIP:
183
+ self.status = status
184
+
185
+ # Add additional model properties to the instance
186
+ if additional_properties is None:
187
+ additional_properties = {}
188
+ self.additional_properties = additional_properties
189
+
190
+ @classmethod
191
+ def from_dictionary(cls,
192
+ dictionary):
193
+ """Create an instance of this model from a dictionary
194
+
195
+ Args:
196
+ dictionary (dictionary): A dictionary representation of the object
197
+ as obtained from the deserialization of the server's response. The
198
+ keys MUST match property names in the API description.
199
+
200
+ Returns:
201
+ object: An instance of this structure class.
202
+
203
+ """
204
+ if not isinstance(dictionary, dict) or dictionary is None:
205
+ return None
206
+
207
+ # Extract variables from the dictionary
208
+ session_fee_id =\
209
+ dictionary.get("sessionFeeId")\
210
+ if dictionary.get("sessionFeeId")\
211
+ else APIHelper.SKIP
212
+ fee_type =\
213
+ dictionary.get("feeType")\
214
+ if dictionary.get("feeType")\
215
+ else APIHelper.SKIP
216
+ currency_code =\
217
+ dictionary.get("currencyCode")\
218
+ if dictionary.get("currencyCode")\
219
+ else APIHelper.SKIP
220
+ pricing_type =\
221
+ dictionary.get("pricingType")\
222
+ if dictionary.get("pricingType")\
223
+ else APIHelper.SKIP
224
+ rate_base =\
225
+ dictionary.get("rateBase")\
226
+ if dictionary.get("rateBase")\
227
+ else APIHelper.SKIP
228
+ rate_tier_1 =\
229
+ dictionary.get("rateTier1")\
230
+ if dictionary.get("rateTier1")\
231
+ else APIHelper.SKIP
232
+ rate_tier_2 =\
233
+ dictionary.get("rateTier2")\
234
+ if dictionary.get("rateTier2")\
235
+ else APIHelper.SKIP
236
+ rate_tier_3 =\
237
+ dictionary.get("rateTier3")\
238
+ if "rateTier3" in dictionary.keys()\
239
+ else APIHelper.SKIP
240
+ rate_tier_4 =\
241
+ dictionary.get("rateTier4")\
242
+ if "rateTier4" in dictionary.keys()\
243
+ else APIHelper.SKIP
244
+ usage_base =\
245
+ dictionary.get("usageBase")\
246
+ if dictionary.get("usageBase")\
247
+ else APIHelper.SKIP
248
+ usage_tier_1 =\
249
+ dictionary.get("usageTier1")\
250
+ if dictionary.get("usageTier1")\
251
+ else APIHelper.SKIP
252
+ usage_tier_2 =\
253
+ dictionary.get("usageTier2")\
254
+ if dictionary.get("usageTier2")\
255
+ else APIHelper.SKIP
256
+ usage_tier_3 =\
257
+ dictionary.get("usageTier3")\
258
+ if "usageTier3" in dictionary.keys()\
259
+ else APIHelper.SKIP
260
+ usage_tier_4 =\
261
+ dictionary.get("usageTier4")\
262
+ if "usageTier4" in dictionary.keys()\
263
+ else APIHelper.SKIP
264
+ total_base =\
265
+ dictionary.get("totalBase")\
266
+ if dictionary.get("totalBase")\
267
+ else APIHelper.SKIP
268
+ total_tier_1 =\
269
+ dictionary.get("totalTier1")\
270
+ if dictionary.get("totalTier1")\
271
+ else APIHelper.SKIP
272
+ total_tier_2 =\
273
+ dictionary.get("totalTier2")\
274
+ if dictionary.get("totalTier2")\
275
+ else APIHelper.SKIP
276
+ total_tier_3 =\
277
+ dictionary.get("totalTier3")\
278
+ if dictionary.get("totalTier3")\
279
+ else APIHelper.SKIP
280
+ total_tier_4 =\
281
+ dictionary.get("totalTier4")\
282
+ if dictionary.get("totalTier4")\
283
+ else APIHelper.SKIP
284
+ total_due =\
285
+ dictionary.get("totalDue")\
286
+ if dictionary.get("totalDue")\
287
+ else APIHelper.SKIP
288
+ net_due =\
289
+ dictionary.get("netDue")\
290
+ if dictionary.get("netDue")\
291
+ else APIHelper.SKIP
292
+ uom =\
293
+ dictionary.get("uom")\
294
+ if dictionary.get("uom")\
295
+ else APIHelper.SKIP
296
+ is_paid =\
297
+ dictionary.get("isPaid")\
298
+ if "isPaid" in dictionary.keys()\
299
+ else APIHelper.SKIP
300
+ status =\
301
+ dictionary.get("status")\
302
+ if dictionary.get("status")\
303
+ else APIHelper.SKIP
304
+
305
+ additional_properties = APIHelper.get_additional_properties(
306
+ dictionary={k: v for k, v in dictionary.items()
307
+ if k not in cls._names.values()},
308
+ unboxing_function=lambda value: value)
309
+
310
+ # Return an object of this model
311
+ return cls(session_fee_id,
312
+ fee_type,
313
+ currency_code,
314
+ pricing_type,
315
+ rate_base,
316
+ rate_tier_1,
317
+ rate_tier_2,
318
+ rate_tier_3,
319
+ rate_tier_4,
320
+ usage_base,
321
+ usage_tier_1,
322
+ usage_tier_2,
323
+ usage_tier_3,
324
+ usage_tier_4,
325
+ total_base,
326
+ total_tier_1,
327
+ total_tier_2,
328
+ total_tier_3,
329
+ total_tier_4,
330
+ total_due,
331
+ net_due,
332
+ uom,
333
+ is_paid,
334
+ status,
335
+ additional_properties)
336
+
337
+ def __repr__(self):
338
+ """Return a unambiguous string representation."""
339
+ _session_fee_id=(
340
+ self.session_fee_id
341
+ if hasattr(self, "session_fee_id")
342
+ else None
343
+ )
344
+ _fee_type=(
345
+ self.fee_type
346
+ if hasattr(self, "fee_type")
347
+ else None
348
+ )
349
+ _currency_code=(
350
+ self.currency_code
351
+ if hasattr(self, "currency_code")
352
+ else None
353
+ )
354
+ _pricing_type=(
355
+ self.pricing_type
356
+ if hasattr(self, "pricing_type")
357
+ else None
358
+ )
359
+ _rate_base=(
360
+ self.rate_base
361
+ if hasattr(self, "rate_base")
362
+ else None
363
+ )
364
+ _rate_tier_1=(
365
+ self.rate_tier_1
366
+ if hasattr(self, "rate_tier_1")
367
+ else None
368
+ )
369
+ _rate_tier_2=(
370
+ self.rate_tier_2
371
+ if hasattr(self, "rate_tier_2")
372
+ else None
373
+ )
374
+ _rate_tier_3=(
375
+ self.rate_tier_3
376
+ if hasattr(self, "rate_tier_3")
377
+ else None
378
+ )
379
+ _rate_tier_4=(
380
+ self.rate_tier_4
381
+ if hasattr(self, "rate_tier_4")
382
+ else None
383
+ )
384
+ _usage_base=(
385
+ self.usage_base
386
+ if hasattr(self, "usage_base")
387
+ else None
388
+ )
389
+ _usage_tier_1=(
390
+ self.usage_tier_1
391
+ if hasattr(self, "usage_tier_1")
392
+ else None
393
+ )
394
+ _usage_tier_2=(
395
+ self.usage_tier_2
396
+ if hasattr(self, "usage_tier_2")
397
+ else None
398
+ )
399
+ _usage_tier_3=(
400
+ self.usage_tier_3
401
+ if hasattr(self, "usage_tier_3")
402
+ else None
403
+ )
404
+ _usage_tier_4=(
405
+ self.usage_tier_4
406
+ if hasattr(self, "usage_tier_4")
407
+ else None
408
+ )
409
+ _total_base=(
410
+ self.total_base
411
+ if hasattr(self, "total_base")
412
+ else None
413
+ )
414
+ _total_tier_1=(
415
+ self.total_tier_1
416
+ if hasattr(self, "total_tier_1")
417
+ else None
418
+ )
419
+ _total_tier_2=(
420
+ self.total_tier_2
421
+ if hasattr(self, "total_tier_2")
422
+ else None
423
+ )
424
+ _total_tier_3=(
425
+ self.total_tier_3
426
+ if hasattr(self, "total_tier_3")
427
+ else None
428
+ )
429
+ _total_tier_4=(
430
+ self.total_tier_4
431
+ if hasattr(self, "total_tier_4")
432
+ else None
433
+ )
434
+ _total_due=(
435
+ self.total_due
436
+ if hasattr(self, "total_due")
437
+ else None
438
+ )
439
+ _net_due=(
440
+ self.net_due
441
+ if hasattr(self, "net_due")
442
+ else None
443
+ )
444
+ _uom=(
445
+ self.uom
446
+ if hasattr(self, "uom")
447
+ else None
448
+ )
449
+ _is_paid=(
450
+ self.is_paid
451
+ if hasattr(self, "is_paid")
452
+ else None
453
+ )
454
+ _status=(
455
+ self.status
456
+ if hasattr(self, "status")
457
+ else None
458
+ )
459
+ _additional_properties=self.additional_properties
460
+ return (
461
+ f"{self.__class__.__name__}("
462
+ f"session_fee_id={_session_fee_id!r}, "
463
+ f"fee_type={_fee_type!r}, "
464
+ f"currency_code={_currency_code!r}, "
465
+ f"pricing_type={_pricing_type!r}, "
466
+ f"rate_base={_rate_base!r}, "
467
+ f"rate_tier_1={_rate_tier_1!r}, "
468
+ f"rate_tier_2={_rate_tier_2!r}, "
469
+ f"rate_tier_3={_rate_tier_3!r}, "
470
+ f"rate_tier_4={_rate_tier_4!r}, "
471
+ f"usage_base={_usage_base!r}, "
472
+ f"usage_tier_1={_usage_tier_1!r}, "
473
+ f"usage_tier_2={_usage_tier_2!r}, "
474
+ f"usage_tier_3={_usage_tier_3!r}, "
475
+ f"usage_tier_4={_usage_tier_4!r}, "
476
+ f"total_base={_total_base!r}, "
477
+ f"total_tier_1={_total_tier_1!r}, "
478
+ f"total_tier_2={_total_tier_2!r}, "
479
+ f"total_tier_3={_total_tier_3!r}, "
480
+ f"total_tier_4={_total_tier_4!r}, "
481
+ f"total_due={_total_due!r}, "
482
+ f"net_due={_net_due!r}, "
483
+ f"uom={_uom!r}, "
484
+ f"is_paid={_is_paid!r}, "
485
+ f"status={_status!r}, "
486
+ f"additional_properties={_additional_properties!r}, "
487
+ f")"
488
+ )
489
+
490
+ def __str__(self):
491
+ """Return a human-readable string representation."""
492
+ _session_fee_id=(
493
+ self.session_fee_id
494
+ if hasattr(self, "session_fee_id")
495
+ else None
496
+ )
497
+ _fee_type=(
498
+ self.fee_type
499
+ if hasattr(self, "fee_type")
500
+ else None
501
+ )
502
+ _currency_code=(
503
+ self.currency_code
504
+ if hasattr(self, "currency_code")
505
+ else None
506
+ )
507
+ _pricing_type=(
508
+ self.pricing_type
509
+ if hasattr(self, "pricing_type")
510
+ else None
511
+ )
512
+ _rate_base=(
513
+ self.rate_base
514
+ if hasattr(self, "rate_base")
515
+ else None
516
+ )
517
+ _rate_tier_1=(
518
+ self.rate_tier_1
519
+ if hasattr(self, "rate_tier_1")
520
+ else None
521
+ )
522
+ _rate_tier_2=(
523
+ self.rate_tier_2
524
+ if hasattr(self, "rate_tier_2")
525
+ else None
526
+ )
527
+ _rate_tier_3=(
528
+ self.rate_tier_3
529
+ if hasattr(self, "rate_tier_3")
530
+ else None
531
+ )
532
+ _rate_tier_4=(
533
+ self.rate_tier_4
534
+ if hasattr(self, "rate_tier_4")
535
+ else None
536
+ )
537
+ _usage_base=(
538
+ self.usage_base
539
+ if hasattr(self, "usage_base")
540
+ else None
541
+ )
542
+ _usage_tier_1=(
543
+ self.usage_tier_1
544
+ if hasattr(self, "usage_tier_1")
545
+ else None
546
+ )
547
+ _usage_tier_2=(
548
+ self.usage_tier_2
549
+ if hasattr(self, "usage_tier_2")
550
+ else None
551
+ )
552
+ _usage_tier_3=(
553
+ self.usage_tier_3
554
+ if hasattr(self, "usage_tier_3")
555
+ else None
556
+ )
557
+ _usage_tier_4=(
558
+ self.usage_tier_4
559
+ if hasattr(self, "usage_tier_4")
560
+ else None
561
+ )
562
+ _total_base=(
563
+ self.total_base
564
+ if hasattr(self, "total_base")
565
+ else None
566
+ )
567
+ _total_tier_1=(
568
+ self.total_tier_1
569
+ if hasattr(self, "total_tier_1")
570
+ else None
571
+ )
572
+ _total_tier_2=(
573
+ self.total_tier_2
574
+ if hasattr(self, "total_tier_2")
575
+ else None
576
+ )
577
+ _total_tier_3=(
578
+ self.total_tier_3
579
+ if hasattr(self, "total_tier_3")
580
+ else None
581
+ )
582
+ _total_tier_4=(
583
+ self.total_tier_4
584
+ if hasattr(self, "total_tier_4")
585
+ else None
586
+ )
587
+ _total_due=(
588
+ self.total_due
589
+ if hasattr(self, "total_due")
590
+ else None
591
+ )
592
+ _net_due=(
593
+ self.net_due
594
+ if hasattr(self, "net_due")
595
+ else None
596
+ )
597
+ _uom=(
598
+ self.uom
599
+ if hasattr(self, "uom")
600
+ else None
601
+ )
602
+ _is_paid=(
603
+ self.is_paid
604
+ if hasattr(self, "is_paid")
605
+ else None
606
+ )
607
+ _status=(
608
+ self.status
609
+ if hasattr(self, "status")
610
+ else None
611
+ )
612
+ _additional_properties=self.additional_properties
613
+ return (
614
+ f"{self.__class__.__name__}("
615
+ f"session_fee_id={_session_fee_id!s}, "
616
+ f"fee_type={_fee_type!s}, "
617
+ f"currency_code={_currency_code!s}, "
618
+ f"pricing_type={_pricing_type!s}, "
619
+ f"rate_base={_rate_base!s}, "
620
+ f"rate_tier_1={_rate_tier_1!s}, "
621
+ f"rate_tier_2={_rate_tier_2!s}, "
622
+ f"rate_tier_3={_rate_tier_3!s}, "
623
+ f"rate_tier_4={_rate_tier_4!s}, "
624
+ f"usage_base={_usage_base!s}, "
625
+ f"usage_tier_1={_usage_tier_1!s}, "
626
+ f"usage_tier_2={_usage_tier_2!s}, "
627
+ f"usage_tier_3={_usage_tier_3!s}, "
628
+ f"usage_tier_4={_usage_tier_4!s}, "
629
+ f"total_base={_total_base!s}, "
630
+ f"total_tier_1={_total_tier_1!s}, "
631
+ f"total_tier_2={_total_tier_2!s}, "
632
+ f"total_tier_3={_total_tier_3!s}, "
633
+ f"total_tier_4={_total_tier_4!s}, "
634
+ f"total_due={_total_due!s}, "
635
+ f"net_due={_net_due!s}, "
636
+ f"uom={_uom!s}, "
637
+ f"is_paid={_is_paid!s}, "
638
+ f"status={_status!s}, "
639
+ f"additional_properties={_additional_properties!s}, "
640
+ f")"
641
+ )