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.
Files changed (98) hide show
  1. twitter_openapi_python_generated/__init__.py +7 -29
  2. twitter_openapi_python_generated/api/default_api.py +14 -12
  3. twitter_openapi_python_generated/api/other_api.py +7 -6
  4. twitter_openapi_python_generated/api/post_api.py +56 -48
  5. twitter_openapi_python_generated/api/tweet_api.py +73 -62
  6. twitter_openapi_python_generated/api/user_api.py +13 -11
  7. twitter_openapi_python_generated/api/user_list_api.py +33 -28
  8. twitter_openapi_python_generated/api/users_api.py +7 -6
  9. twitter_openapi_python_generated/api/v11_get_api.py +2 -0
  10. twitter_openapi_python_generated/api/v11_post_api.py +2 -0
  11. twitter_openapi_python_generated/api/v20_get_api.py +1 -0
  12. twitter_openapi_python_generated/api_client.py +1 -1
  13. twitter_openapi_python_generated/configuration.py +185 -38
  14. twitter_openapi_python_generated/models/__init__.py +6 -28
  15. twitter_openapi_python_generated/models/author_community_relationship.py +2 -2
  16. twitter_openapi_python_generated/models/birdwatch_pivot.py +6 -6
  17. twitter_openapi_python_generated/models/bookmarks_response.py +14 -4
  18. twitter_openapi_python_generated/models/community_actions.py +3 -3
  19. twitter_openapi_python_generated/models/community_data.py +4 -4
  20. twitter_openapi_python_generated/models/{favorite_tweet_response_data.py → community_join_action_unavailable.py} +20 -12
  21. twitter_openapi_python_generated/models/{post_favorite_tweet200_response.py → community_join_action_union.py} +50 -27
  22. twitter_openapi_python_generated/models/create_bookmark_response.py +13 -3
  23. twitter_openapi_python_generated/models/create_bookmark_response_data.py +2 -2
  24. twitter_openapi_python_generated/models/create_retweet_response.py +13 -3
  25. twitter_openapi_python_generated/models/create_retweet_response_data.py +2 -2
  26. twitter_openapi_python_generated/models/create_tweet_response.py +13 -3
  27. twitter_openapi_python_generated/models/create_tweet_response_data.py +2 -2
  28. twitter_openapi_python_generated/models/delete_bookmark_response.py +13 -3
  29. twitter_openapi_python_generated/models/delete_bookmark_response_data.py +2 -2
  30. twitter_openapi_python_generated/models/delete_retweet_response.py +13 -3
  31. twitter_openapi_python_generated/models/delete_retweet_response_data.py +3 -3
  32. twitter_openapi_python_generated/models/delete_tweet_response.py +13 -3
  33. twitter_openapi_python_generated/models/{error.py → error_response.py} +5 -5
  34. twitter_openapi_python_generated/models/favorite_tweet.py +2 -2
  35. twitter_openapi_python_generated/models/{errors.py → favorite_tweet_response.py} +10 -10
  36. twitter_openapi_python_generated/models/follow_response.py +13 -3
  37. twitter_openapi_python_generated/models/follow_response_data.py +2 -2
  38. twitter_openapi_python_generated/models/home_timeline_response_data.py +2 -2
  39. twitter_openapi_python_generated/models/list_latest_tweets_timeline_response.py +13 -3
  40. twitter_openapi_python_generated/models/list_tweets_timeline_data.py +2 -2
  41. twitter_openapi_python_generated/models/{other_response.py → other_object_all.py} +4 -4
  42. twitter_openapi_python_generated/models/profile_response.py +13 -3
  43. twitter_openapi_python_generated/models/profile_response_data.py +2 -2
  44. twitter_openapi_python_generated/models/search_timeline_data.py +2 -2
  45. twitter_openapi_python_generated/models/search_timeline_response.py +13 -3
  46. twitter_openapi_python_generated/models/sensitive_media_warning.py +4 -4
  47. twitter_openapi_python_generated/models/timeline_response.py +13 -3
  48. twitter_openapi_python_generated/models/tweet_detail_response.py +13 -3
  49. twitter_openapi_python_generated/models/tweet_detail_response_data.py +2 -2
  50. twitter_openapi_python_generated/models/tweet_favoriters_response.py +13 -3
  51. twitter_openapi_python_generated/models/tweet_favoriters_response_data.py +2 -2
  52. twitter_openapi_python_generated/models/tweet_legacy.py +2 -2
  53. twitter_openapi_python_generated/models/tweet_result_by_rest_id_data.py +2 -2
  54. twitter_openapi_python_generated/models/tweet_result_by_rest_id_response.py +13 -3
  55. twitter_openapi_python_generated/models/tweet_retweeters_response.py +13 -3
  56. twitter_openapi_python_generated/models/tweet_retweeters_response_data.py +2 -2
  57. twitter_openapi_python_generated/models/type_name.py +1 -0
  58. twitter_openapi_python_generated/models/unfavorite_tweet.py +2 -2
  59. twitter_openapi_python_generated/models/{unfavorite_tweet_response_data.py → unfavorite_tweet_response.py} +17 -7
  60. twitter_openapi_python_generated/models/user.py +1 -1
  61. twitter_openapi_python_generated/models/user_highlights_tweets_data.py +2 -2
  62. twitter_openapi_python_generated/models/user_highlights_tweets_response.py +13 -3
  63. twitter_openapi_python_generated/models/user_legacy_extended_profile_birthdate.py +2 -2
  64. twitter_openapi_python_generated/models/user_response.py +13 -3
  65. twitter_openapi_python_generated/models/user_tip_jar_settings.py +3 -1
  66. twitter_openapi_python_generated/models/user_tweets_data.py +2 -2
  67. twitter_openapi_python_generated/models/user_tweets_response.py +13 -3
  68. twitter_openapi_python_generated/models/user_verification_info_reason.py +2 -2
  69. twitter_openapi_python_generated/models/users_response.py +13 -3
  70. twitter_openapi_python_generated/models/users_response_data.py +2 -2
  71. {twitter_openapi_python_generated-0.0.24.dist-info → twitter_openapi_python_generated-0.0.26.dist-info}/METADATA +6 -6
  72. {twitter_openapi_python_generated-0.0.24.dist-info → twitter_openapi_python_generated-0.0.26.dist-info}/RECORD +76 -98
  73. {twitter_openapi_python_generated-0.0.24.dist-info → twitter_openapi_python_generated-0.0.26.dist-info}/WHEEL +1 -1
  74. twitter_openapi_python_generated/models/errors_data.py +0 -99
  75. twitter_openapi_python_generated/models/get_bookmarks200_response.py +0 -138
  76. twitter_openapi_python_generated/models/get_favoriters200_response.py +0 -138
  77. twitter_openapi_python_generated/models/get_followers200_response.py +0 -138
  78. twitter_openapi_python_generated/models/get_home_latest_timeline200_response.py +0 -138
  79. twitter_openapi_python_generated/models/get_likes200_response.py +0 -138
  80. twitter_openapi_python_generated/models/get_list_latest_tweets_timeline200_response.py +0 -138
  81. twitter_openapi_python_generated/models/get_profile_spotlights_query200_response.py +0 -138
  82. twitter_openapi_python_generated/models/get_retweeters200_response.py +0 -138
  83. twitter_openapi_python_generated/models/get_search_timeline200_response.py +0 -138
  84. twitter_openapi_python_generated/models/get_tweet_detail200_response.py +0 -138
  85. twitter_openapi_python_generated/models/get_tweet_result_by_rest_id200_response.py +0 -138
  86. twitter_openapi_python_generated/models/get_user_by_rest_id200_response.py +0 -138
  87. twitter_openapi_python_generated/models/get_user_highlights_tweets200_response.py +0 -138
  88. twitter_openapi_python_generated/models/get_users_by_rest_ids200_response.py +0 -138
  89. twitter_openapi_python_generated/models/post_create_bookmark200_response.py +0 -138
  90. twitter_openapi_python_generated/models/post_create_retweet200_response.py +0 -138
  91. twitter_openapi_python_generated/models/post_create_tweet200_response.py +0 -138
  92. twitter_openapi_python_generated/models/post_delete_bookmark200_response.py +0 -138
  93. twitter_openapi_python_generated/models/post_delete_retweet200_response.py +0 -138
  94. twitter_openapi_python_generated/models/post_delete_tweet200_response.py +0 -138
  95. twitter_openapi_python_generated/models/post_unfavorite_tweet200_response.py +0 -138
  96. {twitter_openapi_python_generated-0.0.24.dist-info → twitter_openapi_python_generated-0.0.26.dist-info}/LICENSE +0 -0
  97. {twitter_openapi_python_generated-0.0.24.dist-info → twitter_openapi_python_generated-0.0.26.dist-info}/LICENSE.AGPL +0 -0
  98. {twitter_openapi_python_generated-0.0.24.dist-info → twitter_openapi_python_generated-0.0.26.dist-info}/top_level.txt +0 -0
@@ -18,18 +18,27 @@ import pprint
18
18
  import re # noqa: F401
19
19
  import json
20
20
 
21
- from pydantic import BaseModel, ConfigDict
21
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
22
22
  from typing import Any, ClassVar, Dict, List
23
- from twitter_openapi_python_generated.models.favorite_tweet import FavoriteTweet
23
+ from twitter_openapi_python_generated.models.type_name import TypeName
24
24
  from typing import Optional, Set
25
25
  from typing_extensions import Self
26
26
 
27
- class FavoriteTweetResponseData(BaseModel):
27
+ class CommunityJoinActionUnavailable(BaseModel):
28
28
  """
29
- FavoriteTweetResponseData
29
+ CommunityJoinActionUnavailable
30
30
  """ # noqa: E501
31
- data: FavoriteTweet
32
- __properties: ClassVar[List[str]] = ["data"]
31
+ typename: TypeName = Field(alias="__typename")
32
+ message: StrictStr
33
+ reason: StrictStr
34
+ __properties: ClassVar[List[str]] = ["__typename", "message", "reason"]
35
+
36
+ @field_validator('reason')
37
+ def reason_validate_enum(cls, value):
38
+ """Validates the enum"""
39
+ if value not in set(['ViewerRequestRequired']):
40
+ raise ValueError("must be one of enum values ('ViewerRequestRequired')")
41
+ return value
33
42
 
34
43
  model_config = ConfigDict(
35
44
  populate_by_name=True,
@@ -49,7 +58,7 @@ class FavoriteTweetResponseData(BaseModel):
49
58
 
50
59
  @classmethod
51
60
  def from_json(cls, json_str: str) -> Optional[Self]:
52
- """Create an instance of FavoriteTweetResponseData from a JSON string"""
61
+ """Create an instance of CommunityJoinActionUnavailable from a JSON string"""
53
62
  return cls.from_dict(json.loads(json_str))
54
63
 
55
64
  def to_dict(self) -> Dict[str, Any]:
@@ -70,14 +79,11 @@ class FavoriteTweetResponseData(BaseModel):
70
79
  exclude=excluded_fields,
71
80
  exclude_none=True,
72
81
  )
73
- # override the default output from pydantic by calling `to_dict()` of data
74
- if self.data:
75
- _dict['data'] = self.data.to_dict()
76
82
  return _dict
77
83
 
78
84
  @classmethod
79
85
  def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
80
- """Create an instance of FavoriteTweetResponseData from a dict"""
86
+ """Create an instance of CommunityJoinActionUnavailable from a dict"""
81
87
  if obj is None:
82
88
  return None
83
89
 
@@ -85,7 +91,9 @@ class FavoriteTweetResponseData(BaseModel):
85
91
  return cls.model_validate(obj)
86
92
 
87
93
  _obj = cls.model_validate({
88
- "data": FavoriteTweet.from_dict(obj["data"]) if obj.get("data") is not None else None
94
+ "__typename": obj.get("__typename"),
95
+ "message": obj.get("message"),
96
+ "reason": obj.get("reason")
89
97
  })
90
98
  return _obj
91
99
 
@@ -18,24 +18,24 @@ import json
18
18
  import pprint
19
19
  from pydantic import BaseModel, ConfigDict, Field, StrictStr, ValidationError, field_validator
20
20
  from typing import Any, List, Optional
21
- from twitter_openapi_python_generated.models.errors import Errors
22
- from twitter_openapi_python_generated.models.favorite_tweet_response_data import FavoriteTweetResponseData
21
+ from twitter_openapi_python_generated.models.community_join_action_result import CommunityJoinActionResult
22
+ from twitter_openapi_python_generated.models.community_join_action_unavailable import CommunityJoinActionUnavailable
23
23
  from pydantic import StrictStr, Field
24
24
  from typing import Union, List, Set, Optional, Dict
25
25
  from typing_extensions import Literal, Self
26
26
 
27
- POSTFAVORITETWEET200RESPONSE_ONE_OF_SCHEMAS = ["Errors", "FavoriteTweetResponseData"]
27
+ COMMUNITYJOINACTIONUNION_ONE_OF_SCHEMAS = ["CommunityJoinActionResult", "CommunityJoinActionUnavailable"]
28
28
 
29
- class PostFavoriteTweet200Response(BaseModel):
29
+ class CommunityJoinActionUnion(BaseModel):
30
30
  """
31
- PostFavoriteTweet200Response
31
+ CommunityJoinActionUnion
32
32
  """
33
- # data type: FavoriteTweetResponseData
34
- oneof_schema_1_validator: Optional[FavoriteTweetResponseData] = None
35
- # data type: Errors
36
- oneof_schema_2_validator: Optional[Errors] = None
37
- actual_instance: Optional[Union[Errors, FavoriteTweetResponseData]] = None
38
- one_of_schemas: Set[str] = { "Errors", "FavoriteTweetResponseData" }
33
+ # data type: CommunityJoinActionResult
34
+ oneof_schema_1_validator: Optional[CommunityJoinActionResult] = None
35
+ # data type: CommunityJoinActionUnavailable
36
+ oneof_schema_2_validator: Optional[CommunityJoinActionUnavailable] = None
37
+ actual_instance: Optional[Union[CommunityJoinActionResult, CommunityJoinActionUnavailable]] = None
38
+ one_of_schemas: Set[str] = { "CommunityJoinActionResult", "CommunityJoinActionUnavailable" }
39
39
 
40
40
  model_config = ConfigDict(
41
41
  validate_assignment=True,
@@ -43,6 +43,9 @@ class PostFavoriteTweet200Response(BaseModel):
43
43
  )
44
44
 
45
45
 
46
+ discriminator_value_class_map: Dict[str, str] = {
47
+ }
48
+
46
49
  def __init__(self, *args, **kwargs) -> None:
47
50
  if args:
48
51
  if len(args) > 1:
@@ -55,25 +58,25 @@ class PostFavoriteTweet200Response(BaseModel):
55
58
 
56
59
  @field_validator('actual_instance')
57
60
  def actual_instance_must_validate_oneof(cls, v):
58
- instance = PostFavoriteTweet200Response.model_construct()
61
+ instance = CommunityJoinActionUnion.model_construct()
59
62
  error_messages = []
60
63
  match = 0
61
- # validate data type: FavoriteTweetResponseData
62
- if not isinstance(v, FavoriteTweetResponseData):
63
- error_messages.append(f"Error! Input type `{type(v)}` is not `FavoriteTweetResponseData`")
64
+ # validate data type: CommunityJoinActionResult
65
+ if not isinstance(v, CommunityJoinActionResult):
66
+ error_messages.append(f"Error! Input type `{type(v)}` is not `CommunityJoinActionResult`")
64
67
  else:
65
68
  match += 1
66
- # validate data type: Errors
67
- if not isinstance(v, Errors):
68
- error_messages.append(f"Error! Input type `{type(v)}` is not `Errors`")
69
+ # validate data type: CommunityJoinActionUnavailable
70
+ if not isinstance(v, CommunityJoinActionUnavailable):
71
+ error_messages.append(f"Error! Input type `{type(v)}` is not `CommunityJoinActionUnavailable`")
69
72
  else:
70
73
  match += 1
71
74
  if match > 1:
72
75
  # more than 1 match
73
- raise ValueError("Multiple matches found when setting `actual_instance` in PostFavoriteTweet200Response with oneOf schemas: Errors, FavoriteTweetResponseData. Details: " + ", ".join(error_messages))
76
+ raise ValueError("Multiple matches found when setting `actual_instance` in CommunityJoinActionUnion with oneOf schemas: CommunityJoinActionResult, CommunityJoinActionUnavailable. Details: " + ", ".join(error_messages))
74
77
  elif match == 0:
75
78
  # no match
76
- raise ValueError("No match found when setting `actual_instance` in PostFavoriteTweet200Response with oneOf schemas: Errors, FavoriteTweetResponseData. Details: " + ", ".join(error_messages))
79
+ raise ValueError("No match found when setting `actual_instance` in CommunityJoinActionUnion with oneOf schemas: CommunityJoinActionResult, CommunityJoinActionUnavailable. Details: " + ", ".join(error_messages))
77
80
  else:
78
81
  return v
79
82
 
@@ -88,25 +91,45 @@ class PostFavoriteTweet200Response(BaseModel):
88
91
  error_messages = []
89
92
  match = 0
90
93
 
91
- # deserialize data into FavoriteTweetResponseData
94
+ # use oneOf discriminator to lookup the data type
95
+ _data_type = json.loads(json_str).get("__typename")
96
+ if not _data_type:
97
+ raise ValueError("Failed to lookup data type from the field `__typename` in the input.")
98
+
99
+ # check if data type is `CommunityJoinActionResult`
100
+ if _data_type == "CommunityJoinAction":
101
+ instance.actual_instance = CommunityJoinActionResult.from_json(json_str)
102
+ return instance
103
+
104
+ # check if data type is `CommunityJoinActionUnavailable`
105
+ if _data_type == "CommunityJoinActionUnavailable":
106
+ instance.actual_instance = CommunityJoinActionUnavailable.from_json(json_str)
107
+ return instance
108
+
109
+ # check if data type is `CommunityJoinActionResult`
110
+ if _data_type == "CommunityJoinActionResult":
111
+ instance.actual_instance = CommunityJoinActionResult.from_json(json_str)
112
+ return instance
113
+
114
+ # deserialize data into CommunityJoinActionResult
92
115
  try:
93
- instance.actual_instance = FavoriteTweetResponseData.from_json(json_str)
116
+ instance.actual_instance = CommunityJoinActionResult.from_json(json_str)
94
117
  match += 1
95
118
  except (ValidationError, ValueError) as e:
96
119
  error_messages.append(str(e))
97
- # deserialize data into Errors
120
+ # deserialize data into CommunityJoinActionUnavailable
98
121
  try:
99
- instance.actual_instance = Errors.from_json(json_str)
122
+ instance.actual_instance = CommunityJoinActionUnavailable.from_json(json_str)
100
123
  match += 1
101
124
  except (ValidationError, ValueError) as e:
102
125
  error_messages.append(str(e))
103
126
 
104
127
  if match > 1:
105
128
  # more than 1 match
106
- raise ValueError("Multiple matches found when deserializing the JSON string into PostFavoriteTweet200Response with oneOf schemas: Errors, FavoriteTweetResponseData. Details: " + ", ".join(error_messages))
129
+ raise ValueError("Multiple matches found when deserializing the JSON string into CommunityJoinActionUnion with oneOf schemas: CommunityJoinActionResult, CommunityJoinActionUnavailable. Details: " + ", ".join(error_messages))
107
130
  elif match == 0:
108
131
  # no match
109
- raise ValueError("No match found when deserializing the JSON string into PostFavoriteTweet200Response with oneOf schemas: Errors, FavoriteTweetResponseData. Details: " + ", ".join(error_messages))
132
+ raise ValueError("No match found when deserializing the JSON string into CommunityJoinActionUnion with oneOf schemas: CommunityJoinActionResult, CommunityJoinActionUnavailable. Details: " + ", ".join(error_messages))
110
133
  else:
111
134
  return instance
112
135
 
@@ -120,7 +143,7 @@ class PostFavoriteTweet200Response(BaseModel):
120
143
  else:
121
144
  return json.dumps(self.actual_instance)
122
145
 
123
- def to_dict(self) -> Optional[Union[Dict[str, Any], Errors, FavoriteTweetResponseData]]:
146
+ def to_dict(self) -> Optional[Union[Dict[str, Any], CommunityJoinActionResult, CommunityJoinActionUnavailable]]:
124
147
  """Returns the dict representation of the actual instance"""
125
148
  if self.actual_instance is None:
126
149
  return None
@@ -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.create_bookmark_response_data import CreateBookmarkResponseData
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
 
@@ -29,7 +30,8 @@ class CreateBookmarkResponse(BaseModel):
29
30
  CreateBookmarkResponse
30
31
  """ # noqa: E501
31
32
  data: CreateBookmarkResponseData
32
- __properties: ClassVar[List[str]] = ["data"]
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 CreateBookmarkResponse(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 CreateBookmarkResponse(BaseModel):
85
94
  return cls.model_validate(obj)
86
95
 
87
96
  _obj = cls.model_validate({
88
- "data": CreateBookmarkResponseData.from_dict(obj["data"]) if obj.get("data") is not None else None
97
+ "data": CreateBookmarkResponseData.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
 
@@ -19,7 +19,7 @@ import re # noqa: F401
19
19
  import json
20
20
 
21
21
  from pydantic import BaseModel, ConfigDict, StrictStr
22
- from typing import Any, ClassVar, Dict, List
22
+ from typing import Any, ClassVar, Dict, List, Optional
23
23
  from typing import Optional, Set
24
24
  from typing_extensions import Self
25
25
 
@@ -27,7 +27,7 @@ class CreateBookmarkResponseData(BaseModel):
27
27
  """
28
28
  CreateBookmarkResponseData
29
29
  """ # noqa: E501
30
- tweet_bookmark_put: StrictStr
30
+ tweet_bookmark_put: Optional[StrictStr] = None
31
31
  __properties: ClassVar[List[str]] = ["tweet_bookmark_put"]
32
32
 
33
33
  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.create_retweet_response_data import CreateRetweetResponseData
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
 
@@ -29,7 +30,8 @@ class CreateRetweetResponse(BaseModel):
29
30
  CreateRetweetResponse
30
31
  """ # noqa: E501
31
32
  data: CreateRetweetResponseData
32
- __properties: ClassVar[List[str]] = ["data"]
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 CreateRetweetResponse(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 CreateRetweetResponse(BaseModel):
85
94
  return cls.model_validate(obj)
86
95
 
87
96
  _obj = cls.model_validate({
88
- "data": CreateRetweetResponseData.from_dict(obj["data"]) if obj.get("data") is not None else None
97
+ "data": CreateRetweetResponseData.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
 
@@ -19,7 +19,7 @@ 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.create_retweet_response_result import CreateRetweetResponseResult
24
24
  from typing import Optional, Set
25
25
  from typing_extensions import Self
@@ -28,7 +28,7 @@ class CreateRetweetResponseData(BaseModel):
28
28
  """
29
29
  CreateRetweetResponseData
30
30
  """ # noqa: E501
31
- create_retweet: CreateRetweetResponseResult
31
+ create_retweet: Optional[CreateRetweetResponseResult] = None
32
32
  __properties: ClassVar[List[str]] = ["create_retweet"]
33
33
 
34
34
  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.create_tweet_response_data import CreateTweetResponseData
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
 
@@ -29,7 +30,8 @@ class CreateTweetResponse(BaseModel):
29
30
  CreateTweetResponse
30
31
  """ # noqa: E501
31
32
  data: CreateTweetResponseData
32
- __properties: ClassVar[List[str]] = ["data"]
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 CreateTweetResponse(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 CreateTweetResponse(BaseModel):
85
94
  return cls.model_validate(obj)
86
95
 
87
96
  _obj = cls.model_validate({
88
- "data": CreateTweetResponseData.from_dict(obj["data"]) if obj.get("data") is not None else None
97
+ "data": CreateTweetResponseData.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
 
@@ -19,7 +19,7 @@ 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.create_tweet_response_result import CreateTweetResponseResult
24
24
  from typing import Optional, Set
25
25
  from typing_extensions import Self
@@ -28,7 +28,7 @@ class CreateTweetResponseData(BaseModel):
28
28
  """
29
29
  CreateTweetResponseData
30
30
  """ # noqa: E501
31
- create_tweet: CreateTweetResponseResult
31
+ create_tweet: Optional[CreateTweetResponseResult] = None
32
32
  __properties: ClassVar[List[str]] = ["create_tweet"]
33
33
 
34
34
  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.delete_bookmark_response_data import DeleteBookmarkResponseData
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
 
@@ -29,7 +30,8 @@ class DeleteBookmarkResponse(BaseModel):
29
30
  DeleteBookmarkResponse
30
31
  """ # noqa: E501
31
32
  data: DeleteBookmarkResponseData
32
- __properties: ClassVar[List[str]] = ["data"]
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 DeleteBookmarkResponse(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 DeleteBookmarkResponse(BaseModel):
85
94
  return cls.model_validate(obj)
86
95
 
87
96
  _obj = cls.model_validate({
88
- "data": DeleteBookmarkResponseData.from_dict(obj["data"]) if obj.get("data") is not None else None
97
+ "data": DeleteBookmarkResponseData.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
 
@@ -19,7 +19,7 @@ import re # noqa: F401
19
19
  import json
20
20
 
21
21
  from pydantic import BaseModel, ConfigDict, StrictStr
22
- from typing import Any, ClassVar, Dict, List
22
+ from typing import Any, ClassVar, Dict, List, Optional
23
23
  from typing import Optional, Set
24
24
  from typing_extensions import Self
25
25
 
@@ -27,7 +27,7 @@ class DeleteBookmarkResponseData(BaseModel):
27
27
  """
28
28
  DeleteBookmarkResponseData
29
29
  """ # noqa: E501
30
- tweet_bookmark_delete: StrictStr
30
+ tweet_bookmark_delete: Optional[StrictStr] = None
31
31
  __properties: ClassVar[List[str]] = ["tweet_bookmark_delete"]
32
32
 
33
33
  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.delete_retweet_response_data import DeleteRetweetResponseData
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
 
@@ -29,7 +30,8 @@ class DeleteRetweetResponse(BaseModel):
29
30
  DeleteRetweetResponse
30
31
  """ # noqa: E501
31
32
  data: DeleteRetweetResponseData
32
- __properties: ClassVar[List[str]] = ["data"]
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 DeleteRetweetResponse(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 DeleteRetweetResponse(BaseModel):
85
94
  return cls.model_validate(obj)
86
95
 
87
96
  _obj = cls.model_validate({
88
- "data": DeleteRetweetResponseData.from_dict(obj["data"]) if obj.get("data") is not None else None
97
+ "data": DeleteRetweetResponseData.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
 
@@ -20,7 +20,7 @@ import json
20
20
 
21
21
  from pydantic import BaseModel, ConfigDict
22
22
  from typing import Any, ClassVar, Dict, List, Optional
23
- from twitter_openapi_python_generated.models.create_retweet_response_result import CreateRetweetResponseResult
23
+ from twitter_openapi_python_generated.models.delete_retweet_response_result import DeleteRetweetResponseResult
24
24
  from typing import Optional, Set
25
25
  from typing_extensions import Self
26
26
 
@@ -28,7 +28,7 @@ class DeleteRetweetResponseData(BaseModel):
28
28
  """
29
29
  DeleteRetweetResponseData
30
30
  """ # noqa: E501
31
- create_retweet: Optional[CreateRetweetResponseResult] = None
31
+ create_retweet: Optional[DeleteRetweetResponseResult] = None
32
32
  __properties: ClassVar[List[str]] = ["create_retweet"]
33
33
 
34
34
  model_config = ConfigDict(
@@ -85,7 +85,7 @@ class DeleteRetweetResponseData(BaseModel):
85
85
  return cls.model_validate(obj)
86
86
 
87
87
  _obj = cls.model_validate({
88
- "create_retweet": CreateRetweetResponseResult.from_dict(obj["create_retweet"]) if obj.get("create_retweet") is not None else None
88
+ "create_retweet": DeleteRetweetResponseResult.from_dict(obj["create_retweet"]) if obj.get("create_retweet") is not None else None
89
89
  })
90
90
  return _obj
91
91
 
@@ -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.delete_tweet_response_data import DeleteTweetResponseData
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
 
@@ -29,7 +30,8 @@ class DeleteTweetResponse(BaseModel):
29
30
  DeleteTweetResponse
30
31
  """ # noqa: E501
31
32
  data: DeleteTweetResponseData
32
- __properties: ClassVar[List[str]] = ["data"]
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 DeleteTweetResponse(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 DeleteTweetResponse(BaseModel):
85
94
  return cls.model_validate(obj)
86
95
 
87
96
  _obj = cls.model_validate({
88
- "data": DeleteTweetResponseData.from_dict(obj["data"]) if obj.get("data") is not None else None
97
+ "data": DeleteTweetResponseData.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
 
@@ -26,9 +26,9 @@ from twitter_openapi_python_generated.models.tracing import Tracing
26
26
  from typing import Optional, Set
27
27
  from typing_extensions import Self
28
28
 
29
- class Error(BaseModel):
29
+ class ErrorResponse(BaseModel):
30
30
  """
31
- Error
31
+ ErrorResponse
32
32
  """ # noqa: E501
33
33
  code: StrictInt
34
34
  extensions: ErrorExtensions
@@ -36,7 +36,7 @@ class Error(BaseModel):
36
36
  locations: List[Location]
37
37
  message: StrictStr
38
38
  name: StrictStr
39
- path: List[StrictStr]
39
+ path: List[Any]
40
40
  retry_after: Optional[StrictInt] = None
41
41
  source: StrictStr
42
42
  tracing: Tracing
@@ -60,7 +60,7 @@ class Error(BaseModel):
60
60
 
61
61
  @classmethod
62
62
  def from_json(cls, json_str: str) -> Optional[Self]:
63
- """Create an instance of Error from a JSON string"""
63
+ """Create an instance of ErrorResponse from a JSON string"""
64
64
  return cls.from_dict(json.loads(json_str))
65
65
 
66
66
  def to_dict(self) -> Dict[str, Any]:
@@ -98,7 +98,7 @@ class Error(BaseModel):
98
98
 
99
99
  @classmethod
100
100
  def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
101
- """Create an instance of Error from a dict"""
101
+ """Create an instance of ErrorResponse from a dict"""
102
102
  if obj is None:
103
103
  return None
104
104
 
@@ -19,7 +19,7 @@ import re # noqa: F401
19
19
  import json
20
20
 
21
21
  from pydantic import BaseModel, ConfigDict, StrictStr
22
- from typing import Any, ClassVar, Dict, List
22
+ from typing import Any, ClassVar, Dict, List, Optional
23
23
  from typing import Optional, Set
24
24
  from typing_extensions import Self
25
25
 
@@ -27,7 +27,7 @@ class FavoriteTweet(BaseModel):
27
27
  """
28
28
  FavoriteTweet
29
29
  """ # noqa: E501
30
- favorite_tweet: StrictStr
30
+ favorite_tweet: Optional[StrictStr] = None
31
31
  __properties: ClassVar[List[str]] = ["favorite_tweet"]
32
32
 
33
33
  model_config = ConfigDict(