twitter-openapi-python-generated 0.0.32__py3-none-any.whl → 0.0.34__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 (361) hide show
  1. twitter_openapi_python_generated/__init__.py +742 -330
  2. twitter_openapi_python_generated/api/default_api.py +1 -2
  3. twitter_openapi_python_generated/api/other_api.py +1 -2
  4. twitter_openapi_python_generated/api/post_api.py +1 -2
  5. twitter_openapi_python_generated/api/tweet_api.py +1 -2
  6. twitter_openapi_python_generated/api/user_api.py +1 -2
  7. twitter_openapi_python_generated/api/user_list_api.py +318 -2
  8. twitter_openapi_python_generated/api/users_api.py +1 -2
  9. twitter_openapi_python_generated/api/v11_get_api.py +1 -2
  10. twitter_openapi_python_generated/api/v11_post_api.py +1 -2
  11. twitter_openapi_python_generated/api/v20_get_api.py +1 -2
  12. twitter_openapi_python_generated/api_client.py +35 -28
  13. twitter_openapi_python_generated/configuration.py +47 -23
  14. twitter_openapi_python_generated/exceptions.py +7 -5
  15. twitter_openapi_python_generated/models/__init__.py +41 -2
  16. twitter_openapi_python_generated/models/about_community_result.py +4 -3
  17. twitter_openapi_python_generated/models/about_community_results.py +4 -3
  18. twitter_openapi_python_generated/models/about_community_tweet_data.py +4 -3
  19. twitter_openapi_python_generated/models/additional_media_info.py +4 -3
  20. twitter_openapi_python_generated/models/additional_media_info_call_to_actions.py +4 -3
  21. twitter_openapi_python_generated/models/additional_media_info_call_to_actions_url.py +4 -3
  22. twitter_openapi_python_generated/models/allow_download_status.py +4 -3
  23. twitter_openapi_python_generated/models/analysis_results.py +4 -3
  24. twitter_openapi_python_generated/models/article.py +4 -3
  25. twitter_openapi_python_generated/models/article_cover_media.py +7 -3
  26. twitter_openapi_python_generated/models/article_cover_media_color_info.py +4 -3
  27. twitter_openapi_python_generated/models/article_cover_media_color_info_palette.py +4 -3
  28. twitter_openapi_python_generated/models/article_cover_media_color_info_palette_rgb.py +4 -3
  29. twitter_openapi_python_generated/models/article_cover_media_info.py +4 -3
  30. twitter_openapi_python_generated/models/article_lifecycle_state.py +4 -3
  31. twitter_openapi_python_generated/models/article_metadata.py +4 -3
  32. twitter_openapi_python_generated/models/article_preview.py +99 -0
  33. twitter_openapi_python_generated/models/article_result.py +23 -6
  34. twitter_openapi_python_generated/models/article_results.py +4 -3
  35. twitter_openapi_python_generated/models/author_community_relationship.py +9 -8
  36. twitter_openapi_python_generated/models/birdwatch_entity.py +4 -3
  37. twitter_openapi_python_generated/models/birdwatch_entity_ref.py +4 -3
  38. twitter_openapi_python_generated/models/birdwatch_pivot.py +19 -6
  39. twitter_openapi_python_generated/models/birdwatch_pivot_call_to_action.py +4 -3
  40. twitter_openapi_python_generated/models/birdwatch_pivot_footer.py +4 -3
  41. twitter_openapi_python_generated/models/birdwatch_pivot_note.py +20 -6
  42. twitter_openapi_python_generated/models/birdwatch_pivot_subtitle.py +4 -3
  43. twitter_openapi_python_generated/models/bookmarks_response.py +4 -3
  44. twitter_openapi_python_generated/models/bookmarks_response_data.py +4 -3
  45. twitter_openapi_python_generated/models/bookmarks_timeline.py +4 -3
  46. twitter_openapi_python_generated/models/callback.py +4 -3
  47. twitter_openapi_python_generated/models/client_event_info.py +4 -3
  48. twitter_openapi_python_generated/models/communities_actions.py +4 -3
  49. twitter_openapi_python_generated/models/community.py +146 -12
  50. twitter_openapi_python_generated/models/community_about_timeline_response.py +4 -3
  51. twitter_openapi_python_generated/models/community_actions.py +4 -3
  52. twitter_openapi_python_generated/models/community_delete_action_result.py +4 -3
  53. twitter_openapi_python_generated/models/community_invites_result.py +4 -3
  54. twitter_openapi_python_generated/models/community_join_action.py +4 -3
  55. twitter_openapi_python_generated/models/community_join_action_unavailable.py +4 -3
  56. twitter_openapi_python_generated/models/community_join_requests_result.py +4 -3
  57. twitter_openapi_python_generated/models/community_leave_action_result.py +4 -3
  58. twitter_openapi_python_generated/models/community_media_timeline_response.py +4 -3
  59. twitter_openapi_python_generated/models/community_pin_action_result.py +4 -3
  60. twitter_openapi_python_generated/models/community_relationship.py +7 -3
  61. twitter_openapi_python_generated/models/community_result.py +93 -0
  62. twitter_openapi_python_generated/models/community_rule.py +7 -3
  63. twitter_openapi_python_generated/models/community_tweets_timeline_response.py +4 -3
  64. twitter_openapi_python_generated/models/community_unavailable.py +90 -0
  65. twitter_openapi_python_generated/models/community_union.py +156 -0
  66. twitter_openapi_python_generated/models/community_unpin_action_result.py +4 -3
  67. twitter_openapi_python_generated/models/community_urls.py +4 -3
  68. twitter_openapi_python_generated/models/community_urls_permalink.py +4 -3
  69. twitter_openapi_python_generated/models/content_disclosure.py +99 -0
  70. twitter_openapi_python_generated/models/content_disclosure_advertising_disclosure.py +89 -0
  71. twitter_openapi_python_generated/models/content_disclosure_ai_generated_disclosure.py +103 -0
  72. twitter_openapi_python_generated/models/conversation_control.py +4 -3
  73. twitter_openapi_python_generated/models/cover_cta.py +4 -3
  74. twitter_openapi_python_generated/models/create_bookmark_response.py +4 -3
  75. twitter_openapi_python_generated/models/create_bookmark_response_data.py +4 -3
  76. twitter_openapi_python_generated/models/create_retweet.py +4 -3
  77. twitter_openapi_python_generated/models/create_retweet_response.py +4 -3
  78. twitter_openapi_python_generated/models/create_retweet_response_data.py +4 -3
  79. twitter_openapi_python_generated/models/create_retweet_response_result.py +4 -3
  80. twitter_openapi_python_generated/models/create_tweet.py +4 -3
  81. twitter_openapi_python_generated/models/create_tweet_response.py +4 -3
  82. twitter_openapi_python_generated/models/create_tweet_response_data.py +4 -3
  83. twitter_openapi_python_generated/models/create_tweet_response_result.py +4 -3
  84. twitter_openapi_python_generated/models/cta_client_event_info.py +4 -3
  85. twitter_openapi_python_generated/models/delete_bookmark_response.py +4 -3
  86. twitter_openapi_python_generated/models/delete_bookmark_response_data.py +4 -3
  87. twitter_openapi_python_generated/models/delete_retweet.py +4 -3
  88. twitter_openapi_python_generated/models/delete_retweet_response.py +4 -3
  89. twitter_openapi_python_generated/models/delete_retweet_response_data.py +4 -3
  90. twitter_openapi_python_generated/models/delete_retweet_response_result.py +4 -3
  91. twitter_openapi_python_generated/models/delete_tweet_response.py +4 -3
  92. twitter_openapi_python_generated/models/delete_tweet_response_data.py +4 -3
  93. twitter_openapi_python_generated/models/delete_tweet_response_result.py +4 -3
  94. twitter_openapi_python_generated/models/display_treatment.py +4 -3
  95. twitter_openapi_python_generated/models/entities.py +19 -8
  96. twitter_openapi_python_generated/models/error_extensions.py +4 -3
  97. twitter_openapi_python_generated/models/error_response.py +14 -5
  98. twitter_openapi_python_generated/models/error_response_path_inner.py +144 -0
  99. twitter_openapi_python_generated/models/ext_media_availability.py +4 -3
  100. twitter_openapi_python_generated/models/extended_entities.py +4 -3
  101. twitter_openapi_python_generated/models/favorite_tweet.py +4 -3
  102. twitter_openapi_python_generated/models/favorite_tweet_response.py +4 -3
  103. twitter_openapi_python_generated/models/feedback_info.py +4 -3
  104. twitter_openapi_python_generated/models/follow_response.py +4 -3
  105. twitter_openapi_python_generated/models/follow_response_data.py +4 -3
  106. twitter_openapi_python_generated/models/follow_response_result.py +4 -3
  107. twitter_openapi_python_generated/models/follow_response_user.py +4 -3
  108. twitter_openapi_python_generated/models/follow_timeline.py +4 -3
  109. twitter_openapi_python_generated/models/grok_annotation.py +89 -0
  110. twitter_openapi_python_generated/models/grok_entity.py +97 -0
  111. twitter_openapi_python_generated/models/grok_entity_ref.py +116 -0
  112. twitter_openapi_python_generated/models/grok_image_annotation.py +4 -3
  113. twitter_openapi_python_generated/models/grok_share_attachment.py +4 -3
  114. twitter_openapi_python_generated/models/grok_share_attachment_item.py +7 -4
  115. twitter_openapi_python_generated/models/grok_translated_community_note.py +105 -0
  116. twitter_openapi_python_generated/models/grok_translated_community_note_with_availability.py +95 -0
  117. twitter_openapi_python_generated/models/grok_translated_post.py +103 -0
  118. twitter_openapi_python_generated/models/grok_translated_post_with_availability.py +95 -0
  119. twitter_openapi_python_generated/models/highlight.py +4 -3
  120. twitter_openapi_python_generated/models/home_timeline_home.py +4 -3
  121. twitter_openapi_python_generated/models/home_timeline_response_data.py +4 -3
  122. twitter_openapi_python_generated/models/item_result.py +4 -3
  123. twitter_openapi_python_generated/models/limited_action_results_data.py +4 -3
  124. twitter_openapi_python_generated/models/list_latest_tweets_timeline_response.py +4 -3
  125. twitter_openapi_python_generated/models/list_tweets_timeline_data.py +4 -3
  126. twitter_openapi_python_generated/models/list_tweets_timeline_list.py +4 -3
  127. twitter_openapi_python_generated/models/location.py +4 -3
  128. twitter_openapi_python_generated/models/media.py +17 -4
  129. twitter_openapi_python_generated/models/media_community_result.py +4 -3
  130. twitter_openapi_python_generated/models/media_community_results.py +4 -3
  131. twitter_openapi_python_generated/models/media_community_tweet_data.py +4 -3
  132. twitter_openapi_python_generated/models/media_extended.py +17 -4
  133. twitter_openapi_python_generated/models/media_original_info.py +4 -3
  134. twitter_openapi_python_generated/models/media_original_info_focus_rect.py +4 -3
  135. twitter_openapi_python_generated/models/media_result.py +4 -3
  136. twitter_openapi_python_generated/models/media_results.py +4 -3
  137. twitter_openapi_python_generated/models/media_size.py +4 -3
  138. twitter_openapi_python_generated/models/media_sizes.py +4 -3
  139. twitter_openapi_python_generated/models/media_stats.py +4 -3
  140. twitter_openapi_python_generated/models/media_video_info.py +4 -3
  141. twitter_openapi_python_generated/models/media_video_info_variant.py +4 -3
  142. twitter_openapi_python_generated/models/media_visibility_results.py +4 -3
  143. twitter_openapi_python_generated/models/media_visibility_results_blurred_image_interstitial.py +4 -3
  144. twitter_openapi_python_generated/models/module_entry.py +4 -3
  145. twitter_openapi_python_generated/models/module_item.py +7 -3
  146. twitter_openapi_python_generated/models/note_tweet.py +6 -5
  147. twitter_openapi_python_generated/models/note_tweet_result.py +4 -3
  148. twitter_openapi_python_generated/models/note_tweet_result_data.py +7 -3
  149. twitter_openapi_python_generated/models/note_tweet_result_media.py +4 -3
  150. twitter_openapi_python_generated/models/note_tweet_result_media_inline_media.py +7 -3
  151. twitter_openapi_python_generated/models/note_tweet_result_rich_text.py +4 -3
  152. twitter_openapi_python_generated/models/note_tweet_result_rich_text_tag.py +4 -3
  153. twitter_openapi_python_generated/models/notification_template.py +4 -3
  154. twitter_openapi_python_generated/models/notifications_result.py +7 -3
  155. twitter_openapi_python_generated/models/notifications_timeline_data.py +4 -3
  156. twitter_openapi_python_generated/models/notifications_timeline_response.py +4 -3
  157. twitter_openapi_python_generated/models/notifications_user_results.py +4 -3
  158. twitter_openapi_python_generated/models/notifications_viewer_v2.py +4 -3
  159. twitter_openapi_python_generated/models/one_factor_login_eligibility.py +4 -3
  160. twitter_openapi_python_generated/models/other_object_all.py +4 -3
  161. twitter_openapi_python_generated/models/post_create_bookmark_request.py +5 -8
  162. twitter_openapi_python_generated/models/post_create_bookmark_request_variables.py +4 -3
  163. twitter_openapi_python_generated/models/post_create_retweet_request.py +6 -9
  164. twitter_openapi_python_generated/models/post_create_retweet_request_variables.py +4 -3
  165. twitter_openapi_python_generated/models/post_create_tweet_request.py +6 -9
  166. twitter_openapi_python_generated/models/post_create_tweet_request_features.py +30 -15
  167. twitter_openapi_python_generated/models/post_create_tweet_request_variables.py +4 -3
  168. twitter_openapi_python_generated/models/post_create_tweet_request_variables_conversation_control.py +4 -3
  169. twitter_openapi_python_generated/models/post_create_tweet_request_variables_media.py +4 -3
  170. twitter_openapi_python_generated/models/post_create_tweet_request_variables_media_media_entities_inner.py +4 -3
  171. twitter_openapi_python_generated/models/post_create_tweet_request_variables_reply.py +4 -3
  172. twitter_openapi_python_generated/models/post_cta.py +101 -0
  173. twitter_openapi_python_generated/models/post_cta_title_text.py +99 -0
  174. twitter_openapi_python_generated/models/post_cta_title_text_entity.py +97 -0
  175. twitter_openapi_python_generated/models/post_cta_title_text_entity_ref.py +96 -0
  176. twitter_openapi_python_generated/models/post_cta_user_results.py +93 -0
  177. twitter_openapi_python_generated/models/post_cta_user_results_avatar.py +89 -0
  178. twitter_openapi_python_generated/models/post_cta_user_results_result.py +96 -0
  179. twitter_openapi_python_generated/models/post_delete_bookmark_request.py +5 -8
  180. twitter_openapi_python_generated/models/post_delete_retweet_request.py +6 -9
  181. twitter_openapi_python_generated/models/post_delete_retweet_request_variables.py +4 -3
  182. twitter_openapi_python_generated/models/post_delete_tweet_request.py +5 -8
  183. twitter_openapi_python_generated/models/post_favorite_tweet_request.py +5 -8
  184. twitter_openapi_python_generated/models/post_unfavorite_tweet_request.py +5 -8
  185. twitter_openapi_python_generated/models/primary_community_topic.py +7 -3
  186. twitter_openapi_python_generated/models/profile_bio.py +89 -0
  187. twitter_openapi_python_generated/models/profile_response.py +4 -3
  188. twitter_openapi_python_generated/models/profile_response_data.py +4 -3
  189. twitter_openapi_python_generated/models/quoted_ref_result.py +4 -3
  190. twitter_openapi_python_generated/models/quoted_status_permalink.py +4 -3
  191. twitter_openapi_python_generated/models/ranked_community_result.py +4 -3
  192. twitter_openapi_python_generated/models/ranked_community_results.py +4 -3
  193. twitter_openapi_python_generated/models/ranked_community_tweet_data.py +4 -3
  194. twitter_openapi_python_generated/models/retweet.py +7 -3
  195. twitter_openapi_python_generated/models/retweet_legacy.py +4 -3
  196. twitter_openapi_python_generated/models/rich_message.py +4 -3
  197. twitter_openapi_python_generated/models/search_by_raw_query.py +4 -3
  198. twitter_openapi_python_generated/models/search_timeline.py +4 -3
  199. twitter_openapi_python_generated/models/search_timeline_data.py +4 -3
  200. twitter_openapi_python_generated/models/search_timeline_response.py +4 -3
  201. twitter_openapi_python_generated/models/self_thread.py +7 -3
  202. twitter_openapi_python_generated/models/sensitive_media_warning.py +4 -3
  203. twitter_openapi_python_generated/models/session.py +16 -3
  204. twitter_openapi_python_generated/models/smarttag.py +97 -0
  205. twitter_openapi_python_generated/models/smarttag_tag.py +89 -0
  206. twitter_openapi_python_generated/models/social_context_landing_url.py +4 -3
  207. twitter_openapi_python_generated/models/super_follow_user_profile.py +89 -0
  208. twitter_openapi_python_generated/models/super_follows_reply_user_result.py +4 -3
  209. twitter_openapi_python_generated/models/super_follows_reply_user_result_core.py +89 -0
  210. twitter_openapi_python_generated/models/super_follows_reply_user_result_data.py +12 -11
  211. twitter_openapi_python_generated/models/super_follows_reply_user_result_legacy.py +4 -3
  212. twitter_openapi_python_generated/models/text.py +4 -3
  213. twitter_openapi_python_generated/models/text_entity.py +4 -3
  214. twitter_openapi_python_generated/models/text_entity_ref.py +4 -3
  215. twitter_openapi_python_generated/models/text_highlight.py +4 -3
  216. twitter_openapi_python_generated/models/thumbnail_image.py +4 -3
  217. twitter_openapi_python_generated/models/timeline.py +4 -3
  218. twitter_openapi_python_generated/models/timeline_add_entries.py +4 -3
  219. twitter_openapi_python_generated/models/timeline_add_entry.py +10 -3
  220. twitter_openapi_python_generated/models/timeline_add_to_module.py +4 -3
  221. twitter_openapi_python_generated/models/timeline_clear_cache.py +4 -3
  222. twitter_openapi_python_generated/models/timeline_clear_entries_unread_state.py +4 -3
  223. twitter_openapi_python_generated/models/timeline_community.py +4 -3
  224. twitter_openapi_python_generated/models/timeline_cover_behavior.py +4 -3
  225. twitter_openapi_python_generated/models/timeline_cover_behavior_url.py +4 -3
  226. twitter_openapi_python_generated/models/timeline_general_context.py +4 -3
  227. twitter_openapi_python_generated/models/timeline_half_cover.py +4 -3
  228. twitter_openapi_python_generated/models/timeline_mark_entries_unread_greater_than_sort_index.py +7 -3
  229. twitter_openapi_python_generated/models/timeline_message_prompt.py +4 -3
  230. twitter_openapi_python_generated/models/timeline_notification.py +4 -3
  231. twitter_openapi_python_generated/models/timeline_pin_entry.py +4 -3
  232. twitter_openapi_python_generated/models/timeline_prompt.py +4 -3
  233. twitter_openapi_python_generated/models/timeline_replace_entry.py +4 -3
  234. twitter_openapi_python_generated/models/timeline_response.py +4 -3
  235. twitter_openapi_python_generated/models/timeline_result.py +4 -3
  236. twitter_openapi_python_generated/models/timeline_show_alert.py +11 -4
  237. twitter_openapi_python_generated/models/timeline_show_alert_rich_text.py +4 -3
  238. twitter_openapi_python_generated/models/timeline_show_cover.py +4 -3
  239. twitter_openapi_python_generated/models/timeline_terminate_timeline.py +4 -3
  240. twitter_openapi_python_generated/models/timeline_timeline_cursor.py +4 -3
  241. twitter_openapi_python_generated/models/timeline_timeline_item.py +4 -3
  242. twitter_openapi_python_generated/models/timeline_timeline_module.py +4 -3
  243. twitter_openapi_python_generated/models/timeline_tombstone.py +4 -3
  244. twitter_openapi_python_generated/models/timeline_topic_context.py +4 -3
  245. twitter_openapi_python_generated/models/timeline_trend.py +4 -3
  246. twitter_openapi_python_generated/models/timeline_tweet.py +4 -3
  247. twitter_openapi_python_generated/models/timeline_user.py +4 -3
  248. twitter_openapi_python_generated/models/timestamp.py +4 -3
  249. twitter_openapi_python_generated/models/tombstone_entity.py +4 -3
  250. twitter_openapi_python_generated/models/tombstone_info.py +4 -3
  251. twitter_openapi_python_generated/models/tombstone_ref.py +4 -3
  252. twitter_openapi_python_generated/models/tombstone_rich_text.py +4 -3
  253. twitter_openapi_python_generated/models/topic_context.py +4 -3
  254. twitter_openapi_python_generated/models/tracing.py +7 -3
  255. twitter_openapi_python_generated/models/trend_image.py +4 -3
  256. twitter_openapi_python_generated/models/trend_metadata.py +4 -3
  257. twitter_openapi_python_generated/models/trend_results.py +7 -3
  258. twitter_openapi_python_generated/models/tweet.py +39 -7
  259. twitter_openapi_python_generated/models/tweet_card.py +4 -3
  260. twitter_openapi_python_generated/models/tweet_card_legacy.py +4 -3
  261. twitter_openapi_python_generated/models/tweet_card_legacy_binding_value.py +4 -3
  262. twitter_openapi_python_generated/models/tweet_card_legacy_binding_value_data.py +4 -3
  263. twitter_openapi_python_generated/models/tweet_card_legacy_binding_value_data_image.py +4 -3
  264. twitter_openapi_python_generated/models/tweet_card_platform.py +4 -3
  265. twitter_openapi_python_generated/models/tweet_card_platform_audience.py +4 -3
  266. twitter_openapi_python_generated/models/tweet_card_platform_data.py +4 -3
  267. twitter_openapi_python_generated/models/tweet_card_platform_device.py +7 -3
  268. twitter_openapi_python_generated/models/tweet_detail_response.py +4 -3
  269. twitter_openapi_python_generated/models/tweet_detail_response_data.py +4 -3
  270. twitter_openapi_python_generated/models/tweet_edit_control.py +13 -3
  271. twitter_openapi_python_generated/models/tweet_edit_control_initial.py +10 -3
  272. twitter_openapi_python_generated/models/tweet_edit_prespective.py +4 -3
  273. twitter_openapi_python_generated/models/tweet_favoriters_response.py +4 -3
  274. twitter_openapi_python_generated/models/tweet_favoriters_response_data.py +4 -3
  275. twitter_openapi_python_generated/models/tweet_interstitial.py +6 -5
  276. twitter_openapi_python_generated/models/tweet_interstitial_reveal_text.py +4 -3
  277. twitter_openapi_python_generated/models/tweet_interstitial_text.py +4 -3
  278. twitter_openapi_python_generated/models/tweet_interstitial_text_entity.py +4 -3
  279. twitter_openapi_python_generated/models/tweet_interstitial_text_entity_ref.py +4 -3
  280. twitter_openapi_python_generated/models/tweet_legacy.py +26 -4
  281. twitter_openapi_python_generated/models/tweet_legacy_scopes.py +4 -3
  282. twitter_openapi_python_generated/models/tweet_limited_action_results.py +4 -3
  283. twitter_openapi_python_generated/models/tweet_post_cta.py +105 -0
  284. twitter_openapi_python_generated/models/tweet_preview_display.py +4 -3
  285. twitter_openapi_python_generated/models/tweet_preview_display_cta.py +4 -3
  286. twitter_openapi_python_generated/models/tweet_preview_display_cta_url.py +4 -3
  287. twitter_openapi_python_generated/models/tweet_preview_display_tweet.py +18 -5
  288. twitter_openapi_python_generated/models/tweet_preview_display_tweet_view_count.py +7 -3
  289. twitter_openapi_python_generated/models/tweet_previous_counts.py +4 -3
  290. twitter_openapi_python_generated/models/tweet_result_by_rest_id_data.py +4 -3
  291. twitter_openapi_python_generated/models/tweet_result_by_rest_id_response.py +4 -3
  292. twitter_openapi_python_generated/models/tweet_retweeters_response.py +4 -3
  293. twitter_openapi_python_generated/models/tweet_retweeters_response_data.py +4 -3
  294. twitter_openapi_python_generated/models/tweet_tombstone.py +4 -3
  295. twitter_openapi_python_generated/models/tweet_unavailable.py +4 -3
  296. twitter_openapi_python_generated/models/tweet_view.py +7 -3
  297. twitter_openapi_python_generated/models/tweet_with_visibility_results.py +4 -3
  298. twitter_openapi_python_generated/models/type_name.py +2 -0
  299. twitter_openapi_python_generated/models/unfavorite_tweet.py +4 -3
  300. twitter_openapi_python_generated/models/unfavorite_tweet_response.py +4 -3
  301. twitter_openapi_python_generated/models/unified_card.py +4 -3
  302. twitter_openapi_python_generated/models/url.py +4 -3
  303. twitter_openapi_python_generated/models/urt_endpoint_options.py +4 -3
  304. twitter_openapi_python_generated/models/urt_endpoint_request_params.py +4 -3
  305. twitter_openapi_python_generated/models/user.py +83 -7
  306. twitter_openapi_python_generated/models/user_avatar.py +89 -0
  307. twitter_openapi_python_generated/models/user_core.py +104 -0
  308. twitter_openapi_python_generated/models/user_dm_permissions.py +89 -0
  309. twitter_openapi_python_generated/models/user_features.py +4 -3
  310. twitter_openapi_python_generated/models/user_highlights_info.py +4 -3
  311. twitter_openapi_python_generated/models/user_highlights_tweets_data.py +4 -3
  312. twitter_openapi_python_generated/models/user_highlights_tweets_response.py +4 -3
  313. twitter_openapi_python_generated/models/user_highlights_tweets_result.py +4 -3
  314. twitter_openapi_python_generated/models/user_highlights_tweets_timeline.py +4 -3
  315. twitter_openapi_python_generated/models/user_highlights_tweets_user.py +4 -3
  316. twitter_openapi_python_generated/models/user_legacy.py +27 -12
  317. twitter_openapi_python_generated/models/user_legacy_extended_profile.py +4 -3
  318. twitter_openapi_python_generated/models/user_legacy_extended_profile_birthdate.py +4 -3
  319. twitter_openapi_python_generated/models/user_location.py +89 -0
  320. twitter_openapi_python_generated/models/user_media_permissions.py +89 -0
  321. twitter_openapi_python_generated/models/user_privacy.py +89 -0
  322. twitter_openapi_python_generated/models/user_professional.py +9 -5
  323. twitter_openapi_python_generated/models/user_professional_category.py +4 -3
  324. twitter_openapi_python_generated/models/user_profile.py +93 -0
  325. twitter_openapi_python_generated/models/user_relationship_perspectives.py +95 -0
  326. twitter_openapi_python_generated/models/user_response.py +4 -3
  327. twitter_openapi_python_generated/models/user_response_data.py +4 -3
  328. twitter_openapi_python_generated/models/user_result_by_screen_name.py +7 -3
  329. twitter_openapi_python_generated/models/user_result_by_screen_name_core.py +91 -0
  330. twitter_openapi_python_generated/models/user_result_by_screen_name_legacy.py +4 -3
  331. twitter_openapi_python_generated/models/user_result_by_screen_name_result.py +31 -6
  332. twitter_openapi_python_generated/models/user_result_core.py +4 -3
  333. twitter_openapi_python_generated/models/user_result_privacy.py +89 -0
  334. twitter_openapi_python_generated/models/user_result_relationship_perspectives.py +95 -0
  335. twitter_openapi_python_generated/models/user_results.py +4 -3
  336. twitter_openapi_python_generated/models/user_tip_jar_settings.py +4 -3
  337. twitter_openapi_python_generated/models/user_tweets_data.py +4 -3
  338. twitter_openapi_python_generated/models/user_tweets_response.py +4 -3
  339. twitter_openapi_python_generated/models/user_tweets_result_v1.py +4 -3
  340. twitter_openapi_python_generated/models/user_tweets_result_v2.py +4 -3
  341. twitter_openapi_python_generated/models/user_tweets_user.py +4 -3
  342. twitter_openapi_python_generated/models/user_unavailable.py +4 -3
  343. twitter_openapi_python_generated/models/user_value.py +7 -3
  344. twitter_openapi_python_generated/models/user_verification.py +101 -0
  345. twitter_openapi_python_generated/models/user_verification_info.py +4 -3
  346. twitter_openapi_python_generated/models/user_verification_info_reason.py +7 -3
  347. twitter_openapi_python_generated/models/user_verification_info_reason_description.py +4 -3
  348. twitter_openapi_python_generated/models/user_verification_info_reason_description_entities.py +4 -3
  349. twitter_openapi_python_generated/models/user_verification_info_reason_description_entities_ref.py +4 -3
  350. twitter_openapi_python_generated/models/users_response.py +4 -3
  351. twitter_openapi_python_generated/models/users_response_data.py +4 -3
  352. twitter_openapi_python_generated/rest.py +7 -2
  353. twitter_openapi_python_generated-0.0.34.dist-info/METADATA +816 -0
  354. twitter_openapi_python_generated-0.0.34.dist-info/RECORD +374 -0
  355. {twitter_openapi_python_generated-0.0.32.dist-info → twitter_openapi_python_generated-0.0.34.dist-info}/WHEEL +1 -1
  356. twitter_openapi_python_generated/models/community_data.py +0 -219
  357. twitter_openapi_python_generated-0.0.32.dist-info/METADATA +0 -29
  358. twitter_openapi_python_generated-0.0.32.dist-info/RECORD +0 -335
  359. {twitter_openapi_python_generated-0.0.32.dist-info → twitter_openapi_python_generated-0.0.34.dist-info}/licenses/LICENSE +0 -0
  360. {twitter_openapi_python_generated-0.0.32.dist-info → twitter_openapi_python_generated-0.0.34.dist-info}/licenses/LICENSE.AGPL +0 -0
  361. {twitter_openapi_python_generated-0.0.32.dist-info → twitter_openapi_python_generated-0.0.34.dist-info}/top_level.txt +0 -0
@@ -26,6 +26,7 @@ from twitter_openapi_python_generated.models.item_content_union import ItemConte
26
26
  from twitter_openapi_python_generated.models.type_name import TypeName
27
27
  from typing import Optional, Set
28
28
  from typing_extensions import Self
29
+ from pydantic_core import to_jsonable_python
29
30
 
30
31
  class TimelineTimelineItem(BaseModel):
31
32
  """
@@ -39,7 +40,8 @@ class TimelineTimelineItem(BaseModel):
39
40
  __properties: ClassVar[List[str]] = ["__typename", "clientEventInfo", "entryType", "feedbackInfo", "itemContent"]
40
41
 
41
42
  model_config = ConfigDict(
42
- populate_by_name=True,
43
+ validate_by_name=True,
44
+ validate_by_alias=True,
43
45
  validate_assignment=True,
44
46
  protected_namespaces=(),
45
47
  )
@@ -51,8 +53,7 @@ class TimelineTimelineItem(BaseModel):
51
53
 
52
54
  def to_json(self) -> str:
53
55
  """Returns the JSON representation of the model using alias"""
54
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
55
- return json.dumps(self.to_dict())
56
+ return json.dumps(to_jsonable_python(self.to_dict()))
56
57
 
57
58
  @classmethod
58
59
  def from_json(cls, json_str: str) -> Optional[Self]:
@@ -27,6 +27,7 @@ from twitter_openapi_python_generated.models.feedback_info import FeedbackInfo
27
27
  from twitter_openapi_python_generated.models.module_item import ModuleItem
28
28
  from typing import Optional, Set
29
29
  from typing_extensions import Self
30
+ from pydantic_core import to_jsonable_python
30
31
 
31
32
  class TimelineTimelineModule(BaseModel):
32
33
  """
@@ -44,7 +45,8 @@ class TimelineTimelineModule(BaseModel):
44
45
  __properties: ClassVar[List[str]] = ["__typename", "clientEventInfo", "displayType", "entryType", "feedbackInfo", "footer", "header", "items", "metadata"]
45
46
 
46
47
  model_config = ConfigDict(
47
- populate_by_name=True,
48
+ validate_by_name=True,
49
+ validate_by_alias=True,
48
50
  validate_assignment=True,
49
51
  protected_namespaces=(),
50
52
  )
@@ -56,8 +58,7 @@ class TimelineTimelineModule(BaseModel):
56
58
 
57
59
  def to_json(self) -> str:
58
60
  """Returns the JSON representation of the model using alias"""
59
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
60
- return json.dumps(self.to_dict())
61
+ return json.dumps(to_jsonable_python(self.to_dict()))
61
62
 
62
63
  @classmethod
63
64
  def from_json(cls, json_str: str) -> Optional[Self]:
@@ -25,6 +25,7 @@ from twitter_openapi_python_generated.models.tombstone_info import TombstoneInfo
25
25
  from twitter_openapi_python_generated.models.type_name import TypeName
26
26
  from typing import Optional, Set
27
27
  from typing_extensions import Self
28
+ from pydantic_core import to_jsonable_python
28
29
 
29
30
  class TimelineTombstone(BaseModel):
30
31
  """
@@ -47,7 +48,8 @@ class TimelineTombstone(BaseModel):
47
48
  return value
48
49
 
49
50
  model_config = ConfigDict(
50
- populate_by_name=True,
51
+ validate_by_name=True,
52
+ validate_by_alias=True,
51
53
  validate_assignment=True,
52
54
  protected_namespaces=(),
53
55
  )
@@ -59,8 +61,7 @@ class TimelineTombstone(BaseModel):
59
61
 
60
62
  def to_json(self) -> str:
61
63
  """Returns the JSON representation of the model using alias"""
62
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
63
- return json.dumps(self.to_dict())
64
+ return json.dumps(to_jsonable_python(self.to_dict()))
64
65
 
65
66
  @classmethod
66
67
  def from_json(cls, json_str: str) -> Optional[Self]:
@@ -24,6 +24,7 @@ from twitter_openapi_python_generated.models.social_context_union_type import So
24
24
  from twitter_openapi_python_generated.models.topic_context import TopicContext
25
25
  from typing import Optional, Set
26
26
  from typing_extensions import Self
27
+ from pydantic_core import to_jsonable_python
27
28
 
28
29
  class TimelineTopicContext(BaseModel):
29
30
  """
@@ -45,7 +46,8 @@ class TimelineTopicContext(BaseModel):
45
46
  return value
46
47
 
47
48
  model_config = ConfigDict(
48
- populate_by_name=True,
49
+ validate_by_name=True,
50
+ validate_by_alias=True,
49
51
  validate_assignment=True,
50
52
  protected_namespaces=(),
51
53
  )
@@ -57,8 +59,7 @@ class TimelineTopicContext(BaseModel):
57
59
 
58
60
  def to_json(self) -> str:
59
61
  """Returns the JSON representation of the model using alias"""
60
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
61
- return json.dumps(self.to_dict())
62
+ return json.dumps(to_jsonable_python(self.to_dict()))
62
63
 
63
64
  @classmethod
64
65
  def from_json(cls, json_str: str) -> Optional[Self]:
@@ -29,6 +29,7 @@ from twitter_openapi_python_generated.models.trend_metadata import TrendMetadata
29
29
  from twitter_openapi_python_generated.models.type_name import TypeName
30
30
  from typing import Optional, Set
31
31
  from typing_extensions import Self
32
+ from pydantic_core import to_jsonable_python
32
33
 
33
34
  class TimelineTrend(BaseModel):
34
35
  """
@@ -46,7 +47,8 @@ class TimelineTrend(BaseModel):
46
47
  __properties: ClassVar[List[str]] = ["__typename", "images", "is_ai_trend", "itemType", "name", "social_context", "thumbnail_image", "trend_metadata", "trend_url"]
47
48
 
48
49
  model_config = ConfigDict(
49
- populate_by_name=True,
50
+ validate_by_name=True,
51
+ validate_by_alias=True,
50
52
  validate_assignment=True,
51
53
  protected_namespaces=(),
52
54
  )
@@ -58,8 +60,7 @@ class TimelineTrend(BaseModel):
58
60
 
59
61
  def to_json(self) -> str:
60
62
  """Returns the JSON representation of the model using alias"""
61
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
62
- return json.dumps(self.to_dict())
63
+ return json.dumps(to_jsonable_python(self.to_dict()))
63
64
 
64
65
  @classmethod
65
66
  def from_json(cls, json_str: str) -> Optional[Self]:
@@ -27,6 +27,7 @@ from twitter_openapi_python_generated.models.social_context_union import SocialC
27
27
  from twitter_openapi_python_generated.models.type_name import TypeName
28
28
  from typing import Optional, Set
29
29
  from typing_extensions import Self
30
+ from pydantic_core import to_jsonable_python
30
31
 
31
32
  class TimelineTweet(BaseModel):
32
33
  """
@@ -50,7 +51,8 @@ class TimelineTweet(BaseModel):
50
51
  return value
51
52
 
52
53
  model_config = ConfigDict(
53
- populate_by_name=True,
54
+ validate_by_name=True,
55
+ validate_by_alias=True,
54
56
  validate_assignment=True,
55
57
  protected_namespaces=(),
56
58
  )
@@ -62,8 +64,7 @@ class TimelineTweet(BaseModel):
62
64
 
63
65
  def to_json(self) -> str:
64
66
  """Returns the JSON representation of the model using alias"""
65
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
66
- return json.dumps(self.to_dict())
67
+ return json.dumps(to_jsonable_python(self.to_dict()))
67
68
 
68
69
  @classmethod
69
70
  def from_json(cls, json_str: str) -> Optional[Self]:
@@ -26,6 +26,7 @@ from twitter_openapi_python_generated.models.type_name import TypeName
26
26
  from twitter_openapi_python_generated.models.user_results import UserResults
27
27
  from typing import Optional, Set
28
28
  from typing_extensions import Self
29
+ from pydantic_core import to_jsonable_python
29
30
 
30
31
  class TimelineUser(BaseModel):
31
32
  """
@@ -46,7 +47,8 @@ class TimelineUser(BaseModel):
46
47
  return value
47
48
 
48
49
  model_config = ConfigDict(
49
- populate_by_name=True,
50
+ validate_by_name=True,
51
+ validate_by_alias=True,
50
52
  validate_assignment=True,
51
53
  protected_namespaces=(),
52
54
  )
@@ -58,8 +60,7 @@ class TimelineUser(BaseModel):
58
60
 
59
61
  def to_json(self) -> str:
60
62
  """Returns the JSON representation of the model using alias"""
61
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
62
- return json.dumps(self.to_dict())
63
+ return json.dumps(to_jsonable_python(self.to_dict()))
63
64
 
64
65
  @classmethod
65
66
  def from_json(cls, json_str: str) -> Optional[Self]:
@@ -22,6 +22,7 @@ from pydantic import BaseModel, ConfigDict, StrictInt, StrictStr
22
22
  from typing import Any, ClassVar, Dict, List
23
23
  from typing import Optional, Set
24
24
  from typing_extensions import Self
25
+ from pydantic_core import to_jsonable_python
25
26
 
26
27
  class Timestamp(BaseModel):
27
28
  """
@@ -33,7 +34,8 @@ class Timestamp(BaseModel):
33
34
  __properties: ClassVar[List[str]] = ["indices", "seconds", "text"]
34
35
 
35
36
  model_config = ConfigDict(
36
- populate_by_name=True,
37
+ validate_by_name=True,
38
+ validate_by_alias=True,
37
39
  validate_assignment=True,
38
40
  protected_namespaces=(),
39
41
  )
@@ -45,8 +47,7 @@ class Timestamp(BaseModel):
45
47
 
46
48
  def to_json(self) -> str:
47
49
  """Returns the JSON representation of the model using alias"""
48
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
49
- return json.dumps(self.to_dict())
50
+ return json.dumps(to_jsonable_python(self.to_dict()))
50
51
 
51
52
  @classmethod
52
53
  def from_json(cls, json_str: str) -> Optional[Self]:
@@ -23,6 +23,7 @@ from typing import Any, ClassVar, Dict, List, Optional
23
23
  from twitter_openapi_python_generated.models.tombstone_ref import TombstoneRef
24
24
  from typing import Optional, Set
25
25
  from typing_extensions import Self
26
+ from pydantic_core import to_jsonable_python
26
27
 
27
28
  class TombstoneEntity(BaseModel):
28
29
  """
@@ -34,7 +35,8 @@ class TombstoneEntity(BaseModel):
34
35
  __properties: ClassVar[List[str]] = ["fromIndex", "ref", "toIndex"]
35
36
 
36
37
  model_config = ConfigDict(
37
- populate_by_name=True,
38
+ validate_by_name=True,
39
+ validate_by_alias=True,
38
40
  validate_assignment=True,
39
41
  protected_namespaces=(),
40
42
  )
@@ -46,8 +48,7 @@ class TombstoneEntity(BaseModel):
46
48
 
47
49
  def to_json(self) -> str:
48
50
  """Returns the JSON representation of the model using alias"""
49
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
50
- return json.dumps(self.to_dict())
51
+ return json.dumps(to_jsonable_python(self.to_dict()))
51
52
 
52
53
  @classmethod
53
54
  def from_json(cls, json_str: str) -> Optional[Self]:
@@ -23,6 +23,7 @@ from typing import Any, ClassVar, Dict, List, Optional
23
23
  from twitter_openapi_python_generated.models.tombstone_rich_text import TombstoneRichText
24
24
  from typing import Optional, Set
25
25
  from typing_extensions import Self
26
+ from pydantic_core import to_jsonable_python
26
27
 
27
28
  class TombstoneInfo(BaseModel):
28
29
  """
@@ -33,7 +34,8 @@ class TombstoneInfo(BaseModel):
33
34
  __properties: ClassVar[List[str]] = ["richText", "text"]
34
35
 
35
36
  model_config = ConfigDict(
36
- populate_by_name=True,
37
+ validate_by_name=True,
38
+ validate_by_alias=True,
37
39
  validate_assignment=True,
38
40
  protected_namespaces=(),
39
41
  )
@@ -45,8 +47,7 @@ class TombstoneInfo(BaseModel):
45
47
 
46
48
  def to_json(self) -> str:
47
49
  """Returns the JSON representation of the model using alias"""
48
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
49
- return json.dumps(self.to_dict())
50
+ return json.dumps(to_jsonable_python(self.to_dict()))
50
51
 
51
52
  @classmethod
52
53
  def from_json(cls, json_str: str) -> Optional[Self]:
@@ -22,6 +22,7 @@ from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
22
22
  from typing import Any, ClassVar, Dict, List, Optional
23
23
  from typing import Optional, Set
24
24
  from typing_extensions import Self
25
+ from pydantic_core import to_jsonable_python
25
26
 
26
27
  class TombstoneRef(BaseModel):
27
28
  """
@@ -53,7 +54,8 @@ class TombstoneRef(BaseModel):
53
54
  return value
54
55
 
55
56
  model_config = ConfigDict(
56
- populate_by_name=True,
57
+ validate_by_name=True,
58
+ validate_by_alias=True,
57
59
  validate_assignment=True,
58
60
  protected_namespaces=(),
59
61
  )
@@ -65,8 +67,7 @@ class TombstoneRef(BaseModel):
65
67
 
66
68
  def to_json(self) -> str:
67
69
  """Returns the JSON representation of the model using alias"""
68
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
69
- return json.dumps(self.to_dict())
70
+ return json.dumps(to_jsonable_python(self.to_dict()))
70
71
 
71
72
  @classmethod
72
73
  def from_json(cls, json_str: str) -> Optional[Self]:
@@ -23,6 +23,7 @@ from typing import Any, ClassVar, Dict, List, Optional
23
23
  from twitter_openapi_python_generated.models.tombstone_entity import TombstoneEntity
24
24
  from typing import Optional, Set
25
25
  from typing_extensions import Self
26
+ from pydantic_core import to_jsonable_python
26
27
 
27
28
  class TombstoneRichText(BaseModel):
28
29
  """
@@ -34,7 +35,8 @@ class TombstoneRichText(BaseModel):
34
35
  __properties: ClassVar[List[str]] = ["entities", "rtl", "text"]
35
36
 
36
37
  model_config = ConfigDict(
37
- populate_by_name=True,
38
+ validate_by_name=True,
39
+ validate_by_alias=True,
38
40
  validate_assignment=True,
39
41
  protected_namespaces=(),
40
42
  )
@@ -46,8 +48,7 @@ class TombstoneRichText(BaseModel):
46
48
 
47
49
  def to_json(self) -> str:
48
50
  """Returns the JSON representation of the model using alias"""
49
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
50
- return json.dumps(self.to_dict())
51
+ return json.dumps(to_jsonable_python(self.to_dict()))
51
52
 
52
53
  @classmethod
53
54
  def from_json(cls, json_str: str) -> Optional[Self]:
@@ -22,6 +22,7 @@ from pydantic import BaseModel, ConfigDict, StrictBool, StrictStr
22
22
  from typing import Any, ClassVar, Dict, List, Optional
23
23
  from typing import Optional, Set
24
24
  from typing_extensions import Self
25
+ from pydantic_core import to_jsonable_python
25
26
 
26
27
  class TopicContext(BaseModel):
27
28
  """
@@ -37,7 +38,8 @@ class TopicContext(BaseModel):
37
38
  __properties: ClassVar[List[str]] = ["description", "following", "icon_url", "id", "name", "not_interested", "topic_id"]
38
39
 
39
40
  model_config = ConfigDict(
40
- populate_by_name=True,
41
+ validate_by_name=True,
42
+ validate_by_alias=True,
41
43
  validate_assignment=True,
42
44
  protected_namespaces=(),
43
45
  )
@@ -49,8 +51,7 @@ class TopicContext(BaseModel):
49
51
 
50
52
  def to_json(self) -> str:
51
53
  """Returns the JSON representation of the model using alias"""
52
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
53
- return json.dumps(self.to_dict())
54
+ return json.dumps(to_jsonable_python(self.to_dict()))
54
55
 
55
56
  @classmethod
56
57
  def from_json(cls, json_str: str) -> Optional[Self]:
@@ -23,6 +23,7 @@ from typing import Any, ClassVar, Dict, List
23
23
  from typing_extensions import Annotated
24
24
  from typing import Optional, Set
25
25
  from typing_extensions import Self
26
+ from pydantic_core import to_jsonable_python
26
27
 
27
28
  class Tracing(BaseModel):
28
29
  """
@@ -34,12 +35,16 @@ class Tracing(BaseModel):
34
35
  @field_validator('trace_id')
35
36
  def trace_id_validate_regular_expression(cls, value):
36
37
  """Validates the regular expression"""
38
+ if not isinstance(value, str):
39
+ value = str(value)
40
+
37
41
  if not re.match(r"^[0-9a-f]{16}$", value):
38
42
  raise ValueError(r"must validate the regular expression /^[0-9a-f]{16}$/")
39
43
  return value
40
44
 
41
45
  model_config = ConfigDict(
42
- populate_by_name=True,
46
+ validate_by_name=True,
47
+ validate_by_alias=True,
43
48
  validate_assignment=True,
44
49
  protected_namespaces=(),
45
50
  )
@@ -51,8 +56,7 @@ class Tracing(BaseModel):
51
56
 
52
57
  def to_json(self) -> str:
53
58
  """Returns the JSON representation of the model using alias"""
54
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
55
- return json.dumps(self.to_dict())
59
+ return json.dumps(to_jsonable_python(self.to_dict()))
56
60
 
57
61
  @classmethod
58
62
  def from_json(cls, json_str: str) -> Optional[Self]:
@@ -22,6 +22,7 @@ from pydantic import BaseModel, ConfigDict, StrictStr
22
22
  from typing import Any, ClassVar, Dict, List, Optional
23
23
  from typing import Optional, Set
24
24
  from typing_extensions import Self
25
+ from pydantic_core import to_jsonable_python
25
26
 
26
27
  class TrendImage(BaseModel):
27
28
  """
@@ -31,7 +32,8 @@ class TrendImage(BaseModel):
31
32
  __properties: ClassVar[List[str]] = ["url"]
32
33
 
33
34
  model_config = ConfigDict(
34
- populate_by_name=True,
35
+ validate_by_name=True,
36
+ validate_by_alias=True,
35
37
  validate_assignment=True,
36
38
  protected_namespaces=(),
37
39
  )
@@ -43,8 +45,7 @@ class TrendImage(BaseModel):
43
45
 
44
46
  def to_json(self) -> str:
45
47
  """Returns the JSON representation of the model using alias"""
46
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
47
- return json.dumps(self.to_dict())
48
+ return json.dumps(to_jsonable_python(self.to_dict()))
48
49
 
49
50
  @classmethod
50
51
  def from_json(cls, json_str: str) -> Optional[Self]:
@@ -23,6 +23,7 @@ from typing import Any, ClassVar, Dict, List, Optional
23
23
  from twitter_openapi_python_generated.models.social_context_landing_url import SocialContextLandingUrl
24
24
  from typing import Optional, Set
25
25
  from typing_extensions import Self
26
+ from pydantic_core import to_jsonable_python
26
27
 
27
28
  class TrendMetadata(BaseModel):
28
29
  """
@@ -32,7 +33,8 @@ class TrendMetadata(BaseModel):
32
33
  __properties: ClassVar[List[str]] = ["url"]
33
34
 
34
35
  model_config = ConfigDict(
35
- populate_by_name=True,
36
+ validate_by_name=True,
37
+ validate_by_alias=True,
36
38
  validate_assignment=True,
37
39
  protected_namespaces=(),
38
40
  )
@@ -44,8 +46,7 @@ class TrendMetadata(BaseModel):
44
46
 
45
47
  def to_json(self) -> str:
46
48
  """Returns the JSON representation of the model using alias"""
47
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
48
- return json.dumps(self.to_dict())
49
+ return json.dumps(to_jsonable_python(self.to_dict()))
49
50
 
50
51
  @classmethod
51
52
  def from_json(cls, json_str: str) -> Optional[Self]:
@@ -23,6 +23,7 @@ from typing import Any, ClassVar, Dict, List
23
23
  from typing_extensions import Annotated
24
24
  from typing import Optional, Set
25
25
  from typing_extensions import Self
26
+ from pydantic_core import to_jsonable_python
26
27
 
27
28
  class TrendResults(BaseModel):
28
29
  """
@@ -34,12 +35,16 @@ class TrendResults(BaseModel):
34
35
  @field_validator('rest_id')
35
36
  def rest_id_validate_regular_expression(cls, value):
36
37
  """Validates the regular expression"""
38
+ if not isinstance(value, str):
39
+ value = str(value)
40
+
37
41
  if not re.match(r"^[0-9]+$", value):
38
42
  raise ValueError(r"must validate the regular expression /^[0-9]+$/")
39
43
  return value
40
44
 
41
45
  model_config = ConfigDict(
42
- populate_by_name=True,
46
+ validate_by_name=True,
47
+ validate_by_alias=True,
43
48
  validate_assignment=True,
44
49
  protected_namespaces=(),
45
50
  )
@@ -51,8 +56,7 @@ class TrendResults(BaseModel):
51
56
 
52
57
  def to_json(self) -> str:
53
58
  """Returns the JSON representation of the model using alias"""
54
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
55
- return json.dumps(self.to_dict())
59
+ return json.dumps(to_jsonable_python(self.to_dict()))
56
60
 
57
61
  @classmethod
58
62
  def from_json(cls, json_str: str) -> Optional[Self]:
@@ -24,14 +24,18 @@ from typing_extensions import Annotated
24
24
  from twitter_openapi_python_generated.models.article import Article
25
25
  from twitter_openapi_python_generated.models.author_community_relationship import AuthorCommunityRelationship
26
26
  from twitter_openapi_python_generated.models.birdwatch_pivot import BirdwatchPivot
27
- from twitter_openapi_python_generated.models.community import Community
28
27
  from twitter_openapi_python_generated.models.community_relationship import CommunityRelationship
28
+ from twitter_openapi_python_generated.models.community_result import CommunityResult
29
+ from twitter_openapi_python_generated.models.content_disclosure import ContentDisclosure
30
+ from twitter_openapi_python_generated.models.grok_annotation import GrokAnnotation
31
+ from twitter_openapi_python_generated.models.grok_translated_post_with_availability import GrokTranslatedPostWithAvailability
29
32
  from twitter_openapi_python_generated.models.note_tweet import NoteTweet
30
33
  from twitter_openapi_python_generated.models.super_follows_reply_user_result import SuperFollowsReplyUserResult
31
34
  from twitter_openapi_python_generated.models.trend_results import TrendResults
32
35
  from twitter_openapi_python_generated.models.tweet_card import TweetCard
33
36
  from twitter_openapi_python_generated.models.tweet_edit_control import TweetEditControl
34
37
  from twitter_openapi_python_generated.models.tweet_edit_prespective import TweetEditPrespective
38
+ from twitter_openapi_python_generated.models.tweet_post_cta import TweetPostCta
35
39
  from twitter_openapi_python_generated.models.tweet_previous_counts import TweetPreviousCounts
36
40
  from twitter_openapi_python_generated.models.tweet_view import TweetView
37
41
  from twitter_openapi_python_generated.models.type_name import TypeName
@@ -39,6 +43,7 @@ from twitter_openapi_python_generated.models.unified_card import UnifiedCard
39
43
  from twitter_openapi_python_generated.models.user_result_core import UserResultCore
40
44
  from typing import Optional, Set
41
45
  from typing_extensions import Self
46
+ from pydantic_core import to_jsonable_python
42
47
 
43
48
  class Tweet(BaseModel):
44
49
  """
@@ -50,17 +55,23 @@ class Tweet(BaseModel):
50
55
  birdwatch_pivot: Optional[BirdwatchPivot] = None
51
56
  card: Optional[TweetCard] = None
52
57
  community_relationship: Optional[CommunityRelationship] = None
53
- community_results: Optional[Community] = None
58
+ community_results: Optional[CommunityResult] = None
59
+ content_disclosure: Optional[ContentDisclosure] = None
54
60
  core: Optional[UserResultCore] = None
55
61
  edit_control: Optional[TweetEditControl] = None
56
62
  edit_prespective: Optional[TweetEditPrespective] = None
57
63
  grok_analysis_button: Optional[StrictBool] = None
58
64
  grok_analysis_followups: Optional[List[StrictStr]] = None
65
+ grok_annotations: Optional[GrokAnnotation] = None
59
66
  grok_share_attachment: Optional[GrokShareAttachment] = None
67
+ grok_translated_post_with_availability: Optional[GrokTranslatedPostWithAvailability] = None
60
68
  has_birdwatch_notes: Optional[StrictBool] = None
61
69
  is_translatable: Optional[StrictBool] = None
62
70
  legacy: Optional[TweetLegacy] = None
63
71
  note_tweet: Optional[NoteTweet] = None
72
+ post_cta: Optional[TweetPostCta] = Field(default=None, alias="postCta")
73
+ post_image_description: Optional[StrictStr] = None
74
+ post_video_description: Optional[StrictStr] = None
64
75
  previous_counts: Optional[TweetPreviousCounts] = None
65
76
  quick_promote_eligibility: Optional[Dict[str, Any]] = None
66
77
  quoted_ref_result: Optional[QuotedRefResult] = Field(default=None, alias="quotedRefResult")
@@ -72,17 +83,21 @@ class Tweet(BaseModel):
72
83
  unified_card: Optional[UnifiedCard] = None
73
84
  unmention_data: Optional[Dict[str, Any]] = None
74
85
  views: Optional[TweetView] = None
75
- __properties: ClassVar[List[str]] = ["__typename", "article", "author_community_relationship", "birdwatch_pivot", "card", "community_relationship", "community_results", "core", "edit_control", "edit_prespective", "grok_analysis_button", "grok_analysis_followups", "grok_share_attachment", "has_birdwatch_notes", "is_translatable", "legacy", "note_tweet", "previous_counts", "quick_promote_eligibility", "quotedRefResult", "quoted_status_result", "rest_id", "source", "superFollowsReplyUserResult", "trend_results", "unified_card", "unmention_data", "views"]
86
+ __properties: ClassVar[List[str]] = ["__typename", "article", "author_community_relationship", "birdwatch_pivot", "card", "community_relationship", "community_results", "content_disclosure", "core", "edit_control", "edit_prespective", "grok_analysis_button", "grok_analysis_followups", "grok_annotations", "grok_share_attachment", "grok_translated_post_with_availability", "has_birdwatch_notes", "is_translatable", "legacy", "note_tweet", "postCta", "post_image_description", "post_video_description", "previous_counts", "quick_promote_eligibility", "quotedRefResult", "quoted_status_result", "rest_id", "source", "superFollowsReplyUserResult", "trend_results", "unified_card", "unmention_data", "views"]
76
87
 
77
88
  @field_validator('rest_id')
78
89
  def rest_id_validate_regular_expression(cls, value):
79
90
  """Validates the regular expression"""
91
+ if not isinstance(value, str):
92
+ value = str(value)
93
+
80
94
  if not re.match(r"^[0-9]+$", value):
81
95
  raise ValueError(r"must validate the regular expression /^[0-9]+$/")
82
96
  return value
83
97
 
84
98
  model_config = ConfigDict(
85
- populate_by_name=True,
99
+ validate_by_name=True,
100
+ validate_by_alias=True,
86
101
  validate_assignment=True,
87
102
  protected_namespaces=(),
88
103
  )
@@ -94,8 +109,7 @@ class Tweet(BaseModel):
94
109
 
95
110
  def to_json(self) -> str:
96
111
  """Returns the JSON representation of the model using alias"""
97
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
98
- return json.dumps(self.to_dict())
112
+ return json.dumps(to_jsonable_python(self.to_dict()))
99
113
 
100
114
  @classmethod
101
115
  def from_json(cls, json_str: str) -> Optional[Self]:
@@ -138,6 +152,9 @@ class Tweet(BaseModel):
138
152
  # override the default output from pydantic by calling `to_dict()` of community_results
139
153
  if self.community_results:
140
154
  _dict['community_results'] = self.community_results.to_dict()
155
+ # override the default output from pydantic by calling `to_dict()` of content_disclosure
156
+ if self.content_disclosure:
157
+ _dict['content_disclosure'] = self.content_disclosure.to_dict()
141
158
  # override the default output from pydantic by calling `to_dict()` of core
142
159
  if self.core:
143
160
  _dict['core'] = self.core.to_dict()
@@ -147,15 +164,24 @@ class Tweet(BaseModel):
147
164
  # override the default output from pydantic by calling `to_dict()` of edit_prespective
148
165
  if self.edit_prespective:
149
166
  _dict['edit_prespective'] = self.edit_prespective.to_dict()
167
+ # override the default output from pydantic by calling `to_dict()` of grok_annotations
168
+ if self.grok_annotations:
169
+ _dict['grok_annotations'] = self.grok_annotations.to_dict()
150
170
  # override the default output from pydantic by calling `to_dict()` of grok_share_attachment
151
171
  if self.grok_share_attachment:
152
172
  _dict['grok_share_attachment'] = self.grok_share_attachment.to_dict()
173
+ # override the default output from pydantic by calling `to_dict()` of grok_translated_post_with_availability
174
+ if self.grok_translated_post_with_availability:
175
+ _dict['grok_translated_post_with_availability'] = self.grok_translated_post_with_availability.to_dict()
153
176
  # override the default output from pydantic by calling `to_dict()` of legacy
154
177
  if self.legacy:
155
178
  _dict['legacy'] = self.legacy.to_dict()
156
179
  # override the default output from pydantic by calling `to_dict()` of note_tweet
157
180
  if self.note_tweet:
158
181
  _dict['note_tweet'] = self.note_tweet.to_dict()
182
+ # override the default output from pydantic by calling `to_dict()` of post_cta
183
+ if self.post_cta:
184
+ _dict['postCta'] = self.post_cta.to_dict()
159
185
  # override the default output from pydantic by calling `to_dict()` of previous_counts
160
186
  if self.previous_counts:
161
187
  _dict['previous_counts'] = self.previous_counts.to_dict()
@@ -195,17 +221,23 @@ class Tweet(BaseModel):
195
221
  "birdwatch_pivot": BirdwatchPivot.from_dict(obj["birdwatch_pivot"]) if obj.get("birdwatch_pivot") is not None else None,
196
222
  "card": TweetCard.from_dict(obj["card"]) if obj.get("card") is not None else None,
197
223
  "community_relationship": CommunityRelationship.from_dict(obj["community_relationship"]) if obj.get("community_relationship") is not None else None,
198
- "community_results": Community.from_dict(obj["community_results"]) if obj.get("community_results") is not None else None,
224
+ "community_results": CommunityResult.from_dict(obj["community_results"]) if obj.get("community_results") is not None else None,
225
+ "content_disclosure": ContentDisclosure.from_dict(obj["content_disclosure"]) if obj.get("content_disclosure") is not None else None,
199
226
  "core": UserResultCore.from_dict(obj["core"]) if obj.get("core") is not None else None,
200
227
  "edit_control": TweetEditControl.from_dict(obj["edit_control"]) if obj.get("edit_control") is not None else None,
201
228
  "edit_prespective": TweetEditPrespective.from_dict(obj["edit_prespective"]) if obj.get("edit_prespective") is not None else None,
202
229
  "grok_analysis_button": obj.get("grok_analysis_button"),
203
230
  "grok_analysis_followups": obj.get("grok_analysis_followups"),
231
+ "grok_annotations": GrokAnnotation.from_dict(obj["grok_annotations"]) if obj.get("grok_annotations") is not None else None,
204
232
  "grok_share_attachment": GrokShareAttachment.from_dict(obj["grok_share_attachment"]) if obj.get("grok_share_attachment") is not None else None,
233
+ "grok_translated_post_with_availability": GrokTranslatedPostWithAvailability.from_dict(obj["grok_translated_post_with_availability"]) if obj.get("grok_translated_post_with_availability") is not None else None,
205
234
  "has_birdwatch_notes": obj.get("has_birdwatch_notes"),
206
235
  "is_translatable": obj.get("is_translatable"),
207
236
  "legacy": TweetLegacy.from_dict(obj["legacy"]) if obj.get("legacy") is not None else None,
208
237
  "note_tweet": NoteTweet.from_dict(obj["note_tweet"]) if obj.get("note_tweet") is not None else None,
238
+ "postCta": TweetPostCta.from_dict(obj["postCta"]) if obj.get("postCta") is not None else None,
239
+ "post_image_description": obj.get("post_image_description"),
240
+ "post_video_description": obj.get("post_video_description"),
209
241
  "previous_counts": TweetPreviousCounts.from_dict(obj["previous_counts"]) if obj.get("previous_counts") is not None else None,
210
242
  "quick_promote_eligibility": obj.get("quick_promote_eligibility"),
211
243
  "quotedRefResult": QuotedRefResult.from_dict(obj["quotedRefResult"]) if obj.get("quotedRefResult") is not None else None,