x-twitter-scraper 0.4.3 → 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 +14 -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 +125 -82
- 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,13 +3,12 @@
|
|
|
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
|
# @return [XTwitterScraper::Resources::X::Users::Follow]
|
|
10
9
|
attr_reader :follow
|
|
11
10
|
|
|
12
|
-
#
|
|
11
|
+
# Get user profile with follower counts and verification
|
|
13
12
|
#
|
|
14
13
|
# @overload retrieve(id, request_options: {})
|
|
15
14
|
#
|
|
@@ -17,27 +16,54 @@ module XTwitterScraper
|
|
|
17
16
|
#
|
|
18
17
|
# @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
19
18
|
#
|
|
20
|
-
# @return [XTwitterScraper::Models::
|
|
19
|
+
# @return [XTwitterScraper::Models::UserProfile]
|
|
21
20
|
#
|
|
22
21
|
# @see XTwitterScraper::Models::X::UserRetrieveParams
|
|
23
22
|
def retrieve(id, params = {})
|
|
24
23
|
@client.request(
|
|
25
24
|
method: :get,
|
|
26
25
|
path: ["x/users/%1$s", id],
|
|
27
|
-
model: XTwitterScraper::
|
|
26
|
+
model: XTwitterScraper::UserProfile,
|
|
28
27
|
options: params[:request_options]
|
|
29
28
|
)
|
|
30
29
|
end
|
|
31
30
|
|
|
32
|
-
#
|
|
31
|
+
# Remove follower
|
|
32
|
+
#
|
|
33
|
+
# @overload remove_follower(id, account:, request_options: {})
|
|
34
|
+
#
|
|
35
|
+
# @param id [String] User ID to remove from your followers
|
|
36
|
+
#
|
|
37
|
+
# @param account [String] X account identifier (@username or account ID)
|
|
38
|
+
#
|
|
39
|
+
# @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
40
|
+
#
|
|
41
|
+
# @return [XTwitterScraper::Models::X::UserRemoveFollowerResponse]
|
|
42
|
+
#
|
|
43
|
+
# @see XTwitterScraper::Models::X::UserRemoveFollowerParams
|
|
44
|
+
def remove_follower(id, params)
|
|
45
|
+
parsed, options = XTwitterScraper::X::UserRemoveFollowerParams.dump_request(params)
|
|
46
|
+
@client.request(
|
|
47
|
+
method: :post,
|
|
48
|
+
path: ["x/users/%1$s/remove-follower", id],
|
|
49
|
+
body: parsed,
|
|
50
|
+
model: XTwitterScraper::Models::X::UserRemoveFollowerResponse,
|
|
51
|
+
options: options
|
|
52
|
+
)
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
# Some parameter documentations has been truncated, see
|
|
56
|
+
# {XTwitterScraper::Models::X::UserRetrieveBatchParams} for more details.
|
|
57
|
+
#
|
|
58
|
+
# Look up multiple users by IDs in one call
|
|
33
59
|
#
|
|
34
60
|
# @overload retrieve_batch(ids:, request_options: {})
|
|
35
61
|
#
|
|
36
|
-
# @param ids [String] Comma-separated user IDs (
|
|
62
|
+
# @param ids [String] Comma-separated numeric user IDs (1-100 values). Duplicate IDs are ignored while
|
|
37
63
|
#
|
|
38
64
|
# @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
39
65
|
#
|
|
40
|
-
# @return [XTwitterScraper::Models::
|
|
66
|
+
# @return [XTwitterScraper::Models::X::UserRetrieveBatchResponse]
|
|
41
67
|
#
|
|
42
68
|
# @see XTwitterScraper::Models::X::UserRetrieveBatchParams
|
|
43
69
|
def retrieve_batch(params)
|
|
@@ -47,20 +73,27 @@ module XTwitterScraper
|
|
|
47
73
|
method: :get,
|
|
48
74
|
path: "x/users/batch",
|
|
49
75
|
query: query,
|
|
50
|
-
model: XTwitterScraper::
|
|
76
|
+
model: XTwitterScraper::Models::X::UserRetrieveBatchResponse,
|
|
51
77
|
options: options
|
|
52
78
|
)
|
|
53
79
|
end
|
|
54
80
|
|
|
55
|
-
#
|
|
81
|
+
# Some parameter documentations has been truncated, see
|
|
82
|
+
# {XTwitterScraper::Models::X::UserRetrieveFollowersParams} for more details.
|
|
83
|
+
#
|
|
84
|
+
# List followers of a user
|
|
56
85
|
#
|
|
57
|
-
# @overload retrieve_followers(id, cursor: nil, page_size: nil, request_options: {})
|
|
86
|
+
# @overload retrieve_followers(id, after: nil, cursor: nil, limit: nil, page_size: nil, request_options: {})
|
|
58
87
|
#
|
|
59
88
|
# @param id [String] User ID or username
|
|
60
89
|
#
|
|
90
|
+
# @param after [String] Legacy cursor alias. Prefer cursor.
|
|
91
|
+
#
|
|
61
92
|
# @param cursor [String] Pagination cursor for followers list
|
|
62
93
|
#
|
|
63
|
-
# @param
|
|
94
|
+
# @param limit [Integer] Legacy integer page size alias for following lists. Prefer pageSize.
|
|
95
|
+
#
|
|
96
|
+
# @param page_size [Integer] Maximum user profiles requested from this page (20-200, default 200). The respon
|
|
64
97
|
#
|
|
65
98
|
# @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
66
99
|
#
|
|
@@ -79,14 +112,20 @@ module XTwitterScraper
|
|
|
79
112
|
)
|
|
80
113
|
end
|
|
81
114
|
|
|
82
|
-
#
|
|
115
|
+
# Some parameter documentations has been truncated, see
|
|
116
|
+
# {XTwitterScraper::Models::X::UserRetrieveFollowersYouKnowParams} for more
|
|
117
|
+
# details.
|
|
118
|
+
#
|
|
119
|
+
# List mutual followers between you and a user
|
|
83
120
|
#
|
|
84
|
-
# @overload retrieve_followers_you_know(id, cursor: nil, request_options: {})
|
|
121
|
+
# @overload retrieve_followers_you_know(id, cursor: nil, page_size: nil, request_options: {})
|
|
85
122
|
#
|
|
86
123
|
# @param id [String] User ID for followers-you-know lookup
|
|
87
124
|
#
|
|
88
125
|
# @param cursor [String] Pagination cursor for followers-you-know
|
|
89
126
|
#
|
|
127
|
+
# @param page_size [Integer] Maximum user profiles requested from this page (20-200, default 200). The respon
|
|
128
|
+
#
|
|
90
129
|
# @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
91
130
|
#
|
|
92
131
|
# @return [XTwitterScraper::Models::PaginatedUsers]
|
|
@@ -98,21 +137,28 @@ module XTwitterScraper
|
|
|
98
137
|
@client.request(
|
|
99
138
|
method: :get,
|
|
100
139
|
path: ["x/users/%1$s/followers-you-know", id],
|
|
101
|
-
query: query,
|
|
140
|
+
query: query.transform_keys(page_size: "pageSize"),
|
|
102
141
|
model: XTwitterScraper::PaginatedUsers,
|
|
103
142
|
options: options
|
|
104
143
|
)
|
|
105
144
|
end
|
|
106
145
|
|
|
107
|
-
#
|
|
146
|
+
# Some parameter documentations has been truncated, see
|
|
147
|
+
# {XTwitterScraper::Models::X::UserRetrieveFollowingParams} for more details.
|
|
108
148
|
#
|
|
109
|
-
#
|
|
149
|
+
# List accounts a user follows
|
|
150
|
+
#
|
|
151
|
+
# @overload retrieve_following(id, after: nil, cursor: nil, limit: nil, page_size: nil, request_options: {})
|
|
110
152
|
#
|
|
111
153
|
# @param id [String] User ID or username for following lookup
|
|
112
154
|
#
|
|
155
|
+
# @param after [String] Legacy cursor alias. Prefer cursor.
|
|
156
|
+
#
|
|
113
157
|
# @param cursor [String] Pagination cursor for following list
|
|
114
158
|
#
|
|
115
|
-
# @param
|
|
159
|
+
# @param limit [Integer] Legacy page size alias. Prefer pageSize.
|
|
160
|
+
#
|
|
161
|
+
# @param page_size [Integer] Maximum user profiles requested from this page (20-200, default 200). The respon
|
|
116
162
|
#
|
|
117
163
|
# @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
118
164
|
#
|
|
@@ -131,14 +177,69 @@ module XTwitterScraper
|
|
|
131
177
|
)
|
|
132
178
|
end
|
|
133
179
|
|
|
134
|
-
#
|
|
180
|
+
# Some parameter documentations has been truncated, see
|
|
181
|
+
# {XTwitterScraper::Models::X::UserRetrieveLikesParams} for more details.
|
|
135
182
|
#
|
|
136
|
-
#
|
|
183
|
+
# List tweets liked by a user
|
|
137
184
|
#
|
|
138
|
-
# @
|
|
185
|
+
# @overload retrieve_likes(id, any_words: nil, cashtags: nil, conversation_id: nil, cursor: nil, exact_phrase: nil, exclude_words: nil, from_user: nil, hashtags: nil, in_reply_to_tweet_id: nil, language: nil, media_type: nil, mentioning: nil, min_faves: nil, min_quotes: nil, min_replies: nil, min_retweets: nil, page_size: nil, quotes: nil, quotes_of_tweet_id: nil, replies: nil, retweets: nil, retweets_of_tweet_id: nil, since_date: nil, to_user: nil, until_date: nil, url: nil, verified_only: nil, request_options: {})
|
|
186
|
+
#
|
|
187
|
+
# @param id [String] User ID or username
|
|
188
|
+
#
|
|
189
|
+
# @param any_words [String] Words or quoted phrases where any one can match. Separate with spaces, commas, o
|
|
190
|
+
#
|
|
191
|
+
# @param cashtags [String] Cashtags separated by spaces, commas, or lines.
|
|
192
|
+
#
|
|
193
|
+
# @param conversation_id [String] Conversation ID filter.
|
|
139
194
|
#
|
|
140
195
|
# @param cursor [String] Pagination cursor for liked tweets
|
|
141
196
|
#
|
|
197
|
+
# @param exact_phrase [String] Exact phrase to match.
|
|
198
|
+
#
|
|
199
|
+
# @param exclude_words [String] Words or quoted phrases to exclude. Separate with spaces, commas, or lines.
|
|
200
|
+
#
|
|
201
|
+
# @param from_user [String] Filter by author username.
|
|
202
|
+
#
|
|
203
|
+
# @param hashtags [String] Hashtags separated by spaces, commas, or lines.
|
|
204
|
+
#
|
|
205
|
+
# @param in_reply_to_tweet_id [String] Only replies to this tweet ID.
|
|
206
|
+
#
|
|
207
|
+
# @param language [String] Language code filter, e.g. en or tr.
|
|
208
|
+
#
|
|
209
|
+
# @param media_type [Symbol, XTwitterScraper::Models::X::UserRetrieveLikesParams::MediaType] Filter by media type.
|
|
210
|
+
#
|
|
211
|
+
# @param mentioning [String] Filter tweets mentioning a username.
|
|
212
|
+
#
|
|
213
|
+
# @param min_faves [Integer] Minimum likes threshold.
|
|
214
|
+
#
|
|
215
|
+
# @param min_quotes [Integer] Minimum quote count threshold.
|
|
216
|
+
#
|
|
217
|
+
# @param min_replies [Integer] Minimum replies threshold.
|
|
218
|
+
#
|
|
219
|
+
# @param min_retweets [Integer] Minimum retweets threshold.
|
|
220
|
+
#
|
|
221
|
+
# @param page_size [Integer] Maximum items requested from this page (1-100, default 20). The response can con
|
|
222
|
+
#
|
|
223
|
+
# @param quotes [Symbol, XTwitterScraper::Models::X::UserRetrieveLikesParams::Quotes] Quote mode.
|
|
224
|
+
#
|
|
225
|
+
# @param quotes_of_tweet_id [String] Only quotes of this tweet ID.
|
|
226
|
+
#
|
|
227
|
+
# @param replies [Symbol, XTwitterScraper::Models::X::UserRetrieveLikesParams::Replies] Reply mode.
|
|
228
|
+
#
|
|
229
|
+
# @param retweets [Symbol, XTwitterScraper::Models::X::UserRetrieveLikesParams::Retweets] Retweet mode.
|
|
230
|
+
#
|
|
231
|
+
# @param retweets_of_tweet_id [String] Only retweets of this tweet ID.
|
|
232
|
+
#
|
|
233
|
+
# @param since_date [Date] Start date in YYYY-MM-DD format.
|
|
234
|
+
#
|
|
235
|
+
# @param to_user [String] Filter replies sent to a username.
|
|
236
|
+
#
|
|
237
|
+
# @param until_date [Date] End date in YYYY-MM-DD format.
|
|
238
|
+
#
|
|
239
|
+
# @param url [String] URL substring or domain filter.
|
|
240
|
+
#
|
|
241
|
+
# @param verified_only [Boolean] Only return tweets from verified authors.
|
|
242
|
+
#
|
|
142
243
|
# @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
143
244
|
#
|
|
144
245
|
# @return [XTwitterScraper::Models::PaginatedTweets]
|
|
@@ -150,20 +251,94 @@ module XTwitterScraper
|
|
|
150
251
|
@client.request(
|
|
151
252
|
method: :get,
|
|
152
253
|
path: ["x/users/%1$s/likes", id],
|
|
153
|
-
query: query
|
|
254
|
+
query: query.transform_keys(
|
|
255
|
+
any_words: "anyWords",
|
|
256
|
+
conversation_id: "conversationId",
|
|
257
|
+
exact_phrase: "exactPhrase",
|
|
258
|
+
exclude_words: "excludeWords",
|
|
259
|
+
from_user: "fromUser",
|
|
260
|
+
in_reply_to_tweet_id: "inReplyToTweetId",
|
|
261
|
+
media_type: "mediaType",
|
|
262
|
+
min_faves: "minFaves",
|
|
263
|
+
min_quotes: "minQuotes",
|
|
264
|
+
min_replies: "minReplies",
|
|
265
|
+
min_retweets: "minRetweets",
|
|
266
|
+
page_size: "pageSize",
|
|
267
|
+
quotes_of_tweet_id: "quotesOfTweetId",
|
|
268
|
+
retweets_of_tweet_id: "retweetsOfTweetId",
|
|
269
|
+
since_date: "sinceDate",
|
|
270
|
+
to_user: "toUser",
|
|
271
|
+
until_date: "untilDate",
|
|
272
|
+
verified_only: "verifiedOnly"
|
|
273
|
+
),
|
|
154
274
|
model: XTwitterScraper::PaginatedTweets,
|
|
155
275
|
options: options
|
|
156
276
|
)
|
|
157
277
|
end
|
|
158
278
|
|
|
159
|
-
#
|
|
279
|
+
# Some parameter documentations has been truncated, see
|
|
280
|
+
# {XTwitterScraper::Models::X::UserRetrieveMediaParams} for more details.
|
|
160
281
|
#
|
|
161
|
-
#
|
|
282
|
+
# List media tweets posted by a user
|
|
162
283
|
#
|
|
163
|
-
# @
|
|
284
|
+
# @overload retrieve_media(id, any_words: nil, cashtags: nil, conversation_id: nil, cursor: nil, exact_phrase: nil, exclude_words: nil, from_user: nil, hashtags: nil, in_reply_to_tweet_id: nil, language: nil, media_type: nil, mentioning: nil, min_faves: nil, min_quotes: nil, min_replies: nil, min_retweets: nil, page_size: nil, quotes: nil, quotes_of_tweet_id: nil, replies: nil, retweets: nil, retweets_of_tweet_id: nil, since_date: nil, to_user: nil, until_date: nil, url: nil, verified_only: nil, request_options: {})
|
|
285
|
+
#
|
|
286
|
+
# @param id [String] User ID or username for media lookup
|
|
287
|
+
#
|
|
288
|
+
# @param any_words [String] Words or quoted phrases where any one can match. Separate with spaces, commas, o
|
|
289
|
+
#
|
|
290
|
+
# @param cashtags [String] Cashtags separated by spaces, commas, or lines.
|
|
291
|
+
#
|
|
292
|
+
# @param conversation_id [String] Conversation ID filter.
|
|
164
293
|
#
|
|
165
294
|
# @param cursor [String] Pagination cursor for media tweets
|
|
166
295
|
#
|
|
296
|
+
# @param exact_phrase [String] Exact phrase to match.
|
|
297
|
+
#
|
|
298
|
+
# @param exclude_words [String] Words or quoted phrases to exclude. Separate with spaces, commas, or lines.
|
|
299
|
+
#
|
|
300
|
+
# @param from_user [String] Filter by author username.
|
|
301
|
+
#
|
|
302
|
+
# @param hashtags [String] Hashtags separated by spaces, commas, or lines.
|
|
303
|
+
#
|
|
304
|
+
# @param in_reply_to_tweet_id [String] Only replies to this tweet ID.
|
|
305
|
+
#
|
|
306
|
+
# @param language [String] Language code filter, e.g. en or tr.
|
|
307
|
+
#
|
|
308
|
+
# @param media_type [Symbol, XTwitterScraper::Models::X::UserRetrieveMediaParams::MediaType] Filter by media type.
|
|
309
|
+
#
|
|
310
|
+
# @param mentioning [String] Filter tweets mentioning a username.
|
|
311
|
+
#
|
|
312
|
+
# @param min_faves [Integer] Minimum likes threshold.
|
|
313
|
+
#
|
|
314
|
+
# @param min_quotes [Integer] Minimum quote count threshold.
|
|
315
|
+
#
|
|
316
|
+
# @param min_replies [Integer] Minimum replies threshold.
|
|
317
|
+
#
|
|
318
|
+
# @param min_retweets [Integer] Minimum retweets threshold.
|
|
319
|
+
#
|
|
320
|
+
# @param page_size [Integer] Maximum items requested from this page (1-100, default 20). The response can con
|
|
321
|
+
#
|
|
322
|
+
# @param quotes [Symbol, XTwitterScraper::Models::X::UserRetrieveMediaParams::Quotes] Quote mode.
|
|
323
|
+
#
|
|
324
|
+
# @param quotes_of_tweet_id [String] Only quotes of this tweet ID.
|
|
325
|
+
#
|
|
326
|
+
# @param replies [Symbol, XTwitterScraper::Models::X::UserRetrieveMediaParams::Replies] Reply mode.
|
|
327
|
+
#
|
|
328
|
+
# @param retweets [Symbol, XTwitterScraper::Models::X::UserRetrieveMediaParams::Retweets] Retweet mode.
|
|
329
|
+
#
|
|
330
|
+
# @param retweets_of_tweet_id [String] Only retweets of this tweet ID.
|
|
331
|
+
#
|
|
332
|
+
# @param since_date [Date] Start date in YYYY-MM-DD format.
|
|
333
|
+
#
|
|
334
|
+
# @param to_user [String] Filter replies sent to a username.
|
|
335
|
+
#
|
|
336
|
+
# @param until_date [Date] End date in YYYY-MM-DD format.
|
|
337
|
+
#
|
|
338
|
+
# @param url [String] URL substring or domain filter.
|
|
339
|
+
#
|
|
340
|
+
# @param verified_only [Boolean] Only return tweets from verified authors.
|
|
341
|
+
#
|
|
167
342
|
# @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
168
343
|
#
|
|
169
344
|
# @return [XTwitterScraper::Models::PaginatedTweets]
|
|
@@ -175,24 +350,98 @@ module XTwitterScraper
|
|
|
175
350
|
@client.request(
|
|
176
351
|
method: :get,
|
|
177
352
|
path: ["x/users/%1$s/media", id],
|
|
178
|
-
query: query
|
|
353
|
+
query: query.transform_keys(
|
|
354
|
+
any_words: "anyWords",
|
|
355
|
+
conversation_id: "conversationId",
|
|
356
|
+
exact_phrase: "exactPhrase",
|
|
357
|
+
exclude_words: "excludeWords",
|
|
358
|
+
from_user: "fromUser",
|
|
359
|
+
in_reply_to_tweet_id: "inReplyToTweetId",
|
|
360
|
+
media_type: "mediaType",
|
|
361
|
+
min_faves: "minFaves",
|
|
362
|
+
min_quotes: "minQuotes",
|
|
363
|
+
min_replies: "minReplies",
|
|
364
|
+
min_retweets: "minRetweets",
|
|
365
|
+
page_size: "pageSize",
|
|
366
|
+
quotes_of_tweet_id: "quotesOfTweetId",
|
|
367
|
+
retweets_of_tweet_id: "retweetsOfTweetId",
|
|
368
|
+
since_date: "sinceDate",
|
|
369
|
+
to_user: "toUser",
|
|
370
|
+
until_date: "untilDate",
|
|
371
|
+
verified_only: "verifiedOnly"
|
|
372
|
+
),
|
|
179
373
|
model: XTwitterScraper::PaginatedTweets,
|
|
180
374
|
options: options
|
|
181
375
|
)
|
|
182
376
|
end
|
|
183
377
|
|
|
184
|
-
#
|
|
378
|
+
# Some parameter documentations has been truncated, see
|
|
379
|
+
# {XTwitterScraper::Models::X::UserRetrieveMentionsParams} for more details.
|
|
185
380
|
#
|
|
186
|
-
#
|
|
381
|
+
# List tweets mentioning a user
|
|
382
|
+
#
|
|
383
|
+
# @overload retrieve_mentions(id, any_words: nil, cashtags: nil, conversation_id: nil, cursor: nil, exact_phrase: nil, exclude_words: nil, from_user: nil, hashtags: nil, in_reply_to_tweet_id: nil, language: nil, media_type: nil, mentioning: nil, min_faves: nil, min_quotes: nil, min_replies: nil, min_retweets: nil, page_size: nil, quotes: nil, quotes_of_tweet_id: nil, replies: nil, retweets: nil, retweets_of_tweet_id: nil, since_date: nil, since_time: nil, to_user: nil, until_date: nil, until_time: nil, url: nil, verified_only: nil, request_options: {})
|
|
187
384
|
#
|
|
188
385
|
# @param id [String] User ID or username for mentions lookup
|
|
189
386
|
#
|
|
387
|
+
# @param any_words [String] Words or quoted phrases where any one can match. Separate with spaces, commas, o
|
|
388
|
+
#
|
|
389
|
+
# @param cashtags [String] Cashtags separated by spaces, commas, or lines.
|
|
390
|
+
#
|
|
391
|
+
# @param conversation_id [String] Conversation ID filter.
|
|
392
|
+
#
|
|
190
393
|
# @param cursor [String] Pagination cursor for mentions
|
|
191
394
|
#
|
|
395
|
+
# @param exact_phrase [String] Exact phrase to match.
|
|
396
|
+
#
|
|
397
|
+
# @param exclude_words [String] Words or quoted phrases to exclude. Separate with spaces, commas, or lines.
|
|
398
|
+
#
|
|
399
|
+
# @param from_user [String] Filter by author username.
|
|
400
|
+
#
|
|
401
|
+
# @param hashtags [String] Hashtags separated by spaces, commas, or lines.
|
|
402
|
+
#
|
|
403
|
+
# @param in_reply_to_tweet_id [String] Only replies to this tweet ID.
|
|
404
|
+
#
|
|
405
|
+
# @param language [String] Language code filter, e.g. en or tr.
|
|
406
|
+
#
|
|
407
|
+
# @param media_type [Symbol, XTwitterScraper::Models::X::UserRetrieveMentionsParams::MediaType] Filter by media type.
|
|
408
|
+
#
|
|
409
|
+
# @param mentioning [String] Filter tweets mentioning a username.
|
|
410
|
+
#
|
|
411
|
+
# @param min_faves [Integer] Minimum likes threshold.
|
|
412
|
+
#
|
|
413
|
+
# @param min_quotes [Integer] Minimum quote count threshold.
|
|
414
|
+
#
|
|
415
|
+
# @param min_replies [Integer] Minimum replies threshold.
|
|
416
|
+
#
|
|
417
|
+
# @param min_retweets [Integer] Minimum retweets threshold.
|
|
418
|
+
#
|
|
419
|
+
# @param page_size [Integer] Maximum items requested from this page (1-100, default 20). The response can con
|
|
420
|
+
#
|
|
421
|
+
# @param quotes [Symbol, XTwitterScraper::Models::X::UserRetrieveMentionsParams::Quotes] Quote mode.
|
|
422
|
+
#
|
|
423
|
+
# @param quotes_of_tweet_id [String] Only quotes of this tweet ID.
|
|
424
|
+
#
|
|
425
|
+
# @param replies [Symbol, XTwitterScraper::Models::X::UserRetrieveMentionsParams::Replies] Reply mode.
|
|
426
|
+
#
|
|
427
|
+
# @param retweets [Symbol, XTwitterScraper::Models::X::UserRetrieveMentionsParams::Retweets] Retweet mode.
|
|
428
|
+
#
|
|
429
|
+
# @param retweets_of_tweet_id [String] Only retweets of this tweet ID.
|
|
430
|
+
#
|
|
431
|
+
# @param since_date [Date] Start date in YYYY-MM-DD format.
|
|
432
|
+
#
|
|
192
433
|
# @param since_time [String] Unix timestamp - return mentions after this time
|
|
193
434
|
#
|
|
435
|
+
# @param to_user [String] Filter replies sent to a username.
|
|
436
|
+
#
|
|
437
|
+
# @param until_date [Date] End date in YYYY-MM-DD format.
|
|
438
|
+
#
|
|
194
439
|
# @param until_time [String] Unix timestamp - return mentions before this time
|
|
195
440
|
#
|
|
441
|
+
# @param url [String] URL substring or domain filter.
|
|
442
|
+
#
|
|
443
|
+
# @param verified_only [Boolean] Only return tweets from verified authors.
|
|
444
|
+
#
|
|
196
445
|
# @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
197
446
|
#
|
|
198
447
|
# @return [XTwitterScraper::Models::PaginatedTweets]
|
|
@@ -204,7 +453,130 @@ module XTwitterScraper
|
|
|
204
453
|
@client.request(
|
|
205
454
|
method: :get,
|
|
206
455
|
path: ["x/users/%1$s/mentions", id],
|
|
207
|
-
query: query.transform_keys(
|
|
456
|
+
query: query.transform_keys(
|
|
457
|
+
any_words: "anyWords",
|
|
458
|
+
conversation_id: "conversationId",
|
|
459
|
+
exact_phrase: "exactPhrase",
|
|
460
|
+
exclude_words: "excludeWords",
|
|
461
|
+
from_user: "fromUser",
|
|
462
|
+
in_reply_to_tweet_id: "inReplyToTweetId",
|
|
463
|
+
media_type: "mediaType",
|
|
464
|
+
min_faves: "minFaves",
|
|
465
|
+
min_quotes: "minQuotes",
|
|
466
|
+
min_replies: "minReplies",
|
|
467
|
+
min_retweets: "minRetweets",
|
|
468
|
+
page_size: "pageSize",
|
|
469
|
+
quotes_of_tweet_id: "quotesOfTweetId",
|
|
470
|
+
retweets_of_tweet_id: "retweetsOfTweetId",
|
|
471
|
+
since_date: "sinceDate",
|
|
472
|
+
since_time: "sinceTime",
|
|
473
|
+
to_user: "toUser",
|
|
474
|
+
until_date: "untilDate",
|
|
475
|
+
until_time: "untilTime",
|
|
476
|
+
verified_only: "verifiedOnly"
|
|
477
|
+
),
|
|
478
|
+
model: XTwitterScraper::PaginatedTweets,
|
|
479
|
+
options: options
|
|
480
|
+
)
|
|
481
|
+
end
|
|
482
|
+
|
|
483
|
+
# Some parameter documentations has been truncated, see
|
|
484
|
+
# {XTwitterScraper::Models::X::UserRetrieveRepliesParams} for more details.
|
|
485
|
+
#
|
|
486
|
+
# Returns the user's timeline with replies included by default.
|
|
487
|
+
#
|
|
488
|
+
# @overload retrieve_replies(id, any_words: nil, cashtags: nil, conversation_id: nil, cursor: nil, exact_phrase: nil, exclude_words: nil, from_user: nil, hashtags: nil, include_parent_tweet: nil, in_reply_to_tweet_id: nil, language: nil, media_type: nil, mentioning: nil, min_faves: nil, min_quotes: nil, min_replies: nil, min_retweets: nil, page_size: nil, quotes: nil, quotes_of_tweet_id: nil, replies: nil, retweets: nil, retweets_of_tweet_id: nil, since_date: nil, to_user: nil, until_date: nil, url: nil, verified_only: nil, request_options: {})
|
|
489
|
+
#
|
|
490
|
+
# @param id [String] X user ID or username
|
|
491
|
+
#
|
|
492
|
+
# @param any_words [String] Words or quoted phrases where any one can match. Separate with spaces, commas, o
|
|
493
|
+
#
|
|
494
|
+
# @param cashtags [String] Cashtags separated by spaces, commas, or lines.
|
|
495
|
+
#
|
|
496
|
+
# @param conversation_id [String] Conversation ID filter.
|
|
497
|
+
#
|
|
498
|
+
# @param cursor [String] Pagination cursor for user replies
|
|
499
|
+
#
|
|
500
|
+
# @param exact_phrase [String] Exact phrase to match.
|
|
501
|
+
#
|
|
502
|
+
# @param exclude_words [String] Words or quoted phrases to exclude. Separate with spaces, commas, or lines.
|
|
503
|
+
#
|
|
504
|
+
# @param from_user [String] Filter by author username.
|
|
505
|
+
#
|
|
506
|
+
# @param hashtags [String] Hashtags separated by spaces, commas, or lines.
|
|
507
|
+
#
|
|
508
|
+
# @param include_parent_tweet [Boolean] Include parent tweet for replies
|
|
509
|
+
#
|
|
510
|
+
# @param in_reply_to_tweet_id [String] Only replies to this tweet ID.
|
|
511
|
+
#
|
|
512
|
+
# @param language [String] Language code filter, e.g. en or tr.
|
|
513
|
+
#
|
|
514
|
+
# @param media_type [Symbol, XTwitterScraper::Models::X::UserRetrieveRepliesParams::MediaType] Filter by media type.
|
|
515
|
+
#
|
|
516
|
+
# @param mentioning [String] Filter tweets mentioning a username.
|
|
517
|
+
#
|
|
518
|
+
# @param min_faves [Integer] Minimum likes threshold.
|
|
519
|
+
#
|
|
520
|
+
# @param min_quotes [Integer] Minimum quote count threshold.
|
|
521
|
+
#
|
|
522
|
+
# @param min_replies [Integer] Minimum replies threshold.
|
|
523
|
+
#
|
|
524
|
+
# @param min_retweets [Integer] Minimum retweets threshold.
|
|
525
|
+
#
|
|
526
|
+
# @param page_size [Integer] Maximum items requested from this page (1-100, default 20). The response can con
|
|
527
|
+
#
|
|
528
|
+
# @param quotes [Symbol, XTwitterScraper::Models::X::UserRetrieveRepliesParams::Quotes] Quote mode.
|
|
529
|
+
#
|
|
530
|
+
# @param quotes_of_tweet_id [String] Only quotes of this tweet ID.
|
|
531
|
+
#
|
|
532
|
+
# @param replies [Symbol, XTwitterScraper::Models::X::UserRetrieveRepliesParams::Replies] Reply mode.
|
|
533
|
+
#
|
|
534
|
+
# @param retweets [Symbol, XTwitterScraper::Models::X::UserRetrieveRepliesParams::Retweets] Retweet mode.
|
|
535
|
+
#
|
|
536
|
+
# @param retweets_of_tweet_id [String] Only retweets of this tweet ID.
|
|
537
|
+
#
|
|
538
|
+
# @param since_date [Date] Start date in YYYY-MM-DD format.
|
|
539
|
+
#
|
|
540
|
+
# @param to_user [String] Filter replies sent to a username.
|
|
541
|
+
#
|
|
542
|
+
# @param until_date [Date] End date in YYYY-MM-DD format.
|
|
543
|
+
#
|
|
544
|
+
# @param url [String] URL substring or domain filter.
|
|
545
|
+
#
|
|
546
|
+
# @param verified_only [Boolean] Only return tweets from verified authors.
|
|
547
|
+
#
|
|
548
|
+
# @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
549
|
+
#
|
|
550
|
+
# @return [XTwitterScraper::Models::PaginatedTweets]
|
|
551
|
+
#
|
|
552
|
+
# @see XTwitterScraper::Models::X::UserRetrieveRepliesParams
|
|
553
|
+
def retrieve_replies(id, params = {})
|
|
554
|
+
parsed, options = XTwitterScraper::X::UserRetrieveRepliesParams.dump_request(params)
|
|
555
|
+
query = XTwitterScraper::Internal::Util.encode_query_params(parsed)
|
|
556
|
+
@client.request(
|
|
557
|
+
method: :get,
|
|
558
|
+
path: ["x/users/%1$s/replies", id],
|
|
559
|
+
query: query.transform_keys(
|
|
560
|
+
any_words: "anyWords",
|
|
561
|
+
conversation_id: "conversationId",
|
|
562
|
+
exact_phrase: "exactPhrase",
|
|
563
|
+
exclude_words: "excludeWords",
|
|
564
|
+
from_user: "fromUser",
|
|
565
|
+
include_parent_tweet: "includeParentTweet",
|
|
566
|
+
in_reply_to_tweet_id: "inReplyToTweetId",
|
|
567
|
+
media_type: "mediaType",
|
|
568
|
+
min_faves: "minFaves",
|
|
569
|
+
min_quotes: "minQuotes",
|
|
570
|
+
min_replies: "minReplies",
|
|
571
|
+
min_retweets: "minRetweets",
|
|
572
|
+
page_size: "pageSize",
|
|
573
|
+
quotes_of_tweet_id: "quotesOfTweetId",
|
|
574
|
+
retweets_of_tweet_id: "retweetsOfTweetId",
|
|
575
|
+
since_date: "sinceDate",
|
|
576
|
+
to_user: "toUser",
|
|
577
|
+
until_date: "untilDate",
|
|
578
|
+
verified_only: "verifiedOnly"
|
|
579
|
+
),
|
|
208
580
|
model: XTwitterScraper::PaginatedTweets,
|
|
209
581
|
options: options
|
|
210
582
|
)
|
|
@@ -235,18 +607,73 @@ module XTwitterScraper
|
|
|
235
607
|
)
|
|
236
608
|
end
|
|
237
609
|
|
|
238
|
-
#
|
|
610
|
+
# Some parameter documentations has been truncated, see
|
|
611
|
+
# {XTwitterScraper::Models::X::UserRetrieveTweetsParams} for more details.
|
|
612
|
+
#
|
|
613
|
+
# List recent tweets posted by a user
|
|
239
614
|
#
|
|
240
|
-
# @overload retrieve_tweets(id, cursor: nil, include_parent_tweet: nil, include_replies: nil, request_options: {})
|
|
615
|
+
# @overload retrieve_tweets(id, any_words: nil, cashtags: nil, conversation_id: nil, cursor: nil, exact_phrase: nil, exclude_words: nil, from_user: nil, hashtags: nil, include_parent_tweet: nil, include_replies: nil, in_reply_to_tweet_id: nil, language: nil, media_type: nil, mentioning: nil, min_faves: nil, min_quotes: nil, min_replies: nil, min_retweets: nil, page_size: nil, quotes: nil, quotes_of_tweet_id: nil, replies: nil, retweets: nil, retweets_of_tweet_id: nil, since_date: nil, to_user: nil, until_date: nil, url: nil, verified_only: nil, request_options: {})
|
|
241
616
|
#
|
|
242
617
|
# @param id [String] X user ID or username
|
|
243
618
|
#
|
|
619
|
+
# @param any_words [String] Words or quoted phrases where any one can match. Separate with spaces, commas, o
|
|
620
|
+
#
|
|
621
|
+
# @param cashtags [String] Cashtags separated by spaces, commas, or lines.
|
|
622
|
+
#
|
|
623
|
+
# @param conversation_id [String] Conversation ID filter.
|
|
624
|
+
#
|
|
244
625
|
# @param cursor [String] Pagination cursor for user tweets
|
|
245
626
|
#
|
|
627
|
+
# @param exact_phrase [String] Exact phrase to match.
|
|
628
|
+
#
|
|
629
|
+
# @param exclude_words [String] Words or quoted phrases to exclude. Separate with spaces, commas, or lines.
|
|
630
|
+
#
|
|
631
|
+
# @param from_user [String] Filter by author username.
|
|
632
|
+
#
|
|
633
|
+
# @param hashtags [String] Hashtags separated by spaces, commas, or lines.
|
|
634
|
+
#
|
|
246
635
|
# @param include_parent_tweet [Boolean] Include parent tweet for replies
|
|
247
636
|
#
|
|
248
637
|
# @param include_replies [Boolean] Include reply tweets
|
|
249
638
|
#
|
|
639
|
+
# @param in_reply_to_tweet_id [String] Only replies to this tweet ID.
|
|
640
|
+
#
|
|
641
|
+
# @param language [String] Language code filter, e.g. en or tr.
|
|
642
|
+
#
|
|
643
|
+
# @param media_type [Symbol, XTwitterScraper::Models::X::UserRetrieveTweetsParams::MediaType] Filter by media type.
|
|
644
|
+
#
|
|
645
|
+
# @param mentioning [String] Filter tweets mentioning a username.
|
|
646
|
+
#
|
|
647
|
+
# @param min_faves [Integer] Minimum likes threshold.
|
|
648
|
+
#
|
|
649
|
+
# @param min_quotes [Integer] Minimum quote count threshold.
|
|
650
|
+
#
|
|
651
|
+
# @param min_replies [Integer] Minimum replies threshold.
|
|
652
|
+
#
|
|
653
|
+
# @param min_retweets [Integer] Minimum retweets threshold.
|
|
654
|
+
#
|
|
655
|
+
# @param page_size [Integer] Maximum items requested from this page (1-100, default 20). The response can con
|
|
656
|
+
#
|
|
657
|
+
# @param quotes [Symbol, XTwitterScraper::Models::X::UserRetrieveTweetsParams::Quotes] Quote mode.
|
|
658
|
+
#
|
|
659
|
+
# @param quotes_of_tweet_id [String] Only quotes of this tweet ID.
|
|
660
|
+
#
|
|
661
|
+
# @param replies [Symbol, XTwitterScraper::Models::X::UserRetrieveTweetsParams::Replies] Reply mode.
|
|
662
|
+
#
|
|
663
|
+
# @param retweets [Symbol, XTwitterScraper::Models::X::UserRetrieveTweetsParams::Retweets] Retweet mode.
|
|
664
|
+
#
|
|
665
|
+
# @param retweets_of_tweet_id [String] Only retweets of this tweet ID.
|
|
666
|
+
#
|
|
667
|
+
# @param since_date [Date] Start date in YYYY-MM-DD format.
|
|
668
|
+
#
|
|
669
|
+
# @param to_user [String] Filter replies sent to a username.
|
|
670
|
+
#
|
|
671
|
+
# @param until_date [Date] End date in YYYY-MM-DD format.
|
|
672
|
+
#
|
|
673
|
+
# @param url [String] URL substring or domain filter.
|
|
674
|
+
#
|
|
675
|
+
# @param verified_only [Boolean] Only return tweets from verified authors.
|
|
676
|
+
#
|
|
250
677
|
# @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
251
678
|
#
|
|
252
679
|
# @return [XTwitterScraper::Models::PaginatedTweets]
|
|
@@ -259,22 +686,46 @@ module XTwitterScraper
|
|
|
259
686
|
method: :get,
|
|
260
687
|
path: ["x/users/%1$s/tweets", id],
|
|
261
688
|
query: query.transform_keys(
|
|
689
|
+
any_words: "anyWords",
|
|
690
|
+
conversation_id: "conversationId",
|
|
691
|
+
exact_phrase: "exactPhrase",
|
|
692
|
+
exclude_words: "excludeWords",
|
|
693
|
+
from_user: "fromUser",
|
|
262
694
|
include_parent_tweet: "includeParentTweet",
|
|
263
|
-
include_replies: "includeReplies"
|
|
695
|
+
include_replies: "includeReplies",
|
|
696
|
+
in_reply_to_tweet_id: "inReplyToTweetId",
|
|
697
|
+
media_type: "mediaType",
|
|
698
|
+
min_faves: "minFaves",
|
|
699
|
+
min_quotes: "minQuotes",
|
|
700
|
+
min_replies: "minReplies",
|
|
701
|
+
min_retweets: "minRetweets",
|
|
702
|
+
page_size: "pageSize",
|
|
703
|
+
quotes_of_tweet_id: "quotesOfTweetId",
|
|
704
|
+
retweets_of_tweet_id: "retweetsOfTweetId",
|
|
705
|
+
since_date: "sinceDate",
|
|
706
|
+
to_user: "toUser",
|
|
707
|
+
until_date: "untilDate",
|
|
708
|
+
verified_only: "verifiedOnly"
|
|
264
709
|
),
|
|
265
710
|
model: XTwitterScraper::PaginatedTweets,
|
|
266
711
|
options: options
|
|
267
712
|
)
|
|
268
713
|
end
|
|
269
714
|
|
|
270
|
-
#
|
|
715
|
+
# Some parameter documentations has been truncated, see
|
|
716
|
+
# {XTwitterScraper::Models::X::UserRetrieveVerifiedFollowersParams} for more
|
|
717
|
+
# details.
|
|
718
|
+
#
|
|
719
|
+
# List verified followers of a user
|
|
271
720
|
#
|
|
272
|
-
# @overload retrieve_verified_followers(id, cursor: nil, request_options: {})
|
|
721
|
+
# @overload retrieve_verified_followers(id, cursor: nil, page_size: nil, request_options: {})
|
|
273
722
|
#
|
|
274
723
|
# @param id [String] User ID or username for verified followers
|
|
275
724
|
#
|
|
276
725
|
# @param cursor [String] Pagination cursor for verified followers
|
|
277
726
|
#
|
|
727
|
+
# @param page_size [Integer] Maximum user profiles requested from this page (20-200, default 200). The respon
|
|
728
|
+
#
|
|
278
729
|
# @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
279
730
|
#
|
|
280
731
|
# @return [XTwitterScraper::Models::PaginatedUsers]
|
|
@@ -286,7 +737,7 @@ module XTwitterScraper
|
|
|
286
737
|
@client.request(
|
|
287
738
|
method: :get,
|
|
288
739
|
path: ["x/users/%1$s/verified-followers", id],
|
|
289
|
-
query: query,
|
|
740
|
+
query: query.transform_keys(page_size: "pageSize"),
|
|
290
741
|
model: XTwitterScraper::PaginatedUsers,
|
|
291
742
|
options: options
|
|
292
743
|
)
|