twitter-openapi-python-generated 0.0.24__py3-none-any.whl → 0.0.26__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.
- twitter_openapi_python_generated/__init__.py +7 -29
- twitter_openapi_python_generated/api/default_api.py +14 -12
- twitter_openapi_python_generated/api/other_api.py +7 -6
- twitter_openapi_python_generated/api/post_api.py +56 -48
- twitter_openapi_python_generated/api/tweet_api.py +73 -62
- twitter_openapi_python_generated/api/user_api.py +13 -11
- twitter_openapi_python_generated/api/user_list_api.py +33 -28
- twitter_openapi_python_generated/api/users_api.py +7 -6
- twitter_openapi_python_generated/api/v11_get_api.py +2 -0
- twitter_openapi_python_generated/api/v11_post_api.py +2 -0
- twitter_openapi_python_generated/api/v20_get_api.py +1 -0
- twitter_openapi_python_generated/api_client.py +1 -1
- twitter_openapi_python_generated/configuration.py +185 -38
- twitter_openapi_python_generated/models/__init__.py +6 -28
- twitter_openapi_python_generated/models/author_community_relationship.py +2 -2
- twitter_openapi_python_generated/models/birdwatch_pivot.py +6 -6
- twitter_openapi_python_generated/models/bookmarks_response.py +14 -4
- twitter_openapi_python_generated/models/community_actions.py +3 -3
- twitter_openapi_python_generated/models/community_data.py +4 -4
- twitter_openapi_python_generated/models/{favorite_tweet_response_data.py → community_join_action_unavailable.py} +20 -12
- twitter_openapi_python_generated/models/{post_favorite_tweet200_response.py → community_join_action_union.py} +50 -27
- twitter_openapi_python_generated/models/create_bookmark_response.py +13 -3
- twitter_openapi_python_generated/models/create_bookmark_response_data.py +2 -2
- twitter_openapi_python_generated/models/create_retweet_response.py +13 -3
- twitter_openapi_python_generated/models/create_retweet_response_data.py +2 -2
- twitter_openapi_python_generated/models/create_tweet_response.py +13 -3
- twitter_openapi_python_generated/models/create_tweet_response_data.py +2 -2
- twitter_openapi_python_generated/models/delete_bookmark_response.py +13 -3
- twitter_openapi_python_generated/models/delete_bookmark_response_data.py +2 -2
- twitter_openapi_python_generated/models/delete_retweet_response.py +13 -3
- twitter_openapi_python_generated/models/delete_retweet_response_data.py +3 -3
- twitter_openapi_python_generated/models/delete_tweet_response.py +13 -3
- twitter_openapi_python_generated/models/{error.py → error_response.py} +5 -5
- twitter_openapi_python_generated/models/favorite_tweet.py +2 -2
- twitter_openapi_python_generated/models/{errors.py → favorite_tweet_response.py} +10 -10
- twitter_openapi_python_generated/models/follow_response.py +13 -3
- twitter_openapi_python_generated/models/follow_response_data.py +2 -2
- twitter_openapi_python_generated/models/home_timeline_response_data.py +2 -2
- twitter_openapi_python_generated/models/list_latest_tweets_timeline_response.py +13 -3
- twitter_openapi_python_generated/models/list_tweets_timeline_data.py +2 -2
- twitter_openapi_python_generated/models/{other_response.py → other_object_all.py} +4 -4
- twitter_openapi_python_generated/models/profile_response.py +13 -3
- twitter_openapi_python_generated/models/profile_response_data.py +2 -2
- twitter_openapi_python_generated/models/search_timeline_data.py +2 -2
- twitter_openapi_python_generated/models/search_timeline_response.py +13 -3
- twitter_openapi_python_generated/models/sensitive_media_warning.py +4 -4
- twitter_openapi_python_generated/models/timeline_response.py +13 -3
- twitter_openapi_python_generated/models/tweet_detail_response.py +13 -3
- twitter_openapi_python_generated/models/tweet_detail_response_data.py +2 -2
- twitter_openapi_python_generated/models/tweet_favoriters_response.py +13 -3
- twitter_openapi_python_generated/models/tweet_favoriters_response_data.py +2 -2
- twitter_openapi_python_generated/models/tweet_legacy.py +2 -2
- twitter_openapi_python_generated/models/tweet_result_by_rest_id_data.py +2 -2
- twitter_openapi_python_generated/models/tweet_result_by_rest_id_response.py +13 -3
- twitter_openapi_python_generated/models/tweet_retweeters_response.py +13 -3
- twitter_openapi_python_generated/models/tweet_retweeters_response_data.py +2 -2
- twitter_openapi_python_generated/models/type_name.py +1 -0
- twitter_openapi_python_generated/models/unfavorite_tweet.py +2 -2
- twitter_openapi_python_generated/models/{unfavorite_tweet_response_data.py → unfavorite_tweet_response.py} +17 -7
- twitter_openapi_python_generated/models/user.py +1 -1
- twitter_openapi_python_generated/models/user_highlights_tweets_data.py +2 -2
- twitter_openapi_python_generated/models/user_highlights_tweets_response.py +13 -3
- twitter_openapi_python_generated/models/user_legacy_extended_profile_birthdate.py +2 -2
- twitter_openapi_python_generated/models/user_response.py +13 -3
- twitter_openapi_python_generated/models/user_tip_jar_settings.py +3 -1
- twitter_openapi_python_generated/models/user_tweets_data.py +2 -2
- twitter_openapi_python_generated/models/user_tweets_response.py +13 -3
- twitter_openapi_python_generated/models/user_verification_info_reason.py +2 -2
- twitter_openapi_python_generated/models/users_response.py +13 -3
- twitter_openapi_python_generated/models/users_response_data.py +2 -2
- {twitter_openapi_python_generated-0.0.24.dist-info → twitter_openapi_python_generated-0.0.26.dist-info}/METADATA +6 -6
- {twitter_openapi_python_generated-0.0.24.dist-info → twitter_openapi_python_generated-0.0.26.dist-info}/RECORD +76 -98
- {twitter_openapi_python_generated-0.0.24.dist-info → twitter_openapi_python_generated-0.0.26.dist-info}/WHEEL +1 -1
- twitter_openapi_python_generated/models/errors_data.py +0 -99
- twitter_openapi_python_generated/models/get_bookmarks200_response.py +0 -138
- twitter_openapi_python_generated/models/get_favoriters200_response.py +0 -138
- twitter_openapi_python_generated/models/get_followers200_response.py +0 -138
- twitter_openapi_python_generated/models/get_home_latest_timeline200_response.py +0 -138
- twitter_openapi_python_generated/models/get_likes200_response.py +0 -138
- twitter_openapi_python_generated/models/get_list_latest_tweets_timeline200_response.py +0 -138
- twitter_openapi_python_generated/models/get_profile_spotlights_query200_response.py +0 -138
- twitter_openapi_python_generated/models/get_retweeters200_response.py +0 -138
- twitter_openapi_python_generated/models/get_search_timeline200_response.py +0 -138
- twitter_openapi_python_generated/models/get_tweet_detail200_response.py +0 -138
- twitter_openapi_python_generated/models/get_tweet_result_by_rest_id200_response.py +0 -138
- twitter_openapi_python_generated/models/get_user_by_rest_id200_response.py +0 -138
- twitter_openapi_python_generated/models/get_user_highlights_tweets200_response.py +0 -138
- twitter_openapi_python_generated/models/get_users_by_rest_ids200_response.py +0 -138
- twitter_openapi_python_generated/models/post_create_bookmark200_response.py +0 -138
- twitter_openapi_python_generated/models/post_create_retweet200_response.py +0 -138
- twitter_openapi_python_generated/models/post_create_tweet200_response.py +0 -138
- twitter_openapi_python_generated/models/post_delete_bookmark200_response.py +0 -138
- twitter_openapi_python_generated/models/post_delete_retweet200_response.py +0 -138
- twitter_openapi_python_generated/models/post_delete_tweet200_response.py +0 -138
- twitter_openapi_python_generated/models/post_unfavorite_tweet200_response.py +0 -138
- {twitter_openapi_python_generated-0.0.24.dist-info → twitter_openapi_python_generated-0.0.26.dist-info}/LICENSE +0 -0
- {twitter_openapi_python_generated-0.0.24.dist-info → twitter_openapi_python_generated-0.0.26.dist-info}/LICENSE.AGPL +0 -0
- {twitter_openapi_python_generated-0.0.24.dist-info → twitter_openapi_python_generated-0.0.26.dist-info}/top_level.txt +0 -0
|
@@ -14,14 +14,16 @@
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
import copy
|
|
17
|
+
import http.client as httplib
|
|
17
18
|
import logging
|
|
18
19
|
from logging import FileHandler
|
|
19
20
|
import multiprocessing
|
|
20
21
|
import sys
|
|
21
|
-
from typing import Optional
|
|
22
|
+
from typing import Any, ClassVar, Dict, List, Literal, Optional, TypedDict
|
|
23
|
+
from typing_extensions import NotRequired, Self
|
|
24
|
+
|
|
22
25
|
import urllib3
|
|
23
26
|
|
|
24
|
-
import http.client as httplib
|
|
25
27
|
|
|
26
28
|
JSON_SCHEMA_VALIDATION_KEYWORDS = {
|
|
27
29
|
'multipleOf', 'maximum', 'exclusiveMaximum',
|
|
@@ -29,6 +31,129 @@ JSON_SCHEMA_VALIDATION_KEYWORDS = {
|
|
|
29
31
|
'minLength', 'pattern', 'maxItems', 'minItems'
|
|
30
32
|
}
|
|
31
33
|
|
|
34
|
+
ServerVariablesT = Dict[str, str]
|
|
35
|
+
|
|
36
|
+
GenericAuthSetting = TypedDict(
|
|
37
|
+
"GenericAuthSetting",
|
|
38
|
+
{
|
|
39
|
+
"type": str,
|
|
40
|
+
"in": str,
|
|
41
|
+
"key": str,
|
|
42
|
+
"value": str,
|
|
43
|
+
},
|
|
44
|
+
)
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
OAuth2AuthSetting = TypedDict(
|
|
48
|
+
"OAuth2AuthSetting",
|
|
49
|
+
{
|
|
50
|
+
"type": Literal["oauth2"],
|
|
51
|
+
"in": Literal["header"],
|
|
52
|
+
"key": Literal["Authorization"],
|
|
53
|
+
"value": str,
|
|
54
|
+
},
|
|
55
|
+
)
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
APIKeyAuthSetting = TypedDict(
|
|
59
|
+
"APIKeyAuthSetting",
|
|
60
|
+
{
|
|
61
|
+
"type": Literal["api_key"],
|
|
62
|
+
"in": str,
|
|
63
|
+
"key": str,
|
|
64
|
+
"value": Optional[str],
|
|
65
|
+
},
|
|
66
|
+
)
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
BasicAuthSetting = TypedDict(
|
|
70
|
+
"BasicAuthSetting",
|
|
71
|
+
{
|
|
72
|
+
"type": Literal["basic"],
|
|
73
|
+
"in": Literal["header"],
|
|
74
|
+
"key": Literal["Authorization"],
|
|
75
|
+
"value": Optional[str],
|
|
76
|
+
},
|
|
77
|
+
)
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
BearerFormatAuthSetting = TypedDict(
|
|
81
|
+
"BearerFormatAuthSetting",
|
|
82
|
+
{
|
|
83
|
+
"type": Literal["bearer"],
|
|
84
|
+
"in": Literal["header"],
|
|
85
|
+
"format": Literal["JWT"],
|
|
86
|
+
"key": Literal["Authorization"],
|
|
87
|
+
"value": str,
|
|
88
|
+
},
|
|
89
|
+
)
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
BearerAuthSetting = TypedDict(
|
|
93
|
+
"BearerAuthSetting",
|
|
94
|
+
{
|
|
95
|
+
"type": Literal["bearer"],
|
|
96
|
+
"in": Literal["header"],
|
|
97
|
+
"key": Literal["Authorization"],
|
|
98
|
+
"value": str,
|
|
99
|
+
},
|
|
100
|
+
)
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
HTTPSignatureAuthSetting = TypedDict(
|
|
104
|
+
"HTTPSignatureAuthSetting",
|
|
105
|
+
{
|
|
106
|
+
"type": Literal["http-signature"],
|
|
107
|
+
"in": Literal["header"],
|
|
108
|
+
"key": Literal["Authorization"],
|
|
109
|
+
"value": None,
|
|
110
|
+
},
|
|
111
|
+
)
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
AuthSettings = TypedDict(
|
|
115
|
+
"AuthSettings",
|
|
116
|
+
{
|
|
117
|
+
"Accept": APIKeyAuthSetting,
|
|
118
|
+
"AcceptEncoding": APIKeyAuthSetting,
|
|
119
|
+
"AcceptLanguage": APIKeyAuthSetting,
|
|
120
|
+
"ActiveUser": APIKeyAuthSetting,
|
|
121
|
+
"AuthType": APIKeyAuthSetting,
|
|
122
|
+
"BearerAuth": BearerAuthSetting,
|
|
123
|
+
"ClientLanguage": APIKeyAuthSetting,
|
|
124
|
+
"ClientTransactionId": APIKeyAuthSetting,
|
|
125
|
+
"ClientUuid": APIKeyAuthSetting,
|
|
126
|
+
"CookieAuthToken": APIKeyAuthSetting,
|
|
127
|
+
"CookieCt0": APIKeyAuthSetting,
|
|
128
|
+
"CookieGt0": APIKeyAuthSetting,
|
|
129
|
+
"CsrfToken": APIKeyAuthSetting,
|
|
130
|
+
"GuestToken": APIKeyAuthSetting,
|
|
131
|
+
"Priority": APIKeyAuthSetting,
|
|
132
|
+
"Referer": APIKeyAuthSetting,
|
|
133
|
+
"SecChUa": APIKeyAuthSetting,
|
|
134
|
+
"SecChUaMobile": APIKeyAuthSetting,
|
|
135
|
+
"SecChUaPlatform": APIKeyAuthSetting,
|
|
136
|
+
"SecFetchDest": APIKeyAuthSetting,
|
|
137
|
+
"SecFetchMode": APIKeyAuthSetting,
|
|
138
|
+
"SecFetchSite": APIKeyAuthSetting,
|
|
139
|
+
"UserAgent": APIKeyAuthSetting,
|
|
140
|
+
},
|
|
141
|
+
total=False,
|
|
142
|
+
)
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
class HostSettingVariable(TypedDict):
|
|
146
|
+
description: str
|
|
147
|
+
default_value: str
|
|
148
|
+
enum_values: List[str]
|
|
149
|
+
|
|
150
|
+
|
|
151
|
+
class HostSetting(TypedDict):
|
|
152
|
+
url: str
|
|
153
|
+
description: str
|
|
154
|
+
variables: NotRequired[Dict[str, HostSettingVariable]]
|
|
155
|
+
|
|
156
|
+
|
|
32
157
|
class Configuration:
|
|
33
158
|
"""This class contains various settings of the API client.
|
|
34
159
|
|
|
@@ -82,20 +207,26 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
82
207
|
Cookie: JSESSIONID abc123
|
|
83
208
|
"""
|
|
84
209
|
|
|
85
|
-
_default = None
|
|
86
|
-
|
|
87
|
-
def __init__(
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
210
|
+
_default: ClassVar[Optional[Self]] = None
|
|
211
|
+
|
|
212
|
+
def __init__(
|
|
213
|
+
self,
|
|
214
|
+
host: Optional[str]=None,
|
|
215
|
+
api_key: Optional[Dict[str, str]]=None,
|
|
216
|
+
api_key_prefix: Optional[Dict[str, str]]=None,
|
|
217
|
+
username: Optional[str]=None,
|
|
218
|
+
password: Optional[str]=None,
|
|
219
|
+
access_token: Optional[str]=None,
|
|
220
|
+
server_index: Optional[int]=None,
|
|
221
|
+
server_variables: Optional[ServerVariablesT]=None,
|
|
222
|
+
server_operation_index: Optional[Dict[int, int]]=None,
|
|
223
|
+
server_operation_variables: Optional[Dict[int, ServerVariablesT]]=None,
|
|
224
|
+
ignore_operation_servers: bool=False,
|
|
225
|
+
ssl_ca_cert: Optional[str]=None,
|
|
226
|
+
retries: Optional[int] = None,
|
|
227
|
+
*,
|
|
228
|
+
debug: Optional[bool] = None,
|
|
229
|
+
) -> None:
|
|
99
230
|
"""Constructor
|
|
100
231
|
"""
|
|
101
232
|
self._base_path = "https://x.com/i/api" if host is None else host
|
|
@@ -219,7 +350,7 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
219
350
|
"""date format
|
|
220
351
|
"""
|
|
221
352
|
|
|
222
|
-
def __deepcopy__(self, memo):
|
|
353
|
+
def __deepcopy__(self, memo: Dict[int, Any]) -> Self:
|
|
223
354
|
cls = self.__class__
|
|
224
355
|
result = cls.__new__(cls)
|
|
225
356
|
memo[id(self)] = result
|
|
@@ -233,11 +364,11 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
233
364
|
result.debug = self.debug
|
|
234
365
|
return result
|
|
235
366
|
|
|
236
|
-
def __setattr__(self, name, value):
|
|
367
|
+
def __setattr__(self, name: str, value: Any) -> None:
|
|
237
368
|
object.__setattr__(self, name, value)
|
|
238
369
|
|
|
239
370
|
@classmethod
|
|
240
|
-
def set_default(cls, default):
|
|
371
|
+
def set_default(cls, default: Optional[Self]) -> None:
|
|
241
372
|
"""Set default instance of configuration.
|
|
242
373
|
|
|
243
374
|
It stores default configuration, which can be
|
|
@@ -248,7 +379,7 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
248
379
|
cls._default = default
|
|
249
380
|
|
|
250
381
|
@classmethod
|
|
251
|
-
def get_default_copy(cls):
|
|
382
|
+
def get_default_copy(cls) -> Self:
|
|
252
383
|
"""Deprecated. Please use `get_default` instead.
|
|
253
384
|
|
|
254
385
|
Deprecated. Please use `get_default` instead.
|
|
@@ -258,7 +389,7 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
258
389
|
return cls.get_default()
|
|
259
390
|
|
|
260
391
|
@classmethod
|
|
261
|
-
def get_default(cls):
|
|
392
|
+
def get_default(cls) -> Self:
|
|
262
393
|
"""Return the default configuration.
|
|
263
394
|
|
|
264
395
|
This method returns newly created, based on default constructor,
|
|
@@ -268,11 +399,11 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
268
399
|
:return: The configuration object.
|
|
269
400
|
"""
|
|
270
401
|
if cls._default is None:
|
|
271
|
-
cls._default =
|
|
402
|
+
cls._default = cls()
|
|
272
403
|
return cls._default
|
|
273
404
|
|
|
274
405
|
@property
|
|
275
|
-
def logger_file(self):
|
|
406
|
+
def logger_file(self) -> Optional[str]:
|
|
276
407
|
"""The logger file.
|
|
277
408
|
|
|
278
409
|
If the logger_file is None, then add stream handler and remove file
|
|
@@ -284,7 +415,7 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
284
415
|
return self.__logger_file
|
|
285
416
|
|
|
286
417
|
@logger_file.setter
|
|
287
|
-
def logger_file(self, value):
|
|
418
|
+
def logger_file(self, value: Optional[str]) -> None:
|
|
288
419
|
"""The logger file.
|
|
289
420
|
|
|
290
421
|
If the logger_file is None, then add stream handler and remove file
|
|
@@ -303,7 +434,7 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
303
434
|
logger.addHandler(self.logger_file_handler)
|
|
304
435
|
|
|
305
436
|
@property
|
|
306
|
-
def debug(self):
|
|
437
|
+
def debug(self) -> bool:
|
|
307
438
|
"""Debug status
|
|
308
439
|
|
|
309
440
|
:param value: The debug status, True or False.
|
|
@@ -312,7 +443,7 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
312
443
|
return self.__debug
|
|
313
444
|
|
|
314
445
|
@debug.setter
|
|
315
|
-
def debug(self, value):
|
|
446
|
+
def debug(self, value: bool) -> None:
|
|
316
447
|
"""Debug status
|
|
317
448
|
|
|
318
449
|
:param value: The debug status, True or False.
|
|
@@ -334,7 +465,7 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
334
465
|
httplib.HTTPConnection.debuglevel = 0
|
|
335
466
|
|
|
336
467
|
@property
|
|
337
|
-
def logger_format(self):
|
|
468
|
+
def logger_format(self) -> str:
|
|
338
469
|
"""The logger format.
|
|
339
470
|
|
|
340
471
|
The logger_formatter will be updated when sets logger_format.
|
|
@@ -345,7 +476,7 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
345
476
|
return self.__logger_format
|
|
346
477
|
|
|
347
478
|
@logger_format.setter
|
|
348
|
-
def logger_format(self, value):
|
|
479
|
+
def logger_format(self, value: str) -> None:
|
|
349
480
|
"""The logger format.
|
|
350
481
|
|
|
351
482
|
The logger_formatter will be updated when sets logger_format.
|
|
@@ -356,7 +487,7 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
356
487
|
self.__logger_format = value
|
|
357
488
|
self.logger_formatter = logging.Formatter(self.__logger_format)
|
|
358
489
|
|
|
359
|
-
def get_api_key_with_prefix(self, identifier, alias=None):
|
|
490
|
+
def get_api_key_with_prefix(self, identifier: str, alias: Optional[str]=None) -> Optional[str]:
|
|
360
491
|
"""Gets API key (with prefix if set).
|
|
361
492
|
|
|
362
493
|
:param identifier: The identifier of apiKey.
|
|
@@ -373,7 +504,9 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
373
504
|
else:
|
|
374
505
|
return key
|
|
375
506
|
|
|
376
|
-
|
|
507
|
+
return None
|
|
508
|
+
|
|
509
|
+
def get_basic_auth_token(self) -> Optional[str]:
|
|
377
510
|
"""Gets HTTP basic authentication header (string).
|
|
378
511
|
|
|
379
512
|
:return: The token for basic HTTP authentication.
|
|
@@ -388,12 +521,12 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
388
521
|
basic_auth=username + ':' + password
|
|
389
522
|
).get('authorization')
|
|
390
523
|
|
|
391
|
-
def auth_settings(self):
|
|
524
|
+
def auth_settings(self)-> AuthSettings:
|
|
392
525
|
"""Gets Auth Settings dict for api client.
|
|
393
526
|
|
|
394
527
|
:return: The Auth Settings information dict.
|
|
395
528
|
"""
|
|
396
|
-
auth = {}
|
|
529
|
+
auth: AuthSettings = {}
|
|
397
530
|
if 'Accept' in self.api_key:
|
|
398
531
|
auth['Accept'] = {
|
|
399
532
|
'type': 'api_key',
|
|
@@ -518,6 +651,15 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
518
651
|
'GuestToken',
|
|
519
652
|
),
|
|
520
653
|
}
|
|
654
|
+
if 'Priority' in self.api_key:
|
|
655
|
+
auth['Priority'] = {
|
|
656
|
+
'type': 'api_key',
|
|
657
|
+
'in': 'header',
|
|
658
|
+
'key': 'Priority',
|
|
659
|
+
'value': self.get_api_key_with_prefix(
|
|
660
|
+
'Priority',
|
|
661
|
+
),
|
|
662
|
+
}
|
|
521
663
|
if 'Referer' in self.api_key:
|
|
522
664
|
auth['Referer'] = {
|
|
523
665
|
'type': 'api_key',
|
|
@@ -592,7 +734,7 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
592
734
|
}
|
|
593
735
|
return auth
|
|
594
736
|
|
|
595
|
-
def to_debug_report(self):
|
|
737
|
+
def to_debug_report(self) -> str:
|
|
596
738
|
"""Gets the essential information for debugging.
|
|
597
739
|
|
|
598
740
|
:return: The report for debugging.
|
|
@@ -601,10 +743,10 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
601
743
|
"OS: {env}\n"\
|
|
602
744
|
"Python Version: {pyversion}\n"\
|
|
603
745
|
"Version of the API: 0.0.1\n"\
|
|
604
|
-
"SDK Package Version: 0.0.
|
|
746
|
+
"SDK Package Version: 0.0.26".\
|
|
605
747
|
format(env=sys.platform, pyversion=sys.version)
|
|
606
748
|
|
|
607
|
-
def get_host_settings(self):
|
|
749
|
+
def get_host_settings(self) -> List[HostSetting]:
|
|
608
750
|
"""Gets an array of host settings
|
|
609
751
|
|
|
610
752
|
:return: An array of host settings
|
|
@@ -620,7 +762,12 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
620
762
|
}
|
|
621
763
|
]
|
|
622
764
|
|
|
623
|
-
def get_host_from_settings(
|
|
765
|
+
def get_host_from_settings(
|
|
766
|
+
self,
|
|
767
|
+
index: Optional[int],
|
|
768
|
+
variables: Optional[ServerVariablesT]=None,
|
|
769
|
+
servers: Optional[List[HostSetting]]=None,
|
|
770
|
+
) -> str:
|
|
624
771
|
"""Gets host URL based on the index and variables
|
|
625
772
|
:param index: array index of the host settings
|
|
626
773
|
:param variables: hash of variable and the corresponding value
|
|
@@ -660,12 +807,12 @@ conf = twitter_openapi_python_generated.Configuration(
|
|
|
660
807
|
return url
|
|
661
808
|
|
|
662
809
|
@property
|
|
663
|
-
def host(self):
|
|
810
|
+
def host(self) -> str:
|
|
664
811
|
"""Return generated host."""
|
|
665
812
|
return self.get_host_from_settings(self.server_index, variables=self.server_variables)
|
|
666
813
|
|
|
667
814
|
@host.setter
|
|
668
|
-
def host(self, value):
|
|
815
|
+
def host(self, value: str) -> None:
|
|
669
816
|
"""Fix base path."""
|
|
670
817
|
self._base_path = value
|
|
671
818
|
self.server_index = None
|
|
@@ -49,6 +49,8 @@ from twitter_openapi_python_generated.models.community_data import CommunityData
|
|
|
49
49
|
from twitter_openapi_python_generated.models.community_delete_action_result import CommunityDeleteActionResult
|
|
50
50
|
from twitter_openapi_python_generated.models.community_invites_result import CommunityInvitesResult
|
|
51
51
|
from twitter_openapi_python_generated.models.community_join_action_result import CommunityJoinActionResult
|
|
52
|
+
from twitter_openapi_python_generated.models.community_join_action_unavailable import CommunityJoinActionUnavailable
|
|
53
|
+
from twitter_openapi_python_generated.models.community_join_action_union import CommunityJoinActionUnion
|
|
52
54
|
from twitter_openapi_python_generated.models.community_join_requests_result import CommunityJoinRequestsResult
|
|
53
55
|
from twitter_openapi_python_generated.models.community_leave_action_result import CommunityLeaveActionResult
|
|
54
56
|
from twitter_openapi_python_generated.models.community_pin_action_result import CommunityPinActionResult
|
|
@@ -86,34 +88,18 @@ from twitter_openapi_python_generated.models.delete_tweet_response_result import
|
|
|
86
88
|
from twitter_openapi_python_generated.models.display_treatment import DisplayTreatment
|
|
87
89
|
from twitter_openapi_python_generated.models.display_type import DisplayType
|
|
88
90
|
from twitter_openapi_python_generated.models.entities import Entities
|
|
89
|
-
from twitter_openapi_python_generated.models.error import Error
|
|
90
91
|
from twitter_openapi_python_generated.models.error_extensions import ErrorExtensions
|
|
91
|
-
from twitter_openapi_python_generated.models.
|
|
92
|
-
from twitter_openapi_python_generated.models.errors_data import ErrorsData
|
|
92
|
+
from twitter_openapi_python_generated.models.error_response import ErrorResponse
|
|
93
93
|
from twitter_openapi_python_generated.models.ext_media_availability import ExtMediaAvailability
|
|
94
94
|
from twitter_openapi_python_generated.models.extended_entities import ExtendedEntities
|
|
95
95
|
from twitter_openapi_python_generated.models.favorite_tweet import FavoriteTweet
|
|
96
|
-
from twitter_openapi_python_generated.models.
|
|
96
|
+
from twitter_openapi_python_generated.models.favorite_tweet_response import FavoriteTweetResponse
|
|
97
97
|
from twitter_openapi_python_generated.models.feedback_info import FeedbackInfo
|
|
98
98
|
from twitter_openapi_python_generated.models.follow_response import FollowResponse
|
|
99
99
|
from twitter_openapi_python_generated.models.follow_response_data import FollowResponseData
|
|
100
100
|
from twitter_openapi_python_generated.models.follow_response_result import FollowResponseResult
|
|
101
101
|
from twitter_openapi_python_generated.models.follow_response_user import FollowResponseUser
|
|
102
102
|
from twitter_openapi_python_generated.models.follow_timeline import FollowTimeline
|
|
103
|
-
from twitter_openapi_python_generated.models.get_bookmarks200_response import GetBookmarks200Response
|
|
104
|
-
from twitter_openapi_python_generated.models.get_favoriters200_response import GetFavoriters200Response
|
|
105
|
-
from twitter_openapi_python_generated.models.get_followers200_response import GetFollowers200Response
|
|
106
|
-
from twitter_openapi_python_generated.models.get_home_latest_timeline200_response import GetHomeLatestTimeline200Response
|
|
107
|
-
from twitter_openapi_python_generated.models.get_likes200_response import GetLikes200Response
|
|
108
|
-
from twitter_openapi_python_generated.models.get_list_latest_tweets_timeline200_response import GetListLatestTweetsTimeline200Response
|
|
109
|
-
from twitter_openapi_python_generated.models.get_profile_spotlights_query200_response import GetProfileSpotlightsQuery200Response
|
|
110
|
-
from twitter_openapi_python_generated.models.get_retweeters200_response import GetRetweeters200Response
|
|
111
|
-
from twitter_openapi_python_generated.models.get_search_timeline200_response import GetSearchTimeline200Response
|
|
112
|
-
from twitter_openapi_python_generated.models.get_tweet_detail200_response import GetTweetDetail200Response
|
|
113
|
-
from twitter_openapi_python_generated.models.get_tweet_result_by_rest_id200_response import GetTweetResultByRestId200Response
|
|
114
|
-
from twitter_openapi_python_generated.models.get_user_by_rest_id200_response import GetUserByRestId200Response
|
|
115
|
-
from twitter_openapi_python_generated.models.get_user_highlights_tweets200_response import GetUserHighlightsTweets200Response
|
|
116
|
-
from twitter_openapi_python_generated.models.get_users_by_rest_ids200_response import GetUsersByRestIds200Response
|
|
117
103
|
from twitter_openapi_python_generated.models.highlight import Highlight
|
|
118
104
|
from twitter_openapi_python_generated.models.home_timeline_home import HomeTimelineHome
|
|
119
105
|
from twitter_openapi_python_generated.models.home_timeline_response_data import HomeTimelineResponseData
|
|
@@ -149,14 +135,11 @@ from twitter_openapi_python_generated.models.note_tweet_result_media_inline_medi
|
|
|
149
135
|
from twitter_openapi_python_generated.models.note_tweet_result_rich_text import NoteTweetResultRichText
|
|
150
136
|
from twitter_openapi_python_generated.models.note_tweet_result_rich_text_tag import NoteTweetResultRichTextTag
|
|
151
137
|
from twitter_openapi_python_generated.models.one_factor_login_eligibility import OneFactorLoginEligibility
|
|
152
|
-
from twitter_openapi_python_generated.models.
|
|
153
|
-
from twitter_openapi_python_generated.models.post_create_bookmark200_response import PostCreateBookmark200Response
|
|
138
|
+
from twitter_openapi_python_generated.models.other_object_all import OtherObjectAll
|
|
154
139
|
from twitter_openapi_python_generated.models.post_create_bookmark_request import PostCreateBookmarkRequest
|
|
155
140
|
from twitter_openapi_python_generated.models.post_create_bookmark_request_variables import PostCreateBookmarkRequestVariables
|
|
156
|
-
from twitter_openapi_python_generated.models.post_create_retweet200_response import PostCreateRetweet200Response
|
|
157
141
|
from twitter_openapi_python_generated.models.post_create_retweet_request import PostCreateRetweetRequest
|
|
158
142
|
from twitter_openapi_python_generated.models.post_create_retweet_request_variables import PostCreateRetweetRequestVariables
|
|
159
|
-
from twitter_openapi_python_generated.models.post_create_tweet200_response import PostCreateTweet200Response
|
|
160
143
|
from twitter_openapi_python_generated.models.post_create_tweet_request import PostCreateTweetRequest
|
|
161
144
|
from twitter_openapi_python_generated.models.post_create_tweet_request_features import PostCreateTweetRequestFeatures
|
|
162
145
|
from twitter_openapi_python_generated.models.post_create_tweet_request_variables import PostCreateTweetRequestVariables
|
|
@@ -164,16 +147,11 @@ from twitter_openapi_python_generated.models.post_create_tweet_request_variables
|
|
|
164
147
|
from twitter_openapi_python_generated.models.post_create_tweet_request_variables_media import PostCreateTweetRequestVariablesMedia
|
|
165
148
|
from twitter_openapi_python_generated.models.post_create_tweet_request_variables_media_media_entities_inner import PostCreateTweetRequestVariablesMediaMediaEntitiesInner
|
|
166
149
|
from twitter_openapi_python_generated.models.post_create_tweet_request_variables_reply import PostCreateTweetRequestVariablesReply
|
|
167
|
-
from twitter_openapi_python_generated.models.post_delete_bookmark200_response import PostDeleteBookmark200Response
|
|
168
150
|
from twitter_openapi_python_generated.models.post_delete_bookmark_request import PostDeleteBookmarkRequest
|
|
169
|
-
from twitter_openapi_python_generated.models.post_delete_retweet200_response import PostDeleteRetweet200Response
|
|
170
151
|
from twitter_openapi_python_generated.models.post_delete_retweet_request import PostDeleteRetweetRequest
|
|
171
152
|
from twitter_openapi_python_generated.models.post_delete_retweet_request_variables import PostDeleteRetweetRequestVariables
|
|
172
|
-
from twitter_openapi_python_generated.models.post_delete_tweet200_response import PostDeleteTweet200Response
|
|
173
153
|
from twitter_openapi_python_generated.models.post_delete_tweet_request import PostDeleteTweetRequest
|
|
174
|
-
from twitter_openapi_python_generated.models.post_favorite_tweet200_response import PostFavoriteTweet200Response
|
|
175
154
|
from twitter_openapi_python_generated.models.post_favorite_tweet_request import PostFavoriteTweetRequest
|
|
176
|
-
from twitter_openapi_python_generated.models.post_unfavorite_tweet200_response import PostUnfavoriteTweet200Response
|
|
177
155
|
from twitter_openapi_python_generated.models.post_unfavorite_tweet_request import PostUnfavoriteTweetRequest
|
|
178
156
|
from twitter_openapi_python_generated.models.primary_community_topic import PrimaryCommunityTopic
|
|
179
157
|
from twitter_openapi_python_generated.models.profile_response import ProfileResponse
|
|
@@ -264,7 +242,7 @@ from twitter_openapi_python_generated.models.tweet_view import TweetView
|
|
|
264
242
|
from twitter_openapi_python_generated.models.tweet_with_visibility_results import TweetWithVisibilityResults
|
|
265
243
|
from twitter_openapi_python_generated.models.type_name import TypeName
|
|
266
244
|
from twitter_openapi_python_generated.models.unfavorite_tweet import UnfavoriteTweet
|
|
267
|
-
from twitter_openapi_python_generated.models.
|
|
245
|
+
from twitter_openapi_python_generated.models.unfavorite_tweet_response import UnfavoriteTweetResponse
|
|
268
246
|
from twitter_openapi_python_generated.models.unified_card import UnifiedCard
|
|
269
247
|
from twitter_openapi_python_generated.models.url import Url
|
|
270
248
|
from twitter_openapi_python_generated.models.urt_endpoint_options import UrtEndpointOptions
|
|
@@ -40,8 +40,8 @@ class AuthorCommunityRelationship(BaseModel):
|
|
|
40
40
|
if value is None:
|
|
41
41
|
return value
|
|
42
42
|
|
|
43
|
-
if value not in set(['Member', 'Moderator']):
|
|
44
|
-
raise ValueError("must be one of enum values ('Member', 'Moderator')")
|
|
43
|
+
if value not in set(['Member', 'Moderator', 'Admin']):
|
|
44
|
+
raise ValueError("must be one of enum values ('Member', 'Moderator', 'Admin')")
|
|
45
45
|
return value
|
|
46
46
|
|
|
47
47
|
model_config = ConfigDict(
|
|
@@ -33,11 +33,11 @@ class BirdwatchPivot(BaseModel):
|
|
|
33
33
|
""" # noqa: E501
|
|
34
34
|
call_to_action: Optional[BirdwatchPivotCallToAction] = Field(default=None, alias="callToAction")
|
|
35
35
|
destination_url: StrictStr = Field(alias="destinationUrl")
|
|
36
|
-
footer: BirdwatchPivotFooter
|
|
36
|
+
footer: Optional[BirdwatchPivotFooter] = None
|
|
37
37
|
icon_type: StrictStr = Field(alias="iconType")
|
|
38
|
-
note: BirdwatchPivotNote
|
|
39
|
-
shorttitle: StrictStr
|
|
40
|
-
subtitle: BirdwatchPivotSubtitle
|
|
38
|
+
note: Optional[BirdwatchPivotNote] = None
|
|
39
|
+
shorttitle: Optional[StrictStr] = None
|
|
40
|
+
subtitle: Optional[BirdwatchPivotSubtitle] = None
|
|
41
41
|
title: StrictStr
|
|
42
42
|
visual_style: Optional[StrictStr] = Field(default=None, alias="visualStyle")
|
|
43
43
|
__properties: ClassVar[List[str]] = ["callToAction", "destinationUrl", "footer", "iconType", "note", "shorttitle", "subtitle", "title", "visualStyle"]
|
|
@@ -55,8 +55,8 @@ class BirdwatchPivot(BaseModel):
|
|
|
55
55
|
if value is None:
|
|
56
56
|
return value
|
|
57
57
|
|
|
58
|
-
if value not in set(['Default']):
|
|
59
|
-
raise ValueError("must be one of enum values ('Default')")
|
|
58
|
+
if value not in set(['Default', 'Tentative']):
|
|
59
|
+
raise ValueError("must be one of enum values ('Default', 'Tentative')")
|
|
60
60
|
return value
|
|
61
61
|
|
|
62
62
|
model_config = ConfigDict(
|
|
@@ -19,8 +19,9 @@ import re # noqa: F401
|
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
21
|
from pydantic import BaseModel, ConfigDict
|
|
22
|
-
from typing import Any, ClassVar, Dict, List
|
|
22
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
23
|
from twitter_openapi_python_generated.models.bookmarks_response_data import BookmarksResponseData
|
|
24
|
+
from twitter_openapi_python_generated.models.error_response import ErrorResponse
|
|
24
25
|
from typing import Optional, Set
|
|
25
26
|
from typing_extensions import Self
|
|
26
27
|
|
|
@@ -28,8 +29,9 @@ class BookmarksResponse(BaseModel):
|
|
|
28
29
|
"""
|
|
29
30
|
BookmarksResponse
|
|
30
31
|
""" # noqa: E501
|
|
31
|
-
data: BookmarksResponseData
|
|
32
|
-
|
|
32
|
+
data: Optional[BookmarksResponseData] = None
|
|
33
|
+
errors: Optional[List[ErrorResponse]] = None
|
|
34
|
+
__properties: ClassVar[List[str]] = ["data", "errors"]
|
|
33
35
|
|
|
34
36
|
model_config = ConfigDict(
|
|
35
37
|
populate_by_name=True,
|
|
@@ -73,6 +75,13 @@ class BookmarksResponse(BaseModel):
|
|
|
73
75
|
# override the default output from pydantic by calling `to_dict()` of data
|
|
74
76
|
if self.data:
|
|
75
77
|
_dict['data'] = self.data.to_dict()
|
|
78
|
+
# override the default output from pydantic by calling `to_dict()` of each item in errors (list)
|
|
79
|
+
_items = []
|
|
80
|
+
if self.errors:
|
|
81
|
+
for _item_errors in self.errors:
|
|
82
|
+
if _item_errors:
|
|
83
|
+
_items.append(_item_errors.to_dict())
|
|
84
|
+
_dict['errors'] = _items
|
|
76
85
|
return _dict
|
|
77
86
|
|
|
78
87
|
@classmethod
|
|
@@ -85,7 +94,8 @@ class BookmarksResponse(BaseModel):
|
|
|
85
94
|
return cls.model_validate(obj)
|
|
86
95
|
|
|
87
96
|
_obj = cls.model_validate({
|
|
88
|
-
"data": BookmarksResponseData.from_dict(obj["data"]) if obj.get("data") is not None else None
|
|
97
|
+
"data": BookmarksResponseData.from_dict(obj["data"]) if obj.get("data") is not None else None,
|
|
98
|
+
"errors": [ErrorResponse.from_dict(_item) for _item in obj["errors"]] if obj.get("errors") is not None else None
|
|
89
99
|
})
|
|
90
100
|
return _obj
|
|
91
101
|
|
|
@@ -21,7 +21,7 @@ import json
|
|
|
21
21
|
from pydantic import BaseModel, ConfigDict
|
|
22
22
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
23
|
from twitter_openapi_python_generated.models.community_delete_action_result import CommunityDeleteActionResult
|
|
24
|
-
from twitter_openapi_python_generated.models.
|
|
24
|
+
from twitter_openapi_python_generated.models.community_join_action_union import CommunityJoinActionUnion
|
|
25
25
|
from twitter_openapi_python_generated.models.community_leave_action_result import CommunityLeaveActionResult
|
|
26
26
|
from twitter_openapi_python_generated.models.community_pin_action_result import CommunityPinActionResult
|
|
27
27
|
from twitter_openapi_python_generated.models.community_unpin_action_result import CommunityUnpinActionResult
|
|
@@ -33,7 +33,7 @@ class CommunityActions(BaseModel):
|
|
|
33
33
|
CommunityActions
|
|
34
34
|
""" # noqa: E501
|
|
35
35
|
delete_action_result: Optional[CommunityDeleteActionResult] = None
|
|
36
|
-
join_action_result: Optional[
|
|
36
|
+
join_action_result: Optional[CommunityJoinActionUnion] = None
|
|
37
37
|
leave_action_result: Optional[CommunityLeaveActionResult] = None
|
|
38
38
|
pin_action_result: Optional[CommunityPinActionResult] = None
|
|
39
39
|
unpin_action_result: Optional[CommunityUnpinActionResult] = None
|
|
@@ -106,7 +106,7 @@ class CommunityActions(BaseModel):
|
|
|
106
106
|
|
|
107
107
|
_obj = cls.model_validate({
|
|
108
108
|
"delete_action_result": CommunityDeleteActionResult.from_dict(obj["delete_action_result"]) if obj.get("delete_action_result") is not None else None,
|
|
109
|
-
"join_action_result":
|
|
109
|
+
"join_action_result": CommunityJoinActionUnion.from_dict(obj["join_action_result"]) if obj.get("join_action_result") is not None else None,
|
|
110
110
|
"leave_action_result": CommunityLeaveActionResult.from_dict(obj["leave_action_result"]) if obj.get("leave_action_result") is not None else None,
|
|
111
111
|
"pin_action_result": CommunityPinActionResult.from_dict(obj["pin_action_result"]) if obj.get("pin_action_result") is not None else None,
|
|
112
112
|
"unpin_action_result": CommunityUnpinActionResult.from_dict(obj["unpin_action_result"]) if obj.get("unpin_action_result") is not None else None
|
|
@@ -74,15 +74,15 @@ class CommunityData(BaseModel):
|
|
|
74
74
|
@field_validator('invites_policy')
|
|
75
75
|
def invites_policy_validate_enum(cls, value):
|
|
76
76
|
"""Validates the enum"""
|
|
77
|
-
if value not in set(['MemberInvitesAllowed']):
|
|
78
|
-
raise ValueError("must be one of enum values ('MemberInvitesAllowed')")
|
|
77
|
+
if value not in set(['MemberInvitesAllowed', 'ModeratorInvitesAllowed']):
|
|
78
|
+
raise ValueError("must be one of enum values ('MemberInvitesAllowed', 'ModeratorInvitesAllowed')")
|
|
79
79
|
return value
|
|
80
80
|
|
|
81
81
|
@field_validator('join_policy')
|
|
82
82
|
def join_policy_validate_enum(cls, value):
|
|
83
83
|
"""Validates the enum"""
|
|
84
|
-
if value not in set(['Open']):
|
|
85
|
-
raise ValueError("must be one of enum values ('Open')")
|
|
84
|
+
if value not in set(['Open', 'RestrictedJoinRequestsRequireModeratorApproval']):
|
|
85
|
+
raise ValueError("must be one of enum values ('Open', 'RestrictedJoinRequestsRequireModeratorApproval')")
|
|
86
86
|
return value
|
|
87
87
|
|
|
88
88
|
@field_validator('role')
|