x-twitter-scraper 0.3.0 → 0.4.0

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 +25 -0
  3. data/README.md +5 -5
  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 +17 -88
  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
@@ -4,7 +4,7 @@ module XTwitterScraper
4
4
  module Resources
5
5
  # Trending topics by region
6
6
  class Trends
7
- # Get trending topics
7
+ # Get regional trending topics
8
8
  sig do
9
9
  params(
10
10
  count: Integer,
@@ -13,6 +13,7 @@ module XTwitterScraper
13
13
  ).returns(XTwitterScraper::Models::TrendListResponse)
14
14
  end
15
15
  def list(
16
+ # Number of trending topics to return (1-50, default 30)
16
17
  count: nil,
17
18
  # Region WOEID (1=Worldwide, 23424977=US, 23424975=UK, 23424969=Turkey)
18
19
  woeid: nil,
@@ -7,13 +7,13 @@ module XTwitterScraper
7
7
  # Create webhook
8
8
  sig do
9
9
  params(
10
- event_types:
11
- T::Array[XTwitterScraper::WebhookCreateParams::EventType::OrSymbol],
10
+ event_types: T::Array[XTwitterScraper::EventType::OrSymbol],
12
11
  url: String,
13
12
  request_options: XTwitterScraper::RequestOptions::OrHash
14
13
  ).returns(XTwitterScraper::Models::WebhookCreateResponse)
15
14
  end
16
15
  def create(
16
+ # Array of event types to subscribe to.
17
17
  event_types:,
18
18
  # HTTPS URL
19
19
  url:,
@@ -25,16 +25,16 @@ module XTwitterScraper
25
25
  sig do
26
26
  params(
27
27
  id: String,
28
- event_types:
29
- T::Array[XTwitterScraper::WebhookUpdateParams::EventType::OrSymbol],
28
+ event_types: T::Array[XTwitterScraper::EventType::OrSymbol],
30
29
  is_active: T::Boolean,
31
30
  url: String,
32
31
  request_options: XTwitterScraper::RequestOptions::OrHash
33
- ).returns(XTwitterScraper::Models::WebhookUpdateResponse)
32
+ ).returns(XTwitterScraper::Webhook)
34
33
  end
35
34
  def update(
36
35
  # Resource ID (stringified bigint)
37
36
  id,
37
+ # Array of event types to subscribe to.
38
38
  event_types: nil,
39
39
  is_active: nil,
40
40
  url: nil,
@@ -36,7 +36,7 @@ module XTwitterScraper
36
36
  params(
37
37
  id: String,
38
38
  request_options: XTwitterScraper::RequestOptions::OrHash
39
- ).returns(XTwitterScraper::Models::X::AccountRetrieveResponse)
39
+ ).returns(XTwitterScraper::X::XAccountDetail)
40
40
  end
41
41
  def retrieve(
42
42
  # Resource ID (stringified bigint)
@@ -68,6 +68,16 @@ module XTwitterScraper
68
68
  )
69
69
  end
70
70
 
71
+ # Clears loginFailedAt and loginFailureReason for all accounts with transient or
72
+ # automated failure reasons, making them eligible for retry on next use.
73
+ sig do
74
+ params(
75
+ request_options: XTwitterScraper::RequestOptions::OrHash
76
+ ).returns(XTwitterScraper::Models::X::AccountBulkRetryResponse)
77
+ end
78
+ def bulk_retry(request_options: {})
79
+ end
80
+
71
81
  # Re-authenticate X account
72
82
  sig do
73
83
  params(
@@ -80,9 +90,9 @@ module XTwitterScraper
80
90
  def reauth(
81
91
  # Resource ID (stringified bigint)
82
92
  id,
83
- # Account password
93
+ # Updated account password
84
94
  password:,
85
- # TOTP secret for 2FA
95
+ # TOTP secret for 2FA re-authentication
86
96
  totp_secret: nil,
87
97
  request_options: {}
88
98
  )
@@ -11,10 +11,10 @@ module XTwitterScraper
11
11
  cursor: String,
12
12
  folder_id: String,
13
13
  request_options: XTwitterScraper::RequestOptions::OrHash
14
- ).returns(XTwitterScraper::Models::X::BookmarkListResponse)
14
+ ).returns(XTwitterScraper::PaginatedTweets)
15
15
  end
16
16
  def list(
17
- # Pagination cursor from previous response
17
+ # Pagination cursor for bookmarks
18
18
  cursor: nil,
19
19
  # Optional bookmark folder ID
20
20
  folder_id: nil,
@@ -12,14 +12,12 @@ module XTwitterScraper
12
12
  id: String,
13
13
  account: String,
14
14
  request_options: XTwitterScraper::RequestOptions::OrHash
15
- ).returns(
16
- XTwitterScraper::Models::X::Communities::JoinCreateResponse
17
- )
15
+ ).returns(XTwitterScraper::X::CommunityActionResult)
18
16
  end
19
17
  def create(
20
18
  # Resource ID (stringified bigint)
21
19
  id,
22
- # X account (@username or account ID)
20
+ # X account identifier (@username or account ID)
23
21
  account:,
24
22
  request_options: {}
25
23
  )
@@ -31,14 +29,12 @@ module XTwitterScraper
31
29
  id: String,
32
30
  account: String,
33
31
  request_options: XTwitterScraper::RequestOptions::OrHash
34
- ).returns(
35
- XTwitterScraper::Models::X::Communities::JoinDeleteAllResponse
36
- )
32
+ ).returns(XTwitterScraper::X::CommunityActionResult)
37
33
  end
38
34
  def delete_all(
39
35
  # Resource ID (stringified bigint)
40
36
  id,
41
- # X account (@username or account ID)
37
+ # X account identifier (@username or account ID)
42
38
  account:,
43
39
  request_options: {}
44
40
  )
@@ -13,19 +13,36 @@ module XTwitterScraper
13
13
  cursor: String,
14
14
  query_type: String,
15
15
  request_options: XTwitterScraper::RequestOptions::OrHash
16
- ).void
16
+ ).returns(XTwitterScraper::PaginatedTweets)
17
17
  end
18
18
  def list(
19
- # Search query
19
+ # Search query for cross-community tweets
20
20
  q:,
21
- # Pagination cursor
21
+ # Pagination cursor for cross-community results
22
22
  cursor: nil,
23
- # Sort order (Latest or Top)
23
+ # Sort order for cross-community results (Latest or Top)
24
24
  query_type: nil,
25
25
  request_options: {}
26
26
  )
27
27
  end
28
28
 
29
+ # Get community tweets
30
+ sig do
31
+ params(
32
+ id: String,
33
+ cursor: String,
34
+ request_options: XTwitterScraper::RequestOptions::OrHash
35
+ ).returns(XTwitterScraper::PaginatedTweets)
36
+ end
37
+ def list_by_community(
38
+ # Community ID for tweet lookup
39
+ id,
40
+ # Pagination cursor for community tweets
41
+ cursor: nil,
42
+ request_options: {}
43
+ )
44
+ end
45
+
29
46
  # @api private
30
47
  sig do
31
48
  params(client: XTwitterScraper::Client).returns(T.attached_class)
@@ -22,7 +22,7 @@ module XTwitterScraper
22
22
  ).returns(XTwitterScraper::Models::X::CommunityCreateResponse)
23
23
  end
24
24
  def create(
25
- # X account (@username or account ID)
25
+ # X account (@username or ID) creating the community
26
26
  account:,
27
27
  # Community name
28
28
  name:,
@@ -44,7 +44,7 @@ module XTwitterScraper
44
44
  def delete(
45
45
  # Resource ID (stringified bigint)
46
46
  id,
47
- # X account (@username or account ID)
47
+ # X account (@username or ID) deleting the community
48
48
  account:,
49
49
  # Community name for confirmation
50
50
  community_name:,
@@ -72,10 +72,10 @@ module XTwitterScraper
72
72
  id: String,
73
73
  cursor: String,
74
74
  request_options: XTwitterScraper::RequestOptions::OrHash
75
- ).void
75
+ ).returns(XTwitterScraper::PaginatedUsers)
76
76
  end
77
77
  def retrieve_members(
78
- # Community ID
78
+ # Community ID for member lookup
79
79
  id,
80
80
  # Pagination cursor
81
81
  cursor: nil,
@@ -89,12 +89,12 @@ module XTwitterScraper
89
89
  id: String,
90
90
  cursor: String,
91
91
  request_options: XTwitterScraper::RequestOptions::OrHash
92
- ).void
92
+ ).returns(XTwitterScraper::PaginatedUsers)
93
93
  end
94
94
  def retrieve_moderators(
95
- # Community ID
95
+ # Community ID for moderator lookup
96
96
  id,
97
- # Pagination cursor
97
+ # Pagination cursor for community moderators
98
98
  cursor: nil,
99
99
  request_options: {}
100
100
  )
@@ -107,12 +107,12 @@ module XTwitterScraper
107
107
  cursor: String,
108
108
  query_type: String,
109
109
  request_options: XTwitterScraper::RequestOptions::OrHash
110
- ).void
110
+ ).returns(XTwitterScraper::PaginatedTweets)
111
111
  end
112
112
  def retrieve_search(
113
113
  # Search query
114
114
  q:,
115
- # Pagination cursor
115
+ # Pagination cursor for community search
116
116
  cursor: nil,
117
117
  # Sort order (Latest or Top)
118
118
  query_type: nil,
@@ -16,7 +16,7 @@ module XTwitterScraper
16
16
  def retrieve_history(
17
17
  # Target user ID
18
18
  user_id,
19
- # Pagination cursor from previous response
19
+ # Pagination cursor for DM history
20
20
  cursor: nil,
21
21
  # Legacy pagination cursor (backward compat)
22
22
  max_id: nil,
@@ -38,7 +38,7 @@ module XTwitterScraper
38
38
  def send_(
39
39
  # Recipient user ID
40
40
  user_id,
41
- # X account (@username or account ID)
41
+ # X account (@username or ID) sending the DM
42
42
  account:,
43
43
  text:,
44
44
  media_ids: nil,
@@ -11,12 +11,12 @@ module XTwitterScraper
11
11
  id: String,
12
12
  cursor: String,
13
13
  request_options: XTwitterScraper::RequestOptions::OrHash
14
- ).void
14
+ ).returns(XTwitterScraper::PaginatedUsers)
15
15
  end
16
16
  def retrieve_followers(
17
17
  # List ID
18
18
  id,
19
- # Pagination cursor
19
+ # Pagination cursor for list followers
20
20
  cursor: nil,
21
21
  request_options: {}
22
22
  )
@@ -28,12 +28,12 @@ module XTwitterScraper
28
28
  id: String,
29
29
  cursor: String,
30
30
  request_options: XTwitterScraper::RequestOptions::OrHash
31
- ).void
31
+ ).returns(XTwitterScraper::PaginatedUsers)
32
32
  end
33
33
  def retrieve_members(
34
- # List ID
34
+ # List ID for member lookup
35
35
  id,
36
- # Pagination cursor
36
+ # Pagination cursor for list members
37
37
  cursor: nil,
38
38
  request_options: {}
39
39
  )
@@ -48,12 +48,12 @@ module XTwitterScraper
48
48
  since_time: String,
49
49
  until_time: String,
50
50
  request_options: XTwitterScraper::RequestOptions::OrHash
51
- ).void
51
+ ).returns(XTwitterScraper::PaginatedTweets)
52
52
  end
53
53
  def retrieve_tweets(
54
- # List ID
54
+ # List ID for tweet lookup
55
55
  id,
56
- # Pagination cursor
56
+ # Pagination cursor for list tweets
57
57
  cursor: nil,
58
58
  # Include replies (default false)
59
59
  include_replies: nil,
@@ -32,7 +32,7 @@ module XTwitterScraper
32
32
  ).returns(XTwitterScraper::Models::X::MediaUploadResponse)
33
33
  end
34
34
  def upload(
35
- # X account (@username or account ID)
35
+ # X account (@username or ID) uploading media
36
36
  account:,
37
37
  # Media file to upload
38
38
  file:,
@@ -17,7 +17,7 @@ module XTwitterScraper
17
17
  ).returns(XTwitterScraper::Models::X::ProfileUpdateResponse)
18
18
  end
19
19
  def update(
20
- # X account (@username or account ID)
20
+ # X account (@username or ID) to update profile
21
21
  account:,
22
22
  # Bio description
23
23
  description: nil,
@@ -39,7 +39,7 @@ module XTwitterScraper
39
39
  ).returns(XTwitterScraper::Models::X::ProfileUpdateAvatarResponse)
40
40
  end
41
41
  def update_avatar(
42
- # X account (@username or account ID)
42
+ # X account (@username or ID) for avatar update
43
43
  account:,
44
44
  # Avatar image (max 716KB)
45
45
  file:,
@@ -56,7 +56,7 @@ module XTwitterScraper
56
56
  ).returns(XTwitterScraper::Models::X::ProfileUpdateBannerResponse)
57
57
  end
58
58
  def update_banner(
59
- # X account (@username or account ID)
59
+ # X account (@username or ID) for banner update
60
60
  account:,
61
61
  # Banner image (max 2MB)
62
62
  file:,
@@ -9,14 +9,15 @@ module XTwitterScraper
9
9
  # Like tweet
10
10
  sig do
11
11
  params(
12
- tweet_id: String,
12
+ id: String,
13
13
  account: String,
14
14
  request_options: XTwitterScraper::RequestOptions::OrHash
15
15
  ).returns(XTwitterScraper::Models::X::Tweets::LikeCreateResponse)
16
16
  end
17
17
  def create(
18
- tweet_id,
19
- # X account (@username or account ID)
18
+ # Tweet ID to like
19
+ id,
20
+ # X account identifier (@username or account ID)
20
21
  account:,
21
22
  request_options: {}
22
23
  )
@@ -25,14 +26,15 @@ module XTwitterScraper
25
26
  # Unlike tweet
26
27
  sig do
27
28
  params(
28
- tweet_id: String,
29
+ id: String,
29
30
  account: String,
30
31
  request_options: XTwitterScraper::RequestOptions::OrHash
31
32
  ).returns(XTwitterScraper::Models::X::Tweets::LikeDeleteResponse)
32
33
  end
33
34
  def delete(
34
- tweet_id,
35
- # X account (@username or account ID)
35
+ # Tweet ID to unlike
36
+ id,
37
+ # X account identifier (@username or account ID)
36
38
  account:,
37
39
  request_options: {}
38
40
  )
@@ -9,14 +9,15 @@ module XTwitterScraper
9
9
  # Retweet
10
10
  sig do
11
11
  params(
12
- tweet_id: String,
12
+ id: String,
13
13
  account: String,
14
14
  request_options: XTwitterScraper::RequestOptions::OrHash
15
15
  ).returns(XTwitterScraper::Models::X::Tweets::RetweetCreateResponse)
16
16
  end
17
17
  def create(
18
- tweet_id,
19
- # X account (@username or account ID)
18
+ # Tweet ID to retweet
19
+ id,
20
+ # X account identifier (@username or account ID)
20
21
  account:,
21
22
  request_options: {}
22
23
  )
@@ -25,14 +26,15 @@ module XTwitterScraper
25
26
  # Unretweet
26
27
  sig do
27
28
  params(
28
- tweet_id: String,
29
+ id: String,
29
30
  account: String,
30
31
  request_options: XTwitterScraper::RequestOptions::OrHash
31
32
  ).returns(XTwitterScraper::Models::X::Tweets::RetweetDeleteResponse)
32
33
  end
33
34
  def delete(
34
- tweet_id,
35
- # X account (@username or account ID)
35
+ # Tweet ID to unretweet
36
+ id,
37
+ # X account identifier (@username or account ID)
36
38
  account:,
37
39
  request_options: {}
38
40
  )
@@ -41,11 +41,15 @@ module XTwitterScraper
41
41
  # Look up tweet
42
42
  sig do
43
43
  params(
44
- tweet_id: String,
44
+ id: String,
45
45
  request_options: XTwitterScraper::RequestOptions::OrHash
46
46
  ).returns(XTwitterScraper::Models::X::TweetRetrieveResponse)
47
47
  end
48
- def retrieve(tweet_id, request_options: {})
48
+ def retrieve(
49
+ # Tweet ID
50
+ id,
51
+ request_options: {}
52
+ )
49
53
  end
50
54
 
51
55
  # Get multiple tweets by IDs
@@ -53,7 +57,7 @@ module XTwitterScraper
53
57
  params(
54
58
  ids: String,
55
59
  request_options: XTwitterScraper::RequestOptions::OrHash
56
- ).void
60
+ ).returns(XTwitterScraper::PaginatedTweets)
57
61
  end
58
62
  def list(
59
63
  # Comma-separated tweet IDs (max 100)
@@ -65,14 +69,15 @@ module XTwitterScraper
65
69
  # Delete tweet
66
70
  sig do
67
71
  params(
68
- tweet_id: String,
72
+ id: String,
69
73
  account: String,
70
74
  request_options: XTwitterScraper::RequestOptions::OrHash
71
75
  ).returns(XTwitterScraper::Models::X::TweetDeleteResponse)
72
76
  end
73
77
  def delete(
74
- tweet_id,
75
- # X account (@username or account ID)
78
+ # Tweet ID to delete
79
+ id,
80
+ # X account identifier (@username or account ID)
76
81
  account:,
77
82
  request_options: {}
78
83
  )
@@ -84,12 +89,12 @@ module XTwitterScraper
84
89
  id: String,
85
90
  cursor: String,
86
91
  request_options: XTwitterScraper::RequestOptions::OrHash
87
- ).returns(XTwitterScraper::Models::X::TweetGetFavoritersResponse)
92
+ ).returns(XTwitterScraper::PaginatedUsers)
88
93
  end
89
94
  def get_favoriters(
90
- # Tweet ID
95
+ # Tweet ID to get favoriters
91
96
  id,
92
- # Pagination cursor from previous response
97
+ # Pagination cursor for favoriters
93
98
  cursor: nil,
94
99
  request_options: {}
95
100
  )
@@ -104,18 +109,18 @@ module XTwitterScraper
104
109
  since_time: String,
105
110
  until_time: String,
106
111
  request_options: XTwitterScraper::RequestOptions::OrHash
107
- ).returns(XTwitterScraper::Models::X::TweetGetQuotesResponse)
112
+ ).returns(XTwitterScraper::PaginatedTweets)
108
113
  end
109
114
  def get_quotes(
110
- # Tweet ID
115
+ # Tweet ID to get quotes
111
116
  id,
112
- # Pagination cursor
117
+ # Pagination cursor for quote tweets
113
118
  cursor: nil,
114
- # Include replies (default false)
119
+ # Include reply quotes (default false)
115
120
  include_replies: nil,
116
- # Unix timestamp - filter after
121
+ # Unix timestamp - return quotes posted after this time
117
122
  since_time: nil,
118
- # Unix timestamp - filter before
123
+ # Unix timestamp - return quotes posted before this time
119
124
  until_time: nil,
120
125
  request_options: {}
121
126
  )
@@ -129,16 +134,16 @@ module XTwitterScraper
129
134
  since_time: String,
130
135
  until_time: String,
131
136
  request_options: XTwitterScraper::RequestOptions::OrHash
132
- ).returns(XTwitterScraper::Models::X::TweetGetRepliesResponse)
137
+ ).returns(XTwitterScraper::PaginatedTweets)
133
138
  end
134
139
  def get_replies(
135
- # Tweet ID
140
+ # Tweet ID to get replies
136
141
  id,
137
- # Pagination cursor
142
+ # Pagination cursor for tweet replies
138
143
  cursor: nil,
139
- # Unix timestamp - filter after
144
+ # Unix timestamp - return replies posted after this time
140
145
  since_time: nil,
141
- # Unix timestamp - filter before
146
+ # Unix timestamp - return replies posted before this time
142
147
  until_time: nil,
143
148
  request_options: {}
144
149
  )
@@ -150,12 +155,12 @@ module XTwitterScraper
150
155
  id: String,
151
156
  cursor: String,
152
157
  request_options: XTwitterScraper::RequestOptions::OrHash
153
- ).returns(XTwitterScraper::Models::X::TweetGetRetweetersResponse)
158
+ ).returns(XTwitterScraper::PaginatedUsers)
154
159
  end
155
160
  def get_retweeters(
156
- # Tweet ID
161
+ # Tweet ID to get retweeters
157
162
  id,
158
- # Pagination cursor
163
+ # Pagination cursor for retweeters
159
164
  cursor: nil,
160
165
  request_options: {}
161
166
  )
@@ -167,12 +172,12 @@ module XTwitterScraper
167
172
  id: String,
168
173
  cursor: String,
169
174
  request_options: XTwitterScraper::RequestOptions::OrHash
170
- ).returns(XTwitterScraper::Models::X::TweetGetThreadResponse)
175
+ ).returns(XTwitterScraper::PaginatedTweets)
171
176
  end
172
177
  def get_thread(
173
- # Tweet ID
178
+ # Tweet ID to get thread context
174
179
  id,
175
- # Pagination cursor
180
+ # Pagination cursor for thread tweets
176
181
  cursor: nil,
177
182
  request_options: {}
178
183
  )
@@ -189,14 +194,14 @@ module XTwitterScraper
189
194
  since_time: String,
190
195
  until_time: String,
191
196
  request_options: XTwitterScraper::RequestOptions::OrHash
192
- ).returns(XTwitterScraper::Models::X::TweetSearchResponse)
197
+ ).returns(XTwitterScraper::PaginatedTweets)
193
198
  end
194
199
  def search(
195
200
  # Search query (keywords,
196
201
  q:,
197
202
  # Pagination cursor from previous response
198
203
  cursor: nil,
199
- # Deprecated use cursor-based pagination instead
204
+ # Max tweets to return (server paginates internally). Omit for single page (~20).
200
205
  limit: nil,
201
206
  # Sort order — Latest (chronological) or Top (engagement-ranked)
202
207
  query_type: nil,
@@ -9,15 +9,15 @@ module XTwitterScraper
9
9
  # Follow user
10
10
  sig do
11
11
  params(
12
- user_id: String,
12
+ id: String,
13
13
  account: String,
14
14
  request_options: XTwitterScraper::RequestOptions::OrHash
15
15
  ).returns(XTwitterScraper::Models::X::Users::FollowCreateResponse)
16
16
  end
17
17
  def create(
18
18
  # User ID to follow
19
- user_id,
20
- # X account (@username or account ID)
19
+ id,
20
+ # X account identifier (@username or account ID)
21
21
  account:,
22
22
  request_options: {}
23
23
  )
@@ -26,7 +26,7 @@ module XTwitterScraper
26
26
  # Unfollow user
27
27
  sig do
28
28
  params(
29
- user_id: String,
29
+ id: String,
30
30
  account: String,
31
31
  request_options: XTwitterScraper::RequestOptions::OrHash
32
32
  ).returns(
@@ -35,8 +35,8 @@ module XTwitterScraper
35
35
  end
36
36
  def delete_all(
37
37
  # User ID to unfollow
38
- user_id,
39
- # X account (@username or account ID)
38
+ id,
39
+ # X account identifier (@username or account ID)
40
40
  account:,
41
41
  request_options: {}
42
42
  )