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
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b484492b68eb864049194156f172bd54ce3c734dab416a379e89479c29975984
4
- data.tar.gz: 8bb73e082d9e1c88738e49eb3b1ab6ee8612651459dda021addf4cc5c55f21d7
3
+ metadata.gz: bf080feaa482690e15947927eccf2f0021e7de8feb17ce6aabf38259d847f84e
4
+ data.tar.gz: e3c744d47f24d3cab0e2878551ad141db14685f913b3ae859012726acc805918
5
5
  SHA512:
6
- metadata.gz: 141f2f77507134941baafee648e1f293f42267e7abf15d43d1df1f81bdfd77eb37a16426bfa32fae8158b736268dc583214bcab543f0a8e28d3cb236f88cacfb
7
- data.tar.gz: be8cc2cc7b4cf9d9762d99cf896e1bcf05e33efb7601b13334e552e6979cf067d7a817234115de8c106366389a0395fe18e5993f8b960ebed97b68d3c8d2786d
6
+ metadata.gz: de861c5b7f11641c354a4a1761a7b99927e070df476fd221421b0de4fb58dd99a5eda4289b4f04f7f3cdacd3a0bc8fd70e6b686740c816a3cfc49be52dd80a52
7
+ data.tar.gz: 6588a9cdf6e0607cc0cfedb15409ebabbb7e3de747e46a28e4f6b0d30349e9df8fe0b38d9dcc5055658aae48728a7ed7c5305f0b63178a6be462042cbbaa9854
data/CHANGELOG.md CHANGED
@@ -1,5 +1,30 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.4.0 (2026-04-22)
4
+
5
+ Full Changelog: [v0.3.0...v0.4.0](https://github.com/Xquik-dev/x-twitter-scraper-ruby/compare/v0.3.0...v0.4.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([57ca5de](https://github.com/Xquik-dev/x-twitter-scraper-ruby/commit/57ca5deef4ab9b670bc0e143c00639a8c3da1258))
10
+ * **api:** api update ([21e1e0f](https://github.com/Xquik-dev/x-twitter-scraper-ruby/commit/21e1e0f3791b791ab09f8982edaae123ba8d45a1))
11
+ * **api:** api update ([c053ff2](https://github.com/Xquik-dev/x-twitter-scraper-ruby/commit/c053ff2fdc9a671ff1a6d6596a97d1ebb8a33eb2))
12
+ * **api:** api update ([f9c02a4](https://github.com/Xquik-dev/x-twitter-scraper-ruby/commit/f9c02a49240130a307fcbd1cfbcfaf999966fb06))
13
+ * **api:** api update ([89e3ff5](https://github.com/Xquik-dev/x-twitter-scraper-ruby/commit/89e3ff5905185e6223233618819d6dc87a2e87d7))
14
+ * **api:** api update ([dbe6467](https://github.com/Xquik-dev/x-twitter-scraper-ruby/commit/dbe6467a33987dcd3a65b78bfefca13b5123ae63))
15
+ * **api:** api update ([279a416](https://github.com/Xquik-dev/x-twitter-scraper-ruby/commit/279a416215ad266661cac5edd02e821e2f701d60))
16
+
17
+
18
+ ### Bug Fixes
19
+
20
+ * **ci:** pin rubygems/configure-rubygems-credentials to v1.0.0 ([7d2cde5](https://github.com/Xquik-dev/x-twitter-scraper-ruby/commit/7d2cde520114bba9680b2c98fbe699f75f9b5c04))
21
+ * set homepage to docs.xquik.com, add documentation_uri to gemdocs ([0f8e806](https://github.com/Xquik-dev/x-twitter-scraper-ruby/commit/0f8e806ff20df4700054a7df0e17aa89e2da4859))
22
+
23
+
24
+ ### Chores
25
+
26
+ * update SDK settings ([301d2a6](https://github.com/Xquik-dev/x-twitter-scraper-ruby/commit/301d2a616dfaf7c4ac15798a7463ecd3ef2770eb))
27
+
3
28
  ## 0.3.0 (2026-04-01)
4
29
 
5
30
  Full Changelog: [v0.2.0...v0.3.0](https://github.com/Xquik-dev/x-twitter-scraper-ruby/compare/v0.2.0...v0.3.0)
data/README.md CHANGED
@@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application
17
17
  <!-- x-release-please-start-version -->
18
18
 
19
19
  ```ruby
20
- gem "x-twitter-scraper", "~> 0.3.0"
20
+ gem "x-twitter-scraper", "~> 0.4.0"
21
21
  ```
22
22
 
23
23
  <!-- x-release-please-end -->
@@ -32,9 +32,9 @@ x_twitter_scraper = XTwitterScraper::Client.new(
32
32
  api_key: ENV["X_TWITTER_SCRAPER_API_KEY"] # This is the default and can be omitted
33
33
  )
34
34
 
35
- response = x_twitter_scraper.x.tweets.search(q: "from:elonmusk", limit: 10)
35
+ paginated_tweets = x_twitter_scraper.x.tweets.search(q: "from:elonmusk", limit: 10)
36
36
 
37
- puts(response.has_next_page)
37
+ puts(paginated_tweets.has_next_page)
38
38
  ```
39
39
 
40
40
  ### File uploads
@@ -153,7 +153,7 @@ You can send undocumented parameters to any endpoint, and read undocumented resp
153
153
  Note: the `extra_` parameters of the same name overrides the documented parameters.
154
154
 
155
155
  ```ruby
156
- response =
156
+ paginated_tweets =
157
157
  x_twitter_scraper.x.tweets.search(
158
158
  q: "from:elonmusk",
159
159
  limit: 10,
@@ -164,7 +164,7 @@ response =
164
164
  }
165
165
  )
166
166
 
167
- puts(response[:my_undocumented_property])
167
+ puts(paginated_tweets[:my_undocumented_property])
168
168
  ```
169
169
 
170
170
  #### Undocumented request params
@@ -34,6 +34,8 @@ module XTwitterScraper
34
34
  optional :last_used_at, Time, api_name: :lastUsedAt
35
35
 
36
36
  # @!method initialize(id:, created_at:, is_active:, name:, prefix:, last_used_at: nil)
37
+ # API key metadata returned when listing keys.
38
+ #
37
39
  # @param id [String]
38
40
  # @param created_at [Time]
39
41
  # @param is_active [Boolean]
@@ -6,52 +6,11 @@ module XTwitterScraper
6
6
  class APIKeyListResponse < XTwitterScraper::Internal::Type::BaseModel
7
7
  # @!attribute keys
8
8
  #
9
- # @return [Array<XTwitterScraper::Models::APIKeyListResponse::Key>]
10
- required :keys,
11
- -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::Models::APIKeyListResponse::Key] }
9
+ # @return [Array<XTwitterScraper::Models::APIKey>]
10
+ required :keys, -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::APIKey] }
12
11
 
13
12
  # @!method initialize(keys:)
14
- # @param keys [Array<XTwitterScraper::Models::APIKeyListResponse::Key>]
15
-
16
- class Key < XTwitterScraper::Internal::Type::BaseModel
17
- # @!attribute id
18
- #
19
- # @return [String]
20
- required :id, String
21
-
22
- # @!attribute created_at
23
- #
24
- # @return [Time]
25
- required :created_at, Time, api_name: :createdAt
26
-
27
- # @!attribute is_active
28
- #
29
- # @return [Boolean]
30
- required :is_active, XTwitterScraper::Internal::Type::Boolean, api_name: :isActive
31
-
32
- # @!attribute name
33
- #
34
- # @return [String]
35
- required :name, String
36
-
37
- # @!attribute prefix
38
- #
39
- # @return [String]
40
- required :prefix, String
41
-
42
- # @!attribute last_used_at
43
- #
44
- # @return [Time, nil]
45
- optional :last_used_at, Time, api_name: :lastUsedAt
46
-
47
- # @!method initialize(id:, created_at:, is_active:, name:, prefix:, last_used_at: nil)
48
- # @param id [String]
49
- # @param created_at [Time]
50
- # @param is_active [Boolean]
51
- # @param name [String]
52
- # @param prefix [String]
53
- # @param last_used_at [Time]
54
- end
13
+ # @param keys [Array<XTwitterScraper::Models::APIKey>]
55
14
  end
56
15
  end
57
16
  end
@@ -44,6 +44,8 @@ module XTwitterScraper
44
44
  optional :last_status_code, Integer, api_name: :lastStatusCode
45
45
 
46
46
  # @!method initialize(id:, attempts:, created_at:, status:, stream_event_id:, delivered_at: nil, last_error: nil, last_status_code: nil)
47
+ # Webhook delivery attempt record with status and retry count.
48
+ #
47
49
  # @param id [String]
48
50
  # @param attempts [Integer]
49
51
  # @param created_at [Time]
@@ -29,6 +29,8 @@ module XTwitterScraper
29
29
  optional :topic, String
30
30
 
31
31
  # @!method initialize(id:, created_at:, text:, goal: nil, topic: nil)
32
+ # Saved tweet draft with optional topic and goal.
33
+ #
32
34
  # @param id [String]
33
35
  # @param created_at [Time]
34
36
  # @param text [String]
@@ -2,6 +2,7 @@
2
2
 
3
3
  module XTwitterScraper
4
4
  module Models
5
+ # @see XTwitterScraper::Resources::Drafts#create
5
6
  class DraftDetail < XTwitterScraper::Internal::Type::BaseModel
6
7
  # @!attribute id
7
8
  #
@@ -34,6 +35,8 @@ module XTwitterScraper
34
35
  optional :topic, String
35
36
 
36
37
  # @!method initialize(id:, created_at:, text:, updated_at:, goal: nil, topic: nil)
38
+ # Full tweet draft including update timestamp.
39
+ #
37
40
  # @param id [String]
38
41
  # @param created_at [Time]
39
42
  # @param text [String]
@@ -14,6 +14,7 @@ module XTwitterScraper
14
14
  optional :after_cursor, String
15
15
 
16
16
  # @!attribute limit
17
+ # Maximum number of items to return (1-100, default 50)
17
18
  #
18
19
  # @return [Integer, nil]
19
20
  optional :limit, Integer
@@ -21,7 +22,7 @@ module XTwitterScraper
21
22
  # @!method initialize(after_cursor: nil, limit: nil, request_options: {})
22
23
  # @param after_cursor [String] Cursor for pagination
23
24
  #
24
- # @param limit [Integer]
25
+ # @param limit [Integer] Maximum number of items to return (1-100, default 50)
25
26
  #
26
27
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}]
27
28
  end
@@ -6,9 +6,8 @@ module XTwitterScraper
6
6
  class DraftListResponse < XTwitterScraper::Internal::Type::BaseModel
7
7
  # @!attribute drafts
8
8
  #
9
- # @return [Array<XTwitterScraper::Models::DraftListResponse::Draft>]
10
- required :drafts,
11
- -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::Models::DraftListResponse::Draft] }
9
+ # @return [Array<XTwitterScraper::Models::Draft>]
10
+ required :drafts, -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::Draft] }
12
11
 
13
12
  # @!attribute has_more
14
13
  #
@@ -21,43 +20,9 @@ module XTwitterScraper
21
20
  optional :next_cursor, String, api_name: :nextCursor
22
21
 
23
22
  # @!method initialize(drafts:, has_more:, next_cursor: nil)
24
- # @param drafts [Array<XTwitterScraper::Models::DraftListResponse::Draft>]
23
+ # @param drafts [Array<XTwitterScraper::Models::Draft>]
25
24
  # @param has_more [Boolean]
26
25
  # @param next_cursor [String]
27
-
28
- class Draft < XTwitterScraper::Internal::Type::BaseModel
29
- # @!attribute id
30
- #
31
- # @return [String]
32
- required :id, String
33
-
34
- # @!attribute created_at
35
- #
36
- # @return [Time]
37
- required :created_at, Time, api_name: :createdAt
38
-
39
- # @!attribute text
40
- #
41
- # @return [String]
42
- required :text, String
43
-
44
- # @!attribute goal
45
- #
46
- # @return [String, nil]
47
- optional :goal, String
48
-
49
- # @!attribute topic
50
- #
51
- # @return [String, nil]
52
- optional :topic, String
53
-
54
- # @!method initialize(id:, created_at:, text:, goal: nil, topic: nil)
55
- # @param id [String]
56
- # @param created_at [Time]
57
- # @param text [String]
58
- # @param goal [String]
59
- # @param topic [String]
60
- end
61
26
  end
62
27
  end
63
28
  end
@@ -74,6 +74,8 @@ module XTwitterScraper
74
74
  optional :drawn_at, Time, api_name: :drawnAt
75
75
 
76
76
  # @!method initialize(id:, created_at:, status:, total_entries:, tweet_author_username:, tweet_id:, tweet_like_count:, tweet_quote_count:, tweet_reply_count:, tweet_retweet_count:, tweet_text:, tweet_url:, valid_entries:, drawn_at: nil)
77
+ # Full giveaway draw with tweet metrics, entries, and timing.
78
+ #
77
79
  # @param id [String]
78
80
  # @param created_at [Time]
79
81
  # @param status [String]
@@ -13,6 +13,7 @@ module XTwitterScraper
13
13
  required :id, String
14
14
 
15
15
  # @!attribute format_
16
+ # Export output format
16
17
  #
17
18
  # @return [Symbol, XTwitterScraper::Models::DrawExportParams::Format, nil]
18
19
  optional :format_, enum: -> { XTwitterScraper::DrawExportParams::Format }
@@ -26,12 +27,13 @@ module XTwitterScraper
26
27
  # @!method initialize(id:, format_: nil, type: nil, request_options: {})
27
28
  # @param id [String]
28
29
  #
29
- # @param format_ [Symbol, XTwitterScraper::Models::DrawExportParams::Format]
30
+ # @param format_ [Symbol, XTwitterScraper::Models::DrawExportParams::Format] Export output format
30
31
  #
31
32
  # @param type [Symbol, XTwitterScraper::Models::DrawExportParams::Type] Export winners or all entries
32
33
  #
33
34
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}]
34
35
 
36
+ # Export output format
35
37
  module Format
36
38
  extend XTwitterScraper::Internal::Type::Enum
37
39
 
@@ -39,6 +39,8 @@ module XTwitterScraper
39
39
  optional :drawn_at, Time, api_name: :drawnAt
40
40
 
41
41
  # @!method initialize(id:, created_at:, status:, total_entries:, tweet_url:, valid_entries:, drawn_at: nil)
42
+ # Giveaway draw summary with entry counts and status.
43
+ #
42
44
  # @param id [String]
43
45
  # @param created_at [Time]
44
46
  # @param status [String]
@@ -8,20 +8,21 @@ module XTwitterScraper
8
8
  include XTwitterScraper::Internal::Type::RequestParameters
9
9
 
10
10
  # @!attribute after
11
- # Cursor for pagination
11
+ # Cursor for keyset pagination
12
12
  #
13
13
  # @return [String, nil]
14
14
  optional :after, String
15
15
 
16
16
  # @!attribute limit
17
+ # Maximum number of items to return (1-100, default 50)
17
18
  #
18
19
  # @return [Integer, nil]
19
20
  optional :limit, Integer
20
21
 
21
22
  # @!method initialize(after: nil, limit: nil, request_options: {})
22
- # @param after [String] Cursor for pagination
23
+ # @param after [String] Cursor for keyset pagination
23
24
  #
24
- # @param limit [Integer]
25
+ # @param limit [Integer] Maximum number of items to return (1-100, default 50)
25
26
  #
26
27
  # @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}]
27
28
  end
@@ -6,9 +6,8 @@ module XTwitterScraper
6
6
  class DrawListResponse < XTwitterScraper::Internal::Type::BaseModel
7
7
  # @!attribute draws
8
8
  #
9
- # @return [Array<XTwitterScraper::Models::DrawListResponse::Draw>]
10
- required :draws,
11
- -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::Models::DrawListResponse::Draw] }
9
+ # @return [Array<XTwitterScraper::Models::DrawListItem>]
10
+ required :draws, -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::DrawListItem] }
12
11
 
13
12
  # @!attribute has_more
14
13
  #
@@ -21,55 +20,9 @@ module XTwitterScraper
21
20
  optional :next_cursor, String, api_name: :nextCursor
22
21
 
23
22
  # @!method initialize(draws:, has_more:, next_cursor: nil)
24
- # @param draws [Array<XTwitterScraper::Models::DrawListResponse::Draw>]
23
+ # @param draws [Array<XTwitterScraper::Models::DrawListItem>]
25
24
  # @param has_more [Boolean]
26
25
  # @param next_cursor [String]
27
-
28
- class Draw < XTwitterScraper::Internal::Type::BaseModel
29
- # @!attribute id
30
- #
31
- # @return [String]
32
- required :id, String
33
-
34
- # @!attribute created_at
35
- #
36
- # @return [Time]
37
- required :created_at, Time, api_name: :createdAt
38
-
39
- # @!attribute status
40
- #
41
- # @return [String]
42
- required :status, String
43
-
44
- # @!attribute total_entries
45
- #
46
- # @return [Integer]
47
- required :total_entries, Integer, api_name: :totalEntries
48
-
49
- # @!attribute tweet_url
50
- #
51
- # @return [String]
52
- required :tweet_url, String, api_name: :tweetUrl
53
-
54
- # @!attribute valid_entries
55
- #
56
- # @return [Integer]
57
- required :valid_entries, Integer, api_name: :validEntries
58
-
59
- # @!attribute drawn_at
60
- #
61
- # @return [Time, nil]
62
- optional :drawn_at, Time, api_name: :drawnAt
63
-
64
- # @!method initialize(id:, created_at:, status:, total_entries:, tweet_url:, valid_entries:, drawn_at: nil)
65
- # @param id [String]
66
- # @param created_at [Time]
67
- # @param status [String]
68
- # @param total_entries [Integer]
69
- # @param tweet_url [String]
70
- # @param valid_entries [Integer]
71
- # @param drawn_at [Time]
72
- end
73
26
  end
74
27
  end
75
28
  end
@@ -5,136 +5,20 @@ module XTwitterScraper
5
5
  # @see XTwitterScraper::Resources::Draws#retrieve
6
6
  class DrawRetrieveResponse < XTwitterScraper::Internal::Type::BaseModel
7
7
  # @!attribute draw
8
+ # Full giveaway draw with tweet metrics, entries, and timing.
8
9
  #
9
- # @return [XTwitterScraper::Models::DrawRetrieveResponse::Draw]
10
- required :draw, -> { XTwitterScraper::Models::DrawRetrieveResponse::Draw }
10
+ # @return [XTwitterScraper::Models::DrawDetail]
11
+ required :draw, -> { XTwitterScraper::DrawDetail }
11
12
 
12
13
  # @!attribute winners
13
14
  #
14
- # @return [Array<XTwitterScraper::Models::DrawRetrieveResponse::Winner>]
15
- required :winners,
16
- -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::Models::DrawRetrieveResponse::Winner] }
15
+ # @return [Array<XTwitterScraper::Models::Winner>]
16
+ required :winners, -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::Winner] }
17
17
 
18
18
  # @!method initialize(draw:, winners:)
19
- # @param draw [XTwitterScraper::Models::DrawRetrieveResponse::Draw]
20
- # @param winners [Array<XTwitterScraper::Models::DrawRetrieveResponse::Winner>]
21
-
22
- # @see XTwitterScraper::Models::DrawRetrieveResponse#draw
23
- class Draw < XTwitterScraper::Internal::Type::BaseModel
24
- # @!attribute id
25
- #
26
- # @return [String]
27
- required :id, String
28
-
29
- # @!attribute created_at
30
- #
31
- # @return [Time]
32
- required :created_at, Time, api_name: :createdAt
33
-
34
- # @!attribute status
35
- #
36
- # @return [String]
37
- required :status, String
38
-
39
- # @!attribute total_entries
40
- #
41
- # @return [Integer]
42
- required :total_entries, Integer, api_name: :totalEntries
43
-
44
- # @!attribute tweet_author_username
45
- #
46
- # @return [String]
47
- required :tweet_author_username, String, api_name: :tweetAuthorUsername
48
-
49
- # @!attribute tweet_id
50
- #
51
- # @return [String]
52
- required :tweet_id, String, api_name: :tweetId
53
-
54
- # @!attribute tweet_like_count
55
- #
56
- # @return [Integer]
57
- required :tweet_like_count, Integer, api_name: :tweetLikeCount
58
-
59
- # @!attribute tweet_quote_count
60
- #
61
- # @return [Integer]
62
- required :tweet_quote_count, Integer, api_name: :tweetQuoteCount
63
-
64
- # @!attribute tweet_reply_count
65
- #
66
- # @return [Integer]
67
- required :tweet_reply_count, Integer, api_name: :tweetReplyCount
68
-
69
- # @!attribute tweet_retweet_count
70
- #
71
- # @return [Integer]
72
- required :tweet_retweet_count, Integer, api_name: :tweetRetweetCount
73
-
74
- # @!attribute tweet_text
75
- #
76
- # @return [String]
77
- required :tweet_text, String, api_name: :tweetText
78
-
79
- # @!attribute tweet_url
80
- #
81
- # @return [String]
82
- required :tweet_url, String, api_name: :tweetUrl
83
-
84
- # @!attribute valid_entries
85
- #
86
- # @return [Integer]
87
- required :valid_entries, Integer, api_name: :validEntries
88
-
89
- # @!attribute drawn_at
90
- #
91
- # @return [Time, nil]
92
- optional :drawn_at, Time, api_name: :drawnAt
93
-
94
- # @!method initialize(id:, created_at:, status:, total_entries:, tweet_author_username:, tweet_id:, tweet_like_count:, tweet_quote_count:, tweet_reply_count:, tweet_retweet_count:, tweet_text:, tweet_url:, valid_entries:, drawn_at: nil)
95
- # @param id [String]
96
- # @param created_at [Time]
97
- # @param status [String]
98
- # @param total_entries [Integer]
99
- # @param tweet_author_username [String]
100
- # @param tweet_id [String]
101
- # @param tweet_like_count [Integer]
102
- # @param tweet_quote_count [Integer]
103
- # @param tweet_reply_count [Integer]
104
- # @param tweet_retweet_count [Integer]
105
- # @param tweet_text [String]
106
- # @param tweet_url [String]
107
- # @param valid_entries [Integer]
108
- # @param drawn_at [Time]
109
- end
110
-
111
- class Winner < XTwitterScraper::Internal::Type::BaseModel
112
- # @!attribute author_username
113
- #
114
- # @return [String]
115
- required :author_username, String, api_name: :authorUsername
116
-
117
- # @!attribute is_backup
118
- #
119
- # @return [Boolean]
120
- required :is_backup, XTwitterScraper::Internal::Type::Boolean, api_name: :isBackup
121
-
122
- # @!attribute position
123
- #
124
- # @return [Integer]
125
- required :position, Integer
126
-
127
- # @!attribute tweet_id
128
- #
129
- # @return [String]
130
- required :tweet_id, String, api_name: :tweetId
131
-
132
- # @!method initialize(author_username:, is_backup:, position:, tweet_id:)
133
- # @param author_username [String]
134
- # @param is_backup [Boolean]
135
- # @param position [Integer]
136
- # @param tweet_id [String]
137
- end
19
+ # @param draw [XTwitterScraper::Models::DrawDetail] Full giveaway draw with tweet metrics, entries, and timing.
20
+ #
21
+ # @param winners [Array<XTwitterScraper::Models::Winner>]
138
22
  end
139
23
  end
140
24
  end
@@ -26,44 +26,15 @@ module XTwitterScraper
26
26
 
27
27
  # @!attribute winners
28
28
  #
29
- # @return [Array<XTwitterScraper::Models::DrawRunResponse::Winner>]
30
- required :winners,
31
- -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::Models::DrawRunResponse::Winner] }
29
+ # @return [Array<XTwitterScraper::Models::Winner>]
30
+ required :winners, -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::Winner] }
32
31
 
33
32
  # @!method initialize(id:, total_entries:, tweet_id:, valid_entries:, winners:)
34
33
  # @param id [String]
35
34
  # @param total_entries [Integer]
36
35
  # @param tweet_id [String]
37
36
  # @param valid_entries [Integer]
38
- # @param winners [Array<XTwitterScraper::Models::DrawRunResponse::Winner>]
39
-
40
- class Winner < XTwitterScraper::Internal::Type::BaseModel
41
- # @!attribute author_username
42
- #
43
- # @return [String]
44
- required :author_username, String, api_name: :authorUsername
45
-
46
- # @!attribute is_backup
47
- #
48
- # @return [Boolean]
49
- required :is_backup, XTwitterScraper::Internal::Type::Boolean, api_name: :isBackup
50
-
51
- # @!attribute position
52
- #
53
- # @return [Integer]
54
- required :position, Integer
55
-
56
- # @!attribute tweet_id
57
- #
58
- # @return [String]
59
- required :tweet_id, String, api_name: :tweetId
60
-
61
- # @!method initialize(author_username:, is_backup:, position:, tweet_id:)
62
- # @param author_username [String]
63
- # @param is_backup [Boolean]
64
- # @param position [Integer]
65
- # @param tweet_id [String]
66
- end
37
+ # @param winners [Array<XTwitterScraper::Models::Winner>]
67
38
  end
68
39
  end
69
40
  end
@@ -9,6 +9,8 @@ module XTwitterScraper
9
9
  required :error, enum: -> { XTwitterScraper::Error::Error }
10
10
 
11
11
  # @!method initialize(error:)
12
+ # Error response containing a machine-readable error code.
13
+ #
12
14
  # @param error [Symbol, XTwitterScraper::Models::Error::Error]
13
15
 
14
16
  # @see XTwitterScraper::Models::Error#error
@@ -24,9 +24,10 @@ module XTwitterScraper
24
24
  required :occurred_at, Time, api_name: :occurredAt
25
25
 
26
26
  # @!attribute type
27
+ # Type of monitor event fired when account activity occurs.
27
28
  #
28
- # @return [Symbol, XTwitterScraper::Models::Event::Type]
29
- required :type, enum: -> { XTwitterScraper::Event::Type }
29
+ # @return [Symbol, XTwitterScraper::Models::EventType]
30
+ required :type, enum: -> { XTwitterScraper::EventType }
30
31
 
31
32
  # @!attribute username
32
33
  #
@@ -34,27 +35,19 @@ module XTwitterScraper
34
35
  required :username, String
35
36
 
36
37
  # @!method initialize(id:, data:, monitor_id:, occurred_at:, type:, username:)
38
+ # Monitor event summary with type, username, and occurrence time.
39
+ #
37
40
  # @param id [String]
41
+ #
38
42
  # @param data [Hash{Symbol=>Object}]
43
+ #
39
44
  # @param monitor_id [String]
45
+ #
40
46
  # @param occurred_at [Time]
41
- # @param type [Symbol, XTwitterScraper::Models::Event::Type]
47
+ #
48
+ # @param type [Symbol, XTwitterScraper::Models::EventType] Type of monitor event fired when account activity occurs.
49
+ #
42
50
  # @param username [String]
43
-
44
- # @see XTwitterScraper::Models::Event#type
45
- module Type
46
- extend XTwitterScraper::Internal::Type::Enum
47
-
48
- TWEET_NEW = :"tweet.new"
49
- TWEET_REPLY = :"tweet.reply"
50
- TWEET_RETWEET = :"tweet.retweet"
51
- TWEET_QUOTE = :"tweet.quote"
52
- FOLLOWER_GAINED = :"follower.gained"
53
- FOLLOWER_LOST = :"follower.lost"
54
-
55
- # @!method self.values
56
- # @return [Array<Symbol>]
57
- end
58
51
  end
59
52
  end
60
53
  end