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
@@ -8,7 +8,7 @@ module XTwitterScraper
8
8
  include XTwitterScraper::Internal::Type::RequestParameters
9
9
 
10
10
  # @!attribute cursor
11
- # Pagination cursor from previous response
11
+ # Pagination cursor for notifications
12
12
  #
13
13
  # @return [String, nil]
14
14
  optional :cursor, String
@@ -20,7 +20,7 @@ module XTwitterScraper
20
20
  optional :type, enum: -> { XTwitterScraper::XGetNotificationsParams::Type }
21
21
 
22
22
  # @!method initialize(cursor: nil, type: nil, request_options: {})
23
- # @param cursor [String] Pagination cursor from previous response
23
+ # @param cursor [String] Pagination cursor for notifications
24
24
  #
25
25
  # @param type [Symbol, XTwitterScraper::Models::XGetNotificationsParams::Type] Notification type filter
26
26
  #
@@ -0,0 +1,57 @@
1
+ # frozen_string_literal: true
2
+
3
+ module XTwitterScraper
4
+ module Models
5
+ # @see XTwitterScraper::Resources::X#get_trends
6
+ class XGetTrendsResponse < XTwitterScraper::Internal::Type::BaseModel
7
+ # @!attribute count
8
+ #
9
+ # @return [Integer]
10
+ required :count, Integer
11
+
12
+ # @!attribute trends
13
+ #
14
+ # @return [Array<XTwitterScraper::Models::XGetTrendsResponse::Trend>]
15
+ required :trends,
16
+ -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::Models::XGetTrendsResponse::Trend] }
17
+
18
+ # @!attribute woeid
19
+ #
20
+ # @return [Integer]
21
+ required :woeid, Integer
22
+
23
+ # @!method initialize(count:, trends:, woeid:)
24
+ # @param count [Integer]
25
+ # @param trends [Array<XTwitterScraper::Models::XGetTrendsResponse::Trend>]
26
+ # @param woeid [Integer]
27
+
28
+ class Trend < XTwitterScraper::Internal::Type::BaseModel
29
+ # @!attribute name
30
+ #
31
+ # @return [String]
32
+ required :name, String
33
+
34
+ # @!attribute description
35
+ #
36
+ # @return [String, nil]
37
+ optional :description, String
38
+
39
+ # @!attribute query
40
+ #
41
+ # @return [String, nil]
42
+ optional :query, String
43
+
44
+ # @!attribute rank
45
+ #
46
+ # @return [Integer, nil]
47
+ optional :rank, Integer
48
+
49
+ # @!method initialize(name:, description: nil, query: nil, rank: nil)
50
+ # @param name [String]
51
+ # @param description [String]
52
+ # @param query [String]
53
+ # @param rank [Integer]
54
+ end
55
+ end
56
+ end
57
+ end
@@ -13,7 +13,7 @@ module XTwitterScraper
13
13
  # @param topic [String]
14
14
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
15
15
  #
16
- # @return [XTwitterScraper::Models::DraftCreateResponse]
16
+ # @return [XTwitterScraper::Models::DraftDetail]
17
17
  #
18
18
  # @see XTwitterScraper::Models::DraftCreateParams
19
19
  def create(params)
@@ -22,7 +22,7 @@ module XTwitterScraper
22
22
  method: :post,
23
23
  path: "drafts",
24
24
  body: parsed,
25
- model: XTwitterScraper::Models::DraftCreateResponse,
25
+ model: XTwitterScraper::DraftDetail,
26
26
  options: options
27
27
  )
28
28
  end
@@ -35,14 +35,14 @@ module XTwitterScraper
35
35
  #
36
36
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
37
37
  #
38
- # @return [XTwitterScraper::Models::DraftRetrieveResponse]
38
+ # @return [XTwitterScraper::Models::DraftDetail]
39
39
  #
40
40
  # @see XTwitterScraper::Models::DraftRetrieveParams
41
41
  def retrieve(id, params = {})
42
42
  @client.request(
43
43
  method: :get,
44
44
  path: ["drafts/%1$s", id],
45
- model: XTwitterScraper::Models::DraftRetrieveResponse,
45
+ model: XTwitterScraper::DraftDetail,
46
46
  options: params[:request_options]
47
47
  )
48
48
  end
@@ -53,7 +53,7 @@ module XTwitterScraper
53
53
  #
54
54
  # @param after_cursor [String] Cursor for pagination
55
55
  #
56
- # @param limit [Integer]
56
+ # @param limit [Integer] Maximum number of items to return (1-100, default 50)
57
57
  #
58
58
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
59
59
  #
@@ -28,9 +28,9 @@ module XTwitterScraper
28
28
  #
29
29
  # @overload list(after: nil, limit: nil, request_options: {})
30
30
  #
31
- # @param after [String] Cursor for pagination
31
+ # @param after [String] Cursor for keyset pagination
32
32
  #
33
- # @param limit [Integer]
33
+ # @param limit [Integer] Maximum number of items to return (1-100, default 50)
34
34
  #
35
35
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
36
36
  #
@@ -55,7 +55,7 @@ module XTwitterScraper
55
55
  #
56
56
  # @param id [String] Resource ID (stringified bigint)
57
57
  #
58
- # @param format_ [Symbol, XTwitterScraper::Models::DrawExportParams::Format]
58
+ # @param format_ [Symbol, XTwitterScraper::Models::DrawExportParams::Format] Export output format
59
59
  #
60
60
  # @param type [Symbol, XTwitterScraper::Models::DrawExportParams::Type] Export winners or all entries
61
61
  #
@@ -12,14 +12,14 @@ module XTwitterScraper
12
12
  #
13
13
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
14
14
  #
15
- # @return [XTwitterScraper::Models::EventRetrieveResponse]
15
+ # @return [XTwitterScraper::Models::EventDetail]
16
16
  #
17
17
  # @see XTwitterScraper::Models::EventRetrieveParams
18
18
  def retrieve(id, params = {})
19
19
  @client.request(
20
20
  method: :get,
21
21
  path: ["events/%1$s", id],
22
- model: XTwitterScraper::Models::EventRetrieveResponse,
22
+ model: XTwitterScraper::EventDetail,
23
23
  options: params[:request_options]
24
24
  )
25
25
  end
@@ -28,13 +28,13 @@ module XTwitterScraper
28
28
  #
29
29
  # @overload list(after: nil, event_type: nil, limit: nil, monitor_id: nil, request_options: {})
30
30
  #
31
- # @param after [String] Cursor for pagination
31
+ # @param after [String] Cursor for keyset pagination
32
32
  #
33
- # @param event_type [Symbol, XTwitterScraper::Models::EventListParams::EventType]
33
+ # @param event_type [Symbol, XTwitterScraper::Models::EventType] Filter events by type
34
34
  #
35
- # @param limit [Integer]
35
+ # @param limit [Integer] Maximum number of items to return (1-100, default 50)
36
36
  #
37
- # @param monitor_id [String]
37
+ # @param monitor_id [String] Filter events by monitor ID
38
38
  #
39
39
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
40
40
  #
@@ -10,9 +10,9 @@ module XTwitterScraper
10
10
  #
11
11
  # @param id [String] Extraction public ID (UUID)
12
12
  #
13
- # @param after [String] Cursor for pagination
13
+ # @param after [String] Cursor for keyset pagination
14
14
  #
15
- # @param limit [Integer]
15
+ # @param limit [Integer] Maximum number of results to return (1-1000, default 100)
16
16
  #
17
17
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
18
18
  #
@@ -35,13 +35,13 @@ module XTwitterScraper
35
35
  #
36
36
  # @overload list(after: nil, limit: nil, status: nil, tool_type: nil, request_options: {})
37
37
  #
38
- # @param after [String] Cursor for pagination
38
+ # @param after [String] Cursor for keyset pagination
39
39
  #
40
- # @param limit [Integer]
40
+ # @param limit [Integer] Maximum number of items to return (1-100, default 50)
41
41
  #
42
- # @param status [Symbol, XTwitterScraper::Models::ExtractionListParams::Status]
42
+ # @param status [Symbol, XTwitterScraper::Models::ExtractionListParams::Status] Filter by job status
43
43
  #
44
- # @param tool_type [Symbol, XTwitterScraper::Models::ExtractionListParams::ToolType]
44
+ # @param tool_type [Symbol, XTwitterScraper::Models::ExtractionListParams::ToolType] Filter by extraction tool type
45
45
  #
46
46
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
47
47
  #
@@ -64,13 +64,13 @@ module XTwitterScraper
64
64
  #
65
65
  # @overload estimate_cost(tool_type:, advanced_query: nil, exact_phrase: nil, exclude_words: nil, search_query: nil, target_community_id: nil, target_list_id: nil, target_space_id: nil, target_tweet_id: nil, target_username: nil, request_options: {})
66
66
  #
67
- # @param tool_type [Symbol, XTwitterScraper::Models::ExtractionEstimateCostParams::ToolType]
67
+ # @param tool_type [Symbol, XTwitterScraper::Models::ExtractionEstimateCostParams::ToolType] Identifier for the extraction tool used to run a job.
68
68
  #
69
- # @param advanced_query [String] Raw advanced search query appended as-is (tweet_search_extractor)
69
+ # @param advanced_query [String] Raw advanced query string appended to the estimate (tweet_search_extractor)
70
70
  #
71
- # @param exact_phrase [String] Exact phrase to match (tweet_search_extractor)
71
+ # @param exact_phrase [String] Exact phrase filter for search estimation
72
72
  #
73
- # @param exclude_words [String] Words to exclude from results (tweet_search_extractor)
73
+ # @param exclude_words [String] Words excluded from estimated search results
74
74
  #
75
75
  # @param search_query [String]
76
76
  #
@@ -106,7 +106,7 @@ module XTwitterScraper
106
106
  #
107
107
  # @param id [String] Extraction public ID
108
108
  #
109
- # @param format_ [Symbol, XTwitterScraper::Models::ExtractionExportResultsParams::Format]
109
+ # @param format_ [Symbol, XTwitterScraper::Models::ExtractionExportResultsParams::Format] Export file format
110
110
  #
111
111
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
112
112
  #
@@ -130,7 +130,7 @@ module XTwitterScraper
130
130
  #
131
131
  # @overload run(tool_type:, advanced_query: nil, exact_phrase: nil, exclude_words: nil, search_query: nil, target_community_id: nil, target_list_id: nil, target_space_id: nil, target_tweet_id: nil, target_username: nil, request_options: {})
132
132
  #
133
- # @param tool_type [Symbol, XTwitterScraper::Models::ExtractionRunParams::ToolType]
133
+ # @param tool_type [Symbol, XTwitterScraper::Models::ExtractionRunParams::ToolType] Identifier for the extraction tool used to run a job.
134
134
  #
135
135
  # @param advanced_query [String] Raw advanced search query appended as-is (tweet_search_extractor)
136
136
  #
@@ -6,19 +6,19 @@ module XTwitterScraper
6
6
  class Integrations
7
7
  # Create integration
8
8
  #
9
- # @overload create(config:, event_types:, name:, type:, request_options: {})
9
+ # @overload create(config:, event_types:, name:, type: :telegram, request_options: {})
10
10
  #
11
11
  # @param config [XTwitterScraper::Models::IntegrationCreateParams::Config] Integration config (e.g. Telegram chatId)
12
12
  #
13
- # @param event_types [Array<Symbol, XTwitterScraper::Models::IntegrationCreateParams::EventType>]
13
+ # @param event_types [Array<Symbol, XTwitterScraper::Models::EventType>] Array of event types to subscribe to.
14
14
  #
15
15
  # @param name [String]
16
16
  #
17
- # @param type [Symbol, XTwitterScraper::Models::IntegrationCreateParams::Type]
17
+ # @param type [Symbol, :telegram]
18
18
  #
19
19
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
20
20
  #
21
- # @return [XTwitterScraper::Models::IntegrationCreateResponse]
21
+ # @return [XTwitterScraper::Models::Integration]
22
22
  #
23
23
  # @see XTwitterScraper::Models::IntegrationCreateParams
24
24
  def create(params)
@@ -27,7 +27,7 @@ module XTwitterScraper
27
27
  method: :post,
28
28
  path: "integrations",
29
29
  body: parsed,
30
- model: XTwitterScraper::Models::IntegrationCreateResponse,
30
+ model: XTwitterScraper::Integration,
31
31
  options: options
32
32
  )
33
33
  end
@@ -40,14 +40,14 @@ module XTwitterScraper
40
40
  #
41
41
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
42
42
  #
43
- # @return [XTwitterScraper::Models::IntegrationRetrieveResponse]
43
+ # @return [XTwitterScraper::Models::Integration]
44
44
  #
45
45
  # @see XTwitterScraper::Models::IntegrationRetrieveParams
46
46
  def retrieve(id, params = {})
47
47
  @client.request(
48
48
  method: :get,
49
49
  path: ["integrations/%1$s", id],
50
- model: XTwitterScraper::Models::IntegrationRetrieveResponse,
50
+ model: XTwitterScraper::Integration,
51
51
  options: params[:request_options]
52
52
  )
53
53
  end
@@ -58,7 +58,7 @@ module XTwitterScraper
58
58
  #
59
59
  # @param id [String] Resource ID (stringified bigint)
60
60
  #
61
- # @param event_types [Array<Symbol, XTwitterScraper::Models::IntegrationUpdateParams::EventType>]
61
+ # @param event_types [Array<Symbol, XTwitterScraper::Models::EventType>] Array of event types to subscribe to.
62
62
  #
63
63
  # @param filters [Hash{Symbol=>Object}] Event filter rules (JSON)
64
64
  #
@@ -74,7 +74,7 @@ module XTwitterScraper
74
74
  #
75
75
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
76
76
  #
77
- # @return [XTwitterScraper::Models::IntegrationUpdateResponse]
77
+ # @return [XTwitterScraper::Models::Integration]
78
78
  #
79
79
  # @see XTwitterScraper::Models::IntegrationUpdateParams
80
80
  def update(id, params = {})
@@ -83,7 +83,7 @@ module XTwitterScraper
83
83
  method: :patch,
84
84
  path: ["integrations/%1$s", id],
85
85
  body: parsed,
86
- model: XTwitterScraper::Models::IntegrationUpdateResponse,
86
+ model: XTwitterScraper::Integration,
87
87
  options: options
88
88
  )
89
89
  end
@@ -132,7 +132,7 @@ module XTwitterScraper
132
132
  #
133
133
  # @param id [String] Resource ID (stringified bigint)
134
134
  #
135
- # @param limit [Integer]
135
+ # @param limit [Integer] Maximum number of items to return (1-100, default 50)
136
136
  #
137
137
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
138
138
  #
@@ -8,7 +8,7 @@ module XTwitterScraper
8
8
  #
9
9
  # @overload create(event_types:, username:, request_options: {})
10
10
  #
11
- # @param event_types [Array<Symbol, XTwitterScraper::Models::MonitorCreateParams::EventType>]
11
+ # @param event_types [Array<Symbol, XTwitterScraper::Models::EventType>] Array of event types to subscribe to.
12
12
  #
13
13
  # @param username [String] X username (without @)
14
14
  #
@@ -36,14 +36,14 @@ module XTwitterScraper
36
36
  #
37
37
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
38
38
  #
39
- # @return [XTwitterScraper::Models::MonitorRetrieveResponse]
39
+ # @return [XTwitterScraper::Models::Monitor]
40
40
  #
41
41
  # @see XTwitterScraper::Models::MonitorRetrieveParams
42
42
  def retrieve(id, params = {})
43
43
  @client.request(
44
44
  method: :get,
45
45
  path: ["monitors/%1$s", id],
46
- model: XTwitterScraper::Models::MonitorRetrieveResponse,
46
+ model: XTwitterScraper::Monitor,
47
47
  options: params[:request_options]
48
48
  )
49
49
  end
@@ -54,13 +54,13 @@ module XTwitterScraper
54
54
  #
55
55
  # @param id [String] Resource ID (stringified bigint)
56
56
  #
57
- # @param event_types [Array<Symbol, XTwitterScraper::Models::MonitorUpdateParams::EventType>]
57
+ # @param event_types [Array<Symbol, XTwitterScraper::Models::EventType>] Array of event types to subscribe to.
58
58
  #
59
59
  # @param is_active [Boolean]
60
60
  #
61
61
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
62
62
  #
63
- # @return [XTwitterScraper::Models::MonitorUpdateResponse]
63
+ # @return [XTwitterScraper::Models::Monitor]
64
64
  #
65
65
  # @see XTwitterScraper::Models::MonitorUpdateParams
66
66
  def update(id, params = {})
@@ -69,7 +69,7 @@ module XTwitterScraper
69
69
  method: :patch,
70
70
  path: ["monitors/%1$s", id],
71
71
  body: parsed,
72
- model: XTwitterScraper::Models::MonitorUpdateResponse,
72
+ model: XTwitterScraper::Monitor,
73
73
  options: options
74
74
  )
75
75
  end
@@ -19,7 +19,7 @@ module XTwitterScraper
19
19
  #
20
20
  # @param region [String] Region filter (us, global, etc.)
21
21
  #
22
- # @param source [String] Source filter. One of: github, google_trends, hacker_news, polymarket, reddit, t
22
+ # @param source [Symbol, XTwitterScraper::Models::RadarRetrieveTrendingTopicsParams::Source] Source filter. One of: github, google_trends, hacker_news, polymarket, reddit, t
23
23
  #
24
24
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
25
25
  #
@@ -6,29 +6,29 @@ module XTwitterScraper
6
6
  class Styles
7
7
  # Get cached style profile
8
8
  #
9
- # @overload retrieve(username, request_options: {})
9
+ # @overload retrieve(id, request_options: {})
10
10
  #
11
- # @param username [String] X username of cached style
11
+ # @param id [String] Style profile ID or X username
12
12
  #
13
13
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
14
14
  #
15
- # @return [XTwitterScraper::Models::StyleRetrieveResponse]
15
+ # @return [XTwitterScraper::Models::StyleProfile]
16
16
  #
17
17
  # @see XTwitterScraper::Models::StyleRetrieveParams
18
- def retrieve(username, params = {})
18
+ def retrieve(id, params = {})
19
19
  @client.request(
20
20
  method: :get,
21
- path: ["styles/%1$s", username],
22
- model: XTwitterScraper::Models::StyleRetrieveResponse,
21
+ path: ["styles/%1$s", id],
22
+ model: XTwitterScraper::StyleProfile,
23
23
  options: params[:request_options]
24
24
  )
25
25
  end
26
26
 
27
27
  # Save style profile with custom tweets
28
28
  #
29
- # @overload update(username, label:, tweets:, request_options: {})
29
+ # @overload update(id, label:, tweets:, request_options: {})
30
30
  #
31
- # @param username [String] X username of cached style
31
+ # @param id [String] Style profile ID or X username
32
32
  #
33
33
  # @param label [String] Display label for the style
34
34
  #
@@ -36,16 +36,16 @@ module XTwitterScraper
36
36
  #
37
37
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
38
38
  #
39
- # @return [XTwitterScraper::Models::StyleUpdateResponse]
39
+ # @return [XTwitterScraper::Models::StyleProfile]
40
40
  #
41
41
  # @see XTwitterScraper::Models::StyleUpdateParams
42
- def update(username, params)
42
+ def update(id, params)
43
43
  parsed, options = XTwitterScraper::StyleUpdateParams.dump_request(params)
44
44
  @client.request(
45
45
  method: :put,
46
- path: ["styles/%1$s", username],
46
+ path: ["styles/%1$s", id],
47
47
  body: parsed,
48
- model: XTwitterScraper::Models::StyleUpdateResponse,
48
+ model: XTwitterScraper::StyleProfile,
49
49
  options: options
50
50
  )
51
51
  end
@@ -70,19 +70,19 @@ module XTwitterScraper
70
70
 
71
71
  # Delete a style profile
72
72
  #
73
- # @overload delete(username, request_options: {})
73
+ # @overload delete(id, request_options: {})
74
74
  #
75
- # @param username [String] X username of cached style
75
+ # @param id [String] Style profile ID or X username
76
76
  #
77
77
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
78
78
  #
79
79
  # @return [nil]
80
80
  #
81
81
  # @see XTwitterScraper::Models::StyleDeleteParams
82
- def delete(username, params = {})
82
+ def delete(id, params = {})
83
83
  @client.request(
84
84
  method: :delete,
85
- path: ["styles/%1$s", username],
85
+ path: ["styles/%1$s", id],
86
86
  model: NilClass,
87
87
  options: params[:request_options]
88
88
  )
@@ -96,7 +96,7 @@ module XTwitterScraper
96
96
  #
97
97
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
98
98
  #
99
- # @return [XTwitterScraper::Models::StyleAnalyzeResponse]
99
+ # @return [XTwitterScraper::Models::StyleProfile]
100
100
  #
101
101
  # @see XTwitterScraper::Models::StyleAnalyzeParams
102
102
  def analyze(params)
@@ -105,7 +105,7 @@ module XTwitterScraper
105
105
  method: :post,
106
106
  path: "styles",
107
107
  body: parsed,
108
- model: XTwitterScraper::Models::StyleAnalyzeResponse,
108
+ model: XTwitterScraper::StyleProfile,
109
109
  options: options
110
110
  )
111
111
  end
@@ -137,19 +137,19 @@ module XTwitterScraper
137
137
 
138
138
  # Get engagement metrics for style tweets
139
139
  #
140
- # @overload get_performance(username, request_options: {})
140
+ # @overload get_performance(id, request_options: {})
141
141
  #
142
- # @param username [String] X username of cached style
142
+ # @param id [String] Style profile ID or X username
143
143
  #
144
144
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
145
145
  #
146
146
  # @return [XTwitterScraper::Models::StyleGetPerformanceResponse]
147
147
  #
148
148
  # @see XTwitterScraper::Models::StyleGetPerformanceParams
149
- def get_performance(username, params = {})
149
+ def get_performance(id, params = {})
150
150
  @client.request(
151
151
  method: :get,
152
- path: ["styles/%1$s/performance", username],
152
+ path: ["styles/%1$s/performance", id],
153
153
  model: XTwitterScraper::Models::StyleGetPerformanceResponse,
154
154
  options: params[:request_options]
155
155
  )
@@ -31,7 +31,8 @@ module XTwitterScraper
31
31
  #
32
32
  # @overload retrieve(id, request_options: {})
33
33
  #
34
- # @param id [String]
34
+ # @param id [String] Support ticket ID
35
+ #
35
36
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
36
37
  #
37
38
  # @return [XTwitterScraper::Models::Support::TicketRetrieveResponse]
@@ -50,8 +51,10 @@ module XTwitterScraper
50
51
  #
51
52
  # @overload update(id, status:, request_options: {})
52
53
  #
53
- # @param id [String]
54
+ # @param id [String] Support ticket ID to update
55
+ #
54
56
  # @param status [Symbol, XTwitterScraper::Models::Support::TicketUpdateParams::Status]
57
+ #
55
58
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
56
59
  #
57
60
  # @return [XTwitterScraper::Models::Support::TicketUpdateResponse]
@@ -90,8 +93,10 @@ module XTwitterScraper
90
93
  #
91
94
  # @overload reply(id, body:, request_options: {})
92
95
  #
93
- # @param id [String]
96
+ # @param id [String] Support ticket ID for the reply
97
+ #
94
98
  # @param body [String]
99
+ #
95
100
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
96
101
  #
97
102
  # @return [XTwitterScraper::Models::Support::TicketReplyResponse]
@@ -4,11 +4,11 @@ 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
  #
9
9
  # @overload list(count: nil, woeid: nil, request_options: {})
10
10
  #
11
- # @param count [Integer]
11
+ # @param count [Integer] Number of trending topics to return (1-50, default 30)
12
12
  #
13
13
  # @param woeid [Integer] Region WOEID (1=Worldwide, 23424977=US, 23424975=UK, 23424969=Turkey)
14
14
  #
@@ -8,7 +8,7 @@ module XTwitterScraper
8
8
  #
9
9
  # @overload create(event_types:, url:, request_options: {})
10
10
  #
11
- # @param event_types [Array<Symbol, XTwitterScraper::Models::WebhookCreateParams::EventType>]
11
+ # @param event_types [Array<Symbol, XTwitterScraper::Models::EventType>] Array of event types to subscribe to.
12
12
  #
13
13
  # @param url [String] HTTPS URL
14
14
  #
@@ -34,7 +34,7 @@ module XTwitterScraper
34
34
  #
35
35
  # @param id [String] Resource ID (stringified bigint)
36
36
  #
37
- # @param event_types [Array<Symbol, XTwitterScraper::Models::WebhookUpdateParams::EventType>]
37
+ # @param event_types [Array<Symbol, XTwitterScraper::Models::EventType>] Array of event types to subscribe to.
38
38
  #
39
39
  # @param is_active [Boolean]
40
40
  #
@@ -42,7 +42,7 @@ module XTwitterScraper
42
42
  #
43
43
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
44
44
  #
45
- # @return [XTwitterScraper::Models::WebhookUpdateResponse]
45
+ # @return [XTwitterScraper::Models::Webhook]
46
46
  #
47
47
  # @see XTwitterScraper::Models::WebhookUpdateParams
48
48
  def update(id, params = {})
@@ -51,7 +51,7 @@ module XTwitterScraper
51
51
  method: :patch,
52
52
  path: ["webhooks/%1$s", id],
53
53
  body: parsed,
54
- model: XTwitterScraper::Models::WebhookUpdateResponse,
54
+ model: XTwitterScraper::Webhook,
55
55
  options: options
56
56
  )
57
57
  end
@@ -44,14 +44,14 @@ module XTwitterScraper
44
44
  #
45
45
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
46
46
  #
47
- # @return [XTwitterScraper::Models::X::AccountRetrieveResponse]
47
+ # @return [XTwitterScraper::Models::X::XAccountDetail]
48
48
  #
49
49
  # @see XTwitterScraper::Models::X::AccountRetrieveParams
50
50
  def retrieve(id, params = {})
51
51
  @client.request(
52
52
  method: :get,
53
53
  path: ["x/accounts/%1$s", id],
54
- model: XTwitterScraper::Models::X::AccountRetrieveResponse,
54
+ model: XTwitterScraper::X::XAccountDetail,
55
55
  security: {auth_api_key: true},
56
56
  options: params[:request_options]
57
57
  )
@@ -97,15 +97,35 @@ module XTwitterScraper
97
97
  )
98
98
  end
99
99
 
100
+ # Clears loginFailedAt and loginFailureReason for all accounts with transient or
101
+ # automated failure reasons, making them eligible for retry on next use.
102
+ #
103
+ # @overload bulk_retry(request_options: {})
104
+ #
105
+ # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
106
+ #
107
+ # @return [XTwitterScraper::Models::X::AccountBulkRetryResponse]
108
+ #
109
+ # @see XTwitterScraper::Models::X::AccountBulkRetryParams
110
+ def bulk_retry(params = {})
111
+ @client.request(
112
+ method: :post,
113
+ path: "x/accounts/bulk-retry",
114
+ model: XTwitterScraper::Models::X::AccountBulkRetryResponse,
115
+ security: {auth_api_key: true},
116
+ options: params[:request_options]
117
+ )
118
+ end
119
+
100
120
  # Re-authenticate X account
101
121
  #
102
122
  # @overload reauth(id, password:, totp_secret: nil, request_options: {})
103
123
  #
104
124
  # @param id [String] Resource ID (stringified bigint)
105
125
  #
106
- # @param password [String] Account password
126
+ # @param password [String] Updated account password
107
127
  #
108
- # @param totp_secret [String] TOTP secret for 2FA
128
+ # @param totp_secret [String] TOTP secret for 2FA re-authentication
109
129
  #
110
130
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
111
131
  #