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
@@ -11,9 +11,7 @@ module XTwitterScraper
11
11
  )
12
12
  end
13
13
 
14
- sig do
15
- returns(T::Array[XTwitterScraper::Models::EventListResponse::Event])
16
- end
14
+ sig { returns(T::Array[XTwitterScraper::Event]) }
17
15
  attr_accessor :events
18
16
 
19
17
  sig { returns(T::Boolean) }
@@ -27,8 +25,7 @@ module XTwitterScraper
27
25
 
28
26
  sig do
29
27
  params(
30
- events:
31
- T::Array[XTwitterScraper::Models::EventListResponse::Event::OrHash],
28
+ events: T::Array[XTwitterScraper::Event::OrHash],
32
29
  has_more: T::Boolean,
33
30
  next_cursor: String
34
31
  ).returns(T.attached_class)
@@ -39,7 +36,7 @@ module XTwitterScraper
39
36
  sig do
40
37
  override.returns(
41
38
  {
42
- events: T::Array[XTwitterScraper::Models::EventListResponse::Event],
39
+ events: T::Array[XTwitterScraper::Event],
43
40
  has_more: T::Boolean,
44
41
  next_cursor: String
45
42
  }
@@ -47,122 +44,6 @@ module XTwitterScraper
47
44
  end
48
45
  def to_hash
49
46
  end
50
-
51
- class Event < XTwitterScraper::Internal::Type::BaseModel
52
- OrHash =
53
- T.type_alias do
54
- T.any(
55
- XTwitterScraper::Models::EventListResponse::Event,
56
- XTwitterScraper::Internal::AnyHash
57
- )
58
- end
59
-
60
- sig { returns(String) }
61
- attr_accessor :id
62
-
63
- sig { returns(T::Hash[Symbol, T.anything]) }
64
- attr_accessor :data
65
-
66
- sig { returns(String) }
67
- attr_accessor :monitor_id
68
-
69
- sig { returns(Time) }
70
- attr_accessor :occurred_at
71
-
72
- sig do
73
- returns(
74
- XTwitterScraper::Models::EventListResponse::Event::Type::TaggedSymbol
75
- )
76
- end
77
- attr_accessor :type
78
-
79
- sig { returns(String) }
80
- attr_accessor :username
81
-
82
- sig do
83
- params(
84
- id: String,
85
- data: T::Hash[Symbol, T.anything],
86
- monitor_id: String,
87
- occurred_at: Time,
88
- type:
89
- XTwitterScraper::Models::EventListResponse::Event::Type::OrSymbol,
90
- username: String
91
- ).returns(T.attached_class)
92
- end
93
- def self.new(id:, data:, monitor_id:, occurred_at:, type:, username:)
94
- end
95
-
96
- sig do
97
- override.returns(
98
- {
99
- id: String,
100
- data: T::Hash[Symbol, T.anything],
101
- monitor_id: String,
102
- occurred_at: Time,
103
- type:
104
- XTwitterScraper::Models::EventListResponse::Event::Type::TaggedSymbol,
105
- username: String
106
- }
107
- )
108
- end
109
- def to_hash
110
- end
111
-
112
- module Type
113
- extend XTwitterScraper::Internal::Type::Enum
114
-
115
- TaggedSymbol =
116
- T.type_alias do
117
- T.all(
118
- Symbol,
119
- XTwitterScraper::Models::EventListResponse::Event::Type
120
- )
121
- end
122
- OrSymbol = T.type_alias { T.any(Symbol, String) }
123
-
124
- TWEET_NEW =
125
- T.let(
126
- :"tweet.new",
127
- XTwitterScraper::Models::EventListResponse::Event::Type::TaggedSymbol
128
- )
129
- TWEET_REPLY =
130
- T.let(
131
- :"tweet.reply",
132
- XTwitterScraper::Models::EventListResponse::Event::Type::TaggedSymbol
133
- )
134
- TWEET_RETWEET =
135
- T.let(
136
- :"tweet.retweet",
137
- XTwitterScraper::Models::EventListResponse::Event::Type::TaggedSymbol
138
- )
139
- TWEET_QUOTE =
140
- T.let(
141
- :"tweet.quote",
142
- XTwitterScraper::Models::EventListResponse::Event::Type::TaggedSymbol
143
- )
144
- FOLLOWER_GAINED =
145
- T.let(
146
- :"follower.gained",
147
- XTwitterScraper::Models::EventListResponse::Event::Type::TaggedSymbol
148
- )
149
- FOLLOWER_LOST =
150
- T.let(
151
- :"follower.lost",
152
- XTwitterScraper::Models::EventListResponse::Event::Type::TaggedSymbol
153
- )
154
-
155
- sig do
156
- override.returns(
157
- T::Array[
158
- XTwitterScraper::Models::EventListResponse::Event::Type::TaggedSymbol
159
- ]
160
- )
161
- end
162
- def self.values
163
- end
164
- end
165
- end
166
47
  end
167
48
  end
168
49
  end
@@ -2,6 +2,7 @@
2
2
 
3
3
  module XTwitterScraper
4
4
  module Models
5
+ # Type of monitor event fired when account activity occurs.
5
6
  module EventType
6
7
  extend XTwitterScraper::Internal::Type::Enum
7
8
 
@@ -14,6 +14,7 @@ module XTwitterScraper
14
14
  )
15
15
  end
16
16
 
17
+ # Identifier for the extraction tool used to run a job.
17
18
  sig do
18
19
  returns(
19
20
  XTwitterScraper::ExtractionEstimateCostParams::ToolType::OrSymbol
@@ -21,21 +22,21 @@ module XTwitterScraper
21
22
  end
22
23
  attr_accessor :tool_type
23
24
 
24
- # Raw advanced search query appended as-is (tweet_search_extractor)
25
+ # Raw advanced query string appended to the estimate (tweet_search_extractor)
25
26
  sig { returns(T.nilable(String)) }
26
27
  attr_reader :advanced_query
27
28
 
28
29
  sig { params(advanced_query: String).void }
29
30
  attr_writer :advanced_query
30
31
 
31
- # Exact phrase to match (tweet_search_extractor)
32
+ # Exact phrase filter for search estimation
32
33
  sig { returns(T.nilable(String)) }
33
34
  attr_reader :exact_phrase
34
35
 
35
36
  sig { params(exact_phrase: String).void }
36
37
  attr_writer :exact_phrase
37
38
 
38
- # Words to exclude from results (tweet_search_extractor)
39
+ # Words excluded from estimated search results
39
40
  sig { returns(T.nilable(String)) }
40
41
  attr_reader :exclude_words
41
42
 
@@ -95,12 +96,13 @@ module XTwitterScraper
95
96
  ).returns(T.attached_class)
96
97
  end
97
98
  def self.new(
99
+ # Identifier for the extraction tool used to run a job.
98
100
  tool_type:,
99
- # Raw advanced search query appended as-is (tweet_search_extractor)
101
+ # Raw advanced query string appended to the estimate (tweet_search_extractor)
100
102
  advanced_query: nil,
101
- # Exact phrase to match (tweet_search_extractor)
103
+ # Exact phrase filter for search estimation
102
104
  exact_phrase: nil,
103
- # Words to exclude from results (tweet_search_extractor)
105
+ # Words excluded from estimated search results
104
106
  exclude_words: nil,
105
107
  search_query: nil,
106
108
  target_community_id: nil,
@@ -133,6 +135,7 @@ module XTwitterScraper
133
135
  def to_hash
134
136
  end
135
137
 
138
+ # Identifier for the extraction tool used to run a job.
136
139
  module ToolType
137
140
  extend XTwitterScraper::Internal::Type::Enum
138
141
 
@@ -17,6 +17,7 @@ module XTwitterScraper
17
17
  sig { returns(String) }
18
18
  attr_accessor :id
19
19
 
20
+ # Export file format
20
21
  sig do
21
22
  returns(
22
23
  T.nilable(
@@ -42,7 +43,12 @@ module XTwitterScraper
42
43
  request_options: XTwitterScraper::RequestOptions::OrHash
43
44
  ).returns(T.attached_class)
44
45
  end
45
- def self.new(id:, format_: nil, request_options: {})
46
+ def self.new(
47
+ id:,
48
+ # Export file format
49
+ format_: nil,
50
+ request_options: {}
51
+ )
46
52
  end
47
53
 
48
54
  sig do
@@ -58,6 +64,7 @@ module XTwitterScraper
58
64
  def to_hash
59
65
  end
60
66
 
67
+ # Export file format
61
68
  module Format
62
69
  extend XTwitterScraper::Internal::Type::Enum
63
70
 
@@ -17,10 +17,11 @@ module XTwitterScraper
17
17
  sig { returns(Time) }
18
18
  attr_accessor :created_at
19
19
 
20
- sig { returns(XTwitterScraper::ExtractionJob::Status::OrSymbol) }
20
+ sig { returns(XTwitterScraper::ExtractionJob::Status::TaggedSymbol) }
21
21
  attr_accessor :status
22
22
 
23
- sig { returns(XTwitterScraper::ExtractionJob::ToolType::OrSymbol) }
23
+ # Identifier for the extraction tool used to run a job.
24
+ sig { returns(XTwitterScraper::ExtractionJob::ToolType::TaggedSymbol) }
24
25
  attr_accessor :tool_type
25
26
 
26
27
  sig { returns(Integer) }
@@ -32,6 +33,7 @@ module XTwitterScraper
32
33
  sig { params(completed_at: Time).void }
33
34
  attr_writer :completed_at
34
35
 
36
+ # Extraction job tracking status, tool type, and result count.
35
37
  sig do
36
38
  params(
37
39
  id: String,
@@ -46,6 +48,7 @@ module XTwitterScraper
46
48
  id:,
47
49
  created_at:,
48
50
  status:,
51
+ # Identifier for the extraction tool used to run a job.
49
52
  tool_type:,
50
53
  total_results:,
51
54
  completed_at: nil
@@ -57,8 +60,8 @@ module XTwitterScraper
57
60
  {
58
61
  id: String,
59
62
  created_at: Time,
60
- status: XTwitterScraper::ExtractionJob::Status::OrSymbol,
61
- tool_type: XTwitterScraper::ExtractionJob::ToolType::OrSymbol,
63
+ status: XTwitterScraper::ExtractionJob::Status::TaggedSymbol,
64
+ tool_type: XTwitterScraper::ExtractionJob::ToolType::TaggedSymbol,
62
65
  total_results: Integer,
63
66
  completed_at: Time
64
67
  }
@@ -93,6 +96,7 @@ module XTwitterScraper
93
96
  end
94
97
  end
95
98
 
99
+ # Identifier for the extraction tool used to run a job.
96
100
  module ToolType
97
101
  extend XTwitterScraper::Internal::Type::Enum
98
102
 
@@ -14,19 +14,21 @@ module XTwitterScraper
14
14
  )
15
15
  end
16
16
 
17
- # Cursor for pagination
17
+ # Cursor for keyset pagination
18
18
  sig { returns(T.nilable(String)) }
19
19
  attr_reader :after
20
20
 
21
21
  sig { params(after: String).void }
22
22
  attr_writer :after
23
23
 
24
+ # Maximum number of items to return (1-100, default 50)
24
25
  sig { returns(T.nilable(Integer)) }
25
26
  attr_reader :limit
26
27
 
27
28
  sig { params(limit: Integer).void }
28
29
  attr_writer :limit
29
30
 
31
+ # Filter by job status
30
32
  sig do
31
33
  returns(
32
34
  T.nilable(XTwitterScraper::ExtractionListParams::Status::OrSymbol)
@@ -41,6 +43,7 @@ module XTwitterScraper
41
43
  end
42
44
  attr_writer :status
43
45
 
46
+ # Filter by extraction tool type
44
47
  sig do
45
48
  returns(
46
49
  T.nilable(XTwitterScraper::ExtractionListParams::ToolType::OrSymbol)
@@ -65,10 +68,13 @@ module XTwitterScraper
65
68
  ).returns(T.attached_class)
66
69
  end
67
70
  def self.new(
68
- # Cursor for pagination
71
+ # Cursor for keyset pagination
69
72
  after: nil,
73
+ # Maximum number of items to return (1-100, default 50)
70
74
  limit: nil,
75
+ # Filter by job status
71
76
  status: nil,
77
+ # Filter by extraction tool type
72
78
  tool_type: nil,
73
79
  request_options: {}
74
80
  )
@@ -89,6 +95,7 @@ module XTwitterScraper
89
95
  def to_hash
90
96
  end
91
97
 
98
+ # Filter by job status
92
99
  module Status
93
100
  extend XTwitterScraper::Internal::Type::Enum
94
101
 
@@ -125,6 +132,7 @@ module XTwitterScraper
125
132
  end
126
133
  end
127
134
 
135
+ # Filter by extraction tool type
128
136
  module ToolType
129
137
  extend XTwitterScraper::Internal::Type::Enum
130
138
 
@@ -11,11 +11,7 @@ module XTwitterScraper
11
11
  )
12
12
  end
13
13
 
14
- sig do
15
- returns(
16
- T::Array[XTwitterScraper::Models::ExtractionListResponse::Extraction]
17
- )
18
- end
14
+ sig { returns(T::Array[XTwitterScraper::ExtractionJob]) }
19
15
  attr_accessor :extractions
20
16
 
21
17
  sig { returns(T::Boolean) }
@@ -29,10 +25,7 @@ module XTwitterScraper
29
25
 
30
26
  sig do
31
27
  params(
32
- extractions:
33
- T::Array[
34
- XTwitterScraper::Models::ExtractionListResponse::Extraction::OrHash
35
- ],
28
+ extractions: T::Array[XTwitterScraper::ExtractionJob::OrHash],
36
29
  has_more: T::Boolean,
37
30
  next_cursor: String
38
31
  ).returns(T.attached_class)
@@ -43,10 +36,7 @@ module XTwitterScraper
43
36
  sig do
44
37
  override.returns(
45
38
  {
46
- extractions:
47
- T::Array[
48
- XTwitterScraper::Models::ExtractionListResponse::Extraction
49
- ],
39
+ extractions: T::Array[XTwitterScraper::ExtractionJob],
50
40
  has_more: T::Boolean,
51
41
  next_cursor: String
52
42
  }
@@ -54,247 +44,6 @@ module XTwitterScraper
54
44
  end
55
45
  def to_hash
56
46
  end
57
-
58
- class Extraction < XTwitterScraper::Internal::Type::BaseModel
59
- OrHash =
60
- T.type_alias do
61
- T.any(
62
- XTwitterScraper::Models::ExtractionListResponse::Extraction,
63
- XTwitterScraper::Internal::AnyHash
64
- )
65
- end
66
-
67
- sig { returns(String) }
68
- attr_accessor :id
69
-
70
- sig { returns(Time) }
71
- attr_accessor :created_at
72
-
73
- sig do
74
- returns(
75
- XTwitterScraper::Models::ExtractionListResponse::Extraction::Status::TaggedSymbol
76
- )
77
- end
78
- attr_accessor :status
79
-
80
- sig do
81
- returns(
82
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
83
- )
84
- end
85
- attr_accessor :tool_type
86
-
87
- sig { returns(Integer) }
88
- attr_accessor :total_results
89
-
90
- sig { returns(T.nilable(Time)) }
91
- attr_reader :completed_at
92
-
93
- sig { params(completed_at: Time).void }
94
- attr_writer :completed_at
95
-
96
- sig do
97
- params(
98
- id: String,
99
- created_at: Time,
100
- status:
101
- XTwitterScraper::Models::ExtractionListResponse::Extraction::Status::OrSymbol,
102
- tool_type:
103
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::OrSymbol,
104
- total_results: Integer,
105
- completed_at: Time
106
- ).returns(T.attached_class)
107
- end
108
- def self.new(
109
- id:,
110
- created_at:,
111
- status:,
112
- tool_type:,
113
- total_results:,
114
- completed_at: nil
115
- )
116
- end
117
-
118
- sig do
119
- override.returns(
120
- {
121
- id: String,
122
- created_at: Time,
123
- status:
124
- XTwitterScraper::Models::ExtractionListResponse::Extraction::Status::TaggedSymbol,
125
- tool_type:
126
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol,
127
- total_results: Integer,
128
- completed_at: Time
129
- }
130
- )
131
- end
132
- def to_hash
133
- end
134
-
135
- module Status
136
- extend XTwitterScraper::Internal::Type::Enum
137
-
138
- TaggedSymbol =
139
- T.type_alias do
140
- T.all(
141
- Symbol,
142
- XTwitterScraper::Models::ExtractionListResponse::Extraction::Status
143
- )
144
- end
145
- OrSymbol = T.type_alias { T.any(Symbol, String) }
146
-
147
- RUNNING =
148
- T.let(
149
- :running,
150
- XTwitterScraper::Models::ExtractionListResponse::Extraction::Status::TaggedSymbol
151
- )
152
- COMPLETED =
153
- T.let(
154
- :completed,
155
- XTwitterScraper::Models::ExtractionListResponse::Extraction::Status::TaggedSymbol
156
- )
157
- FAILED =
158
- T.let(
159
- :failed,
160
- XTwitterScraper::Models::ExtractionListResponse::Extraction::Status::TaggedSymbol
161
- )
162
-
163
- sig do
164
- override.returns(
165
- T::Array[
166
- XTwitterScraper::Models::ExtractionListResponse::Extraction::Status::TaggedSymbol
167
- ]
168
- )
169
- end
170
- def self.values
171
- end
172
- end
173
-
174
- module ToolType
175
- extend XTwitterScraper::Internal::Type::Enum
176
-
177
- TaggedSymbol =
178
- T.type_alias do
179
- T.all(
180
- Symbol,
181
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType
182
- )
183
- end
184
- OrSymbol = T.type_alias { T.any(Symbol, String) }
185
-
186
- ARTICLE_EXTRACTOR =
187
- T.let(
188
- :article_extractor,
189
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
190
- )
191
- COMMUNITY_EXTRACTOR =
192
- T.let(
193
- :community_extractor,
194
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
195
- )
196
- COMMUNITY_MODERATOR_EXPLORER =
197
- T.let(
198
- :community_moderator_explorer,
199
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
200
- )
201
- COMMUNITY_POST_EXTRACTOR =
202
- T.let(
203
- :community_post_extractor,
204
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
205
- )
206
- COMMUNITY_SEARCH =
207
- T.let(
208
- :community_search,
209
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
210
- )
211
- FOLLOWER_EXPLORER =
212
- T.let(
213
- :follower_explorer,
214
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
215
- )
216
- FOLLOWING_EXPLORER =
217
- T.let(
218
- :following_explorer,
219
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
220
- )
221
- LIST_FOLLOWER_EXPLORER =
222
- T.let(
223
- :list_follower_explorer,
224
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
225
- )
226
- LIST_MEMBER_EXTRACTOR =
227
- T.let(
228
- :list_member_extractor,
229
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
230
- )
231
- LIST_POST_EXTRACTOR =
232
- T.let(
233
- :list_post_extractor,
234
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
235
- )
236
- MENTION_EXTRACTOR =
237
- T.let(
238
- :mention_extractor,
239
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
240
- )
241
- PEOPLE_SEARCH =
242
- T.let(
243
- :people_search,
244
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
245
- )
246
- POST_EXTRACTOR =
247
- T.let(
248
- :post_extractor,
249
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
250
- )
251
- QUOTE_EXTRACTOR =
252
- T.let(
253
- :quote_extractor,
254
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
255
- )
256
- REPLY_EXTRACTOR =
257
- T.let(
258
- :reply_extractor,
259
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
260
- )
261
- REPOST_EXTRACTOR =
262
- T.let(
263
- :repost_extractor,
264
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
265
- )
266
- SPACE_EXPLORER =
267
- T.let(
268
- :space_explorer,
269
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
270
- )
271
- THREAD_EXTRACTOR =
272
- T.let(
273
- :thread_extractor,
274
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
275
- )
276
- TWEET_SEARCH_EXTRACTOR =
277
- T.let(
278
- :tweet_search_extractor,
279
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
280
- )
281
- VERIFIED_FOLLOWER_EXPLORER =
282
- T.let(
283
- :verified_follower_explorer,
284
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
285
- )
286
-
287
- sig do
288
- override.returns(
289
- T::Array[
290
- XTwitterScraper::Models::ExtractionListResponse::Extraction::ToolType::TaggedSymbol
291
- ]
292
- )
293
- end
294
- def self.values
295
- end
296
- end
297
- end
298
47
  end
299
48
  end
300
49
  end
@@ -17,13 +17,14 @@ module XTwitterScraper
17
17
  sig { returns(String) }
18
18
  attr_accessor :id
19
19
 
20
- # Cursor for pagination
20
+ # Cursor for keyset pagination
21
21
  sig { returns(T.nilable(String)) }
22
22
  attr_reader :after
23
23
 
24
24
  sig { params(after: String).void }
25
25
  attr_writer :after
26
26
 
27
+ # Maximum number of results to return (1-1000, default 100)
27
28
  sig { returns(T.nilable(Integer)) }
28
29
  attr_reader :limit
29
30
 
@@ -40,8 +41,9 @@ module XTwitterScraper
40
41
  end
41
42
  def self.new(
42
43
  id:,
43
- # Cursor for pagination
44
+ # Cursor for keyset pagination
44
45
  after: nil,
46
+ # Maximum number of results to return (1-1000, default 100)
45
47
  limit: nil,
46
48
  request_options: {}
47
49
  )
@@ -14,6 +14,7 @@ module XTwitterScraper
14
14
  )
15
15
  end
16
16
 
17
+ # Identifier for the extraction tool used to run a job.
17
18
  sig { returns(XTwitterScraper::ExtractionRunParams::ToolType::OrSymbol) }
18
19
  attr_accessor :tool_type
19
20
 
@@ -90,6 +91,7 @@ module XTwitterScraper
90
91
  ).returns(T.attached_class)
91
92
  end
92
93
  def self.new(
94
+ # Identifier for the extraction tool used to run a job.
93
95
  tool_type:,
94
96
  # Raw advanced search query appended as-is (tweet_search_extractor)
95
97
  advanced_query: nil,
@@ -127,6 +129,7 @@ module XTwitterScraper
127
129
  def to_hash
128
130
  end
129
131
 
132
+ # Identifier for the extraction tool used to run a job.
130
133
  module ToolType
131
134
  extend XTwitterScraper::Internal::Type::Enum
132
135