x-twitter-scraper 0.4.2 → 0.4.4
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +23 -0
- data/LICENSE +201 -0
- data/README.md +10 -12
- data/lib/x_twitter_scraper/client.rb +30 -26
- data/lib/x_twitter_scraper/internal/transport/base_client.rb +5 -0
- data/lib/x_twitter_scraper/internal/type/base_model.rb +4 -3
- data/lib/x_twitter_scraper/internal/util.rb +3 -1
- data/lib/x_twitter_scraper/models/account_retrieve_response.rb +138 -23
- data/lib/x_twitter_scraper/models/content_disclosure.rb +66 -0
- data/lib/x_twitter_scraper/models/credit_redirect_topup_checkout_params.rb +22 -0
- data/lib/x_twitter_scraper/models/credit_retrieve_balance_response.rb +37 -10
- data/lib/x_twitter_scraper/models/credit_retrieve_topup_status_params.rb +22 -0
- data/lib/x_twitter_scraper/models/credit_retrieve_topup_status_response.rb +45 -0
- data/lib/x_twitter_scraper/models/credit_topup_balance_params.rb +13 -5
- data/lib/x_twitter_scraper/models/credit_topup_balance_response.rb +18 -5
- data/lib/x_twitter_scraper/models/draft_list_params.rb +8 -2
- data/lib/x_twitter_scraper/models/draw_detail.rb +15 -1
- data/lib/x_twitter_scraper/models/draw_export_params.rb +3 -3
- data/lib/x_twitter_scraper/models/draw_list_item.rb +8 -1
- data/lib/x_twitter_scraper/models/draw_list_params.rb +13 -7
- data/lib/x_twitter_scraper/models/draw_run_response.rb +13 -2
- data/lib/x_twitter_scraper/models/embedded_tweet.rb +202 -0
- data/lib/x_twitter_scraper/models/error.rb +203 -34
- data/lib/x_twitter_scraper/models/event.rb +48 -6
- data/lib/x_twitter_scraper/models/event_detail.rb +46 -7
- data/lib/x_twitter_scraper/models/event_list_params.rb +13 -7
- data/lib/x_twitter_scraper/models/event_type.rb +17 -2
- data/lib/x_twitter_scraper/models/extraction_estimate_cost_params.rb +308 -7
- data/lib/x_twitter_scraper/models/extraction_estimate_cost_response.rb +38 -14
- data/lib/x_twitter_scraper/models/extraction_export_results_params.rb +3 -3
- data/lib/x_twitter_scraper/models/extraction_job.rb +3 -0
- data/lib/x_twitter_scraper/models/extraction_list_params.rb +16 -7
- data/lib/x_twitter_scraper/models/extraction_retrieve_params.rb +5 -5
- data/lib/x_twitter_scraper/models/extraction_retrieve_response.rb +2 -2
- data/lib/x_twitter_scraper/models/extraction_run_params.rb +304 -7
- data/lib/x_twitter_scraper/models/extraction_run_response.rb +3 -0
- data/lib/x_twitter_scraper/models/guest_wallet_amount.rb +25 -0
- data/lib/x_twitter_scraper/models/guest_wallet_create_params.rb +36 -0
- data/lib/x_twitter_scraper/models/guest_wallet_create_response.rb +161 -0
- data/lib/x_twitter_scraper/models/{integration_list_params.rb → guest_wallet_retrieve_status_params.rb} +2 -2
- data/lib/x_twitter_scraper/models/guest_wallet_retrieve_status_response.rb +196 -0
- data/lib/x_twitter_scraper/models/guest_wallet_topup_params.rb +36 -0
- data/lib/x_twitter_scraper/models/guest_wallet_topup_response.rb +172 -0
- data/lib/x_twitter_scraper/models/monitor.rb +9 -1
- data/lib/x_twitter_scraper/models/monitor_create_response.rb +16 -1
- data/lib/x_twitter_scraper/models/monitors/keyword_create_params.rb +34 -0
- data/lib/x_twitter_scraper/models/monitors/keyword_create_response.rb +59 -0
- data/lib/x_twitter_scraper/models/monitors/keyword_deactivate_params.rb +22 -0
- data/lib/x_twitter_scraper/models/monitors/keyword_deactivate_response.rb +18 -0
- data/lib/x_twitter_scraper/models/monitors/keyword_list_params.rb +16 -0
- data/lib/x_twitter_scraper/models/monitors/keyword_list_response.rb +76 -0
- data/lib/x_twitter_scraper/models/monitors/keyword_retrieve_params.rb +22 -0
- data/lib/x_twitter_scraper/models/monitors/keyword_retrieve_response.rb +59 -0
- data/lib/x_twitter_scraper/models/monitors/keyword_update_params.rb +40 -0
- data/lib/x_twitter_scraper/models/monitors/keyword_update_response.rb +59 -0
- data/lib/x_twitter_scraper/models/paginated_tweets.rb +8 -4
- data/lib/x_twitter_scraper/models/paginated_users.rb +8 -4
- data/lib/x_twitter_scraper/models/radar_item.rb +99 -6
- data/lib/x_twitter_scraper/models/radar_retrieve_trending_topics_params.rb +39 -14
- data/lib/x_twitter_scraper/models/radar_retrieve_trending_topics_response.rb +14 -5
- data/lib/x_twitter_scraper/models/search_tweet.rb +236 -0
- data/lib/x_twitter_scraper/models/subscribe_create_params.rb +21 -1
- data/lib/x_twitter_scraper/models/subscribe_create_response.rb +10 -10
- data/lib/x_twitter_scraper/models/trend_list_params.rb +7 -4
- data/lib/x_twitter_scraper/models/tweet_media.rb +77 -0
- data/lib/x_twitter_scraper/models/user_profile.rb +258 -0
- data/lib/x_twitter_scraper/models/webhook.rb +46 -1
- data/lib/x_twitter_scraper/models/webhook_create_response.rb +2 -1
- data/lib/x_twitter_scraper/models/{api_key_revoke_params.rb → webhook_resume_params.rb} +2 -2
- data/lib/x_twitter_scraper/models/webhook_resume_response.rb +31 -0
- data/lib/x_twitter_scraper/models/x/account_connection_challenge_submit_params.rb +31 -0
- data/lib/x_twitter_scraper/models/x/account_connection_challenge_submit_response.rb +66 -0
- data/lib/x_twitter_scraper/models/x/account_create_params.rb +1 -9
- data/lib/x_twitter_scraper/models/x/account_create_response.rb +30 -1
- data/lib/x_twitter_scraper/models/x/account_reauth_params.rb +9 -1
- data/lib/x_twitter_scraper/models/x/account_reauth_response.rb +36 -1
- data/lib/x_twitter_scraper/models/x/bookmark_retrieve_folders_response.rb +6 -2
- data/lib/x_twitter_scraper/models/x/communities/join_create_response.rb +20 -0
- data/lib/x_twitter_scraper/models/x/communities/join_delete_all_response.rb +20 -0
- data/lib/x_twitter_scraper/models/x/communities/tweet_list_by_community_params.rb +17 -1
- data/lib/x_twitter_scraper/models/x/communities/tweet_list_params.rb +43 -9
- data/lib/x_twitter_scraper/models/x/community_retrieve_info_response.rb +69 -1
- data/lib/x_twitter_scraper/models/x/community_retrieve_members_params.rb +14 -1
- data/lib/x_twitter_scraper/models/x/community_retrieve_search_params.rb +38 -4
- data/lib/x_twitter_scraper/models/x/dm_retrieve_history_params.rb +13 -1
- data/lib/x_twitter_scraper/models/x/dm_retrieve_history_response.rb +26 -9
- data/lib/x_twitter_scraper/models/x/dm_send_params.rb +3 -9
- data/lib/x_twitter_scraper/models/x/follower_check_params.rb +4 -4
- data/lib/x_twitter_scraper/models/x/list_retrieve_followers_params.rb +15 -1
- data/lib/x_twitter_scraper/models/x/list_retrieve_members_params.rb +9 -1
- data/lib/x_twitter_scraper/models/x/list_retrieve_tweets_params.rb +16 -1
- data/lib/x_twitter_scraper/models/x/media_download_params.rb +19 -3
- data/lib/x_twitter_scraper/models/x/media_upload_params.rb +8 -15
- data/lib/x_twitter_scraper/models/x/media_upload_response.rb +10 -1
- data/lib/x_twitter_scraper/models/x/profile_update_avatar_params.rb +8 -8
- data/lib/x_twitter_scraper/models/x/profile_update_banner_params.rb +8 -8
- data/lib/x_twitter_scraper/models/x/tweet_author.rb +4 -21
- data/lib/x_twitter_scraper/models/x/tweet_create_params.rb +18 -11
- data/lib/x_twitter_scraper/models/x/tweet_create_response.rb +28 -1
- data/lib/x_twitter_scraper/models/x/tweet_detail.rb +109 -43
- data/lib/x_twitter_scraper/models/x/tweet_get_favoriters_params.rb +15 -1
- data/lib/x_twitter_scraper/models/x/tweet_get_quotes_params.rb +268 -1
- data/lib/x_twitter_scraper/models/x/tweet_get_replies_params.rb +268 -1
- data/lib/x_twitter_scraper/models/x/tweet_get_retweeters_params.rb +15 -1
- data/lib/x_twitter_scraper/models/x/tweet_get_thread_params.rb +16 -1
- data/lib/x_twitter_scraper/models/x/tweet_retrieve_response.rb +9 -4
- data/lib/x_twitter_scraper/models/x/tweet_search_params.rb +314 -8
- data/lib/x_twitter_scraper/models/x/user_remove_follower_params.rb +31 -0
- data/lib/x_twitter_scraper/models/x/user_remove_follower_response.rb +18 -0
- data/lib/x_twitter_scraper/models/x/user_retrieve_batch_params.rb +6 -2
- data/lib/x_twitter_scraper/models/x/user_retrieve_batch_response.rb +83 -0
- data/lib/x_twitter_scraper/models/x/user_retrieve_followers_params.rb +25 -3
- data/lib/x_twitter_scraper/models/x/user_retrieve_followers_you_know_params.rb +16 -1
- data/lib/x_twitter_scraper/models/x/user_retrieve_following_params.rb +25 -3
- data/lib/x_twitter_scraper/models/x/user_retrieve_likes_params.rb +268 -1
- data/lib/x_twitter_scraper/models/x/user_retrieve_media_params.rb +268 -1
- data/lib/x_twitter_scraper/models/x/user_retrieve_mentions_params.rb +268 -1
- data/lib/x_twitter_scraper/models/x/user_retrieve_replies_params.rb +306 -0
- data/lib/x_twitter_scraper/models/x/user_retrieve_tweets_params.rb +268 -1
- data/lib/x_twitter_scraper/models/x/user_retrieve_verified_followers_params.rb +16 -1
- data/lib/x_twitter_scraper/models/x/write_action_retrieve_params.rb +22 -0
- data/lib/x_twitter_scraper/models/x/write_action_retrieve_response.rb +173 -0
- data/lib/x_twitter_scraper/models/x/x_account.rb +56 -2
- data/lib/x_twitter_scraper/models/x/x_account_detail.rb +23 -8
- data/lib/x_twitter_scraper/models/x_get_article_response.rb +189 -11
- data/lib/x_twitter_scraper/models/x_get_home_timeline_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x_get_notifications_params.rb +3 -3
- data/lib/x_twitter_scraper/models/x_get_trends_params.rb +17 -1
- data/lib/x_twitter_scraper/models.rb +21 -21
- data/lib/x_twitter_scraper/resources/account.rb +1 -3
- data/lib/x_twitter_scraper/resources/compose.rb +1 -1
- data/lib/x_twitter_scraper/resources/credits.rb +54 -4
- data/lib/x_twitter_scraper/resources/drafts.rb +7 -4
- data/lib/x_twitter_scraper/resources/draws.rb +14 -8
- data/lib/x_twitter_scraper/resources/events.rb +7 -5
- data/lib/x_twitter_scraper/resources/extractions.rb +145 -20
- data/lib/x_twitter_scraper/resources/guest_wallets.rb +108 -0
- data/lib/x_twitter_scraper/resources/monitors/keywords.rb +128 -0
- data/lib/x_twitter_scraper/resources/monitors.rb +13 -5
- data/lib/x_twitter_scraper/resources/radar.rb +8 -6
- data/lib/x_twitter_scraper/resources/styles.rb +1 -1
- data/lib/x_twitter_scraper/resources/subscribe.rb +9 -4
- data/lib/x_twitter_scraper/resources/support/tickets.rb +3 -3
- data/lib/x_twitter_scraper/resources/trends.rb +7 -4
- data/lib/x_twitter_scraper/resources/webhooks.rb +25 -5
- data/lib/x_twitter_scraper/resources/x/account_connection_challenges.rb +41 -0
- data/lib/x_twitter_scraper/resources/x/accounts.rb +7 -13
- data/lib/x_twitter_scraper/resources/x/bookmarks.rb +1 -1
- data/lib/x_twitter_scraper/resources/x/communities/join.rb +6 -6
- data/lib/x_twitter_scraper/resources/x/communities/tweets.rb +27 -10
- data/lib/x_twitter_scraper/resources/x/communities.rb +27 -11
- data/lib/x_twitter_scraper/resources/x/dm.rb +9 -6
- data/lib/x_twitter_scraper/resources/x/followers.rb +4 -4
- data/lib/x_twitter_scraper/resources/x/lists.rb +22 -9
- data/lib/x_twitter_scraper/resources/x/media.rb +11 -9
- data/lib/x_twitter_scraper/resources/x/profile.rb +6 -6
- data/lib/x_twitter_scraper/resources/x/tweets.rb +282 -28
- data/lib/x_twitter_scraper/resources/x/users.rb +485 -34
- data/lib/x_twitter_scraper/resources/x/write_actions.rb +37 -0
- data/lib/x_twitter_scraper/resources/x.rb +33 -13
- data/lib/x_twitter_scraper/version.rb +1 -1
- data/lib/x_twitter_scraper.rb +41 -27
- data/rbi/x_twitter_scraper/client.rbi +14 -22
- data/rbi/x_twitter_scraper/models/account_retrieve_response.rbi +181 -23
- data/rbi/x_twitter_scraper/models/content_disclosure.rbi +149 -0
- data/rbi/x_twitter_scraper/models/{integration_retrieve_params.rbi → credit_redirect_topup_checkout_params.rbi} +14 -6
- data/rbi/x_twitter_scraper/models/credit_retrieve_balance_response.rbi +35 -9
- data/rbi/x_twitter_scraper/models/{integration_list_deliveries_params.rbi → credit_retrieve_topup_status_params.rbi} +8 -17
- data/rbi/x_twitter_scraper/models/credit_retrieve_topup_status_response.rbi +107 -0
- data/rbi/x_twitter_scraper/models/credit_topup_balance_params.rbi +20 -6
- data/rbi/x_twitter_scraper/models/credit_topup_balance_response.rbi +19 -5
- data/rbi/x_twitter_scraper/models/draft_list_params.rbi +8 -2
- data/rbi/x_twitter_scraper/models/draw_detail.rbi +2 -0
- data/rbi/x_twitter_scraper/models/draw_export_params.rbi +3 -12
- data/rbi/x_twitter_scraper/models/draw_list_item.rbi +2 -0
- data/rbi/x_twitter_scraper/models/draw_list_params.rbi +16 -10
- data/rbi/x_twitter_scraper/models/draw_run_response.rbi +15 -1
- data/rbi/x_twitter_scraper/models/embedded_tweet.rbi +255 -0
- data/rbi/x_twitter_scraper/models/error.rbi +865 -87
- data/rbi/x_twitter_scraper/models/event.rbi +63 -4
- data/rbi/x_twitter_scraper/models/event_detail.rbi +73 -5
- data/rbi/x_twitter_scraper/models/event_list_params.rbi +16 -10
- data/rbi/x_twitter_scraper/models/event_type.rbi +58 -4
- data/rbi/x_twitter_scraper/models/extraction_estimate_cost_params.rbi +580 -2
- data/rbi/x_twitter_scraper/models/extraction_estimate_cost_response.rbi +98 -14
- data/rbi/x_twitter_scraper/models/extraction_export_results_params.rbi +3 -13
- data/rbi/x_twitter_scraper/models/extraction_job.rbi +15 -0
- data/rbi/x_twitter_scraper/models/extraction_list_params.rbi +31 -10
- data/rbi/x_twitter_scraper/models/extraction_retrieve_params.rbi +8 -8
- data/rbi/x_twitter_scraper/models/extraction_retrieve_response.rbi +2 -2
- data/rbi/x_twitter_scraper/models/extraction_run_params.rbi +546 -2
- data/rbi/x_twitter_scraper/models/extraction_run_response.rbi +15 -0
- data/rbi/x_twitter_scraper/models/guest_wallet_amount.rbi +39 -0
- data/rbi/x_twitter_scraper/models/guest_wallet_create_params.rbi +58 -0
- data/rbi/x_twitter_scraper/models/guest_wallet_create_response.rbi +243 -0
- data/rbi/x_twitter_scraper/models/{integration_list_params.rbi → guest_wallet_retrieve_status_params.rbi} +2 -2
- data/rbi/x_twitter_scraper/models/guest_wallet_retrieve_status_response.rbi +402 -0
- data/rbi/x_twitter_scraper/models/guest_wallet_topup_params.rbi +58 -0
- data/rbi/x_twitter_scraper/models/guest_wallet_topup_response.rbi +293 -0
- data/rbi/x_twitter_scraper/models/monitor.rbi +8 -0
- data/rbi/x_twitter_scraper/models/monitor_create_response.rbi +14 -0
- data/rbi/x_twitter_scraper/models/monitors/keyword_create_params.rbi +56 -0
- data/rbi/x_twitter_scraper/models/monitors/keyword_create_response.rbi +75 -0
- data/rbi/x_twitter_scraper/models/monitors/keyword_deactivate_params.rbi +40 -0
- data/rbi/x_twitter_scraper/models/monitors/keyword_deactivate_response.rbi +28 -0
- data/rbi/x_twitter_scraper/models/monitors/keyword_list_params.rbi +34 -0
- data/rbi/x_twitter_scraper/models/monitors/keyword_list_response.rbi +123 -0
- data/rbi/x_twitter_scraper/models/monitors/keyword_retrieve_params.rbi +40 -0
- data/rbi/x_twitter_scraper/models/monitors/keyword_retrieve_response.rbi +75 -0
- data/rbi/x_twitter_scraper/models/monitors/keyword_update_params.rbi +72 -0
- data/rbi/x_twitter_scraper/models/monitors/keyword_update_response.rbi +75 -0
- data/rbi/x_twitter_scraper/models/paginated_tweets.rbi +8 -4
- data/rbi/x_twitter_scraper/models/paginated_users.rbi +8 -4
- data/rbi/x_twitter_scraper/models/radar_item.rbi +131 -6
- data/rbi/x_twitter_scraper/models/radar_retrieve_trending_topics_params.rbi +109 -20
- data/rbi/x_twitter_scraper/models/radar_retrieve_trending_topics_response.rbi +22 -5
- data/rbi/x_twitter_scraper/models/search_tweet.rbi +316 -0
- data/rbi/x_twitter_scraper/models/subscribe_create_params.rbi +62 -2
- data/rbi/x_twitter_scraper/models/subscribe_create_response.rbi +10 -23
- data/rbi/x_twitter_scraper/models/trend_list_params.rbi +4 -4
- data/rbi/x_twitter_scraper/models/tweet_media.rbi +130 -0
- data/rbi/x_twitter_scraper/models/user_profile.rbi +346 -0
- data/rbi/x_twitter_scraper/models/webhook.rbi +57 -0
- data/rbi/x_twitter_scraper/models/webhook_create_response.rbi +2 -0
- data/rbi/x_twitter_scraper/models/{api_key_revoke_params.rbi → webhook_resume_params.rbi} +2 -2
- data/rbi/x_twitter_scraper/models/webhook_resume_response.rbi +55 -0
- data/rbi/x_twitter_scraper/models/x/account_connection_challenge_submit_params.rbi +54 -0
- data/rbi/x_twitter_scraper/models/x/account_connection_challenge_submit_response.rbi +131 -0
- data/rbi/x_twitter_scraper/models/x/account_create_params.rbi +0 -11
- data/rbi/x_twitter_scraper/models/x/account_create_response.rbi +79 -1
- data/rbi/x_twitter_scraper/models/x/account_reauth_params.rbi +11 -0
- data/rbi/x_twitter_scraper/models/x/account_reauth_response.rbi +96 -5
- data/rbi/x_twitter_scraper/models/x/bookmark_retrieve_folders_response.rbi +9 -1
- data/rbi/x_twitter_scraper/models/x/communities/join_create_response.rbi +30 -0
- data/rbi/x_twitter_scraper/models/x/communities/join_delete_all_response.rbi +30 -0
- data/rbi/x_twitter_scraper/models/x/communities/tweet_list_by_community_params.rbi +19 -0
- data/rbi/x_twitter_scraper/models/x/communities/tweet_list_params.rbi +85 -10
- data/rbi/x_twitter_scraper/models/x/community_retrieve_info_response.rbi +115 -0
- data/rbi/x_twitter_scraper/models/x/community_retrieve_members_params.rbi +15 -0
- data/rbi/x_twitter_scraper/models/x/community_retrieve_search_params.rbi +79 -4
- data/rbi/x_twitter_scraper/models/x/dm_retrieve_history_params.rbi +10 -0
- data/rbi/x_twitter_scraper/models/x/dm_retrieve_history_response.rbi +20 -13
- data/rbi/x_twitter_scraper/models/x/dm_send_params.rbi +2 -9
- data/rbi/x_twitter_scraper/models/x/follower_check_params.rbi +4 -4
- data/rbi/x_twitter_scraper/models/x/list_retrieve_followers_params.rbi +17 -0
- data/rbi/x_twitter_scraper/models/x/list_retrieve_members_params.rbi +11 -0
- data/rbi/x_twitter_scraper/models/x/list_retrieve_tweets_params.rbi +19 -0
- data/rbi/x_twitter_scraper/models/x/media_download_params.rbi +24 -2
- data/rbi/x_twitter_scraper/models/x/media_upload_params.rbi +9 -18
- data/rbi/x_twitter_scraper/models/x/media_upload_response.rbi +20 -5
- data/rbi/x_twitter_scraper/models/x/profile_update_avatar_params.rbi +9 -9
- data/rbi/x_twitter_scraper/models/x/profile_update_banner_params.rbi +9 -9
- data/rbi/x_twitter_scraper/models/x/tweet_author.rbi +8 -39
- data/rbi/x_twitter_scraper/models/x/tweet_create_params.rbi +23 -12
- data/rbi/x_twitter_scraper/models/x/tweet_create_response.rbi +41 -5
- data/rbi/x_twitter_scraper/models/x/tweet_detail.rbi +156 -115
- data/rbi/x_twitter_scraper/models/x/tweet_get_favoriters_params.rbi +17 -0
- data/rbi/x_twitter_scraper/models/x/tweet_get_quotes_params.rbi +508 -0
- data/rbi/x_twitter_scraper/models/x/tweet_get_replies_params.rbi +512 -0
- data/rbi/x_twitter_scraper/models/x/tweet_get_retweeters_params.rbi +17 -0
- data/rbi/x_twitter_scraper/models/x/tweet_get_thread_params.rbi +19 -0
- data/rbi/x_twitter_scraper/models/x/tweet_retrieve_response.rbi +8 -4
- data/rbi/x_twitter_scraper/models/x/tweet_search_params.rbi +557 -7
- data/rbi/x_twitter_scraper/models/x/user_remove_follower_params.rbi +54 -0
- data/rbi/x_twitter_scraper/models/x/user_remove_follower_response.rbi +28 -0
- data/rbi/x_twitter_scraper/models/x/user_retrieve_batch_params.rbi +4 -2
- data/rbi/x_twitter_scraper/models/x/user_retrieve_batch_response.rbi +102 -0
- data/rbi/x_twitter_scraper/models/x/user_retrieve_followers_params.rbi +30 -2
- data/rbi/x_twitter_scraper/models/x/user_retrieve_followers_you_know_params.rbi +17 -0
- data/rbi/x_twitter_scraper/models/x/user_retrieve_following_params.rbi +30 -2
- data/rbi/x_twitter_scraper/models/x/user_retrieve_likes_params.rbi +520 -0
- data/rbi/x_twitter_scraper/models/x/user_retrieve_media_params.rbi +520 -0
- data/rbi/x_twitter_scraper/models/x/user_retrieve_mentions_params.rbi +523 -0
- data/rbi/x_twitter_scraper/models/x/user_retrieve_replies_params.rbi +591 -0
- data/rbi/x_twitter_scraper/models/x/user_retrieve_tweets_params.rbi +523 -0
- data/rbi/x_twitter_scraper/models/x/user_retrieve_verified_followers_params.rbi +17 -0
- data/rbi/x_twitter_scraper/models/x/write_action_retrieve_params.rbi +40 -0
- data/rbi/x_twitter_scraper/models/x/write_action_retrieve_response.rbi +313 -0
- data/rbi/x_twitter_scraper/models/x/x_account.rbi +87 -4
- data/rbi/x_twitter_scraper/models/x/x_account_detail.rbi +58 -10
- data/rbi/x_twitter_scraper/models/x_get_article_response.rbi +308 -12
- data/rbi/x_twitter_scraper/models/x_get_home_timeline_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x_get_notifications_params.rbi +3 -3
- data/rbi/x_twitter_scraper/models/x_get_trends_params.rbi +30 -2
- data/rbi/x_twitter_scraper/models.rbi +24 -22
- data/rbi/x_twitter_scraper/resources/account.rbi +1 -1
- data/rbi/x_twitter_scraper/resources/compose.rbi +1 -1
- data/rbi/x_twitter_scraper/resources/credits.rbi +37 -5
- data/rbi/x_twitter_scraper/resources/drafts.rbi +7 -4
- data/rbi/x_twitter_scraper/resources/draws.rbi +14 -8
- data/rbi/x_twitter_scraper/resources/events.rbi +8 -5
- data/rbi/x_twitter_scraper/resources/extractions.rbi +210 -11
- data/rbi/x_twitter_scraper/resources/guest_wallets.rbi +76 -0
- data/rbi/x_twitter_scraper/resources/monitors/keywords.rbi +95 -0
- data/rbi/x_twitter_scraper/resources/monitors.rbi +12 -5
- data/rbi/x_twitter_scraper/resources/radar.rbi +12 -8
- data/rbi/x_twitter_scraper/resources/styles.rbi +1 -1
- data/rbi/x_twitter_scraper/resources/subscribe.rbi +9 -3
- data/rbi/x_twitter_scraper/resources/support/tickets.rbi +3 -3
- data/rbi/x_twitter_scraper/resources/trends.rbi +4 -4
- data/rbi/x_twitter_scraper/resources/webhooks.rbi +19 -5
- data/rbi/x_twitter_scraper/resources/x/account_connection_challenges.rbi +36 -0
- data/rbi/x_twitter_scraper/resources/x/accounts.rbi +6 -6
- data/rbi/x_twitter_scraper/resources/x/bookmarks.rbi +1 -1
- data/rbi/x_twitter_scraper/resources/x/communities/join.rbi +8 -4
- data/rbi/x_twitter_scraper/resources/x/communities/tweets.rbi +25 -7
- data/rbi/x_twitter_scraper/resources/x/communities.rbi +23 -7
- data/rbi/x_twitter_scraper/resources/x/dm.rbi +5 -2
- data/rbi/x_twitter_scraper/resources/x/followers.rbi +4 -4
- data/rbi/x_twitter_scraper/resources/x/lists.rbi +20 -4
- data/rbi/x_twitter_scraper/resources/x/media.rbi +13 -9
- data/rbi/x_twitter_scraper/resources/x/profile.rbi +8 -8
- data/rbi/x_twitter_scraper/resources/x/tweets.rbi +309 -16
- data/rbi/x_twitter_scraper/resources/x/users.rbi +520 -18
- data/rbi/x_twitter_scraper/resources/x/write_actions.rbi +31 -0
- data/rbi/x_twitter_scraper/resources/x.rbi +30 -12
- data/sig/x_twitter_scraper/client.rbs +2 -6
- data/sig/x_twitter_scraper/models/account_retrieve_response.rbs +106 -19
- data/sig/x_twitter_scraper/models/content_disclosure.rbs +78 -0
- data/sig/x_twitter_scraper/models/{api_key_create_params.rbs → credit_redirect_topup_checkout_params.rbs} +7 -8
- data/sig/x_twitter_scraper/models/credit_retrieve_balance_response.rbs +22 -12
- data/sig/x_twitter_scraper/models/{integration_list_deliveries_params.rbs → credit_retrieve_topup_status_params.rbs} +6 -12
- data/sig/x_twitter_scraper/models/credit_retrieve_topup_status_response.rbs +45 -0
- data/sig/x_twitter_scraper/models/credit_topup_balance_params.rbs +11 -4
- data/sig/x_twitter_scraper/models/credit_topup_balance_response.rbs +6 -4
- data/sig/x_twitter_scraper/models/draw_export_params.rbs +2 -6
- data/sig/x_twitter_scraper/models/draw_list_params.rbs +5 -5
- data/sig/x_twitter_scraper/models/embedded_tweet.rbs +187 -0
- data/sig/x_twitter_scraper/models/error.rbs +341 -54
- data/sig/x_twitter_scraper/models/event.rbs +34 -2
- data/sig/x_twitter_scraper/models/event_detail.rbs +34 -2
- data/sig/x_twitter_scraper/models/event_list_params.rbs +5 -5
- data/sig/x_twitter_scraper/models/event_type.rbs +34 -4
- data/sig/x_twitter_scraper/models/extraction_estimate_cost_params.rbs +269 -1
- data/sig/x_twitter_scraper/models/extraction_estimate_cost_response.rbs +46 -12
- data/sig/x_twitter_scraper/models/extraction_export_results_params.rbs +2 -6
- data/sig/x_twitter_scraper/models/extraction_job.rbs +6 -0
- data/sig/x_twitter_scraper/models/extraction_list_params.rbs +11 -5
- data/sig/x_twitter_scraper/models/extraction_retrieve_params.rbs +5 -5
- data/sig/x_twitter_scraper/models/extraction_run_params.rbs +269 -1
- data/sig/x_twitter_scraper/models/extraction_run_response.rbs +6 -0
- data/sig/x_twitter_scraper/models/guest_wallet_amount.rbs +15 -0
- data/sig/x_twitter_scraper/models/guest_wallet_create_params.rbs +32 -0
- data/sig/x_twitter_scraper/models/guest_wallet_create_response.rbs +125 -0
- data/sig/x_twitter_scraper/models/{api_key_list_params.rbs → guest_wallet_retrieve_status_params.rbs} +2 -2
- data/sig/x_twitter_scraper/models/guest_wallet_retrieve_status_response.rbs +163 -0
- data/sig/x_twitter_scraper/models/guest_wallet_topup_params.rbs +32 -0
- data/sig/x_twitter_scraper/models/guest_wallet_topup_response.rbs +146 -0
- data/sig/x_twitter_scraper/models/monitor.rbs +5 -0
- data/sig/x_twitter_scraper/models/monitor_create_response.rbs +10 -0
- data/sig/x_twitter_scraper/models/monitors/keyword_create_params.rbs +33 -0
- data/sig/x_twitter_scraper/models/monitors/keyword_create_response.rbs +47 -0
- data/sig/x_twitter_scraper/models/monitors/keyword_deactivate_params.rbs +25 -0
- data/sig/x_twitter_scraper/models/monitors/keyword_deactivate_response.rbs +15 -0
- data/sig/x_twitter_scraper/models/monitors/keyword_list_params.rbs +19 -0
- data/sig/x_twitter_scraper/models/monitors/keyword_list_response.rbs +69 -0
- data/sig/x_twitter_scraper/models/monitors/keyword_retrieve_params.rbs +25 -0
- data/sig/x_twitter_scraper/models/monitors/keyword_retrieve_response.rbs +47 -0
- data/sig/x_twitter_scraper/models/monitors/keyword_update_params.rbs +44 -0
- data/sig/x_twitter_scraper/models/monitors/keyword_update_response.rbs +47 -0
- data/sig/x_twitter_scraper/models/paginated_tweets.rbs +4 -4
- data/sig/x_twitter_scraper/models/paginated_users.rbs +4 -4
- data/sig/x_twitter_scraper/models/radar_item.rbs +81 -8
- data/sig/x_twitter_scraper/models/radar_retrieve_trending_topics_params.rbs +44 -10
- data/sig/x_twitter_scraper/models/radar_retrieve_trending_topics_response.rbs +14 -4
- data/sig/x_twitter_scraper/models/search_tweet.rbs +205 -0
- data/sig/x_twitter_scraper/models/subscribe_create_params.rbs +28 -3
- data/sig/x_twitter_scraper/models/subscribe_create_response.rbs +10 -16
- data/sig/x_twitter_scraper/models/tweet_media.rbs +72 -0
- data/sig/x_twitter_scraper/models/user_profile.rbs +247 -0
- data/sig/x_twitter_scraper/models/webhook.rbs +27 -0
- data/sig/x_twitter_scraper/models/{api_key_revoke_params.rbs → webhook_resume_params.rbs} +2 -2
- data/sig/x_twitter_scraper/models/webhook_resume_response.rbs +26 -0
- data/sig/x_twitter_scraper/models/x/account_connection_challenge_submit_params.rbs +30 -0
- data/sig/x_twitter_scraper/models/x/account_connection_challenge_submit_response.rbs +68 -0
- data/sig/x_twitter_scraper/models/x/account_create_params.rbs +0 -7
- data/sig/x_twitter_scraper/models/x/account_create_response.rbs +37 -1
- data/sig/x_twitter_scraper/models/x/account_reauth_params.rbs +7 -1
- data/sig/x_twitter_scraper/models/x/account_reauth_response.rbs +51 -3
- data/sig/x_twitter_scraper/models/x/communities/join_create_response.rbs +17 -0
- data/sig/x_twitter_scraper/models/x/communities/join_delete_all_response.rbs +17 -0
- data/sig/x_twitter_scraper/models/x/communities/tweet_list_by_community_params.rbs +7 -1
- data/sig/x_twitter_scraper/models/x/communities/tweet_list_params.rbs +34 -5
- data/sig/x_twitter_scraper/models/x/community_retrieve_info_response.rbs +66 -0
- data/sig/x_twitter_scraper/models/x/community_retrieve_members_params.rbs +7 -1
- data/sig/x_twitter_scraper/models/x/community_retrieve_search_params.rbs +34 -5
- data/sig/x_twitter_scraper/models/x/dm_retrieve_history_params.rbs +5 -1
- data/sig/x_twitter_scraper/models/x/dm_retrieve_history_response.rbs +13 -10
- data/sig/x_twitter_scraper/models/x/dm_send_params.rbs +1 -8
- data/sig/x_twitter_scraper/models/x/list_retrieve_followers_params.rbs +7 -1
- data/sig/x_twitter_scraper/models/x/list_retrieve_members_params.rbs +7 -1
- data/sig/x_twitter_scraper/models/x/list_retrieve_tweets_params.rbs +7 -0
- data/sig/x_twitter_scraper/models/x/media_download_params.rbs +18 -1
- data/sig/x_twitter_scraper/models/x/media_upload_params.rbs +4 -14
- data/sig/x_twitter_scraper/models/x/media_upload_response.rbs +10 -3
- data/sig/x_twitter_scraper/models/x/profile_update_avatar_params.rbs +4 -4
- data/sig/x_twitter_scraper/models/x/profile_update_banner_params.rbs +4 -4
- data/sig/x_twitter_scraper/models/x/tweet_author.rbs +8 -31
- data/sig/x_twitter_scraper/models/x/tweet_create_params.rbs +13 -11
- data/sig/x_twitter_scraper/models/x/tweet_create_response.rbs +30 -3
- data/sig/x_twitter_scraper/models/x/tweet_detail.rbs +99 -61
- data/sig/x_twitter_scraper/models/x/tweet_get_favoriters_params.rbs +7 -1
- data/sig/x_twitter_scraper/models/x/tweet_get_quotes_params.rbs +242 -1
- data/sig/x_twitter_scraper/models/x/tweet_get_replies_params.rbs +247 -1
- data/sig/x_twitter_scraper/models/x/tweet_get_retweeters_params.rbs +7 -1
- data/sig/x_twitter_scraper/models/x/tweet_get_thread_params.rbs +7 -1
- data/sig/x_twitter_scraper/models/x/tweet_search_params.rbs +277 -1
- data/sig/x_twitter_scraper/models/x/user_remove_follower_params.rbs +30 -0
- data/sig/x_twitter_scraper/models/x/user_remove_follower_response.rbs +15 -0
- data/sig/x_twitter_scraper/models/x/user_retrieve_batch_response.rbs +57 -0
- data/sig/x_twitter_scraper/models/x/user_retrieve_followers_params.rbs +19 -1
- data/sig/x_twitter_scraper/models/x/user_retrieve_followers_you_know_params.rbs +7 -1
- data/sig/x_twitter_scraper/models/x/user_retrieve_following_params.rbs +19 -1
- data/sig/x_twitter_scraper/models/x/user_retrieve_likes_params.rbs +245 -1
- data/sig/x_twitter_scraper/models/x/user_retrieve_media_params.rbs +245 -1
- data/sig/x_twitter_scraper/models/x/user_retrieve_mentions_params.rbs +247 -1
- data/sig/x_twitter_scraper/models/x/user_retrieve_replies_params.rbs +283 -0
- data/sig/x_twitter_scraper/models/x/user_retrieve_tweets_params.rbs +242 -1
- data/sig/x_twitter_scraper/models/x/user_retrieve_verified_followers_params.rbs +7 -1
- data/sig/x_twitter_scraper/models/x/write_action_retrieve_params.rbs +25 -0
- data/sig/x_twitter_scraper/models/x/write_action_retrieve_response.rbs +177 -0
- data/sig/x_twitter_scraper/models/x/x_account.rbs +41 -3
- data/sig/x_twitter_scraper/models/x/x_account_detail.rbs +26 -7
- data/sig/x_twitter_scraper/models/x_get_article_response.rbs +193 -6
- data/sig/x_twitter_scraper/models/x_get_trends_params.rbs +20 -3
- data/sig/x_twitter_scraper/models.rbs +21 -21
- data/sig/x_twitter_scraper/resources/credits.rbs +12 -1
- data/sig/x_twitter_scraper/resources/draws.rbs +2 -2
- data/sig/x_twitter_scraper/resources/events.rbs +1 -1
- data/sig/x_twitter_scraper/resources/extractions.rbs +61 -3
- data/sig/x_twitter_scraper/resources/guest_wallets.rbs +25 -0
- data/sig/x_twitter_scraper/resources/monitors/keywords.rbs +36 -0
- data/sig/x_twitter_scraper/resources/monitors.rbs +2 -0
- data/sig/x_twitter_scraper/resources/radar.rbs +3 -2
- data/sig/x_twitter_scraper/resources/subscribe.rbs +1 -0
- data/sig/x_twitter_scraper/resources/webhooks.rbs +5 -0
- data/sig/x_twitter_scraper/resources/x/account_connection_challenges.rbs +15 -0
- data/sig/x_twitter_scraper/resources/x/accounts.rbs +1 -1
- data/sig/x_twitter_scraper/resources/x/communities/join.rbs +2 -2
- data/sig/x_twitter_scraper/resources/x/communities/tweets.rbs +4 -1
- data/sig/x_twitter_scraper/resources/x/communities.rbs +4 -1
- data/sig/x_twitter_scraper/resources/x/dm.rbs +1 -1
- data/sig/x_twitter_scraper/resources/x/lists.rbs +3 -0
- data/sig/x_twitter_scraper/resources/x/media.rbs +3 -2
- data/sig/x_twitter_scraper/resources/x/profile.rbs +2 -2
- data/sig/x_twitter_scraper/resources/x/tweets.rbs +88 -2
- data/sig/x_twitter_scraper/resources/x/users.rbs +151 -2
- data/sig/x_twitter_scraper/resources/x/write_actions.rbs +14 -0
- data/sig/x_twitter_scraper/resources/x.rbs +6 -0
- metadata +141 -84
- data/lib/x_twitter_scraper/models/api_key.rb +0 -47
- data/lib/x_twitter_scraper/models/api_key_create_params.rb +0 -20
- data/lib/x_twitter_scraper/models/api_key_create_response.rb +0 -40
- data/lib/x_twitter_scraper/models/api_key_list_params.rb +0 -14
- data/lib/x_twitter_scraper/models/api_key_list_response.rb +0 -16
- data/lib/x_twitter_scraper/models/api_key_revoke_response.rb +0 -16
- data/lib/x_twitter_scraper/models/integration.rb +0 -93
- data/lib/x_twitter_scraper/models/integration_create_params.rb +0 -58
- data/lib/x_twitter_scraper/models/integration_delete_params.rb +0 -20
- data/lib/x_twitter_scraper/models/integration_delete_response.rb +0 -16
- data/lib/x_twitter_scraper/models/integration_delivery.rb +0 -71
- data/lib/x_twitter_scraper/models/integration_list_deliveries_params.rb +0 -29
- data/lib/x_twitter_scraper/models/integration_list_deliveries_response.rb +0 -17
- data/lib/x_twitter_scraper/models/integration_list_response.rb +0 -16
- data/lib/x_twitter_scraper/models/integration_retrieve_params.rb +0 -20
- data/lib/x_twitter_scraper/models/integration_send_test_params.rb +0 -20
- data/lib/x_twitter_scraper/models/integration_send_test_response.rb +0 -16
- data/lib/x_twitter_scraper/models/integration_update_params.rb +0 -77
- data/lib/x_twitter_scraper/models/x/community_action_result.rb +0 -31
- data/lib/x_twitter_scraper/models/x/search_tweet.rb +0 -119
- data/lib/x_twitter_scraper/models/x/user_profile.rb +0 -80
- data/lib/x_twitter_scraper/resources/api_keys.rb +0 -77
- data/lib/x_twitter_scraper/resources/bot/platform_links.rb +0 -16
- data/lib/x_twitter_scraper/resources/bot.rb +0 -18
- data/lib/x_twitter_scraper/resources/integrations.rb +0 -182
- data/rbi/x_twitter_scraper/models/api_key.rbi +0 -69
- data/rbi/x_twitter_scraper/models/api_key_create_params.rbi +0 -41
- data/rbi/x_twitter_scraper/models/api_key_create_response.rbi +0 -56
- data/rbi/x_twitter_scraper/models/api_key_list_params.rbi +0 -32
- data/rbi/x_twitter_scraper/models/api_key_list_response.rbi +0 -30
- data/rbi/x_twitter_scraper/models/api_key_revoke_response.rbi +0 -26
- data/rbi/x_twitter_scraper/models/integration.rbi +0 -117
- data/rbi/x_twitter_scraper/models/integration_create_params.rbi +0 -95
- data/rbi/x_twitter_scraper/models/integration_delete_params.rbi +0 -38
- data/rbi/x_twitter_scraper/models/integration_delete_response.rbi +0 -26
- data/rbi/x_twitter_scraper/models/integration_delivery.rbi +0 -108
- data/rbi/x_twitter_scraper/models/integration_list_deliveries_response.rbi +0 -34
- data/rbi/x_twitter_scraper/models/integration_list_response.rbi +0 -34
- data/rbi/x_twitter_scraper/models/integration_send_test_params.rbi +0 -38
- data/rbi/x_twitter_scraper/models/integration_send_test_response.rbi +0 -26
- data/rbi/x_twitter_scraper/models/integration_update_params.rbi +0 -115
- data/rbi/x_twitter_scraper/models/x/community_action_result.rbi +0 -49
- data/rbi/x_twitter_scraper/models/x/search_tweet.rbi +0 -181
- data/rbi/x_twitter_scraper/models/x/user_profile.rbi +0 -125
- data/rbi/x_twitter_scraper/resources/api_keys.rbi +0 -46
- data/rbi/x_twitter_scraper/resources/bot/platform_links.rbi +0 -16
- data/rbi/x_twitter_scraper/resources/bot.rbi +0 -15
- data/rbi/x_twitter_scraper/resources/integrations.rbi +0 -133
- data/sig/x_twitter_scraper/models/api_key.rbs +0 -47
- data/sig/x_twitter_scraper/models/api_key_create_response.rbs +0 -40
- data/sig/x_twitter_scraper/models/api_key_list_response.rbs +0 -13
- data/sig/x_twitter_scraper/models/api_key_revoke_response.rbs +0 -13
- data/sig/x_twitter_scraper/models/integration.rbs +0 -78
- data/sig/x_twitter_scraper/models/integration_create_params.rbs +0 -51
- data/sig/x_twitter_scraper/models/integration_delete_params.rbs +0 -23
- data/sig/x_twitter_scraper/models/integration_delete_response.rbs +0 -13
- data/sig/x_twitter_scraper/models/integration_delivery.rbs +0 -75
- data/sig/x_twitter_scraper/models/integration_list_deliveries_response.rbs +0 -18
- data/sig/x_twitter_scraper/models/integration_list_params.rbs +0 -15
- data/sig/x_twitter_scraper/models/integration_list_response.rbs +0 -16
- data/sig/x_twitter_scraper/models/integration_retrieve_params.rbs +0 -23
- data/sig/x_twitter_scraper/models/integration_send_test_params.rbs +0 -23
- data/sig/x_twitter_scraper/models/integration_send_test_response.rbs +0 -13
- data/sig/x_twitter_scraper/models/integration_update_params.rbs +0 -77
- data/sig/x_twitter_scraper/models/x/community_action_result.rbs +0 -28
- data/sig/x_twitter_scraper/models/x/search_tweet.rbs +0 -121
- data/sig/x_twitter_scraper/models/x/user_profile.rbs +0 -88
- data/sig/x_twitter_scraper/resources/api_keys.rbs +0 -21
- data/sig/x_twitter_scraper/resources/bot/platform_links.rbs +0 -9
- data/sig/x_twitter_scraper/resources/bot.rbs +0 -9
- data/sig/x_twitter_scraper/resources/integrations.rbs +0 -52
|
@@ -3,18 +3,17 @@
|
|
|
3
3
|
module XTwitterScraper
|
|
4
4
|
module Resources
|
|
5
5
|
class X
|
|
6
|
-
# X data lookups (subscription required)
|
|
7
6
|
class Users
|
|
8
7
|
# X write actions (tweets, likes, follows, DMs)
|
|
9
8
|
sig { returns(XTwitterScraper::Resources::X::Users::Follow) }
|
|
10
9
|
attr_reader :follow
|
|
11
10
|
|
|
12
|
-
#
|
|
11
|
+
# Get user profile with follower counts and verification
|
|
13
12
|
sig do
|
|
14
13
|
params(
|
|
15
14
|
id: String,
|
|
16
15
|
request_options: XTwitterScraper::RequestOptions::OrHash
|
|
17
|
-
).returns(XTwitterScraper::
|
|
16
|
+
).returns(XTwitterScraper::UserProfile)
|
|
18
17
|
end
|
|
19
18
|
def retrieve(
|
|
20
19
|
# X username (without @) or user ID
|
|
@@ -23,25 +22,45 @@ module XTwitterScraper
|
|
|
23
22
|
)
|
|
24
23
|
end
|
|
25
24
|
|
|
26
|
-
#
|
|
25
|
+
# Remove follower
|
|
26
|
+
sig do
|
|
27
|
+
params(
|
|
28
|
+
id: String,
|
|
29
|
+
account: String,
|
|
30
|
+
request_options: XTwitterScraper::RequestOptions::OrHash
|
|
31
|
+
).returns(XTwitterScraper::Models::X::UserRemoveFollowerResponse)
|
|
32
|
+
end
|
|
33
|
+
def remove_follower(
|
|
34
|
+
# User ID to remove from your followers
|
|
35
|
+
id,
|
|
36
|
+
# X account identifier (@username or account ID)
|
|
37
|
+
account:,
|
|
38
|
+
request_options: {}
|
|
39
|
+
)
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
# Look up multiple users by IDs in one call
|
|
27
43
|
sig do
|
|
28
44
|
params(
|
|
29
45
|
ids: String,
|
|
30
46
|
request_options: XTwitterScraper::RequestOptions::OrHash
|
|
31
|
-
).returns(XTwitterScraper::
|
|
47
|
+
).returns(XTwitterScraper::Models::X::UserRetrieveBatchResponse)
|
|
32
48
|
end
|
|
33
49
|
def retrieve_batch(
|
|
34
|
-
# Comma-separated user IDs (
|
|
50
|
+
# Comma-separated numeric user IDs (1-100 values). Duplicate IDs are ignored while
|
|
51
|
+
# preserving first-seen order.
|
|
35
52
|
ids:,
|
|
36
53
|
request_options: {}
|
|
37
54
|
)
|
|
38
55
|
end
|
|
39
56
|
|
|
40
|
-
#
|
|
57
|
+
# List followers of a user
|
|
41
58
|
sig do
|
|
42
59
|
params(
|
|
43
60
|
id: String,
|
|
61
|
+
after: String,
|
|
44
62
|
cursor: String,
|
|
63
|
+
limit: Integer,
|
|
45
64
|
page_size: Integer,
|
|
46
65
|
request_options: XTwitterScraper::RequestOptions::OrHash
|
|
47
66
|
).returns(XTwitterScraper::PaginatedUsers)
|
|
@@ -49,19 +68,27 @@ module XTwitterScraper
|
|
|
49
68
|
def retrieve_followers(
|
|
50
69
|
# User ID or username
|
|
51
70
|
id,
|
|
71
|
+
# Legacy cursor alias. Prefer cursor.
|
|
72
|
+
after: nil,
|
|
52
73
|
# Pagination cursor for followers list
|
|
53
74
|
cursor: nil,
|
|
54
|
-
#
|
|
75
|
+
# Legacy integer page size alias for following lists. Prefer pageSize.
|
|
76
|
+
limit: nil,
|
|
77
|
+
# Maximum user profiles requested from this page (20-200, default 200). The
|
|
78
|
+
# response can contain fewer profiles because the source returned fewer or
|
|
79
|
+
# remaining credits cover fewer results. Keep requesting next_cursor while
|
|
80
|
+
# has_next_page is true. The deprecated limit and count aliases remain accepted.
|
|
55
81
|
page_size: nil,
|
|
56
82
|
request_options: {}
|
|
57
83
|
)
|
|
58
84
|
end
|
|
59
85
|
|
|
60
|
-
#
|
|
86
|
+
# List mutual followers between you and a user
|
|
61
87
|
sig do
|
|
62
88
|
params(
|
|
63
89
|
id: String,
|
|
64
90
|
cursor: String,
|
|
91
|
+
page_size: Integer,
|
|
65
92
|
request_options: XTwitterScraper::RequestOptions::OrHash
|
|
66
93
|
).returns(XTwitterScraper::PaginatedUsers)
|
|
67
94
|
end
|
|
@@ -70,15 +97,22 @@ module XTwitterScraper
|
|
|
70
97
|
id,
|
|
71
98
|
# Pagination cursor for followers-you-know
|
|
72
99
|
cursor: nil,
|
|
100
|
+
# Maximum user profiles requested from this page (20-200, default 200). The
|
|
101
|
+
# response can contain fewer profiles because the source returned fewer or
|
|
102
|
+
# remaining credits cover fewer results. Keep requesting next_cursor while
|
|
103
|
+
# has_next_page is true. The deprecated limit and count aliases remain accepted.
|
|
104
|
+
page_size: nil,
|
|
73
105
|
request_options: {}
|
|
74
106
|
)
|
|
75
107
|
end
|
|
76
108
|
|
|
77
|
-
#
|
|
109
|
+
# List accounts a user follows
|
|
78
110
|
sig do
|
|
79
111
|
params(
|
|
80
112
|
id: String,
|
|
113
|
+
after: String,
|
|
81
114
|
cursor: String,
|
|
115
|
+
limit: Integer,
|
|
82
116
|
page_size: Integer,
|
|
83
117
|
request_options: XTwitterScraper::RequestOptions::OrHash
|
|
84
118
|
).returns(XTwitterScraper::PaginatedUsers)
|
|
@@ -86,67 +120,442 @@ module XTwitterScraper
|
|
|
86
120
|
def retrieve_following(
|
|
87
121
|
# User ID or username for following lookup
|
|
88
122
|
id,
|
|
123
|
+
# Legacy cursor alias. Prefer cursor.
|
|
124
|
+
after: nil,
|
|
89
125
|
# Pagination cursor for following list
|
|
90
126
|
cursor: nil,
|
|
91
|
-
#
|
|
127
|
+
# Legacy page size alias. Prefer pageSize.
|
|
128
|
+
limit: nil,
|
|
129
|
+
# Maximum user profiles requested from this page (20-200, default 200). The
|
|
130
|
+
# response can contain fewer profiles because the source returned fewer or
|
|
131
|
+
# remaining credits cover fewer results. Keep requesting next_cursor while
|
|
132
|
+
# has_next_page is true. The deprecated limit and count aliases remain accepted.
|
|
92
133
|
page_size: nil,
|
|
93
134
|
request_options: {}
|
|
94
135
|
)
|
|
95
136
|
end
|
|
96
137
|
|
|
97
|
-
#
|
|
138
|
+
# List tweets liked by a user
|
|
98
139
|
sig do
|
|
99
140
|
params(
|
|
100
141
|
id: String,
|
|
142
|
+
any_words: String,
|
|
143
|
+
cashtags: String,
|
|
144
|
+
conversation_id: String,
|
|
101
145
|
cursor: String,
|
|
146
|
+
exact_phrase: String,
|
|
147
|
+
exclude_words: String,
|
|
148
|
+
from_user: String,
|
|
149
|
+
hashtags: String,
|
|
150
|
+
in_reply_to_tweet_id: String,
|
|
151
|
+
language: String,
|
|
152
|
+
media_type:
|
|
153
|
+
XTwitterScraper::X::UserRetrieveLikesParams::MediaType::OrSymbol,
|
|
154
|
+
mentioning: String,
|
|
155
|
+
min_faves: Integer,
|
|
156
|
+
min_quotes: Integer,
|
|
157
|
+
min_replies: Integer,
|
|
158
|
+
min_retweets: Integer,
|
|
159
|
+
page_size: Integer,
|
|
160
|
+
quotes:
|
|
161
|
+
XTwitterScraper::X::UserRetrieveLikesParams::Quotes::OrSymbol,
|
|
162
|
+
quotes_of_tweet_id: String,
|
|
163
|
+
replies:
|
|
164
|
+
XTwitterScraper::X::UserRetrieveLikesParams::Replies::OrSymbol,
|
|
165
|
+
retweets:
|
|
166
|
+
XTwitterScraper::X::UserRetrieveLikesParams::Retweets::OrSymbol,
|
|
167
|
+
retweets_of_tweet_id: String,
|
|
168
|
+
since_date: Date,
|
|
169
|
+
to_user: String,
|
|
170
|
+
until_date: Date,
|
|
171
|
+
url: String,
|
|
172
|
+
verified_only: T::Boolean,
|
|
102
173
|
request_options: XTwitterScraper::RequestOptions::OrHash
|
|
103
174
|
).returns(XTwitterScraper::PaginatedTweets)
|
|
104
175
|
end
|
|
105
176
|
def retrieve_likes(
|
|
106
|
-
# User ID
|
|
177
|
+
# User ID or username
|
|
107
178
|
id,
|
|
179
|
+
# Words or quoted phrases where any one can match. Separate with spaces, commas,
|
|
180
|
+
# or lines.
|
|
181
|
+
any_words: nil,
|
|
182
|
+
# Cashtags separated by spaces, commas, or lines.
|
|
183
|
+
cashtags: nil,
|
|
184
|
+
# Conversation ID filter.
|
|
185
|
+
conversation_id: nil,
|
|
108
186
|
# Pagination cursor for liked tweets
|
|
109
187
|
cursor: nil,
|
|
188
|
+
# Exact phrase to match.
|
|
189
|
+
exact_phrase: nil,
|
|
190
|
+
# Words or quoted phrases to exclude. Separate with spaces, commas, or lines.
|
|
191
|
+
exclude_words: nil,
|
|
192
|
+
# Filter by author username.
|
|
193
|
+
from_user: nil,
|
|
194
|
+
# Hashtags separated by spaces, commas, or lines.
|
|
195
|
+
hashtags: nil,
|
|
196
|
+
# Only replies to this tweet ID.
|
|
197
|
+
in_reply_to_tweet_id: nil,
|
|
198
|
+
# Language code filter, e.g. en or tr.
|
|
199
|
+
language: nil,
|
|
200
|
+
# Filter by media type.
|
|
201
|
+
media_type: nil,
|
|
202
|
+
# Filter tweets mentioning a username.
|
|
203
|
+
mentioning: nil,
|
|
204
|
+
# Minimum likes threshold.
|
|
205
|
+
min_faves: nil,
|
|
206
|
+
# Minimum quote count threshold.
|
|
207
|
+
min_quotes: nil,
|
|
208
|
+
# Minimum replies threshold.
|
|
209
|
+
min_replies: nil,
|
|
210
|
+
# Minimum retweets threshold.
|
|
211
|
+
min_retweets: nil,
|
|
212
|
+
# Maximum items requested from this page (1-100, default 20). The response can
|
|
213
|
+
# contain fewer items because the source returned fewer, filters removed items, or
|
|
214
|
+
# remaining credits cover fewer results. Keep requesting next_cursor while
|
|
215
|
+
# has_next_page is true, even when a page is empty. The deprecated limit and count
|
|
216
|
+
# aliases remain accepted.
|
|
217
|
+
page_size: nil,
|
|
218
|
+
# Quote mode.
|
|
219
|
+
quotes: nil,
|
|
220
|
+
# Only quotes of this tweet ID.
|
|
221
|
+
quotes_of_tweet_id: nil,
|
|
222
|
+
# Reply mode.
|
|
223
|
+
replies: nil,
|
|
224
|
+
# Retweet mode.
|
|
225
|
+
retweets: nil,
|
|
226
|
+
# Only retweets of this tweet ID.
|
|
227
|
+
retweets_of_tweet_id: nil,
|
|
228
|
+
# Start date in YYYY-MM-DD format.
|
|
229
|
+
since_date: nil,
|
|
230
|
+
# Filter replies sent to a username.
|
|
231
|
+
to_user: nil,
|
|
232
|
+
# End date in YYYY-MM-DD format.
|
|
233
|
+
until_date: nil,
|
|
234
|
+
# URL substring or domain filter.
|
|
235
|
+
url: nil,
|
|
236
|
+
# Only return tweets from verified authors.
|
|
237
|
+
verified_only: nil,
|
|
110
238
|
request_options: {}
|
|
111
239
|
)
|
|
112
240
|
end
|
|
113
241
|
|
|
114
|
-
#
|
|
242
|
+
# List media tweets posted by a user
|
|
115
243
|
sig do
|
|
116
244
|
params(
|
|
117
245
|
id: String,
|
|
246
|
+
any_words: String,
|
|
247
|
+
cashtags: String,
|
|
248
|
+
conversation_id: String,
|
|
118
249
|
cursor: String,
|
|
250
|
+
exact_phrase: String,
|
|
251
|
+
exclude_words: String,
|
|
252
|
+
from_user: String,
|
|
253
|
+
hashtags: String,
|
|
254
|
+
in_reply_to_tweet_id: String,
|
|
255
|
+
language: String,
|
|
256
|
+
media_type:
|
|
257
|
+
XTwitterScraper::X::UserRetrieveMediaParams::MediaType::OrSymbol,
|
|
258
|
+
mentioning: String,
|
|
259
|
+
min_faves: Integer,
|
|
260
|
+
min_quotes: Integer,
|
|
261
|
+
min_replies: Integer,
|
|
262
|
+
min_retweets: Integer,
|
|
263
|
+
page_size: Integer,
|
|
264
|
+
quotes:
|
|
265
|
+
XTwitterScraper::X::UserRetrieveMediaParams::Quotes::OrSymbol,
|
|
266
|
+
quotes_of_tweet_id: String,
|
|
267
|
+
replies:
|
|
268
|
+
XTwitterScraper::X::UserRetrieveMediaParams::Replies::OrSymbol,
|
|
269
|
+
retweets:
|
|
270
|
+
XTwitterScraper::X::UserRetrieveMediaParams::Retweets::OrSymbol,
|
|
271
|
+
retweets_of_tweet_id: String,
|
|
272
|
+
since_date: Date,
|
|
273
|
+
to_user: String,
|
|
274
|
+
until_date: Date,
|
|
275
|
+
url: String,
|
|
276
|
+
verified_only: T::Boolean,
|
|
119
277
|
request_options: XTwitterScraper::RequestOptions::OrHash
|
|
120
278
|
).returns(XTwitterScraper::PaginatedTweets)
|
|
121
279
|
end
|
|
122
280
|
def retrieve_media(
|
|
123
|
-
# User ID for media lookup
|
|
281
|
+
# User ID or username for media lookup
|
|
124
282
|
id,
|
|
283
|
+
# Words or quoted phrases where any one can match. Separate with spaces, commas,
|
|
284
|
+
# or lines.
|
|
285
|
+
any_words: nil,
|
|
286
|
+
# Cashtags separated by spaces, commas, or lines.
|
|
287
|
+
cashtags: nil,
|
|
288
|
+
# Conversation ID filter.
|
|
289
|
+
conversation_id: nil,
|
|
125
290
|
# Pagination cursor for media tweets
|
|
126
291
|
cursor: nil,
|
|
292
|
+
# Exact phrase to match.
|
|
293
|
+
exact_phrase: nil,
|
|
294
|
+
# Words or quoted phrases to exclude. Separate with spaces, commas, or lines.
|
|
295
|
+
exclude_words: nil,
|
|
296
|
+
# Filter by author username.
|
|
297
|
+
from_user: nil,
|
|
298
|
+
# Hashtags separated by spaces, commas, or lines.
|
|
299
|
+
hashtags: nil,
|
|
300
|
+
# Only replies to this tweet ID.
|
|
301
|
+
in_reply_to_tweet_id: nil,
|
|
302
|
+
# Language code filter, e.g. en or tr.
|
|
303
|
+
language: nil,
|
|
304
|
+
# Filter by media type.
|
|
305
|
+
media_type: nil,
|
|
306
|
+
# Filter tweets mentioning a username.
|
|
307
|
+
mentioning: nil,
|
|
308
|
+
# Minimum likes threshold.
|
|
309
|
+
min_faves: nil,
|
|
310
|
+
# Minimum quote count threshold.
|
|
311
|
+
min_quotes: nil,
|
|
312
|
+
# Minimum replies threshold.
|
|
313
|
+
min_replies: nil,
|
|
314
|
+
# Minimum retweets threshold.
|
|
315
|
+
min_retweets: nil,
|
|
316
|
+
# Maximum items requested from this page (1-100, default 20). The response can
|
|
317
|
+
# contain fewer items because the source returned fewer, filters removed items, or
|
|
318
|
+
# remaining credits cover fewer results. Keep requesting next_cursor while
|
|
319
|
+
# has_next_page is true, even when a page is empty. The deprecated limit and count
|
|
320
|
+
# aliases remain accepted.
|
|
321
|
+
page_size: nil,
|
|
322
|
+
# Quote mode.
|
|
323
|
+
quotes: nil,
|
|
324
|
+
# Only quotes of this tweet ID.
|
|
325
|
+
quotes_of_tweet_id: nil,
|
|
326
|
+
# Reply mode.
|
|
327
|
+
replies: nil,
|
|
328
|
+
# Retweet mode.
|
|
329
|
+
retweets: nil,
|
|
330
|
+
# Only retweets of this tweet ID.
|
|
331
|
+
retweets_of_tweet_id: nil,
|
|
332
|
+
# Start date in YYYY-MM-DD format.
|
|
333
|
+
since_date: nil,
|
|
334
|
+
# Filter replies sent to a username.
|
|
335
|
+
to_user: nil,
|
|
336
|
+
# End date in YYYY-MM-DD format.
|
|
337
|
+
until_date: nil,
|
|
338
|
+
# URL substring or domain filter.
|
|
339
|
+
url: nil,
|
|
340
|
+
# Only return tweets from verified authors.
|
|
341
|
+
verified_only: nil,
|
|
127
342
|
request_options: {}
|
|
128
343
|
)
|
|
129
344
|
end
|
|
130
345
|
|
|
131
|
-
#
|
|
346
|
+
# List tweets mentioning a user
|
|
132
347
|
sig do
|
|
133
348
|
params(
|
|
134
349
|
id: String,
|
|
350
|
+
any_words: String,
|
|
351
|
+
cashtags: String,
|
|
352
|
+
conversation_id: String,
|
|
135
353
|
cursor: String,
|
|
354
|
+
exact_phrase: String,
|
|
355
|
+
exclude_words: String,
|
|
356
|
+
from_user: String,
|
|
357
|
+
hashtags: String,
|
|
358
|
+
in_reply_to_tweet_id: String,
|
|
359
|
+
language: String,
|
|
360
|
+
media_type:
|
|
361
|
+
XTwitterScraper::X::UserRetrieveMentionsParams::MediaType::OrSymbol,
|
|
362
|
+
mentioning: String,
|
|
363
|
+
min_faves: Integer,
|
|
364
|
+
min_quotes: Integer,
|
|
365
|
+
min_replies: Integer,
|
|
366
|
+
min_retweets: Integer,
|
|
367
|
+
page_size: Integer,
|
|
368
|
+
quotes:
|
|
369
|
+
XTwitterScraper::X::UserRetrieveMentionsParams::Quotes::OrSymbol,
|
|
370
|
+
quotes_of_tweet_id: String,
|
|
371
|
+
replies:
|
|
372
|
+
XTwitterScraper::X::UserRetrieveMentionsParams::Replies::OrSymbol,
|
|
373
|
+
retweets:
|
|
374
|
+
XTwitterScraper::X::UserRetrieveMentionsParams::Retweets::OrSymbol,
|
|
375
|
+
retweets_of_tweet_id: String,
|
|
376
|
+
since_date: Date,
|
|
136
377
|
since_time: String,
|
|
378
|
+
to_user: String,
|
|
379
|
+
until_date: Date,
|
|
137
380
|
until_time: String,
|
|
381
|
+
url: String,
|
|
382
|
+
verified_only: T::Boolean,
|
|
138
383
|
request_options: XTwitterScraper::RequestOptions::OrHash
|
|
139
384
|
).returns(XTwitterScraper::PaginatedTweets)
|
|
140
385
|
end
|
|
141
386
|
def retrieve_mentions(
|
|
142
387
|
# User ID or username for mentions lookup
|
|
143
388
|
id,
|
|
389
|
+
# Words or quoted phrases where any one can match. Separate with spaces, commas,
|
|
390
|
+
# or lines.
|
|
391
|
+
any_words: nil,
|
|
392
|
+
# Cashtags separated by spaces, commas, or lines.
|
|
393
|
+
cashtags: nil,
|
|
394
|
+
# Conversation ID filter.
|
|
395
|
+
conversation_id: nil,
|
|
144
396
|
# Pagination cursor for mentions
|
|
145
397
|
cursor: nil,
|
|
398
|
+
# Exact phrase to match.
|
|
399
|
+
exact_phrase: nil,
|
|
400
|
+
# Words or quoted phrases to exclude. Separate with spaces, commas, or lines.
|
|
401
|
+
exclude_words: nil,
|
|
402
|
+
# Filter by author username.
|
|
403
|
+
from_user: nil,
|
|
404
|
+
# Hashtags separated by spaces, commas, or lines.
|
|
405
|
+
hashtags: nil,
|
|
406
|
+
# Only replies to this tweet ID.
|
|
407
|
+
in_reply_to_tweet_id: nil,
|
|
408
|
+
# Language code filter, e.g. en or tr.
|
|
409
|
+
language: nil,
|
|
410
|
+
# Filter by media type.
|
|
411
|
+
media_type: nil,
|
|
412
|
+
# Filter tweets mentioning a username.
|
|
413
|
+
mentioning: nil,
|
|
414
|
+
# Minimum likes threshold.
|
|
415
|
+
min_faves: nil,
|
|
416
|
+
# Minimum quote count threshold.
|
|
417
|
+
min_quotes: nil,
|
|
418
|
+
# Minimum replies threshold.
|
|
419
|
+
min_replies: nil,
|
|
420
|
+
# Minimum retweets threshold.
|
|
421
|
+
min_retweets: nil,
|
|
422
|
+
# Maximum items requested from this page (1-100, default 20). The response can
|
|
423
|
+
# contain fewer items because the source returned fewer, filters removed items, or
|
|
424
|
+
# remaining credits cover fewer results. Keep requesting next_cursor while
|
|
425
|
+
# has_next_page is true, even when a page is empty. The deprecated limit and count
|
|
426
|
+
# aliases remain accepted.
|
|
427
|
+
page_size: nil,
|
|
428
|
+
# Quote mode.
|
|
429
|
+
quotes: nil,
|
|
430
|
+
# Only quotes of this tweet ID.
|
|
431
|
+
quotes_of_tweet_id: nil,
|
|
432
|
+
# Reply mode.
|
|
433
|
+
replies: nil,
|
|
434
|
+
# Retweet mode.
|
|
435
|
+
retweets: nil,
|
|
436
|
+
# Only retweets of this tweet ID.
|
|
437
|
+
retweets_of_tweet_id: nil,
|
|
438
|
+
# Start date in YYYY-MM-DD format.
|
|
439
|
+
since_date: nil,
|
|
146
440
|
# Unix timestamp - return mentions after this time
|
|
147
441
|
since_time: nil,
|
|
442
|
+
# Filter replies sent to a username.
|
|
443
|
+
to_user: nil,
|
|
444
|
+
# End date in YYYY-MM-DD format.
|
|
445
|
+
until_date: nil,
|
|
148
446
|
# Unix timestamp - return mentions before this time
|
|
149
447
|
until_time: nil,
|
|
448
|
+
# URL substring or domain filter.
|
|
449
|
+
url: nil,
|
|
450
|
+
# Only return tweets from verified authors.
|
|
451
|
+
verified_only: nil,
|
|
452
|
+
request_options: {}
|
|
453
|
+
)
|
|
454
|
+
end
|
|
455
|
+
|
|
456
|
+
# Returns the user's timeline with replies included by default.
|
|
457
|
+
sig do
|
|
458
|
+
params(
|
|
459
|
+
id: String,
|
|
460
|
+
any_words: String,
|
|
461
|
+
cashtags: String,
|
|
462
|
+
conversation_id: String,
|
|
463
|
+
cursor: String,
|
|
464
|
+
exact_phrase: String,
|
|
465
|
+
exclude_words: String,
|
|
466
|
+
from_user: String,
|
|
467
|
+
hashtags: String,
|
|
468
|
+
include_parent_tweet: T::Boolean,
|
|
469
|
+
in_reply_to_tweet_id: String,
|
|
470
|
+
language: String,
|
|
471
|
+
media_type:
|
|
472
|
+
XTwitterScraper::X::UserRetrieveRepliesParams::MediaType::OrSymbol,
|
|
473
|
+
mentioning: String,
|
|
474
|
+
min_faves: Integer,
|
|
475
|
+
min_quotes: Integer,
|
|
476
|
+
min_replies: Integer,
|
|
477
|
+
min_retweets: Integer,
|
|
478
|
+
page_size: Integer,
|
|
479
|
+
quotes:
|
|
480
|
+
XTwitterScraper::X::UserRetrieveRepliesParams::Quotes::OrSymbol,
|
|
481
|
+
quotes_of_tweet_id: String,
|
|
482
|
+
replies:
|
|
483
|
+
XTwitterScraper::X::UserRetrieveRepliesParams::Replies::OrSymbol,
|
|
484
|
+
retweets:
|
|
485
|
+
XTwitterScraper::X::UserRetrieveRepliesParams::Retweets::OrSymbol,
|
|
486
|
+
retweets_of_tweet_id: String,
|
|
487
|
+
since_date: Date,
|
|
488
|
+
to_user: String,
|
|
489
|
+
until_date: Date,
|
|
490
|
+
url: String,
|
|
491
|
+
verified_only: T::Boolean,
|
|
492
|
+
request_options: XTwitterScraper::RequestOptions::OrHash
|
|
493
|
+
).returns(XTwitterScraper::PaginatedTweets)
|
|
494
|
+
end
|
|
495
|
+
def retrieve_replies(
|
|
496
|
+
# X user ID or username
|
|
497
|
+
id,
|
|
498
|
+
# Words or quoted phrases where any one can match. Separate with spaces, commas,
|
|
499
|
+
# or lines.
|
|
500
|
+
any_words: nil,
|
|
501
|
+
# Cashtags separated by spaces, commas, or lines.
|
|
502
|
+
cashtags: nil,
|
|
503
|
+
# Conversation ID filter.
|
|
504
|
+
conversation_id: nil,
|
|
505
|
+
# Pagination cursor for user replies
|
|
506
|
+
cursor: nil,
|
|
507
|
+
# Exact phrase to match.
|
|
508
|
+
exact_phrase: nil,
|
|
509
|
+
# Words or quoted phrases to exclude. Separate with spaces, commas, or lines.
|
|
510
|
+
exclude_words: nil,
|
|
511
|
+
# Filter by author username.
|
|
512
|
+
from_user: nil,
|
|
513
|
+
# Hashtags separated by spaces, commas, or lines.
|
|
514
|
+
hashtags: nil,
|
|
515
|
+
# Include parent tweet for replies
|
|
516
|
+
include_parent_tweet: nil,
|
|
517
|
+
# Only replies to this tweet ID.
|
|
518
|
+
in_reply_to_tweet_id: nil,
|
|
519
|
+
# Language code filter, e.g. en or tr.
|
|
520
|
+
language: nil,
|
|
521
|
+
# Filter by media type.
|
|
522
|
+
media_type: nil,
|
|
523
|
+
# Filter tweets mentioning a username.
|
|
524
|
+
mentioning: nil,
|
|
525
|
+
# Minimum likes threshold.
|
|
526
|
+
min_faves: nil,
|
|
527
|
+
# Minimum quote count threshold.
|
|
528
|
+
min_quotes: nil,
|
|
529
|
+
# Minimum replies threshold.
|
|
530
|
+
min_replies: nil,
|
|
531
|
+
# Minimum retweets threshold.
|
|
532
|
+
min_retweets: nil,
|
|
533
|
+
# Maximum items requested from this page (1-100, default 20). The response can
|
|
534
|
+
# contain fewer items because the source returned fewer, filters removed items, or
|
|
535
|
+
# remaining credits cover fewer results. Keep requesting next_cursor while
|
|
536
|
+
# has_next_page is true, even when a page is empty. The deprecated limit and count
|
|
537
|
+
# aliases remain accepted.
|
|
538
|
+
page_size: nil,
|
|
539
|
+
# Quote mode.
|
|
540
|
+
quotes: nil,
|
|
541
|
+
# Only quotes of this tweet ID.
|
|
542
|
+
quotes_of_tweet_id: nil,
|
|
543
|
+
# Reply mode.
|
|
544
|
+
replies: nil,
|
|
545
|
+
# Retweet mode.
|
|
546
|
+
retweets: nil,
|
|
547
|
+
# Only retweets of this tweet ID.
|
|
548
|
+
retweets_of_tweet_id: nil,
|
|
549
|
+
# Start date in YYYY-MM-DD format.
|
|
550
|
+
since_date: nil,
|
|
551
|
+
# Filter replies sent to a username.
|
|
552
|
+
to_user: nil,
|
|
553
|
+
# End date in YYYY-MM-DD format.
|
|
554
|
+
until_date: nil,
|
|
555
|
+
# URL substring or domain filter.
|
|
556
|
+
url: nil,
|
|
557
|
+
# Only return tweets from verified authors.
|
|
558
|
+
verified_only: nil,
|
|
150
559
|
request_options: {}
|
|
151
560
|
)
|
|
152
561
|
end
|
|
@@ -168,34 +577,122 @@ module XTwitterScraper
|
|
|
168
577
|
)
|
|
169
578
|
end
|
|
170
579
|
|
|
171
|
-
#
|
|
580
|
+
# List recent tweets posted by a user
|
|
172
581
|
sig do
|
|
173
582
|
params(
|
|
174
583
|
id: String,
|
|
584
|
+
any_words: String,
|
|
585
|
+
cashtags: String,
|
|
586
|
+
conversation_id: String,
|
|
175
587
|
cursor: String,
|
|
588
|
+
exact_phrase: String,
|
|
589
|
+
exclude_words: String,
|
|
590
|
+
from_user: String,
|
|
591
|
+
hashtags: String,
|
|
176
592
|
include_parent_tweet: T::Boolean,
|
|
177
593
|
include_replies: T::Boolean,
|
|
594
|
+
in_reply_to_tweet_id: String,
|
|
595
|
+
language: String,
|
|
596
|
+
media_type:
|
|
597
|
+
XTwitterScraper::X::UserRetrieveTweetsParams::MediaType::OrSymbol,
|
|
598
|
+
mentioning: String,
|
|
599
|
+
min_faves: Integer,
|
|
600
|
+
min_quotes: Integer,
|
|
601
|
+
min_replies: Integer,
|
|
602
|
+
min_retweets: Integer,
|
|
603
|
+
page_size: Integer,
|
|
604
|
+
quotes:
|
|
605
|
+
XTwitterScraper::X::UserRetrieveTweetsParams::Quotes::OrSymbol,
|
|
606
|
+
quotes_of_tweet_id: String,
|
|
607
|
+
replies:
|
|
608
|
+
XTwitterScraper::X::UserRetrieveTweetsParams::Replies::OrSymbol,
|
|
609
|
+
retweets:
|
|
610
|
+
XTwitterScraper::X::UserRetrieveTweetsParams::Retweets::OrSymbol,
|
|
611
|
+
retweets_of_tweet_id: String,
|
|
612
|
+
since_date: Date,
|
|
613
|
+
to_user: String,
|
|
614
|
+
until_date: Date,
|
|
615
|
+
url: String,
|
|
616
|
+
verified_only: T::Boolean,
|
|
178
617
|
request_options: XTwitterScraper::RequestOptions::OrHash
|
|
179
618
|
).returns(XTwitterScraper::PaginatedTweets)
|
|
180
619
|
end
|
|
181
620
|
def retrieve_tweets(
|
|
182
621
|
# X user ID or username
|
|
183
622
|
id,
|
|
623
|
+
# Words or quoted phrases where any one can match. Separate with spaces, commas,
|
|
624
|
+
# or lines.
|
|
625
|
+
any_words: nil,
|
|
626
|
+
# Cashtags separated by spaces, commas, or lines.
|
|
627
|
+
cashtags: nil,
|
|
628
|
+
# Conversation ID filter.
|
|
629
|
+
conversation_id: nil,
|
|
184
630
|
# Pagination cursor for user tweets
|
|
185
631
|
cursor: nil,
|
|
632
|
+
# Exact phrase to match.
|
|
633
|
+
exact_phrase: nil,
|
|
634
|
+
# Words or quoted phrases to exclude. Separate with spaces, commas, or lines.
|
|
635
|
+
exclude_words: nil,
|
|
636
|
+
# Filter by author username.
|
|
637
|
+
from_user: nil,
|
|
638
|
+
# Hashtags separated by spaces, commas, or lines.
|
|
639
|
+
hashtags: nil,
|
|
186
640
|
# Include parent tweet for replies
|
|
187
641
|
include_parent_tweet: nil,
|
|
188
642
|
# Include reply tweets
|
|
189
643
|
include_replies: nil,
|
|
644
|
+
# Only replies to this tweet ID.
|
|
645
|
+
in_reply_to_tweet_id: nil,
|
|
646
|
+
# Language code filter, e.g. en or tr.
|
|
647
|
+
language: nil,
|
|
648
|
+
# Filter by media type.
|
|
649
|
+
media_type: nil,
|
|
650
|
+
# Filter tweets mentioning a username.
|
|
651
|
+
mentioning: nil,
|
|
652
|
+
# Minimum likes threshold.
|
|
653
|
+
min_faves: nil,
|
|
654
|
+
# Minimum quote count threshold.
|
|
655
|
+
min_quotes: nil,
|
|
656
|
+
# Minimum replies threshold.
|
|
657
|
+
min_replies: nil,
|
|
658
|
+
# Minimum retweets threshold.
|
|
659
|
+
min_retweets: nil,
|
|
660
|
+
# Maximum items requested from this page (1-100, default 20). The response can
|
|
661
|
+
# contain fewer items because the source returned fewer, filters removed items, or
|
|
662
|
+
# remaining credits cover fewer results. Keep requesting next_cursor while
|
|
663
|
+
# has_next_page is true, even when a page is empty. The deprecated limit and count
|
|
664
|
+
# aliases remain accepted.
|
|
665
|
+
page_size: nil,
|
|
666
|
+
# Quote mode.
|
|
667
|
+
quotes: nil,
|
|
668
|
+
# Only quotes of this tweet ID.
|
|
669
|
+
quotes_of_tweet_id: nil,
|
|
670
|
+
# Reply mode.
|
|
671
|
+
replies: nil,
|
|
672
|
+
# Retweet mode.
|
|
673
|
+
retweets: nil,
|
|
674
|
+
# Only retweets of this tweet ID.
|
|
675
|
+
retweets_of_tweet_id: nil,
|
|
676
|
+
# Start date in YYYY-MM-DD format.
|
|
677
|
+
since_date: nil,
|
|
678
|
+
# Filter replies sent to a username.
|
|
679
|
+
to_user: nil,
|
|
680
|
+
# End date in YYYY-MM-DD format.
|
|
681
|
+
until_date: nil,
|
|
682
|
+
# URL substring or domain filter.
|
|
683
|
+
url: nil,
|
|
684
|
+
# Only return tweets from verified authors.
|
|
685
|
+
verified_only: nil,
|
|
190
686
|
request_options: {}
|
|
191
687
|
)
|
|
192
688
|
end
|
|
193
689
|
|
|
194
|
-
#
|
|
690
|
+
# List verified followers of a user
|
|
195
691
|
sig do
|
|
196
692
|
params(
|
|
197
693
|
id: String,
|
|
198
694
|
cursor: String,
|
|
695
|
+
page_size: Integer,
|
|
199
696
|
request_options: XTwitterScraper::RequestOptions::OrHash
|
|
200
697
|
).returns(XTwitterScraper::PaginatedUsers)
|
|
201
698
|
end
|
|
@@ -204,6 +701,11 @@ module XTwitterScraper
|
|
|
204
701
|
id,
|
|
205
702
|
# Pagination cursor for verified followers
|
|
206
703
|
cursor: nil,
|
|
704
|
+
# Maximum user profiles requested from this page (20-200, default 200). The
|
|
705
|
+
# response can contain fewer profiles because the source returned fewer or
|
|
706
|
+
# remaining credits cover fewer results. Keep requesting next_cursor while
|
|
707
|
+
# has_next_page is true. The deprecated limit and count aliases remain accepted.
|
|
708
|
+
page_size: nil,
|
|
207
709
|
request_options: {}
|
|
208
710
|
)
|
|
209
711
|
end
|