x-twitter-scraper 0.3.0 → 0.4.1

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 (456) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +33 -0
  3. data/README.md +12 -7
  4. data/lib/x_twitter_scraper/models/api_key.rb +2 -0
  5. data/lib/x_twitter_scraper/models/api_key_list_response.rb +3 -44
  6. data/lib/x_twitter_scraper/models/delivery.rb +2 -0
  7. data/lib/x_twitter_scraper/models/draft.rb +2 -0
  8. data/lib/x_twitter_scraper/models/draft_detail.rb +3 -0
  9. data/lib/x_twitter_scraper/models/draft_list_params.rb +2 -1
  10. data/lib/x_twitter_scraper/models/draft_list_response.rb +3 -38
  11. data/lib/x_twitter_scraper/models/draw_detail.rb +2 -0
  12. data/lib/x_twitter_scraper/models/draw_export_params.rb +3 -1
  13. data/lib/x_twitter_scraper/models/draw_list_item.rb +2 -0
  14. data/lib/x_twitter_scraper/models/draw_list_params.rb +4 -3
  15. data/lib/x_twitter_scraper/models/draw_list_response.rb +3 -50
  16. data/lib/x_twitter_scraper/models/draw_retrieve_response.rb +8 -124
  17. data/lib/x_twitter_scraper/models/draw_run_response.rb +3 -32
  18. data/lib/x_twitter_scraper/models/error.rb +2 -0
  19. data/lib/x_twitter_scraper/models/event.rb +11 -18
  20. data/lib/x_twitter_scraper/models/event_detail.rb +7 -18
  21. data/lib/x_twitter_scraper/models/event_list_params.rb +10 -21
  22. data/lib/x_twitter_scraper/models/event_list_response.rb +3 -59
  23. data/lib/x_twitter_scraper/models/event_type.rb +1 -0
  24. data/lib/x_twitter_scraper/models/extraction_estimate_cost_params.rb +9 -7
  25. data/lib/x_twitter_scraper/models/extraction_export_results_params.rb +5 -1
  26. data/lib/x_twitter_scraper/models/extraction_job.rb +11 -1
  27. data/lib/x_twitter_scraper/models/extraction_list_params.rb +10 -5
  28. data/lib/x_twitter_scraper/models/extraction_list_response.rb +3 -87
  29. data/lib/x_twitter_scraper/models/extraction_retrieve_params.rb +4 -3
  30. data/lib/x_twitter_scraper/models/extraction_run_params.rb +3 -1
  31. data/lib/x_twitter_scraper/models/extraction_run_response.rb +10 -15
  32. data/lib/x_twitter_scraper/models/integration.rb +12 -32
  33. data/lib/x_twitter_scraper/models/integration_create_params.rb +8 -32
  34. data/lib/x_twitter_scraper/models/integration_delivery.rb +2 -0
  35. data/lib/x_twitter_scraper/models/integration_list_deliveries_params.rb +4 -1
  36. data/lib/x_twitter_scraper/models/integration_list_deliveries_response.rb +3 -67
  37. data/lib/x_twitter_scraper/models/integration_list_response.rb +3 -112
  38. data/lib/x_twitter_scraper/models/integration_update_params.rb +4 -19
  39. data/lib/x_twitter_scraper/models/monitor.rb +12 -17
  40. data/lib/x_twitter_scraper/models/monitor_create_params.rb +4 -19
  41. data/lib/x_twitter_scraper/models/monitor_create_response.rb +8 -17
  42. data/lib/x_twitter_scraper/models/monitor_list_response.rb +3 -60
  43. data/lib/x_twitter_scraper/models/monitor_update_params.rb +7 -19
  44. data/lib/x_twitter_scraper/models/paginated_tweets.rb +5 -96
  45. data/lib/x_twitter_scraper/models/paginated_users.rb +5 -73
  46. data/lib/x_twitter_scraper/models/radar_item.rb +2 -0
  47. data/lib/x_twitter_scraper/models/radar_retrieve_trending_topics_params.rb +20 -3
  48. data/lib/x_twitter_scraper/models/radar_retrieve_trending_topics_response.rb +3 -62
  49. data/lib/x_twitter_scraper/models/style_compare_response.rb +9 -134
  50. data/lib/x_twitter_scraper/models/style_delete_params.rb +4 -4
  51. data/lib/x_twitter_scraper/models/style_get_performance_params.rb +4 -4
  52. data/lib/x_twitter_scraper/models/style_list_response.rb +3 -32
  53. data/lib/x_twitter_scraper/models/style_profile.rb +3 -0
  54. data/lib/x_twitter_scraper/models/style_profile_summary.rb +2 -0
  55. data/lib/x_twitter_scraper/models/style_retrieve_params.rb +4 -4
  56. data/lib/x_twitter_scraper/models/style_update_params.rb +4 -4
  57. data/lib/x_twitter_scraper/models/trend_list_params.rb +2 -1
  58. data/lib/x_twitter_scraper/models/webhook.rb +11 -17
  59. data/lib/x_twitter_scraper/models/webhook_create_params.rb +4 -19
  60. data/lib/x_twitter_scraper/models/webhook_create_response.rb +8 -17
  61. data/lib/x_twitter_scraper/models/webhook_list_deliveries_response.rb +3 -56
  62. data/lib/x_twitter_scraper/models/webhook_list_response.rb +3 -54
  63. data/lib/x_twitter_scraper/models/webhook_update_params.rb +8 -19
  64. data/lib/x_twitter_scraper/models/winner.rb +2 -0
  65. data/lib/x_twitter_scraper/models/x/account_bulk_retry_params.rb +16 -0
  66. data/lib/x_twitter_scraper/models/x/account_bulk_retry_response.rb +19 -0
  67. data/lib/x_twitter_scraper/models/x/account_list_response.rb +3 -38
  68. data/lib/x_twitter_scraper/models/x/account_reauth_params.rb +4 -4
  69. data/lib/x_twitter_scraper/models/x/bookmark_list_params.rb +2 -2
  70. data/lib/x_twitter_scraper/models/x/communities/join_create_params.rb +2 -2
  71. data/lib/x_twitter_scraper/models/x/communities/join_delete_all_params.rb +2 -2
  72. data/lib/x_twitter_scraper/models/x/communities/tweet_list_by_community_params.rb +33 -0
  73. data/lib/x_twitter_scraper/models/x/communities/tweet_list_params.rb +6 -6
  74. data/lib/x_twitter_scraper/models/x/community_action_result.rb +2 -0
  75. data/lib/x_twitter_scraper/models/x/community_create_params.rb +2 -2
  76. data/lib/x_twitter_scraper/models/x/community_delete_params.rb +2 -2
  77. data/lib/x_twitter_scraper/models/x/community_retrieve_info_response.rb +6 -6
  78. data/lib/x_twitter_scraper/models/x/community_retrieve_moderators_params.rb +2 -2
  79. data/lib/x_twitter_scraper/models/x/community_retrieve_search_params.rb +2 -2
  80. data/lib/x_twitter_scraper/models/x/dm_retrieve_history_params.rb +2 -2
  81. data/lib/x_twitter_scraper/models/x/dm_send_params.rb +2 -2
  82. data/lib/x_twitter_scraper/models/x/list_retrieve_followers_params.rb +2 -2
  83. data/lib/x_twitter_scraper/models/x/list_retrieve_members_params.rb +2 -2
  84. data/lib/x_twitter_scraper/models/x/list_retrieve_tweets_params.rb +2 -2
  85. data/lib/x_twitter_scraper/models/x/media_upload_params.rb +2 -2
  86. data/lib/x_twitter_scraper/models/x/profile_update_avatar_params.rb +2 -2
  87. data/lib/x_twitter_scraper/models/x/profile_update_banner_params.rb +2 -2
  88. data/lib/x_twitter_scraper/models/x/profile_update_params.rb +2 -2
  89. data/lib/x_twitter_scraper/models/x/search_tweet.rb +20 -1
  90. data/lib/x_twitter_scraper/models/x/tweet_author.rb +2 -0
  91. data/lib/x_twitter_scraper/models/x/tweet_delete_params.rb +6 -6
  92. data/lib/x_twitter_scraper/models/x/tweet_detail.rb +109 -1
  93. data/lib/x_twitter_scraper/models/x/tweet_get_favoriters_params.rb +2 -2
  94. data/lib/x_twitter_scraper/models/x/tweet_get_quotes_params.rb +8 -8
  95. data/lib/x_twitter_scraper/models/x/tweet_get_replies_params.rb +6 -6
  96. data/lib/x_twitter_scraper/models/x/tweet_get_retweeters_params.rb +2 -2
  97. data/lib/x_twitter_scraper/models/x/tweet_get_thread_params.rb +2 -2
  98. data/lib/x_twitter_scraper/models/x/tweet_retrieve_params.rb +4 -4
  99. data/lib/x_twitter_scraper/models/x/tweet_retrieve_response.rb +9 -100
  100. data/lib/x_twitter_scraper/models/x/tweet_search_params.rb +2 -2
  101. data/lib/x_twitter_scraper/models/x/tweets/like_create_params.rb +6 -6
  102. data/lib/x_twitter_scraper/models/x/tweets/like_delete_params.rb +6 -6
  103. data/lib/x_twitter_scraper/models/x/tweets/retweet_create_params.rb +6 -6
  104. data/lib/x_twitter_scraper/models/x/tweets/retweet_delete_params.rb +6 -6
  105. data/lib/x_twitter_scraper/models/x/user_profile.rb +3 -0
  106. data/lib/x_twitter_scraper/models/x/user_retrieve_followers_params.rb +2 -2
  107. data/lib/x_twitter_scraper/models/x/user_retrieve_followers_you_know_params.rb +2 -2
  108. data/lib/x_twitter_scraper/models/x/user_retrieve_following_params.rb +4 -4
  109. data/lib/x_twitter_scraper/models/x/user_retrieve_likes_params.rb +2 -2
  110. data/lib/x_twitter_scraper/models/x/user_retrieve_media_params.rb +2 -2
  111. data/lib/x_twitter_scraper/models/x/user_retrieve_mentions_params.rb +6 -6
  112. data/lib/x_twitter_scraper/models/x/user_retrieve_params.rb +4 -4
  113. data/lib/x_twitter_scraper/models/x/user_retrieve_search_params.rb +4 -4
  114. data/lib/x_twitter_scraper/models/x/user_retrieve_tweets_params.rb +2 -2
  115. data/lib/x_twitter_scraper/models/x/user_retrieve_verified_followers_params.rb +2 -2
  116. data/lib/x_twitter_scraper/models/x/users/follow_create_params.rb +6 -6
  117. data/lib/x_twitter_scraper/models/x/users/follow_delete_all_params.rb +6 -6
  118. data/lib/x_twitter_scraper/models/x/x_account.rb +2 -0
  119. data/lib/x_twitter_scraper/models/x/x_account_detail.rb +3 -0
  120. data/lib/x_twitter_scraper/models/x_get_article_response.rb +5 -38
  121. data/lib/x_twitter_scraper/models/x_get_home_timeline_params.rb +2 -2
  122. data/lib/x_twitter_scraper/models/x_get_notifications_params.rb +2 -2
  123. data/lib/x_twitter_scraper/models/x_get_trends_response.rb +57 -0
  124. data/lib/x_twitter_scraper/resources/drafts.rb +5 -5
  125. data/lib/x_twitter_scraper/resources/draws.rb +3 -3
  126. data/lib/x_twitter_scraper/resources/events.rb +6 -6
  127. data/lib/x_twitter_scraper/resources/extractions.rb +12 -12
  128. data/lib/x_twitter_scraper/resources/integrations.rb +11 -11
  129. data/lib/x_twitter_scraper/resources/monitors.rb +6 -6
  130. data/lib/x_twitter_scraper/resources/radar.rb +1 -1
  131. data/lib/x_twitter_scraper/resources/styles.rb +22 -22
  132. data/lib/x_twitter_scraper/resources/support/tickets.rb +8 -3
  133. data/lib/x_twitter_scraper/resources/trends.rb +2 -2
  134. data/lib/x_twitter_scraper/resources/webhooks.rb +4 -4
  135. data/lib/x_twitter_scraper/resources/x/accounts.rb +24 -4
  136. data/lib/x_twitter_scraper/resources/x/bookmarks.rb +3 -3
  137. data/lib/x_twitter_scraper/resources/x/communities/join.rb +6 -6
  138. data/lib/x_twitter_scraper/resources/x/communities/tweets.rb +30 -5
  139. data/lib/x_twitter_scraper/resources/x/communities.rb +12 -12
  140. data/lib/x_twitter_scraper/resources/x/dm.rb +2 -2
  141. data/lib/x_twitter_scraper/resources/x/lists.rb +11 -11
  142. data/lib/x_twitter_scraper/resources/x/media.rb +1 -1
  143. data/lib/x_twitter_scraper/resources/x/profile.rb +3 -3
  144. data/lib/x_twitter_scraper/resources/x/tweets/like.rb +10 -10
  145. data/lib/x_twitter_scraper/resources/x/tweets/retweet.rb +10 -10
  146. data/lib/x_twitter_scraper/resources/x/tweets.rb +46 -39
  147. data/lib/x_twitter_scraper/resources/x/users/follow.rb +10 -10
  148. data/lib/x_twitter_scraper/resources/x/users.rb +45 -45
  149. data/lib/x_twitter_scraper/resources/x.rb +13 -7
  150. data/lib/x_twitter_scraper/version.rb +1 -1
  151. data/lib/x_twitter_scraper.rb +4 -28
  152. data/rbi/x_twitter_scraper/models/api_key.rbi +1 -0
  153. data/rbi/x_twitter_scraper/models/api_key_list_response.rbi +5 -78
  154. data/rbi/x_twitter_scraper/models/delivery.rbi +1 -0
  155. data/rbi/x_twitter_scraper/models/draft.rbi +1 -0
  156. data/rbi/x_twitter_scraper/models/draft_detail.rbi +1 -0
  157. data/rbi/x_twitter_scraper/models/draft_list_params.rbi +2 -0
  158. data/rbi/x_twitter_scraper/models/draft_list_response.rbi +3 -63
  159. data/rbi/x_twitter_scraper/models/draw_detail.rbi +1 -0
  160. data/rbi/x_twitter_scraper/models/draw_export_params.rbi +3 -0
  161. data/rbi/x_twitter_scraper/models/draw_list_item.rbi +1 -0
  162. data/rbi/x_twitter_scraper/models/draw_list_params.rbi +4 -2
  163. data/rbi/x_twitter_scraper/models/draw_list_response.rbi +3 -76
  164. data/rbi/x_twitter_scraper/models/draw_retrieve_response.rbi +13 -178
  165. data/rbi/x_twitter_scraper/models/draw_run_response.rbi +3 -52
  166. data/rbi/x_twitter_scraper/models/error.rbi +1 -0
  167. data/rbi/x_twitter_scraper/models/event.rbi +14 -31
  168. data/rbi/x_twitter_scraper/models/event_detail.rbi +6 -47
  169. data/rbi/x_twitter_scraper/models/event_list_params.rbi +12 -63
  170. data/rbi/x_twitter_scraper/models/event_list_response.rbi +3 -122
  171. data/rbi/x_twitter_scraper/models/event_type.rbi +1 -0
  172. data/rbi/x_twitter_scraper/models/extraction_estimate_cost_params.rbi +9 -6
  173. data/rbi/x_twitter_scraper/models/extraction_export_results_params.rbi +8 -1
  174. data/rbi/x_twitter_scraper/models/extraction_job.rbi +8 -4
  175. data/rbi/x_twitter_scraper/models/extraction_list_params.rbi +10 -2
  176. data/rbi/x_twitter_scraper/models/extraction_list_response.rbi +3 -254
  177. data/rbi/x_twitter_scraper/models/extraction_retrieve_params.rbi +4 -2
  178. data/rbi/x_twitter_scraper/models/extraction_run_params.rbi +3 -0
  179. data/rbi/x_twitter_scraper/models/extraction_run_response.rbi +12 -40
  180. data/rbi/x_twitter_scraper/models/integration.rbi +12 -81
  181. data/rbi/x_twitter_scraper/models/integration_create_params.rbi +9 -96
  182. data/rbi/x_twitter_scraper/models/integration_delivery.rbi +1 -0
  183. data/rbi/x_twitter_scraper/models/integration_list_deliveries_params.rbi +7 -1
  184. data/rbi/x_twitter_scraper/models/integration_list_deliveries_response.rbi +3 -119
  185. data/rbi/x_twitter_scraper/models/integration_list_response.rbi +3 -227
  186. data/rbi/x_twitter_scraper/models/integration_update_params.rbi +6 -74
  187. data/rbi/x_twitter_scraper/models/monitor.rbi +6 -48
  188. data/rbi/x_twitter_scraper/models/monitor_create_params.rbi +5 -62
  189. data/rbi/x_twitter_scraper/models/monitor_create_response.rbi +12 -70
  190. data/rbi/x_twitter_scraper/models/monitor_list_response.rbi +3 -141
  191. data/rbi/x_twitter_scraper/models/monitor_update_params.rbi +12 -69
  192. data/rbi/x_twitter_scraper/models/paginated_tweets.rbi +4 -169
  193. data/rbi/x_twitter_scraper/models/paginated_users.rbi +4 -120
  194. data/rbi/x_twitter_scraper/models/radar_item.rbi +1 -0
  195. data/rbi/x_twitter_scraper/models/radar_retrieve_trending_topics_params.rbi +78 -4
  196. data/rbi/x_twitter_scraper/models/radar_retrieve_trending_topics_response.rbi +3 -108
  197. data/rbi/x_twitter_scraper/models/style_compare_response.rbi +16 -259
  198. data/rbi/x_twitter_scraper/models/style_delete_params.rbi +4 -4
  199. data/rbi/x_twitter_scraper/models/style_get_performance_params.rbi +4 -4
  200. data/rbi/x_twitter_scraper/models/style_list_response.rbi +3 -54
  201. data/rbi/x_twitter_scraper/models/style_profile.rbi +1 -0
  202. data/rbi/x_twitter_scraper/models/style_profile_summary.rbi +1 -0
  203. data/rbi/x_twitter_scraper/models/style_retrieve_params.rbi +4 -4
  204. data/rbi/x_twitter_scraper/models/style_update_params.rbi +4 -4
  205. data/rbi/x_twitter_scraper/models/trend_list_params.rbi +2 -0
  206. data/rbi/x_twitter_scraper/models/webhook.rbi +13 -49
  207. data/rbi/x_twitter_scraper/models/webhook_create_params.rbi +5 -62
  208. data/rbi/x_twitter_scraper/models/webhook_create_response.rbi +12 -70
  209. data/rbi/x_twitter_scraper/models/webhook_list_deliveries_response.rbi +5 -105
  210. data/rbi/x_twitter_scraper/models/webhook_list_response.rbi +5 -134
  211. data/rbi/x_twitter_scraper/models/webhook_update_params.rbi +6 -68
  212. data/rbi/x_twitter_scraper/models/winner.rbi +1 -0
  213. data/rbi/x_twitter_scraper/models/x/account_bulk_retry_params.rbi +34 -0
  214. data/rbi/x_twitter_scraper/models/x/account_bulk_retry_response.rbi +32 -0
  215. data/rbi/x_twitter_scraper/models/x/account_list_response.rbi +3 -68
  216. data/rbi/x_twitter_scraper/models/x/account_reauth_params.rbi +4 -4
  217. data/rbi/x_twitter_scraper/models/x/bookmark_list_params.rbi +2 -2
  218. data/rbi/x_twitter_scraper/models/x/communities/join_create_params.rbi +2 -2
  219. data/rbi/x_twitter_scraper/models/x/communities/join_delete_all_params.rbi +2 -2
  220. data/rbi/x_twitter_scraper/models/x/communities/tweet_list_by_community_params.rbi +59 -0
  221. data/rbi/x_twitter_scraper/models/x/communities/tweet_list_params.rbi +6 -6
  222. data/rbi/x_twitter_scraper/models/x/community_action_result.rbi +1 -0
  223. data/rbi/x_twitter_scraper/models/x/community_create_params.rbi +2 -2
  224. data/rbi/x_twitter_scraper/models/x/community_delete_params.rbi +2 -2
  225. data/rbi/x_twitter_scraper/models/x/community_retrieve_info_response.rbi +6 -6
  226. data/rbi/x_twitter_scraper/models/x/community_retrieve_moderators_params.rbi +2 -2
  227. data/rbi/x_twitter_scraper/models/x/community_retrieve_search_params.rbi +2 -2
  228. data/rbi/x_twitter_scraper/models/x/dm_retrieve_history_params.rbi +2 -2
  229. data/rbi/x_twitter_scraper/models/x/dm_send_params.rbi +2 -2
  230. data/rbi/x_twitter_scraper/models/x/list_retrieve_followers_params.rbi +2 -2
  231. data/rbi/x_twitter_scraper/models/x/list_retrieve_members_params.rbi +2 -2
  232. data/rbi/x_twitter_scraper/models/x/list_retrieve_tweets_params.rbi +2 -2
  233. data/rbi/x_twitter_scraper/models/x/media_upload_params.rbi +2 -2
  234. data/rbi/x_twitter_scraper/models/x/profile_update_avatar_params.rbi +2 -2
  235. data/rbi/x_twitter_scraper/models/x/profile_update_banner_params.rbi +2 -2
  236. data/rbi/x_twitter_scraper/models/x/profile_update_params.rbi +2 -2
  237. data/rbi/x_twitter_scraper/models/x/search_tweet.rbi +12 -0
  238. data/rbi/x_twitter_scraper/models/x/tweet_author.rbi +1 -0
  239. data/rbi/x_twitter_scraper/models/x/tweet_delete_params.rbi +6 -6
  240. data/rbi/x_twitter_scraper/models/x/tweet_detail.rbi +195 -3
  241. data/rbi/x_twitter_scraper/models/x/tweet_get_favoriters_params.rbi +2 -2
  242. data/rbi/x_twitter_scraper/models/x/tweet_get_quotes_params.rbi +8 -8
  243. data/rbi/x_twitter_scraper/models/x/tweet_get_replies_params.rbi +6 -6
  244. data/rbi/x_twitter_scraper/models/x/tweet_get_retweeters_params.rbi +2 -2
  245. data/rbi/x_twitter_scraper/models/x/tweet_get_thread_params.rbi +2 -2
  246. data/rbi/x_twitter_scraper/models/x/tweet_retrieve_params.rbi +4 -7
  247. data/rbi/x_twitter_scraper/models/x/tweet_retrieve_response.rbi +16 -171
  248. data/rbi/x_twitter_scraper/models/x/tweet_search_params.rbi +2 -2
  249. data/rbi/x_twitter_scraper/models/x/tweets/like_create_params.rbi +6 -6
  250. data/rbi/x_twitter_scraper/models/x/tweets/like_delete_params.rbi +6 -6
  251. data/rbi/x_twitter_scraper/models/x/tweets/retweet_create_params.rbi +6 -6
  252. data/rbi/x_twitter_scraper/models/x/tweets/retweet_delete_params.rbi +6 -6
  253. data/rbi/x_twitter_scraper/models/x/user_profile.rbi +1 -0
  254. data/rbi/x_twitter_scraper/models/x/user_retrieve_followers_params.rbi +2 -2
  255. data/rbi/x_twitter_scraper/models/x/user_retrieve_followers_you_know_params.rbi +2 -2
  256. data/rbi/x_twitter_scraper/models/x/user_retrieve_following_params.rbi +4 -4
  257. data/rbi/x_twitter_scraper/models/x/user_retrieve_likes_params.rbi +2 -2
  258. data/rbi/x_twitter_scraper/models/x/user_retrieve_media_params.rbi +2 -2
  259. data/rbi/x_twitter_scraper/models/x/user_retrieve_mentions_params.rbi +6 -6
  260. data/rbi/x_twitter_scraper/models/x/user_retrieve_params.rbi +4 -7
  261. data/rbi/x_twitter_scraper/models/x/user_retrieve_search_params.rbi +4 -4
  262. data/rbi/x_twitter_scraper/models/x/user_retrieve_tweets_params.rbi +2 -2
  263. data/rbi/x_twitter_scraper/models/x/user_retrieve_verified_followers_params.rbi +2 -2
  264. data/rbi/x_twitter_scraper/models/x/users/follow_create_params.rbi +6 -6
  265. data/rbi/x_twitter_scraper/models/x/users/follow_delete_all_params.rbi +6 -6
  266. data/rbi/x_twitter_scraper/models/x/x_account.rbi +1 -0
  267. data/rbi/x_twitter_scraper/models/x/x_account_detail.rbi +1 -0
  268. data/rbi/x_twitter_scraper/models/x_get_article_response.rbi +10 -71
  269. data/rbi/x_twitter_scraper/models/x_get_home_timeline_params.rbi +2 -2
  270. data/rbi/x_twitter_scraper/models/x_get_notifications_params.rbi +2 -2
  271. data/rbi/x_twitter_scraper/models/x_get_trends_response.rbi +102 -0
  272. data/rbi/x_twitter_scraper/resources/drafts.rbi +3 -2
  273. data/rbi/x_twitter_scraper/resources/draws.rbi +3 -1
  274. data/rbi/x_twitter_scraper/resources/events.rbi +6 -3
  275. data/rbi/x_twitter_scraper/resources/extractions.rbi +12 -5
  276. data/rbi/x_twitter_scraper/resources/integrations.rbi +10 -13
  277. data/rbi/x_twitter_scraper/resources/monitors.rbi +6 -6
  278. data/rbi/x_twitter_scraper/resources/radar.rbi +2 -1
  279. data/rbi/x_twitter_scraper/resources/styles.rbi +15 -15
  280. data/rbi/x_twitter_scraper/resources/support/tickets.rbi +17 -3
  281. data/rbi/x_twitter_scraper/resources/trends.rbi +2 -1
  282. data/rbi/x_twitter_scraper/resources/webhooks.rbi +5 -5
  283. data/rbi/x_twitter_scraper/resources/x/accounts.rbi +13 -3
  284. data/rbi/x_twitter_scraper/resources/x/bookmarks.rbi +2 -2
  285. data/rbi/x_twitter_scraper/resources/x/communities/join.rbi +4 -8
  286. data/rbi/x_twitter_scraper/resources/x/communities/tweets.rbi +21 -4
  287. data/rbi/x_twitter_scraper/resources/x/communities.rbi +9 -9
  288. data/rbi/x_twitter_scraper/resources/x/dm.rbi +2 -2
  289. data/rbi/x_twitter_scraper/resources/x/lists.rbi +8 -8
  290. data/rbi/x_twitter_scraper/resources/x/media.rbi +1 -1
  291. data/rbi/x_twitter_scraper/resources/x/profile.rbi +3 -3
  292. data/rbi/x_twitter_scraper/resources/x/tweets/like.rbi +8 -6
  293. data/rbi/x_twitter_scraper/resources/x/tweets/retweet.rbi +8 -6
  294. data/rbi/x_twitter_scraper/resources/x/tweets.rbi +33 -28
  295. data/rbi/x_twitter_scraper/resources/x/users/follow.rbi +6 -6
  296. data/rbi/x_twitter_scraper/resources/x/users.rbi +33 -34
  297. data/rbi/x_twitter_scraper/resources/x.rbi +11 -5
  298. data/sig/x_twitter_scraper/models/api_key_list_response.rbs +4 -53
  299. data/sig/x_twitter_scraper/models/draft_list_response.rbs +4 -45
  300. data/sig/x_twitter_scraper/models/draw_list_response.rbs +4 -53
  301. data/sig/x_twitter_scraper/models/draw_retrieve_response.rbs +8 -124
  302. data/sig/x_twitter_scraper/models/draw_run_response.rbs +4 -36
  303. data/sig/x_twitter_scraper/models/event.rbs +4 -25
  304. data/sig/x_twitter_scraper/models/event_detail.rbs +4 -25
  305. data/sig/x_twitter_scraper/models/event_list_params.rbs +6 -27
  306. data/sig/x_twitter_scraper/models/event_list_response.rbs +4 -67
  307. data/sig/x_twitter_scraper/models/extraction_list_response.rbs +4 -109
  308. data/sig/x_twitter_scraper/models/extraction_run_response.rbs +5 -15
  309. data/sig/x_twitter_scraper/models/integration.rbs +9 -40
  310. data/sig/x_twitter_scraper/models/integration_create_params.rbs +8 -39
  311. data/sig/x_twitter_scraper/models/integration_list_deliveries_response.rbs +4 -78
  312. data/sig/x_twitter_scraper/models/integration_list_response.rbs +4 -114
  313. data/sig/x_twitter_scraper/models/integration_update_params.rbs +6 -27
  314. data/sig/x_twitter_scraper/models/monitor.rbs +4 -25
  315. data/sig/x_twitter_scraper/models/monitor_create_params.rbs +4 -25
  316. data/sig/x_twitter_scraper/models/monitor_create_response.rbs +4 -25
  317. data/sig/x_twitter_scraper/models/monitor_list_response.rbs +4 -70
  318. data/sig/x_twitter_scraper/models/monitor_update_params.rbs +6 -27
  319. data/sig/x_twitter_scraper/models/paginated_tweets.rbs +4 -113
  320. data/sig/x_twitter_scraper/models/paginated_users.rbs +4 -87
  321. data/sig/x_twitter_scraper/models/radar_retrieve_trending_topics_params.rbs +30 -5
  322. data/sig/x_twitter_scraper/models/radar_retrieve_trending_topics_response.rbs +4 -70
  323. data/sig/x_twitter_scraper/models/style_compare_response.rbs +8 -154
  324. data/sig/x_twitter_scraper/models/style_delete_params.rbs +4 -4
  325. data/sig/x_twitter_scraper/models/style_get_performance_params.rbs +4 -4
  326. data/sig/x_twitter_scraper/models/style_list_response.rbs +4 -38
  327. data/sig/x_twitter_scraper/models/style_retrieve_params.rbs +4 -4
  328. data/sig/x_twitter_scraper/models/style_update_params.rbs +4 -4
  329. data/sig/x_twitter_scraper/models/webhook.rbs +4 -25
  330. data/sig/x_twitter_scraper/models/webhook_create_params.rbs +4 -28
  331. data/sig/x_twitter_scraper/models/webhook_create_response.rbs +4 -25
  332. data/sig/x_twitter_scraper/models/webhook_list_deliveries_response.rbs +4 -68
  333. data/sig/x_twitter_scraper/models/webhook_list_response.rbs +4 -69
  334. data/sig/x_twitter_scraper/models/webhook_update_params.rbs +6 -27
  335. data/sig/x_twitter_scraper/models/x/account_bulk_retry_params.rbs +19 -0
  336. data/sig/x_twitter_scraper/models/x/account_bulk_retry_response.rbs +15 -0
  337. data/sig/x_twitter_scraper/models/x/account_list_response.rbs +4 -45
  338. data/sig/x_twitter_scraper/models/x/communities/tweet_list_by_community_params.rbs +34 -0
  339. data/sig/x_twitter_scraper/models/x/search_tweet.rbs +7 -0
  340. data/sig/x_twitter_scraper/models/x/tweet_delete_params.rbs +4 -4
  341. data/sig/x_twitter_scraper/models/x/tweet_detail.rbs +108 -3
  342. data/sig/x_twitter_scraper/models/x/tweet_retrieve_params.rbs +4 -5
  343. data/sig/x_twitter_scraper/models/x/tweet_retrieve_response.rbs +10 -108
  344. data/sig/x_twitter_scraper/models/x/tweets/like_create_params.rbs +4 -4
  345. data/sig/x_twitter_scraper/models/x/tweets/like_delete_params.rbs +4 -4
  346. data/sig/x_twitter_scraper/models/x/tweets/retweet_create_params.rbs +4 -4
  347. data/sig/x_twitter_scraper/models/x/tweets/retweet_delete_params.rbs +4 -4
  348. data/sig/x_twitter_scraper/models/x/user_retrieve_params.rbs +4 -5
  349. data/sig/x_twitter_scraper/models/x/users/follow_create_params.rbs +4 -4
  350. data/sig/x_twitter_scraper/models/x/users/follow_delete_all_params.rbs +4 -4
  351. data/sig/x_twitter_scraper/models/x_get_article_response.rbs +6 -45
  352. data/sig/x_twitter_scraper/models/x_get_trends_response.rbs +63 -0
  353. data/sig/x_twitter_scraper/resources/drafts.rbs +2 -2
  354. data/sig/x_twitter_scraper/resources/events.rbs +2 -2
  355. data/sig/x_twitter_scraper/resources/integrations.rbs +6 -6
  356. data/sig/x_twitter_scraper/resources/monitors.rbs +4 -4
  357. data/sig/x_twitter_scraper/resources/radar.rbs +1 -1
  358. data/sig/x_twitter_scraper/resources/styles.rbs +7 -7
  359. data/sig/x_twitter_scraper/resources/webhooks.rbs +3 -3
  360. data/sig/x_twitter_scraper/resources/x/accounts.rbs +5 -1
  361. data/sig/x_twitter_scraper/resources/x/bookmarks.rbs +1 -1
  362. data/sig/x_twitter_scraper/resources/x/communities/join.rbs +2 -2
  363. data/sig/x_twitter_scraper/resources/x/communities/tweets.rbs +7 -1
  364. data/sig/x_twitter_scraper/resources/x/communities.rbs +3 -3
  365. data/sig/x_twitter_scraper/resources/x/lists.rbs +3 -3
  366. data/sig/x_twitter_scraper/resources/x/tweets/like.rbs +2 -2
  367. data/sig/x_twitter_scraper/resources/x/tweets/retweet.rbs +2 -2
  368. data/sig/x_twitter_scraper/resources/x/tweets.rbs +9 -9
  369. data/sig/x_twitter_scraper/resources/x/users/follow.rbs +2 -2
  370. data/sig/x_twitter_scraper/resources/x/users.rbs +12 -12
  371. data/sig/x_twitter_scraper/resources/x.rbs +4 -2
  372. metadata +33 -99
  373. data/lib/x_twitter_scraper/models/draft_create_response.rb +0 -46
  374. data/lib/x_twitter_scraper/models/draft_retrieve_response.rb +0 -46
  375. data/lib/x_twitter_scraper/models/event_retrieve_response.rb +0 -74
  376. data/lib/x_twitter_scraper/models/integration_create_response.rb +0 -114
  377. data/lib/x_twitter_scraper/models/integration_retrieve_response.rb +0 -114
  378. data/lib/x_twitter_scraper/models/integration_update_response.rb +0 -114
  379. data/lib/x_twitter_scraper/models/monitor_retrieve_response.rb +0 -62
  380. data/lib/x_twitter_scraper/models/monitor_update_response.rb +0 -62
  381. data/lib/x_twitter_scraper/models/style_analyze_response.rb +0 -69
  382. data/lib/x_twitter_scraper/models/style_retrieve_response.rb +0 -69
  383. data/lib/x_twitter_scraper/models/style_update_response.rb +0 -69
  384. data/lib/x_twitter_scraper/models/webhook_update_response.rb +0 -56
  385. data/lib/x_twitter_scraper/models/x/account_retrieve_response.rb +0 -60
  386. data/lib/x_twitter_scraper/models/x/bookmark_list_response.rb +0 -124
  387. data/lib/x_twitter_scraper/models/x/communities/join_create_response.rb +0 -32
  388. data/lib/x_twitter_scraper/models/x/communities/join_delete_all_response.rb +0 -32
  389. data/lib/x_twitter_scraper/models/x/tweet_get_favoriters_response.rb +0 -101
  390. data/lib/x_twitter_scraper/models/x/tweet_get_quotes_response.rb +0 -124
  391. data/lib/x_twitter_scraper/models/x/tweet_get_replies_response.rb +0 -124
  392. data/lib/x_twitter_scraper/models/x/tweet_get_retweeters_response.rb +0 -101
  393. data/lib/x_twitter_scraper/models/x/tweet_get_thread_response.rb +0 -124
  394. data/lib/x_twitter_scraper/models/x/tweet_search_response.rb +0 -124
  395. data/lib/x_twitter_scraper/models/x/user_retrieve_followers_you_know_response.rb +0 -101
  396. data/lib/x_twitter_scraper/models/x/user_retrieve_likes_response.rb +0 -124
  397. data/lib/x_twitter_scraper/models/x/user_retrieve_media_response.rb +0 -124
  398. data/lib/x_twitter_scraper/models/x/user_retrieve_response.rb +0 -78
  399. data/lib/x_twitter_scraper/models/x/user_retrieve_tweets_response.rb +0 -124
  400. data/lib/x_twitter_scraper/models/x_get_home_timeline_response.rb +0 -122
  401. data/rbi/x_twitter_scraper/models/draft_create_response.rbi +0 -67
  402. data/rbi/x_twitter_scraper/models/draft_retrieve_response.rbi +0 -67
  403. data/rbi/x_twitter_scraper/models/event_retrieve_response.rbi +0 -135
  404. data/rbi/x_twitter_scraper/models/integration_create_response.rbi +0 -215
  405. data/rbi/x_twitter_scraper/models/integration_retrieve_response.rbi +0 -215
  406. data/rbi/x_twitter_scraper/models/integration_update_response.rbi +0 -215
  407. data/rbi/x_twitter_scraper/models/monitor_retrieve_response.rbi +0 -134
  408. data/rbi/x_twitter_scraper/models/monitor_update_response.rbi +0 -134
  409. data/rbi/x_twitter_scraper/models/style_analyze_response.rbi +0 -120
  410. data/rbi/x_twitter_scraper/models/style_retrieve_response.rbi +0 -120
  411. data/rbi/x_twitter_scraper/models/style_update_response.rbi +0 -120
  412. data/rbi/x_twitter_scraper/models/webhook_update_response.rbi +0 -122
  413. data/rbi/x_twitter_scraper/models/x/account_retrieve_response.rbi +0 -91
  414. data/rbi/x_twitter_scraper/models/x/bookmark_list_response.rbi +0 -231
  415. data/rbi/x_twitter_scraper/models/x/communities/join_create_response.rbi +0 -50
  416. data/rbi/x_twitter_scraper/models/x/communities/join_delete_all_response.rbi +0 -50
  417. data/rbi/x_twitter_scraper/models/x/tweet_get_favoriters_response.rbi +0 -177
  418. data/rbi/x_twitter_scraper/models/x/tweet_get_quotes_response.rbi +0 -231
  419. data/rbi/x_twitter_scraper/models/x/tweet_get_replies_response.rbi +0 -231
  420. data/rbi/x_twitter_scraper/models/x/tweet_get_retweeters_response.rbi +0 -177
  421. data/rbi/x_twitter_scraper/models/x/tweet_get_thread_response.rbi +0 -231
  422. data/rbi/x_twitter_scraper/models/x/tweet_search_response.rbi +0 -229
  423. data/rbi/x_twitter_scraper/models/x/user_retrieve_followers_you_know_response.rbi +0 -177
  424. data/rbi/x_twitter_scraper/models/x/user_retrieve_likes_response.rbi +0 -233
  425. data/rbi/x_twitter_scraper/models/x/user_retrieve_media_response.rbi +0 -233
  426. data/rbi/x_twitter_scraper/models/x/user_retrieve_response.rbi +0 -124
  427. data/rbi/x_twitter_scraper/models/x/user_retrieve_tweets_response.rbi +0 -233
  428. data/rbi/x_twitter_scraper/models/x_get_home_timeline_response.rbi +0 -227
  429. data/sig/x_twitter_scraper/models/draft_create_response.rbs +0 -49
  430. data/sig/x_twitter_scraper/models/draft_retrieve_response.rbs +0 -49
  431. data/sig/x_twitter_scraper/models/event_retrieve_response.rbs +0 -73
  432. data/sig/x_twitter_scraper/models/integration_create_response.rbs +0 -109
  433. data/sig/x_twitter_scraper/models/integration_retrieve_response.rbs +0 -109
  434. data/sig/x_twitter_scraper/models/integration_update_response.rbs +0 -109
  435. data/sig/x_twitter_scraper/models/monitor_retrieve_response.rbs +0 -66
  436. data/sig/x_twitter_scraper/models/monitor_update_response.rbs +0 -66
  437. data/sig/x_twitter_scraper/models/style_analyze_response.rbs +0 -76
  438. data/sig/x_twitter_scraper/models/style_retrieve_response.rbs +0 -76
  439. data/sig/x_twitter_scraper/models/style_update_response.rbs +0 -76
  440. data/sig/x_twitter_scraper/models/webhook_update_response.rbs +0 -61
  441. data/sig/x_twitter_scraper/models/x/account_retrieve_response.rbs +0 -63
  442. data/sig/x_twitter_scraper/models/x/bookmark_list_response.rbs +0 -141
  443. data/sig/x_twitter_scraper/models/x/communities/join_create_response.rbs +0 -30
  444. data/sig/x_twitter_scraper/models/x/communities/join_delete_all_response.rbs +0 -30
  445. data/sig/x_twitter_scraper/models/x/tweet_get_favoriters_response.rbs +0 -115
  446. data/sig/x_twitter_scraper/models/x/tweet_get_quotes_response.rbs +0 -141
  447. data/sig/x_twitter_scraper/models/x/tweet_get_replies_response.rbs +0 -141
  448. data/sig/x_twitter_scraper/models/x/tweet_get_retweeters_response.rbs +0 -115
  449. data/sig/x_twitter_scraper/models/x/tweet_get_thread_response.rbs +0 -141
  450. data/sig/x_twitter_scraper/models/x/tweet_search_response.rbs +0 -141
  451. data/sig/x_twitter_scraper/models/x/user_retrieve_followers_you_know_response.rbs +0 -115
  452. data/sig/x_twitter_scraper/models/x/user_retrieve_likes_response.rbs +0 -141
  453. data/sig/x_twitter_scraper/models/x/user_retrieve_media_response.rbs +0 -141
  454. data/sig/x_twitter_scraper/models/x/user_retrieve_response.rbs +0 -88
  455. data/sig/x_twitter_scraper/models/x/user_retrieve_tweets_response.rbs +0 -141
  456. data/sig/x_twitter_scraper/models/x_get_home_timeline_response.rbs +0 -139
@@ -15,106 +15,15 @@ module XTwitterScraper
15
15
 
16
16
  # @!attribute tweets
17
17
  #
18
- # @return [Array<XTwitterScraper::Models::PaginatedTweets::Tweet>]
19
- required :tweets, -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::PaginatedTweets::Tweet] }
18
+ # @return [Array<XTwitterScraper::Models::X::SearchTweet>]
19
+ required :tweets, -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::X::SearchTweet] }
20
20
 
21
21
  # @!method initialize(has_next_page:, next_cursor:, tweets:)
22
+ # Paginated list of tweets with cursor-based navigation.
23
+ #
22
24
  # @param has_next_page [Boolean]
23
25
  # @param next_cursor [String]
24
- # @param tweets [Array<XTwitterScraper::Models::PaginatedTweets::Tweet>]
25
-
26
- class Tweet < XTwitterScraper::Internal::Type::BaseModel
27
- # @!attribute id
28
- #
29
- # @return [String]
30
- required :id, String
31
-
32
- # @!attribute text
33
- #
34
- # @return [String]
35
- required :text, String
36
-
37
- # @!attribute author
38
- #
39
- # @return [XTwitterScraper::Models::PaginatedTweets::Tweet::Author, nil]
40
- optional :author, -> { XTwitterScraper::PaginatedTweets::Tweet::Author }
41
-
42
- # @!attribute bookmark_count
43
- #
44
- # @return [Integer, nil]
45
- optional :bookmark_count, Integer, api_name: :bookmarkCount
46
-
47
- # @!attribute created_at
48
- #
49
- # @return [String, nil]
50
- optional :created_at, String, api_name: :createdAt
51
-
52
- # @!attribute like_count
53
- #
54
- # @return [Integer, nil]
55
- optional :like_count, Integer, api_name: :likeCount
56
-
57
- # @!attribute quote_count
58
- #
59
- # @return [Integer, nil]
60
- optional :quote_count, Integer, api_name: :quoteCount
61
-
62
- # @!attribute reply_count
63
- #
64
- # @return [Integer, nil]
65
- optional :reply_count, Integer, api_name: :replyCount
66
-
67
- # @!attribute retweet_count
68
- #
69
- # @return [Integer, nil]
70
- optional :retweet_count, Integer, api_name: :retweetCount
71
-
72
- # @!attribute view_count
73
- #
74
- # @return [Integer, nil]
75
- optional :view_count, Integer, api_name: :viewCount
76
-
77
- # @!method initialize(id:, text:, author: nil, bookmark_count: nil, created_at: nil, like_count: nil, quote_count: nil, reply_count: nil, retweet_count: nil, view_count: nil)
78
- # @param id [String]
79
- # @param text [String]
80
- # @param author [XTwitterScraper::Models::PaginatedTweets::Tweet::Author]
81
- # @param bookmark_count [Integer]
82
- # @param created_at [String]
83
- # @param like_count [Integer]
84
- # @param quote_count [Integer]
85
- # @param reply_count [Integer]
86
- # @param retweet_count [Integer]
87
- # @param view_count [Integer]
88
-
89
- # @see XTwitterScraper::Models::PaginatedTweets::Tweet#author
90
- class Author < XTwitterScraper::Internal::Type::BaseModel
91
- # @!attribute id
92
- #
93
- # @return [String]
94
- required :id, String
95
-
96
- # @!attribute name
97
- #
98
- # @return [String]
99
- required :name, String
100
-
101
- # @!attribute username
102
- #
103
- # @return [String]
104
- required :username, String
105
-
106
- # @!attribute verified
107
- #
108
- # @return [Boolean, nil]
109
- optional :verified, XTwitterScraper::Internal::Type::Boolean
110
-
111
- # @!method initialize(id:, name:, username:, verified: nil)
112
- # @param id [String]
113
- # @param name [String]
114
- # @param username [String]
115
- # @param verified [Boolean]
116
- end
117
- end
26
+ # @param tweets [Array<XTwitterScraper::Models::X::SearchTweet>]
118
27
  end
119
28
  end
120
29
  end
@@ -15,83 +15,15 @@ module XTwitterScraper
15
15
 
16
16
  # @!attribute users
17
17
  #
18
- # @return [Array<XTwitterScraper::Models::PaginatedUsers::User>]
19
- required :users, -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::PaginatedUsers::User] }
18
+ # @return [Array<XTwitterScraper::Models::X::UserProfile>]
19
+ required :users, -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::X::UserProfile] }
20
20
 
21
21
  # @!method initialize(has_next_page:, next_cursor:, users:)
22
+ # Paginated list of user profiles with cursor-based navigation.
23
+ #
22
24
  # @param has_next_page [Boolean]
23
25
  # @param next_cursor [String]
24
- # @param users [Array<XTwitterScraper::Models::PaginatedUsers::User>]
25
-
26
- class User < XTwitterScraper::Internal::Type::BaseModel
27
- # @!attribute id
28
- #
29
- # @return [String]
30
- required :id, String
31
-
32
- # @!attribute name
33
- #
34
- # @return [String]
35
- required :name, String
36
-
37
- # @!attribute username
38
- #
39
- # @return [String]
40
- required :username, String
41
-
42
- # @!attribute created_at
43
- #
44
- # @return [String, nil]
45
- optional :created_at, String, api_name: :createdAt
46
-
47
- # @!attribute description
48
- #
49
- # @return [String, nil]
50
- optional :description, String
51
-
52
- # @!attribute followers
53
- #
54
- # @return [Integer, nil]
55
- optional :followers, Integer
56
-
57
- # @!attribute following
58
- #
59
- # @return [Integer, nil]
60
- optional :following, Integer
61
-
62
- # @!attribute location
63
- #
64
- # @return [String, nil]
65
- optional :location, String
66
-
67
- # @!attribute profile_picture
68
- #
69
- # @return [String, nil]
70
- optional :profile_picture, String, api_name: :profilePicture
71
-
72
- # @!attribute statuses_count
73
- #
74
- # @return [Integer, nil]
75
- optional :statuses_count, Integer, api_name: :statusesCount
76
-
77
- # @!attribute verified
78
- #
79
- # @return [Boolean, nil]
80
- optional :verified, XTwitterScraper::Internal::Type::Boolean
81
-
82
- # @!method initialize(id:, name:, username:, created_at: nil, description: nil, followers: nil, following: nil, location: nil, profile_picture: nil, statuses_count: nil, verified: nil)
83
- # @param id [String]
84
- # @param name [String]
85
- # @param username [String]
86
- # @param created_at [String]
87
- # @param description [String]
88
- # @param followers [Integer]
89
- # @param following [Integer]
90
- # @param location [String]
91
- # @param profile_picture [String]
92
- # @param statuses_count [Integer]
93
- # @param verified [Boolean]
94
- end
26
+ # @param users [Array<XTwitterScraper::Models::X::UserProfile>]
95
27
  end
96
28
  end
97
29
  end
@@ -49,6 +49,8 @@ module XTwitterScraper
49
49
  optional :url, String
50
50
 
51
51
  # @!method initialize(category:, published_at:, region:, score:, source:, title:, description: nil, image_url: nil, url: nil)
52
+ # Trending topic with score, category, source, and region.
53
+ #
52
54
  # @param category [String]
53
55
  # @param published_at [Time]
54
56
  # @param region [String]
@@ -35,8 +35,8 @@ module XTwitterScraper
35
35
  # Source filter. One of: github, google_trends, hacker_news, polymarket, reddit,
36
36
  # trustmrr, wikipedia
37
37
  #
38
- # @return [String, nil]
39
- optional :source, String
38
+ # @return [Symbol, XTwitterScraper::Models::RadarRetrieveTrendingTopicsParams::Source, nil]
39
+ optional :source, enum: -> { XTwitterScraper::RadarRetrieveTrendingTopicsParams::Source }
40
40
 
41
41
  # @!method initialize(category: nil, count: nil, hours: nil, region: nil, source: nil, request_options: {})
42
42
  # Some parameter documentations has been truncated, see
@@ -50,9 +50,26 @@ module XTwitterScraper
50
50
  #
51
51
  # @param region [String] Region filter (us, global, etc.)
52
52
  #
53
- # @param source [String] Source filter. One of: github, google_trends, hacker_news, polymarket, reddit, t
53
+ # @param source [Symbol, XTwitterScraper::Models::RadarRetrieveTrendingTopicsParams::Source] Source filter. One of: github, google_trends, hacker_news, polymarket, reddit, t
54
54
  #
55
55
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}]
56
+
57
+ # Source filter. One of: github, google_trends, hacker_news, polymarket, reddit,
58
+ # trustmrr, wikipedia
59
+ module Source
60
+ extend XTwitterScraper::Internal::Type::Enum
61
+
62
+ GITHUB = :github
63
+ GOOGLE_TRENDS = :google_trends
64
+ HACKER_NEWS = :hacker_news
65
+ POLYMARKET = :polymarket
66
+ REDDIT = :reddit
67
+ TRUSTMRR = :trustmrr
68
+ WIKIPEDIA = :wikipedia
69
+
70
+ # @!method self.values
71
+ # @return [Array<Symbol>]
72
+ end
56
73
  end
57
74
  end
58
75
  end
@@ -6,9 +6,8 @@ module XTwitterScraper
6
6
  class RadarRetrieveTrendingTopicsResponse < XTwitterScraper::Internal::Type::BaseModel
7
7
  # @!attribute items
8
8
  #
9
- # @return [Array<XTwitterScraper::Models::RadarRetrieveTrendingTopicsResponse::Item>]
10
- required :items,
11
- -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::Models::RadarRetrieveTrendingTopicsResponse::Item] }
9
+ # @return [Array<XTwitterScraper::Models::RadarItem>]
10
+ required :items, -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::RadarItem] }
12
11
 
13
12
  # @!attribute total
14
13
  #
@@ -16,66 +15,8 @@ module XTwitterScraper
16
15
  required :total, Integer
17
16
 
18
17
  # @!method initialize(items:, total:)
19
- # @param items [Array<XTwitterScraper::Models::RadarRetrieveTrendingTopicsResponse::Item>]
18
+ # @param items [Array<XTwitterScraper::Models::RadarItem>]
20
19
  # @param total [Integer]
21
-
22
- class Item < XTwitterScraper::Internal::Type::BaseModel
23
- # @!attribute category
24
- #
25
- # @return [String]
26
- required :category, String
27
-
28
- # @!attribute published_at
29
- #
30
- # @return [Time]
31
- required :published_at, Time, api_name: :publishedAt
32
-
33
- # @!attribute region
34
- #
35
- # @return [String]
36
- required :region, String
37
-
38
- # @!attribute score
39
- #
40
- # @return [Float]
41
- required :score, Float
42
-
43
- # @!attribute source
44
- #
45
- # @return [String]
46
- required :source, String
47
-
48
- # @!attribute title
49
- #
50
- # @return [String]
51
- required :title, String
52
-
53
- # @!attribute description
54
- #
55
- # @return [String, nil]
56
- optional :description, String
57
-
58
- # @!attribute image_url
59
- #
60
- # @return [String, nil]
61
- optional :image_url, String, api_name: :imageUrl
62
-
63
- # @!attribute url
64
- #
65
- # @return [String, nil]
66
- optional :url, String
67
-
68
- # @!method initialize(category:, published_at:, region:, score:, source:, title:, description: nil, image_url: nil, url: nil)
69
- # @param category [String]
70
- # @param published_at [Time]
71
- # @param region [String]
72
- # @param score [Float]
73
- # @param source [String]
74
- # @param title [String]
75
- # @param description [String]
76
- # @param image_url [String]
77
- # @param url [String]
78
- end
79
20
  end
80
21
  end
81
22
  end
@@ -5,146 +5,21 @@ module XTwitterScraper
5
5
  # @see XTwitterScraper::Resources::Styles#compare
6
6
  class StyleCompareResponse < XTwitterScraper::Internal::Type::BaseModel
7
7
  # @!attribute style1
8
+ # Full style profile with sampled tweets used for tone analysis.
8
9
  #
9
- # @return [XTwitterScraper::Models::StyleCompareResponse::Style1]
10
- required :style1, -> { XTwitterScraper::Models::StyleCompareResponse::Style1 }
10
+ # @return [XTwitterScraper::Models::StyleProfile]
11
+ required :style1, -> { XTwitterScraper::StyleProfile }
11
12
 
12
13
  # @!attribute style2
14
+ # Full style profile with sampled tweets used for tone analysis.
13
15
  #
14
- # @return [XTwitterScraper::Models::StyleCompareResponse::Style2]
15
- required :style2, -> { XTwitterScraper::Models::StyleCompareResponse::Style2 }
16
+ # @return [XTwitterScraper::Models::StyleProfile]
17
+ required :style2, -> { XTwitterScraper::StyleProfile }
16
18
 
17
19
  # @!method initialize(style1:, style2:)
18
- # @param style1 [XTwitterScraper::Models::StyleCompareResponse::Style1]
19
- # @param style2 [XTwitterScraper::Models::StyleCompareResponse::Style2]
20
-
21
- # @see XTwitterScraper::Models::StyleCompareResponse#style1
22
- class Style1 < XTwitterScraper::Internal::Type::BaseModel
23
- # @!attribute fetched_at
24
- #
25
- # @return [Time]
26
- required :fetched_at, Time, api_name: :fetchedAt
27
-
28
- # @!attribute is_own_account
29
- #
30
- # @return [Boolean]
31
- required :is_own_account, XTwitterScraper::Internal::Type::Boolean, api_name: :isOwnAccount
32
-
33
- # @!attribute tweet_count
34
- #
35
- # @return [Integer]
36
- required :tweet_count, Integer, api_name: :tweetCount
37
-
38
- # @!attribute tweets
39
- #
40
- # @return [Array<XTwitterScraper::Models::StyleCompareResponse::Style1::Tweet>]
41
- required :tweets,
42
- -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::Models::StyleCompareResponse::Style1::Tweet] }
43
-
44
- # @!attribute x_username
45
- #
46
- # @return [String]
47
- required :x_username, String, api_name: :xUsername
48
-
49
- # @!method initialize(fetched_at:, is_own_account:, tweet_count:, tweets:, x_username:)
50
- # @param fetched_at [Time]
51
- # @param is_own_account [Boolean]
52
- # @param tweet_count [Integer]
53
- # @param tweets [Array<XTwitterScraper::Models::StyleCompareResponse::Style1::Tweet>]
54
- # @param x_username [String]
55
-
56
- class Tweet < XTwitterScraper::Internal::Type::BaseModel
57
- # @!attribute id
58
- #
59
- # @return [String]
60
- required :id, String
61
-
62
- # @!attribute text
63
- #
64
- # @return [String]
65
- required :text, String
66
-
67
- # @!attribute author_username
68
- #
69
- # @return [String, nil]
70
- optional :author_username, String, api_name: :authorUsername
71
-
72
- # @!attribute created_at
73
- #
74
- # @return [String, nil]
75
- optional :created_at, String, api_name: :createdAt
76
-
77
- # @!method initialize(id:, text:, author_username: nil, created_at: nil)
78
- # @param id [String]
79
- # @param text [String]
80
- # @param author_username [String]
81
- # @param created_at [String]
82
- end
83
- end
84
-
85
- # @see XTwitterScraper::Models::StyleCompareResponse#style2
86
- class Style2 < XTwitterScraper::Internal::Type::BaseModel
87
- # @!attribute fetched_at
88
- #
89
- # @return [Time]
90
- required :fetched_at, Time, api_name: :fetchedAt
91
-
92
- # @!attribute is_own_account
93
- #
94
- # @return [Boolean]
95
- required :is_own_account, XTwitterScraper::Internal::Type::Boolean, api_name: :isOwnAccount
96
-
97
- # @!attribute tweet_count
98
- #
99
- # @return [Integer]
100
- required :tweet_count, Integer, api_name: :tweetCount
101
-
102
- # @!attribute tweets
103
- #
104
- # @return [Array<XTwitterScraper::Models::StyleCompareResponse::Style2::Tweet>]
105
- required :tweets,
106
- -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::Models::StyleCompareResponse::Style2::Tweet] }
107
-
108
- # @!attribute x_username
109
- #
110
- # @return [String]
111
- required :x_username, String, api_name: :xUsername
112
-
113
- # @!method initialize(fetched_at:, is_own_account:, tweet_count:, tweets:, x_username:)
114
- # @param fetched_at [Time]
115
- # @param is_own_account [Boolean]
116
- # @param tweet_count [Integer]
117
- # @param tweets [Array<XTwitterScraper::Models::StyleCompareResponse::Style2::Tweet>]
118
- # @param x_username [String]
119
-
120
- class Tweet < XTwitterScraper::Internal::Type::BaseModel
121
- # @!attribute id
122
- #
123
- # @return [String]
124
- required :id, String
125
-
126
- # @!attribute text
127
- #
128
- # @return [String]
129
- required :text, String
130
-
131
- # @!attribute author_username
132
- #
133
- # @return [String, nil]
134
- optional :author_username, String, api_name: :authorUsername
135
-
136
- # @!attribute created_at
137
- #
138
- # @return [String, nil]
139
- optional :created_at, String, api_name: :createdAt
140
-
141
- # @!method initialize(id:, text:, author_username: nil, created_at: nil)
142
- # @param id [String]
143
- # @param text [String]
144
- # @param author_username [String]
145
- # @param created_at [String]
146
- end
147
- end
20
+ # @param style1 [XTwitterScraper::Models::StyleProfile] Full style profile with sampled tweets used for tone analysis.
21
+ #
22
+ # @param style2 [XTwitterScraper::Models::StyleProfile] Full style profile with sampled tweets used for tone analysis.
148
23
  end
149
24
  end
150
25
  end
@@ -7,13 +7,13 @@ module XTwitterScraper
7
7
  extend XTwitterScraper::Internal::Type::RequestParameters::Converter
8
8
  include XTwitterScraper::Internal::Type::RequestParameters
9
9
 
10
- # @!attribute username
10
+ # @!attribute id
11
11
  #
12
12
  # @return [String]
13
- required :username, String
13
+ required :id, String
14
14
 
15
- # @!method initialize(username:, request_options: {})
16
- # @param username [String]
15
+ # @!method initialize(id:, request_options: {})
16
+ # @param id [String]
17
17
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}]
18
18
  end
19
19
  end
@@ -7,13 +7,13 @@ module XTwitterScraper
7
7
  extend XTwitterScraper::Internal::Type::RequestParameters::Converter
8
8
  include XTwitterScraper::Internal::Type::RequestParameters
9
9
 
10
- # @!attribute username
10
+ # @!attribute id
11
11
  #
12
12
  # @return [String]
13
- required :username, String
13
+ required :id, String
14
14
 
15
- # @!method initialize(username:, request_options: {})
16
- # @param username [String]
15
+ # @!method initialize(id:, request_options: {})
16
+ # @param id [String]
17
17
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}]
18
18
  end
19
19
  end
@@ -6,40 +6,11 @@ module XTwitterScraper
6
6
  class StyleListResponse < XTwitterScraper::Internal::Type::BaseModel
7
7
  # @!attribute styles
8
8
  #
9
- # @return [Array<XTwitterScraper::Models::StyleListResponse::Style>]
10
- required :styles,
11
- -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::Models::StyleListResponse::Style] }
9
+ # @return [Array<XTwitterScraper::Models::StyleProfileSummary>]
10
+ required :styles, -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::StyleProfileSummary] }
12
11
 
13
12
  # @!method initialize(styles:)
14
- # @param styles [Array<XTwitterScraper::Models::StyleListResponse::Style>]
15
-
16
- class Style < XTwitterScraper::Internal::Type::BaseModel
17
- # @!attribute fetched_at
18
- #
19
- # @return [Time]
20
- required :fetched_at, Time, api_name: :fetchedAt
21
-
22
- # @!attribute is_own_account
23
- #
24
- # @return [Boolean]
25
- required :is_own_account, XTwitterScraper::Internal::Type::Boolean, api_name: :isOwnAccount
26
-
27
- # @!attribute tweet_count
28
- #
29
- # @return [Integer]
30
- required :tweet_count, Integer, api_name: :tweetCount
31
-
32
- # @!attribute x_username
33
- #
34
- # @return [String]
35
- required :x_username, String, api_name: :xUsername
36
-
37
- # @!method initialize(fetched_at:, is_own_account:, tweet_count:, x_username:)
38
- # @param fetched_at [Time]
39
- # @param is_own_account [Boolean]
40
- # @param tweet_count [Integer]
41
- # @param x_username [String]
42
- end
13
+ # @param styles [Array<XTwitterScraper::Models::StyleProfileSummary>]
43
14
  end
44
15
  end
45
16
  end
@@ -2,6 +2,7 @@
2
2
 
3
3
  module XTwitterScraper
4
4
  module Models
5
+ # @see XTwitterScraper::Resources::Styles#retrieve
5
6
  class StyleProfile < XTwitterScraper::Internal::Type::BaseModel
6
7
  # @!attribute fetched_at
7
8
  #
@@ -29,6 +30,8 @@ module XTwitterScraper
29
30
  required :x_username, String, api_name: :xUsername
30
31
 
31
32
  # @!method initialize(fetched_at:, is_own_account:, tweet_count:, tweets:, x_username:)
33
+ # Full style profile with sampled tweets used for tone analysis.
34
+ #
32
35
  # @param fetched_at [Time]
33
36
  # @param is_own_account [Boolean]
34
37
  # @param tweet_count [Integer]
@@ -24,6 +24,8 @@ module XTwitterScraper
24
24
  required :x_username, String, api_name: :xUsername
25
25
 
26
26
  # @!method initialize(fetched_at:, is_own_account:, tweet_count:, x_username:)
27
+ # Style profile summary with tweet count and ownership flag.
28
+ #
27
29
  # @param fetched_at [Time]
28
30
  # @param is_own_account [Boolean]
29
31
  # @param tweet_count [Integer]
@@ -7,13 +7,13 @@ module XTwitterScraper
7
7
  extend XTwitterScraper::Internal::Type::RequestParameters::Converter
8
8
  include XTwitterScraper::Internal::Type::RequestParameters
9
9
 
10
- # @!attribute username
10
+ # @!attribute id
11
11
  #
12
12
  # @return [String]
13
- required :username, String
13
+ required :id, String
14
14
 
15
- # @!method initialize(username:, request_options: {})
16
- # @param username [String]
15
+ # @!method initialize(id:, request_options: {})
16
+ # @param id [String]
17
17
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}]
18
18
  end
19
19
  end
@@ -7,10 +7,10 @@ module XTwitterScraper
7
7
  extend XTwitterScraper::Internal::Type::RequestParameters::Converter
8
8
  include XTwitterScraper::Internal::Type::RequestParameters
9
9
 
10
- # @!attribute username
10
+ # @!attribute id
11
11
  #
12
12
  # @return [String]
13
- required :username, String
13
+ required :id, String
14
14
 
15
15
  # @!attribute label
16
16
  # Display label for the style
@@ -25,8 +25,8 @@ module XTwitterScraper
25
25
  required :tweets,
26
26
  -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::StyleUpdateParams::Tweet] }
27
27
 
28
- # @!method initialize(username:, label:, tweets:, request_options: {})
29
- # @param username [String]
28
+ # @!method initialize(id:, label:, tweets:, request_options: {})
29
+ # @param id [String]
30
30
  #
31
31
  # @param label [String] Display label for the style
32
32
  #
@@ -8,6 +8,7 @@ module XTwitterScraper
8
8
  include XTwitterScraper::Internal::Type::RequestParameters
9
9
 
10
10
  # @!attribute count
11
+ # Number of trending topics to return (1-50, default 30)
11
12
  #
12
13
  # @return [Integer, nil]
13
14
  optional :count, Integer
@@ -19,7 +20,7 @@ module XTwitterScraper
19
20
  optional :woeid, Integer
20
21
 
21
22
  # @!method initialize(count: nil, woeid: nil, request_options: {})
22
- # @param count [Integer]
23
+ # @param count [Integer] Number of trending topics to return (1-50, default 30)
23
24
  #
24
25
  # @param woeid [Integer] Region WOEID (1=Worldwide, 23424977=US, 23424975=UK, 23424969=Turkey)
25
26
  #