x-twitter-scraper 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +25 -0
- data/README.md +5 -5
- data/lib/x_twitter_scraper/models/api_key.rb +2 -0
- data/lib/x_twitter_scraper/models/api_key_list_response.rb +3 -44
- data/lib/x_twitter_scraper/models/delivery.rb +2 -0
- data/lib/x_twitter_scraper/models/draft.rb +2 -0
- data/lib/x_twitter_scraper/models/draft_detail.rb +3 -0
- data/lib/x_twitter_scraper/models/draft_list_params.rb +2 -1
- data/lib/x_twitter_scraper/models/draft_list_response.rb +3 -38
- data/lib/x_twitter_scraper/models/draw_detail.rb +2 -0
- data/lib/x_twitter_scraper/models/draw_export_params.rb +3 -1
- data/lib/x_twitter_scraper/models/draw_list_item.rb +2 -0
- data/lib/x_twitter_scraper/models/draw_list_params.rb +4 -3
- data/lib/x_twitter_scraper/models/draw_list_response.rb +3 -50
- data/lib/x_twitter_scraper/models/draw_retrieve_response.rb +8 -124
- data/lib/x_twitter_scraper/models/draw_run_response.rb +3 -32
- data/lib/x_twitter_scraper/models/error.rb +2 -0
- data/lib/x_twitter_scraper/models/event.rb +11 -18
- data/lib/x_twitter_scraper/models/event_detail.rb +7 -18
- data/lib/x_twitter_scraper/models/event_list_params.rb +10 -21
- data/lib/x_twitter_scraper/models/event_list_response.rb +3 -59
- data/lib/x_twitter_scraper/models/event_type.rb +1 -0
- data/lib/x_twitter_scraper/models/extraction_estimate_cost_params.rb +9 -7
- data/lib/x_twitter_scraper/models/extraction_export_results_params.rb +5 -1
- data/lib/x_twitter_scraper/models/extraction_job.rb +11 -1
- data/lib/x_twitter_scraper/models/extraction_list_params.rb +10 -5
- data/lib/x_twitter_scraper/models/extraction_list_response.rb +3 -87
- data/lib/x_twitter_scraper/models/extraction_retrieve_params.rb +4 -3
- data/lib/x_twitter_scraper/models/extraction_run_params.rb +3 -1
- data/lib/x_twitter_scraper/models/extraction_run_response.rb +10 -15
- data/lib/x_twitter_scraper/models/integration.rb +12 -32
- data/lib/x_twitter_scraper/models/integration_create_params.rb +8 -32
- data/lib/x_twitter_scraper/models/integration_delivery.rb +2 -0
- data/lib/x_twitter_scraper/models/integration_list_deliveries_params.rb +4 -1
- data/lib/x_twitter_scraper/models/integration_list_deliveries_response.rb +3 -67
- data/lib/x_twitter_scraper/models/integration_list_response.rb +3 -112
- data/lib/x_twitter_scraper/models/integration_update_params.rb +4 -19
- data/lib/x_twitter_scraper/models/monitor.rb +12 -17
- data/lib/x_twitter_scraper/models/monitor_create_params.rb +4 -19
- data/lib/x_twitter_scraper/models/monitor_create_response.rb +8 -17
- data/lib/x_twitter_scraper/models/monitor_list_response.rb +3 -60
- data/lib/x_twitter_scraper/models/monitor_update_params.rb +7 -19
- data/lib/x_twitter_scraper/models/paginated_tweets.rb +5 -96
- data/lib/x_twitter_scraper/models/paginated_users.rb +5 -73
- data/lib/x_twitter_scraper/models/radar_item.rb +2 -0
- data/lib/x_twitter_scraper/models/radar_retrieve_trending_topics_params.rb +20 -3
- data/lib/x_twitter_scraper/models/radar_retrieve_trending_topics_response.rb +3 -62
- data/lib/x_twitter_scraper/models/style_compare_response.rb +9 -134
- data/lib/x_twitter_scraper/models/style_delete_params.rb +4 -4
- data/lib/x_twitter_scraper/models/style_get_performance_params.rb +4 -4
- data/lib/x_twitter_scraper/models/style_list_response.rb +3 -32
- data/lib/x_twitter_scraper/models/style_profile.rb +3 -0
- data/lib/x_twitter_scraper/models/style_profile_summary.rb +2 -0
- data/lib/x_twitter_scraper/models/style_retrieve_params.rb +4 -4
- data/lib/x_twitter_scraper/models/style_update_params.rb +4 -4
- data/lib/x_twitter_scraper/models/trend_list_params.rb +2 -1
- data/lib/x_twitter_scraper/models/webhook.rb +11 -17
- data/lib/x_twitter_scraper/models/webhook_create_params.rb +4 -19
- data/lib/x_twitter_scraper/models/webhook_create_response.rb +8 -17
- data/lib/x_twitter_scraper/models/webhook_list_deliveries_response.rb +3 -56
- data/lib/x_twitter_scraper/models/webhook_list_response.rb +3 -54
- data/lib/x_twitter_scraper/models/webhook_update_params.rb +8 -19
- data/lib/x_twitter_scraper/models/winner.rb +2 -0
- data/lib/x_twitter_scraper/models/x/account_bulk_retry_params.rb +16 -0
- data/lib/x_twitter_scraper/models/x/account_bulk_retry_response.rb +19 -0
- data/lib/x_twitter_scraper/models/x/account_list_response.rb +3 -38
- data/lib/x_twitter_scraper/models/x/account_reauth_params.rb +4 -4
- data/lib/x_twitter_scraper/models/x/bookmark_list_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/communities/join_create_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/communities/join_delete_all_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/communities/tweet_list_by_community_params.rb +33 -0
- data/lib/x_twitter_scraper/models/x/communities/tweet_list_params.rb +6 -6
- data/lib/x_twitter_scraper/models/x/community_action_result.rb +2 -0
- data/lib/x_twitter_scraper/models/x/community_create_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/community_delete_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/community_retrieve_info_response.rb +6 -6
- data/lib/x_twitter_scraper/models/x/community_retrieve_moderators_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/community_retrieve_search_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/dm_retrieve_history_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/dm_send_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/list_retrieve_followers_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/list_retrieve_members_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/list_retrieve_tweets_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/media_upload_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/profile_update_avatar_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/profile_update_banner_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/profile_update_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/search_tweet.rb +20 -1
- data/lib/x_twitter_scraper/models/x/tweet_author.rb +2 -0
- data/lib/x_twitter_scraper/models/x/tweet_delete_params.rb +6 -6
- data/lib/x_twitter_scraper/models/x/tweet_detail.rb +109 -1
- data/lib/x_twitter_scraper/models/x/tweet_get_favoriters_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/tweet_get_quotes_params.rb +8 -8
- data/lib/x_twitter_scraper/models/x/tweet_get_replies_params.rb +6 -6
- data/lib/x_twitter_scraper/models/x/tweet_get_retweeters_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/tweet_get_thread_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/tweet_retrieve_params.rb +4 -4
- data/lib/x_twitter_scraper/models/x/tweet_retrieve_response.rb +9 -100
- data/lib/x_twitter_scraper/models/x/tweet_search_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/tweets/like_create_params.rb +6 -6
- data/lib/x_twitter_scraper/models/x/tweets/like_delete_params.rb +6 -6
- data/lib/x_twitter_scraper/models/x/tweets/retweet_create_params.rb +6 -6
- data/lib/x_twitter_scraper/models/x/tweets/retweet_delete_params.rb +6 -6
- data/lib/x_twitter_scraper/models/x/user_profile.rb +3 -0
- data/lib/x_twitter_scraper/models/x/user_retrieve_followers_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/user_retrieve_followers_you_know_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/user_retrieve_following_params.rb +4 -4
- data/lib/x_twitter_scraper/models/x/user_retrieve_likes_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/user_retrieve_media_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/user_retrieve_mentions_params.rb +6 -6
- data/lib/x_twitter_scraper/models/x/user_retrieve_params.rb +4 -4
- data/lib/x_twitter_scraper/models/x/user_retrieve_search_params.rb +4 -4
- data/lib/x_twitter_scraper/models/x/user_retrieve_tweets_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/user_retrieve_verified_followers_params.rb +2 -2
- data/lib/x_twitter_scraper/models/x/users/follow_create_params.rb +6 -6
- data/lib/x_twitter_scraper/models/x/users/follow_delete_all_params.rb +6 -6
- data/lib/x_twitter_scraper/models/x/x_account.rb +2 -0
- data/lib/x_twitter_scraper/models/x/x_account_detail.rb +3 -0
- data/lib/x_twitter_scraper/models/x_get_article_response.rb +5 -38
- 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 +2 -2
- data/lib/x_twitter_scraper/models/x_get_trends_response.rb +57 -0
- data/lib/x_twitter_scraper/resources/drafts.rb +5 -5
- data/lib/x_twitter_scraper/resources/draws.rb +3 -3
- data/lib/x_twitter_scraper/resources/events.rb +6 -6
- data/lib/x_twitter_scraper/resources/extractions.rb +12 -12
- data/lib/x_twitter_scraper/resources/integrations.rb +11 -11
- data/lib/x_twitter_scraper/resources/monitors.rb +6 -6
- data/lib/x_twitter_scraper/resources/radar.rb +1 -1
- data/lib/x_twitter_scraper/resources/styles.rb +22 -22
- data/lib/x_twitter_scraper/resources/support/tickets.rb +8 -3
- data/lib/x_twitter_scraper/resources/trends.rb +2 -2
- data/lib/x_twitter_scraper/resources/webhooks.rb +4 -4
- data/lib/x_twitter_scraper/resources/x/accounts.rb +24 -4
- data/lib/x_twitter_scraper/resources/x/bookmarks.rb +3 -3
- data/lib/x_twitter_scraper/resources/x/communities/join.rb +6 -6
- data/lib/x_twitter_scraper/resources/x/communities/tweets.rb +30 -5
- data/lib/x_twitter_scraper/resources/x/communities.rb +12 -12
- data/lib/x_twitter_scraper/resources/x/dm.rb +2 -2
- data/lib/x_twitter_scraper/resources/x/lists.rb +11 -11
- data/lib/x_twitter_scraper/resources/x/media.rb +1 -1
- data/lib/x_twitter_scraper/resources/x/profile.rb +3 -3
- data/lib/x_twitter_scraper/resources/x/tweets/like.rb +10 -10
- data/lib/x_twitter_scraper/resources/x/tweets/retweet.rb +10 -10
- data/lib/x_twitter_scraper/resources/x/tweets.rb +46 -39
- data/lib/x_twitter_scraper/resources/x/users/follow.rb +10 -10
- data/lib/x_twitter_scraper/resources/x/users.rb +45 -45
- data/lib/x_twitter_scraper/resources/x.rb +13 -7
- data/lib/x_twitter_scraper/version.rb +1 -1
- data/lib/x_twitter_scraper.rb +4 -28
- data/rbi/x_twitter_scraper/models/api_key.rbi +1 -0
- data/rbi/x_twitter_scraper/models/api_key_list_response.rbi +5 -78
- data/rbi/x_twitter_scraper/models/delivery.rbi +1 -0
- data/rbi/x_twitter_scraper/models/draft.rbi +1 -0
- data/rbi/x_twitter_scraper/models/draft_detail.rbi +1 -0
- data/rbi/x_twitter_scraper/models/draft_list_params.rbi +2 -0
- data/rbi/x_twitter_scraper/models/draft_list_response.rbi +3 -63
- data/rbi/x_twitter_scraper/models/draw_detail.rbi +1 -0
- data/rbi/x_twitter_scraper/models/draw_export_params.rbi +3 -0
- data/rbi/x_twitter_scraper/models/draw_list_item.rbi +1 -0
- data/rbi/x_twitter_scraper/models/draw_list_params.rbi +4 -2
- data/rbi/x_twitter_scraper/models/draw_list_response.rbi +3 -76
- data/rbi/x_twitter_scraper/models/draw_retrieve_response.rbi +13 -178
- data/rbi/x_twitter_scraper/models/draw_run_response.rbi +3 -52
- data/rbi/x_twitter_scraper/models/error.rbi +1 -0
- data/rbi/x_twitter_scraper/models/event.rbi +14 -31
- data/rbi/x_twitter_scraper/models/event_detail.rbi +6 -47
- data/rbi/x_twitter_scraper/models/event_list_params.rbi +12 -63
- data/rbi/x_twitter_scraper/models/event_list_response.rbi +3 -122
- data/rbi/x_twitter_scraper/models/event_type.rbi +1 -0
- data/rbi/x_twitter_scraper/models/extraction_estimate_cost_params.rbi +9 -6
- data/rbi/x_twitter_scraper/models/extraction_export_results_params.rbi +8 -1
- data/rbi/x_twitter_scraper/models/extraction_job.rbi +8 -4
- data/rbi/x_twitter_scraper/models/extraction_list_params.rbi +10 -2
- data/rbi/x_twitter_scraper/models/extraction_list_response.rbi +3 -254
- data/rbi/x_twitter_scraper/models/extraction_retrieve_params.rbi +4 -2
- data/rbi/x_twitter_scraper/models/extraction_run_params.rbi +3 -0
- data/rbi/x_twitter_scraper/models/extraction_run_response.rbi +12 -40
- data/rbi/x_twitter_scraper/models/integration.rbi +12 -81
- data/rbi/x_twitter_scraper/models/integration_create_params.rbi +9 -96
- data/rbi/x_twitter_scraper/models/integration_delivery.rbi +1 -0
- data/rbi/x_twitter_scraper/models/integration_list_deliveries_params.rbi +7 -1
- data/rbi/x_twitter_scraper/models/integration_list_deliveries_response.rbi +3 -119
- data/rbi/x_twitter_scraper/models/integration_list_response.rbi +3 -227
- data/rbi/x_twitter_scraper/models/integration_update_params.rbi +6 -74
- data/rbi/x_twitter_scraper/models/monitor.rbi +6 -48
- data/rbi/x_twitter_scraper/models/monitor_create_params.rbi +5 -62
- data/rbi/x_twitter_scraper/models/monitor_create_response.rbi +12 -70
- data/rbi/x_twitter_scraper/models/monitor_list_response.rbi +3 -141
- data/rbi/x_twitter_scraper/models/monitor_update_params.rbi +12 -69
- data/rbi/x_twitter_scraper/models/paginated_tweets.rbi +4 -169
- data/rbi/x_twitter_scraper/models/paginated_users.rbi +4 -120
- data/rbi/x_twitter_scraper/models/radar_item.rbi +1 -0
- data/rbi/x_twitter_scraper/models/radar_retrieve_trending_topics_params.rbi +78 -4
- data/rbi/x_twitter_scraper/models/radar_retrieve_trending_topics_response.rbi +3 -108
- data/rbi/x_twitter_scraper/models/style_compare_response.rbi +16 -259
- data/rbi/x_twitter_scraper/models/style_delete_params.rbi +4 -4
- data/rbi/x_twitter_scraper/models/style_get_performance_params.rbi +4 -4
- data/rbi/x_twitter_scraper/models/style_list_response.rbi +3 -54
- data/rbi/x_twitter_scraper/models/style_profile.rbi +1 -0
- data/rbi/x_twitter_scraper/models/style_profile_summary.rbi +1 -0
- data/rbi/x_twitter_scraper/models/style_retrieve_params.rbi +4 -4
- data/rbi/x_twitter_scraper/models/style_update_params.rbi +4 -4
- data/rbi/x_twitter_scraper/models/trend_list_params.rbi +2 -0
- data/rbi/x_twitter_scraper/models/webhook.rbi +13 -49
- data/rbi/x_twitter_scraper/models/webhook_create_params.rbi +5 -62
- data/rbi/x_twitter_scraper/models/webhook_create_response.rbi +12 -70
- data/rbi/x_twitter_scraper/models/webhook_list_deliveries_response.rbi +5 -105
- data/rbi/x_twitter_scraper/models/webhook_list_response.rbi +5 -134
- data/rbi/x_twitter_scraper/models/webhook_update_params.rbi +6 -68
- data/rbi/x_twitter_scraper/models/winner.rbi +1 -0
- data/rbi/x_twitter_scraper/models/x/account_bulk_retry_params.rbi +34 -0
- data/rbi/x_twitter_scraper/models/x/account_bulk_retry_response.rbi +32 -0
- data/rbi/x_twitter_scraper/models/x/account_list_response.rbi +3 -68
- data/rbi/x_twitter_scraper/models/x/account_reauth_params.rbi +4 -4
- data/rbi/x_twitter_scraper/models/x/bookmark_list_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/communities/join_create_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/communities/join_delete_all_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/communities/tweet_list_by_community_params.rbi +59 -0
- data/rbi/x_twitter_scraper/models/x/communities/tweet_list_params.rbi +6 -6
- data/rbi/x_twitter_scraper/models/x/community_action_result.rbi +1 -0
- data/rbi/x_twitter_scraper/models/x/community_create_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/community_delete_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/community_retrieve_info_response.rbi +6 -6
- data/rbi/x_twitter_scraper/models/x/community_retrieve_moderators_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/community_retrieve_search_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/dm_retrieve_history_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/dm_send_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/list_retrieve_followers_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/list_retrieve_members_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/list_retrieve_tweets_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/media_upload_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/profile_update_avatar_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/profile_update_banner_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/profile_update_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/search_tweet.rbi +12 -0
- data/rbi/x_twitter_scraper/models/x/tweet_author.rbi +1 -0
- data/rbi/x_twitter_scraper/models/x/tweet_delete_params.rbi +6 -6
- data/rbi/x_twitter_scraper/models/x/tweet_detail.rbi +195 -3
- data/rbi/x_twitter_scraper/models/x/tweet_get_favoriters_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/tweet_get_quotes_params.rbi +8 -8
- data/rbi/x_twitter_scraper/models/x/tweet_get_replies_params.rbi +6 -6
- data/rbi/x_twitter_scraper/models/x/tweet_get_retweeters_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/tweet_get_thread_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/tweet_retrieve_params.rbi +4 -7
- data/rbi/x_twitter_scraper/models/x/tweet_retrieve_response.rbi +16 -171
- data/rbi/x_twitter_scraper/models/x/tweet_search_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/tweets/like_create_params.rbi +6 -6
- data/rbi/x_twitter_scraper/models/x/tweets/like_delete_params.rbi +6 -6
- data/rbi/x_twitter_scraper/models/x/tweets/retweet_create_params.rbi +6 -6
- data/rbi/x_twitter_scraper/models/x/tweets/retweet_delete_params.rbi +6 -6
- data/rbi/x_twitter_scraper/models/x/user_profile.rbi +1 -0
- data/rbi/x_twitter_scraper/models/x/user_retrieve_followers_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/user_retrieve_followers_you_know_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/user_retrieve_following_params.rbi +4 -4
- data/rbi/x_twitter_scraper/models/x/user_retrieve_likes_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/user_retrieve_media_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/user_retrieve_mentions_params.rbi +6 -6
- data/rbi/x_twitter_scraper/models/x/user_retrieve_params.rbi +4 -7
- data/rbi/x_twitter_scraper/models/x/user_retrieve_search_params.rbi +4 -4
- data/rbi/x_twitter_scraper/models/x/user_retrieve_tweets_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/user_retrieve_verified_followers_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/x/users/follow_create_params.rbi +6 -6
- data/rbi/x_twitter_scraper/models/x/users/follow_delete_all_params.rbi +6 -6
- data/rbi/x_twitter_scraper/models/x/x_account.rbi +1 -0
- data/rbi/x_twitter_scraper/models/x/x_account_detail.rbi +1 -0
- data/rbi/x_twitter_scraper/models/x_get_article_response.rbi +10 -71
- 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 +2 -2
- data/rbi/x_twitter_scraper/models/x_get_trends_response.rbi +102 -0
- data/rbi/x_twitter_scraper/resources/drafts.rbi +3 -2
- data/rbi/x_twitter_scraper/resources/draws.rbi +3 -1
- data/rbi/x_twitter_scraper/resources/events.rbi +6 -3
- data/rbi/x_twitter_scraper/resources/extractions.rbi +12 -5
- data/rbi/x_twitter_scraper/resources/integrations.rbi +10 -13
- data/rbi/x_twitter_scraper/resources/monitors.rbi +6 -6
- data/rbi/x_twitter_scraper/resources/radar.rbi +2 -1
- data/rbi/x_twitter_scraper/resources/styles.rbi +15 -15
- data/rbi/x_twitter_scraper/resources/support/tickets.rbi +17 -3
- data/rbi/x_twitter_scraper/resources/trends.rbi +2 -1
- data/rbi/x_twitter_scraper/resources/webhooks.rbi +5 -5
- data/rbi/x_twitter_scraper/resources/x/accounts.rbi +13 -3
- data/rbi/x_twitter_scraper/resources/x/bookmarks.rbi +2 -2
- data/rbi/x_twitter_scraper/resources/x/communities/join.rbi +4 -8
- data/rbi/x_twitter_scraper/resources/x/communities/tweets.rbi +21 -4
- data/rbi/x_twitter_scraper/resources/x/communities.rbi +9 -9
- data/rbi/x_twitter_scraper/resources/x/dm.rbi +2 -2
- data/rbi/x_twitter_scraper/resources/x/lists.rbi +8 -8
- data/rbi/x_twitter_scraper/resources/x/media.rbi +1 -1
- data/rbi/x_twitter_scraper/resources/x/profile.rbi +3 -3
- data/rbi/x_twitter_scraper/resources/x/tweets/like.rbi +8 -6
- data/rbi/x_twitter_scraper/resources/x/tweets/retweet.rbi +8 -6
- data/rbi/x_twitter_scraper/resources/x/tweets.rbi +33 -28
- data/rbi/x_twitter_scraper/resources/x/users/follow.rbi +6 -6
- data/rbi/x_twitter_scraper/resources/x/users.rbi +33 -34
- data/rbi/x_twitter_scraper/resources/x.rbi +11 -5
- data/sig/x_twitter_scraper/models/api_key_list_response.rbs +4 -53
- data/sig/x_twitter_scraper/models/draft_list_response.rbs +4 -45
- data/sig/x_twitter_scraper/models/draw_list_response.rbs +4 -53
- data/sig/x_twitter_scraper/models/draw_retrieve_response.rbs +8 -124
- data/sig/x_twitter_scraper/models/draw_run_response.rbs +4 -36
- data/sig/x_twitter_scraper/models/event.rbs +4 -25
- data/sig/x_twitter_scraper/models/event_detail.rbs +4 -25
- data/sig/x_twitter_scraper/models/event_list_params.rbs +6 -27
- data/sig/x_twitter_scraper/models/event_list_response.rbs +4 -67
- data/sig/x_twitter_scraper/models/extraction_list_response.rbs +4 -109
- data/sig/x_twitter_scraper/models/extraction_run_response.rbs +5 -15
- data/sig/x_twitter_scraper/models/integration.rbs +9 -40
- data/sig/x_twitter_scraper/models/integration_create_params.rbs +8 -39
- data/sig/x_twitter_scraper/models/integration_list_deliveries_response.rbs +4 -78
- data/sig/x_twitter_scraper/models/integration_list_response.rbs +4 -114
- data/sig/x_twitter_scraper/models/integration_update_params.rbs +6 -27
- data/sig/x_twitter_scraper/models/monitor.rbs +4 -25
- data/sig/x_twitter_scraper/models/monitor_create_params.rbs +4 -25
- data/sig/x_twitter_scraper/models/monitor_create_response.rbs +4 -25
- data/sig/x_twitter_scraper/models/monitor_list_response.rbs +4 -70
- data/sig/x_twitter_scraper/models/monitor_update_params.rbs +6 -27
- data/sig/x_twitter_scraper/models/paginated_tweets.rbs +4 -113
- data/sig/x_twitter_scraper/models/paginated_users.rbs +4 -87
- data/sig/x_twitter_scraper/models/radar_retrieve_trending_topics_params.rbs +30 -5
- data/sig/x_twitter_scraper/models/radar_retrieve_trending_topics_response.rbs +4 -70
- data/sig/x_twitter_scraper/models/style_compare_response.rbs +8 -154
- data/sig/x_twitter_scraper/models/style_delete_params.rbs +4 -4
- data/sig/x_twitter_scraper/models/style_get_performance_params.rbs +4 -4
- data/sig/x_twitter_scraper/models/style_list_response.rbs +4 -38
- data/sig/x_twitter_scraper/models/style_retrieve_params.rbs +4 -4
- data/sig/x_twitter_scraper/models/style_update_params.rbs +4 -4
- data/sig/x_twitter_scraper/models/webhook.rbs +4 -25
- data/sig/x_twitter_scraper/models/webhook_create_params.rbs +4 -28
- data/sig/x_twitter_scraper/models/webhook_create_response.rbs +4 -25
- data/sig/x_twitter_scraper/models/webhook_list_deliveries_response.rbs +4 -68
- data/sig/x_twitter_scraper/models/webhook_list_response.rbs +4 -69
- data/sig/x_twitter_scraper/models/webhook_update_params.rbs +6 -27
- data/sig/x_twitter_scraper/models/x/account_bulk_retry_params.rbs +19 -0
- data/sig/x_twitter_scraper/models/x/account_bulk_retry_response.rbs +15 -0
- data/sig/x_twitter_scraper/models/x/account_list_response.rbs +4 -45
- data/sig/x_twitter_scraper/models/x/communities/tweet_list_by_community_params.rbs +34 -0
- data/sig/x_twitter_scraper/models/x/search_tweet.rbs +7 -0
- data/sig/x_twitter_scraper/models/x/tweet_delete_params.rbs +4 -4
- data/sig/x_twitter_scraper/models/x/tweet_detail.rbs +108 -3
- data/sig/x_twitter_scraper/models/x/tweet_retrieve_params.rbs +4 -5
- data/sig/x_twitter_scraper/models/x/tweet_retrieve_response.rbs +10 -108
- data/sig/x_twitter_scraper/models/x/tweets/like_create_params.rbs +4 -4
- data/sig/x_twitter_scraper/models/x/tweets/like_delete_params.rbs +4 -4
- data/sig/x_twitter_scraper/models/x/tweets/retweet_create_params.rbs +4 -4
- data/sig/x_twitter_scraper/models/x/tweets/retweet_delete_params.rbs +4 -4
- data/sig/x_twitter_scraper/models/x/user_retrieve_params.rbs +4 -5
- data/sig/x_twitter_scraper/models/x/users/follow_create_params.rbs +4 -4
- data/sig/x_twitter_scraper/models/x/users/follow_delete_all_params.rbs +4 -4
- data/sig/x_twitter_scraper/models/x_get_article_response.rbs +6 -45
- data/sig/x_twitter_scraper/models/x_get_trends_response.rbs +63 -0
- data/sig/x_twitter_scraper/resources/drafts.rbs +2 -2
- data/sig/x_twitter_scraper/resources/events.rbs +2 -2
- data/sig/x_twitter_scraper/resources/integrations.rbs +6 -6
- data/sig/x_twitter_scraper/resources/monitors.rbs +4 -4
- data/sig/x_twitter_scraper/resources/radar.rbs +1 -1
- data/sig/x_twitter_scraper/resources/styles.rbs +7 -7
- data/sig/x_twitter_scraper/resources/webhooks.rbs +3 -3
- data/sig/x_twitter_scraper/resources/x/accounts.rbs +5 -1
- data/sig/x_twitter_scraper/resources/x/bookmarks.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 +7 -1
- data/sig/x_twitter_scraper/resources/x/communities.rbs +3 -3
- data/sig/x_twitter_scraper/resources/x/lists.rbs +3 -3
- data/sig/x_twitter_scraper/resources/x/tweets/like.rbs +2 -2
- data/sig/x_twitter_scraper/resources/x/tweets/retweet.rbs +2 -2
- data/sig/x_twitter_scraper/resources/x/tweets.rbs +9 -9
- data/sig/x_twitter_scraper/resources/x/users/follow.rbs +2 -2
- data/sig/x_twitter_scraper/resources/x/users.rbs +12 -12
- data/sig/x_twitter_scraper/resources/x.rbs +4 -2
- metadata +17 -88
- data/lib/x_twitter_scraper/models/draft_create_response.rb +0 -46
- data/lib/x_twitter_scraper/models/draft_retrieve_response.rb +0 -46
- data/lib/x_twitter_scraper/models/event_retrieve_response.rb +0 -74
- data/lib/x_twitter_scraper/models/integration_create_response.rb +0 -114
- data/lib/x_twitter_scraper/models/integration_retrieve_response.rb +0 -114
- data/lib/x_twitter_scraper/models/integration_update_response.rb +0 -114
- data/lib/x_twitter_scraper/models/monitor_retrieve_response.rb +0 -62
- data/lib/x_twitter_scraper/models/monitor_update_response.rb +0 -62
- data/lib/x_twitter_scraper/models/style_analyze_response.rb +0 -69
- data/lib/x_twitter_scraper/models/style_retrieve_response.rb +0 -69
- data/lib/x_twitter_scraper/models/style_update_response.rb +0 -69
- data/lib/x_twitter_scraper/models/webhook_update_response.rb +0 -56
- data/lib/x_twitter_scraper/models/x/account_retrieve_response.rb +0 -60
- data/lib/x_twitter_scraper/models/x/bookmark_list_response.rb +0 -124
- data/lib/x_twitter_scraper/models/x/communities/join_create_response.rb +0 -32
- data/lib/x_twitter_scraper/models/x/communities/join_delete_all_response.rb +0 -32
- data/lib/x_twitter_scraper/models/x/tweet_get_favoriters_response.rb +0 -101
- data/lib/x_twitter_scraper/models/x/tweet_get_quotes_response.rb +0 -124
- data/lib/x_twitter_scraper/models/x/tweet_get_replies_response.rb +0 -124
- data/lib/x_twitter_scraper/models/x/tweet_get_retweeters_response.rb +0 -101
- data/lib/x_twitter_scraper/models/x/tweet_get_thread_response.rb +0 -124
- data/lib/x_twitter_scraper/models/x/tweet_search_response.rb +0 -124
- data/lib/x_twitter_scraper/models/x/user_retrieve_followers_you_know_response.rb +0 -101
- data/lib/x_twitter_scraper/models/x/user_retrieve_likes_response.rb +0 -124
- data/lib/x_twitter_scraper/models/x/user_retrieve_media_response.rb +0 -124
- data/lib/x_twitter_scraper/models/x/user_retrieve_response.rb +0 -78
- data/lib/x_twitter_scraper/models/x/user_retrieve_tweets_response.rb +0 -124
- data/lib/x_twitter_scraper/models/x_get_home_timeline_response.rb +0 -122
- data/rbi/x_twitter_scraper/models/draft_create_response.rbi +0 -67
- data/rbi/x_twitter_scraper/models/draft_retrieve_response.rbi +0 -67
- data/rbi/x_twitter_scraper/models/event_retrieve_response.rbi +0 -135
- data/rbi/x_twitter_scraper/models/integration_create_response.rbi +0 -215
- data/rbi/x_twitter_scraper/models/integration_retrieve_response.rbi +0 -215
- data/rbi/x_twitter_scraper/models/integration_update_response.rbi +0 -215
- data/rbi/x_twitter_scraper/models/monitor_retrieve_response.rbi +0 -134
- data/rbi/x_twitter_scraper/models/monitor_update_response.rbi +0 -134
- data/rbi/x_twitter_scraper/models/style_analyze_response.rbi +0 -120
- data/rbi/x_twitter_scraper/models/style_retrieve_response.rbi +0 -120
- data/rbi/x_twitter_scraper/models/style_update_response.rbi +0 -120
- data/rbi/x_twitter_scraper/models/webhook_update_response.rbi +0 -122
- data/rbi/x_twitter_scraper/models/x/account_retrieve_response.rbi +0 -91
- data/rbi/x_twitter_scraper/models/x/bookmark_list_response.rbi +0 -231
- data/rbi/x_twitter_scraper/models/x/communities/join_create_response.rbi +0 -50
- data/rbi/x_twitter_scraper/models/x/communities/join_delete_all_response.rbi +0 -50
- data/rbi/x_twitter_scraper/models/x/tweet_get_favoriters_response.rbi +0 -177
- data/rbi/x_twitter_scraper/models/x/tweet_get_quotes_response.rbi +0 -231
- data/rbi/x_twitter_scraper/models/x/tweet_get_replies_response.rbi +0 -231
- data/rbi/x_twitter_scraper/models/x/tweet_get_retweeters_response.rbi +0 -177
- data/rbi/x_twitter_scraper/models/x/tweet_get_thread_response.rbi +0 -231
- data/rbi/x_twitter_scraper/models/x/tweet_search_response.rbi +0 -229
- data/rbi/x_twitter_scraper/models/x/user_retrieve_followers_you_know_response.rbi +0 -177
- data/rbi/x_twitter_scraper/models/x/user_retrieve_likes_response.rbi +0 -233
- data/rbi/x_twitter_scraper/models/x/user_retrieve_media_response.rbi +0 -233
- data/rbi/x_twitter_scraper/models/x/user_retrieve_response.rbi +0 -124
- data/rbi/x_twitter_scraper/models/x/user_retrieve_tweets_response.rbi +0 -233
- data/rbi/x_twitter_scraper/models/x_get_home_timeline_response.rbi +0 -227
- data/sig/x_twitter_scraper/models/draft_create_response.rbs +0 -49
- data/sig/x_twitter_scraper/models/draft_retrieve_response.rbs +0 -49
- data/sig/x_twitter_scraper/models/event_retrieve_response.rbs +0 -73
- data/sig/x_twitter_scraper/models/integration_create_response.rbs +0 -109
- data/sig/x_twitter_scraper/models/integration_retrieve_response.rbs +0 -109
- data/sig/x_twitter_scraper/models/integration_update_response.rbs +0 -109
- data/sig/x_twitter_scraper/models/monitor_retrieve_response.rbs +0 -66
- data/sig/x_twitter_scraper/models/monitor_update_response.rbs +0 -66
- data/sig/x_twitter_scraper/models/style_analyze_response.rbs +0 -76
- data/sig/x_twitter_scraper/models/style_retrieve_response.rbs +0 -76
- data/sig/x_twitter_scraper/models/style_update_response.rbs +0 -76
- data/sig/x_twitter_scraper/models/webhook_update_response.rbs +0 -61
- data/sig/x_twitter_scraper/models/x/account_retrieve_response.rbs +0 -63
- data/sig/x_twitter_scraper/models/x/bookmark_list_response.rbs +0 -141
- data/sig/x_twitter_scraper/models/x/communities/join_create_response.rbs +0 -30
- data/sig/x_twitter_scraper/models/x/communities/join_delete_all_response.rbs +0 -30
- data/sig/x_twitter_scraper/models/x/tweet_get_favoriters_response.rbs +0 -115
- data/sig/x_twitter_scraper/models/x/tweet_get_quotes_response.rbs +0 -141
- data/sig/x_twitter_scraper/models/x/tweet_get_replies_response.rbs +0 -141
- data/sig/x_twitter_scraper/models/x/tweet_get_retweeters_response.rbs +0 -115
- data/sig/x_twitter_scraper/models/x/tweet_get_thread_response.rbs +0 -141
- data/sig/x_twitter_scraper/models/x/tweet_search_response.rbs +0 -141
- data/sig/x_twitter_scraper/models/x/user_retrieve_followers_you_know_response.rbs +0 -115
- data/sig/x_twitter_scraper/models/x/user_retrieve_likes_response.rbs +0 -141
- data/sig/x_twitter_scraper/models/x/user_retrieve_media_response.rbs +0 -141
- data/sig/x_twitter_scraper/models/x/user_retrieve_response.rbs +0 -88
- data/sig/x_twitter_scraper/models/x/user_retrieve_tweets_response.rbs +0 -141
- data/sig/x_twitter_scraper/models/x_get_home_timeline_response.rbs +0 -139
|
@@ -15,7 +15,7 @@ module XTwitterScraper
|
|
|
15
15
|
)
|
|
16
16
|
end
|
|
17
17
|
|
|
18
|
-
# X account (@username or
|
|
18
|
+
# X account (@username or ID) uploading media
|
|
19
19
|
sig { returns(String) }
|
|
20
20
|
attr_accessor :account
|
|
21
21
|
|
|
@@ -38,7 +38,7 @@ module XTwitterScraper
|
|
|
38
38
|
).returns(T.attached_class)
|
|
39
39
|
end
|
|
40
40
|
def self.new(
|
|
41
|
-
# X account (@username or
|
|
41
|
+
# X account (@username or ID) uploading media
|
|
42
42
|
account:,
|
|
43
43
|
# Media file to upload
|
|
44
44
|
file:,
|
|
@@ -15,7 +15,7 @@ module XTwitterScraper
|
|
|
15
15
|
)
|
|
16
16
|
end
|
|
17
17
|
|
|
18
|
-
# X account (@username or
|
|
18
|
+
# X account (@username or ID) for avatar update
|
|
19
19
|
sig { returns(String) }
|
|
20
20
|
attr_accessor :account
|
|
21
21
|
|
|
@@ -31,7 +31,7 @@ module XTwitterScraper
|
|
|
31
31
|
).returns(T.attached_class)
|
|
32
32
|
end
|
|
33
33
|
def self.new(
|
|
34
|
-
# X account (@username or
|
|
34
|
+
# X account (@username or ID) for avatar update
|
|
35
35
|
account:,
|
|
36
36
|
# Avatar image (max 716KB)
|
|
37
37
|
file:,
|
|
@@ -15,7 +15,7 @@ module XTwitterScraper
|
|
|
15
15
|
)
|
|
16
16
|
end
|
|
17
17
|
|
|
18
|
-
# X account (@username or
|
|
18
|
+
# X account (@username or ID) for banner update
|
|
19
19
|
sig { returns(String) }
|
|
20
20
|
attr_accessor :account
|
|
21
21
|
|
|
@@ -31,7 +31,7 @@ module XTwitterScraper
|
|
|
31
31
|
).returns(T.attached_class)
|
|
32
32
|
end
|
|
33
33
|
def self.new(
|
|
34
|
-
# X account (@username or
|
|
34
|
+
# X account (@username or ID) for banner update
|
|
35
35
|
account:,
|
|
36
36
|
# Banner image (max 2MB)
|
|
37
37
|
file:,
|
|
@@ -15,7 +15,7 @@ module XTwitterScraper
|
|
|
15
15
|
)
|
|
16
16
|
end
|
|
17
17
|
|
|
18
|
-
# X account (@username or
|
|
18
|
+
# X account (@username or ID) to update profile
|
|
19
19
|
sig { returns(String) }
|
|
20
20
|
attr_accessor :account
|
|
21
21
|
|
|
@@ -57,7 +57,7 @@ module XTwitterScraper
|
|
|
57
57
|
).returns(T.attached_class)
|
|
58
58
|
end
|
|
59
59
|
def self.new(
|
|
60
|
-
# X account (@username or
|
|
60
|
+
# X account (@username or ID) to update profile
|
|
61
61
|
account:,
|
|
62
62
|
# Bio description
|
|
63
63
|
description: nil,
|
|
@@ -38,6 +38,13 @@ module XTwitterScraper
|
|
|
38
38
|
sig { params(created_at: String).void }
|
|
39
39
|
attr_writer :created_at
|
|
40
40
|
|
|
41
|
+
# True for Note Tweets (long-form content, up to 25,000 characters)
|
|
42
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
43
|
+
attr_reader :is_note_tweet
|
|
44
|
+
|
|
45
|
+
sig { params(is_note_tweet: T::Boolean).void }
|
|
46
|
+
attr_writer :is_note_tweet
|
|
47
|
+
|
|
41
48
|
sig { returns(T.nilable(Integer)) }
|
|
42
49
|
attr_reader :like_count
|
|
43
50
|
|
|
@@ -68,6 +75,7 @@ module XTwitterScraper
|
|
|
68
75
|
sig { params(view_count: Integer).void }
|
|
69
76
|
attr_writer :view_count
|
|
70
77
|
|
|
78
|
+
# Tweet returned from search results with inline author info.
|
|
71
79
|
sig do
|
|
72
80
|
params(
|
|
73
81
|
id: String,
|
|
@@ -75,6 +83,7 @@ module XTwitterScraper
|
|
|
75
83
|
author: XTwitterScraper::X::SearchTweet::Author::OrHash,
|
|
76
84
|
bookmark_count: Integer,
|
|
77
85
|
created_at: String,
|
|
86
|
+
is_note_tweet: T::Boolean,
|
|
78
87
|
like_count: Integer,
|
|
79
88
|
quote_count: Integer,
|
|
80
89
|
reply_count: Integer,
|
|
@@ -88,6 +97,8 @@ module XTwitterScraper
|
|
|
88
97
|
author: nil,
|
|
89
98
|
bookmark_count: nil,
|
|
90
99
|
created_at: nil,
|
|
100
|
+
# True for Note Tweets (long-form content, up to 25,000 characters)
|
|
101
|
+
is_note_tweet: nil,
|
|
91
102
|
like_count: nil,
|
|
92
103
|
quote_count: nil,
|
|
93
104
|
reply_count: nil,
|
|
@@ -104,6 +115,7 @@ module XTwitterScraper
|
|
|
104
115
|
author: XTwitterScraper::X::SearchTweet::Author,
|
|
105
116
|
bookmark_count: Integer,
|
|
106
117
|
created_at: String,
|
|
118
|
+
is_note_tweet: T::Boolean,
|
|
107
119
|
like_count: Integer,
|
|
108
120
|
quote_count: Integer,
|
|
109
121
|
reply_count: Integer,
|
|
@@ -16,22 +16,22 @@ module XTwitterScraper
|
|
|
16
16
|
end
|
|
17
17
|
|
|
18
18
|
sig { returns(String) }
|
|
19
|
-
attr_accessor :
|
|
19
|
+
attr_accessor :id
|
|
20
20
|
|
|
21
|
-
# X account (@username or account ID)
|
|
21
|
+
# X account identifier (@username or account ID)
|
|
22
22
|
sig { returns(String) }
|
|
23
23
|
attr_accessor :account
|
|
24
24
|
|
|
25
25
|
sig do
|
|
26
26
|
params(
|
|
27
|
-
|
|
27
|
+
id: String,
|
|
28
28
|
account: String,
|
|
29
29
|
request_options: XTwitterScraper::RequestOptions::OrHash
|
|
30
30
|
).returns(T.attached_class)
|
|
31
31
|
end
|
|
32
32
|
def self.new(
|
|
33
|
-
|
|
34
|
-
# X account (@username or account ID)
|
|
33
|
+
id:,
|
|
34
|
+
# X account identifier (@username or account ID)
|
|
35
35
|
account:,
|
|
36
36
|
request_options: {}
|
|
37
37
|
)
|
|
@@ -40,7 +40,7 @@ module XTwitterScraper
|
|
|
40
40
|
sig do
|
|
41
41
|
override.returns(
|
|
42
42
|
{
|
|
43
|
-
|
|
43
|
+
id: String,
|
|
44
44
|
account: String,
|
|
45
45
|
request_options: XTwitterScraper::RequestOptions
|
|
46
46
|
}
|
|
@@ -36,12 +36,75 @@ module XTwitterScraper
|
|
|
36
36
|
sig { returns(Integer) }
|
|
37
37
|
attr_accessor :view_count
|
|
38
38
|
|
|
39
|
+
# ID of the root tweet in the conversation thread
|
|
40
|
+
sig { returns(T.nilable(String)) }
|
|
41
|
+
attr_reader :conversation_id
|
|
42
|
+
|
|
43
|
+
sig { params(conversation_id: String).void }
|
|
44
|
+
attr_writer :conversation_id
|
|
45
|
+
|
|
39
46
|
sig { returns(T.nilable(String)) }
|
|
40
47
|
attr_reader :created_at
|
|
41
48
|
|
|
42
49
|
sig { params(created_at: String).void }
|
|
43
50
|
attr_writer :created_at
|
|
44
51
|
|
|
52
|
+
# Parsed entities from the tweet text (URLs, mentions, hashtags, media)
|
|
53
|
+
sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
|
|
54
|
+
attr_reader :entities
|
|
55
|
+
|
|
56
|
+
sig { params(entities: T::Hash[Symbol, T.anything]).void }
|
|
57
|
+
attr_writer :entities
|
|
58
|
+
|
|
59
|
+
# Whether this is a Note Tweet (long-form post, up to 25,000 characters)
|
|
60
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
61
|
+
attr_reader :is_note_tweet
|
|
62
|
+
|
|
63
|
+
sig { params(is_note_tweet: T::Boolean).void }
|
|
64
|
+
attr_writer :is_note_tweet
|
|
65
|
+
|
|
66
|
+
# Whether this tweet quotes another tweet
|
|
67
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
68
|
+
attr_reader :is_quote_status
|
|
69
|
+
|
|
70
|
+
sig { params(is_quote_status: T::Boolean).void }
|
|
71
|
+
attr_writer :is_quote_status
|
|
72
|
+
|
|
73
|
+
# Whether this tweet is a reply to another tweet
|
|
74
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
75
|
+
attr_reader :is_reply
|
|
76
|
+
|
|
77
|
+
sig { params(is_reply: T::Boolean).void }
|
|
78
|
+
attr_writer :is_reply
|
|
79
|
+
|
|
80
|
+
# Attached media items, omitted when the tweet has no media
|
|
81
|
+
sig do
|
|
82
|
+
returns(T.nilable(T::Array[XTwitterScraper::X::TweetDetail::Media]))
|
|
83
|
+
end
|
|
84
|
+
attr_reader :media
|
|
85
|
+
|
|
86
|
+
sig do
|
|
87
|
+
params(
|
|
88
|
+
media: T::Array[XTwitterScraper::X::TweetDetail::Media::OrHash]
|
|
89
|
+
).void
|
|
90
|
+
end
|
|
91
|
+
attr_writer :media
|
|
92
|
+
|
|
93
|
+
# The quoted tweet object, present when isQuoteStatus is true
|
|
94
|
+
sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
|
|
95
|
+
attr_reader :quoted_tweet
|
|
96
|
+
|
|
97
|
+
sig { params(quoted_tweet: T::Hash[Symbol, T.anything]).void }
|
|
98
|
+
attr_writer :quoted_tweet
|
|
99
|
+
|
|
100
|
+
# Client application used to post this tweet
|
|
101
|
+
sig { returns(T.nilable(String)) }
|
|
102
|
+
attr_reader :source
|
|
103
|
+
|
|
104
|
+
sig { params(source: String).void }
|
|
105
|
+
attr_writer :source
|
|
106
|
+
|
|
107
|
+
# Full tweet with text, engagement metrics, media, and metadata.
|
|
45
108
|
sig do
|
|
46
109
|
params(
|
|
47
110
|
id: String,
|
|
@@ -52,7 +115,15 @@ module XTwitterScraper
|
|
|
52
115
|
retweet_count: Integer,
|
|
53
116
|
text: String,
|
|
54
117
|
view_count: Integer,
|
|
55
|
-
|
|
118
|
+
conversation_id: String,
|
|
119
|
+
created_at: String,
|
|
120
|
+
entities: T::Hash[Symbol, T.anything],
|
|
121
|
+
is_note_tweet: T::Boolean,
|
|
122
|
+
is_quote_status: T::Boolean,
|
|
123
|
+
is_reply: T::Boolean,
|
|
124
|
+
media: T::Array[XTwitterScraper::X::TweetDetail::Media::OrHash],
|
|
125
|
+
quoted_tweet: T::Hash[Symbol, T.anything],
|
|
126
|
+
source: String
|
|
56
127
|
).returns(T.attached_class)
|
|
57
128
|
end
|
|
58
129
|
def self.new(
|
|
@@ -64,7 +135,23 @@ module XTwitterScraper
|
|
|
64
135
|
retweet_count:,
|
|
65
136
|
text:,
|
|
66
137
|
view_count:,
|
|
67
|
-
|
|
138
|
+
# ID of the root tweet in the conversation thread
|
|
139
|
+
conversation_id: nil,
|
|
140
|
+
created_at: nil,
|
|
141
|
+
# Parsed entities from the tweet text (URLs, mentions, hashtags, media)
|
|
142
|
+
entities: nil,
|
|
143
|
+
# Whether this is a Note Tweet (long-form post, up to 25,000 characters)
|
|
144
|
+
is_note_tweet: nil,
|
|
145
|
+
# Whether this tweet quotes another tweet
|
|
146
|
+
is_quote_status: nil,
|
|
147
|
+
# Whether this tweet is a reply to another tweet
|
|
148
|
+
is_reply: nil,
|
|
149
|
+
# Attached media items, omitted when the tweet has no media
|
|
150
|
+
media: nil,
|
|
151
|
+
# The quoted tweet object, present when isQuoteStatus is true
|
|
152
|
+
quoted_tweet: nil,
|
|
153
|
+
# Client application used to post this tweet
|
|
154
|
+
source: nil
|
|
68
155
|
)
|
|
69
156
|
end
|
|
70
157
|
|
|
@@ -79,12 +166,117 @@ module XTwitterScraper
|
|
|
79
166
|
retweet_count: Integer,
|
|
80
167
|
text: String,
|
|
81
168
|
view_count: Integer,
|
|
82
|
-
|
|
169
|
+
conversation_id: String,
|
|
170
|
+
created_at: String,
|
|
171
|
+
entities: T::Hash[Symbol, T.anything],
|
|
172
|
+
is_note_tweet: T::Boolean,
|
|
173
|
+
is_quote_status: T::Boolean,
|
|
174
|
+
is_reply: T::Boolean,
|
|
175
|
+
media: T::Array[XTwitterScraper::X::TweetDetail::Media],
|
|
176
|
+
quoted_tweet: T::Hash[Symbol, T.anything],
|
|
177
|
+
source: String
|
|
83
178
|
}
|
|
84
179
|
)
|
|
85
180
|
end
|
|
86
181
|
def to_hash
|
|
87
182
|
end
|
|
183
|
+
|
|
184
|
+
class Media < XTwitterScraper::Internal::Type::BaseModel
|
|
185
|
+
OrHash =
|
|
186
|
+
T.type_alias do
|
|
187
|
+
T.any(
|
|
188
|
+
XTwitterScraper::X::TweetDetail::Media,
|
|
189
|
+
XTwitterScraper::Internal::AnyHash
|
|
190
|
+
)
|
|
191
|
+
end
|
|
192
|
+
|
|
193
|
+
sig { returns(T.nilable(String)) }
|
|
194
|
+
attr_reader :media_url
|
|
195
|
+
|
|
196
|
+
sig { params(media_url: String).void }
|
|
197
|
+
attr_writer :media_url
|
|
198
|
+
|
|
199
|
+
sig do
|
|
200
|
+
returns(
|
|
201
|
+
T.nilable(
|
|
202
|
+
XTwitterScraper::X::TweetDetail::Media::Type::TaggedSymbol
|
|
203
|
+
)
|
|
204
|
+
)
|
|
205
|
+
end
|
|
206
|
+
attr_reader :type
|
|
207
|
+
|
|
208
|
+
sig do
|
|
209
|
+
params(
|
|
210
|
+
type: XTwitterScraper::X::TweetDetail::Media::Type::OrSymbol
|
|
211
|
+
).void
|
|
212
|
+
end
|
|
213
|
+
attr_writer :type
|
|
214
|
+
|
|
215
|
+
sig { returns(T.nilable(String)) }
|
|
216
|
+
attr_reader :url
|
|
217
|
+
|
|
218
|
+
sig { params(url: String).void }
|
|
219
|
+
attr_writer :url
|
|
220
|
+
|
|
221
|
+
sig do
|
|
222
|
+
params(
|
|
223
|
+
media_url: String,
|
|
224
|
+
type: XTwitterScraper::X::TweetDetail::Media::Type::OrSymbol,
|
|
225
|
+
url: String
|
|
226
|
+
).returns(T.attached_class)
|
|
227
|
+
end
|
|
228
|
+
def self.new(media_url: nil, type: nil, url: nil)
|
|
229
|
+
end
|
|
230
|
+
|
|
231
|
+
sig do
|
|
232
|
+
override.returns(
|
|
233
|
+
{
|
|
234
|
+
media_url: String,
|
|
235
|
+
type:
|
|
236
|
+
XTwitterScraper::X::TweetDetail::Media::Type::TaggedSymbol,
|
|
237
|
+
url: String
|
|
238
|
+
}
|
|
239
|
+
)
|
|
240
|
+
end
|
|
241
|
+
def to_hash
|
|
242
|
+
end
|
|
243
|
+
|
|
244
|
+
module Type
|
|
245
|
+
extend XTwitterScraper::Internal::Type::Enum
|
|
246
|
+
|
|
247
|
+
TaggedSymbol =
|
|
248
|
+
T.type_alias do
|
|
249
|
+
T.all(Symbol, XTwitterScraper::X::TweetDetail::Media::Type)
|
|
250
|
+
end
|
|
251
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
252
|
+
|
|
253
|
+
PHOTO =
|
|
254
|
+
T.let(
|
|
255
|
+
:photo,
|
|
256
|
+
XTwitterScraper::X::TweetDetail::Media::Type::TaggedSymbol
|
|
257
|
+
)
|
|
258
|
+
VIDEO =
|
|
259
|
+
T.let(
|
|
260
|
+
:video,
|
|
261
|
+
XTwitterScraper::X::TweetDetail::Media::Type::TaggedSymbol
|
|
262
|
+
)
|
|
263
|
+
ANIMATED_GIF =
|
|
264
|
+
T.let(
|
|
265
|
+
:animated_gif,
|
|
266
|
+
XTwitterScraper::X::TweetDetail::Media::Type::TaggedSymbol
|
|
267
|
+
)
|
|
268
|
+
|
|
269
|
+
sig do
|
|
270
|
+
override.returns(
|
|
271
|
+
T::Array[
|
|
272
|
+
XTwitterScraper::X::TweetDetail::Media::Type::TaggedSymbol
|
|
273
|
+
]
|
|
274
|
+
)
|
|
275
|
+
end
|
|
276
|
+
def self.values
|
|
277
|
+
end
|
|
278
|
+
end
|
|
279
|
+
end
|
|
88
280
|
end
|
|
89
281
|
end
|
|
90
282
|
end
|
|
@@ -18,7 +18,7 @@ module XTwitterScraper
|
|
|
18
18
|
sig { returns(String) }
|
|
19
19
|
attr_accessor :id
|
|
20
20
|
|
|
21
|
-
# Pagination cursor
|
|
21
|
+
# Pagination cursor for favoriters
|
|
22
22
|
sig { returns(T.nilable(String)) }
|
|
23
23
|
attr_reader :cursor
|
|
24
24
|
|
|
@@ -34,7 +34,7 @@ module XTwitterScraper
|
|
|
34
34
|
end
|
|
35
35
|
def self.new(
|
|
36
36
|
id:,
|
|
37
|
-
# Pagination cursor
|
|
37
|
+
# Pagination cursor for favoriters
|
|
38
38
|
cursor: nil,
|
|
39
39
|
request_options: {}
|
|
40
40
|
)
|
|
@@ -18,28 +18,28 @@ module XTwitterScraper
|
|
|
18
18
|
sig { returns(String) }
|
|
19
19
|
attr_accessor :id
|
|
20
20
|
|
|
21
|
-
# Pagination cursor
|
|
21
|
+
# Pagination cursor for quote tweets
|
|
22
22
|
sig { returns(T.nilable(String)) }
|
|
23
23
|
attr_reader :cursor
|
|
24
24
|
|
|
25
25
|
sig { params(cursor: String).void }
|
|
26
26
|
attr_writer :cursor
|
|
27
27
|
|
|
28
|
-
# Include
|
|
28
|
+
# Include reply quotes (default false)
|
|
29
29
|
sig { returns(T.nilable(T::Boolean)) }
|
|
30
30
|
attr_reader :include_replies
|
|
31
31
|
|
|
32
32
|
sig { params(include_replies: T::Boolean).void }
|
|
33
33
|
attr_writer :include_replies
|
|
34
34
|
|
|
35
|
-
# Unix timestamp -
|
|
35
|
+
# Unix timestamp - return quotes posted after this time
|
|
36
36
|
sig { returns(T.nilable(String)) }
|
|
37
37
|
attr_reader :since_time
|
|
38
38
|
|
|
39
39
|
sig { params(since_time: String).void }
|
|
40
40
|
attr_writer :since_time
|
|
41
41
|
|
|
42
|
-
# Unix timestamp -
|
|
42
|
+
# Unix timestamp - return quotes posted before this time
|
|
43
43
|
sig { returns(T.nilable(String)) }
|
|
44
44
|
attr_reader :until_time
|
|
45
45
|
|
|
@@ -58,13 +58,13 @@ module XTwitterScraper
|
|
|
58
58
|
end
|
|
59
59
|
def self.new(
|
|
60
60
|
id:,
|
|
61
|
-
# Pagination cursor
|
|
61
|
+
# Pagination cursor for quote tweets
|
|
62
62
|
cursor: nil,
|
|
63
|
-
# Include
|
|
63
|
+
# Include reply quotes (default false)
|
|
64
64
|
include_replies: nil,
|
|
65
|
-
# Unix timestamp -
|
|
65
|
+
# Unix timestamp - return quotes posted after this time
|
|
66
66
|
since_time: nil,
|
|
67
|
-
# Unix timestamp -
|
|
67
|
+
# Unix timestamp - return quotes posted before this time
|
|
68
68
|
until_time: nil,
|
|
69
69
|
request_options: {}
|
|
70
70
|
)
|
|
@@ -18,21 +18,21 @@ module XTwitterScraper
|
|
|
18
18
|
sig { returns(String) }
|
|
19
19
|
attr_accessor :id
|
|
20
20
|
|
|
21
|
-
# Pagination cursor
|
|
21
|
+
# Pagination cursor for tweet replies
|
|
22
22
|
sig { returns(T.nilable(String)) }
|
|
23
23
|
attr_reader :cursor
|
|
24
24
|
|
|
25
25
|
sig { params(cursor: String).void }
|
|
26
26
|
attr_writer :cursor
|
|
27
27
|
|
|
28
|
-
# Unix timestamp -
|
|
28
|
+
# Unix timestamp - return replies posted after this time
|
|
29
29
|
sig { returns(T.nilable(String)) }
|
|
30
30
|
attr_reader :since_time
|
|
31
31
|
|
|
32
32
|
sig { params(since_time: String).void }
|
|
33
33
|
attr_writer :since_time
|
|
34
34
|
|
|
35
|
-
# Unix timestamp -
|
|
35
|
+
# Unix timestamp - return replies posted before this time
|
|
36
36
|
sig { returns(T.nilable(String)) }
|
|
37
37
|
attr_reader :until_time
|
|
38
38
|
|
|
@@ -50,11 +50,11 @@ module XTwitterScraper
|
|
|
50
50
|
end
|
|
51
51
|
def self.new(
|
|
52
52
|
id:,
|
|
53
|
-
# Pagination cursor
|
|
53
|
+
# Pagination cursor for tweet replies
|
|
54
54
|
cursor: nil,
|
|
55
|
-
# Unix timestamp -
|
|
55
|
+
# Unix timestamp - return replies posted after this time
|
|
56
56
|
since_time: nil,
|
|
57
|
-
# Unix timestamp -
|
|
57
|
+
# Unix timestamp - return replies posted before this time
|
|
58
58
|
until_time: nil,
|
|
59
59
|
request_options: {}
|
|
60
60
|
)
|
|
@@ -18,7 +18,7 @@ module XTwitterScraper
|
|
|
18
18
|
sig { returns(String) }
|
|
19
19
|
attr_accessor :id
|
|
20
20
|
|
|
21
|
-
# Pagination cursor
|
|
21
|
+
# Pagination cursor for retweeters
|
|
22
22
|
sig { returns(T.nilable(String)) }
|
|
23
23
|
attr_reader :cursor
|
|
24
24
|
|
|
@@ -34,7 +34,7 @@ module XTwitterScraper
|
|
|
34
34
|
end
|
|
35
35
|
def self.new(
|
|
36
36
|
id:,
|
|
37
|
-
# Pagination cursor
|
|
37
|
+
# Pagination cursor for retweeters
|
|
38
38
|
cursor: nil,
|
|
39
39
|
request_options: {}
|
|
40
40
|
)
|
|
@@ -18,7 +18,7 @@ module XTwitterScraper
|
|
|
18
18
|
sig { returns(String) }
|
|
19
19
|
attr_accessor :id
|
|
20
20
|
|
|
21
|
-
# Pagination cursor
|
|
21
|
+
# Pagination cursor for thread tweets
|
|
22
22
|
sig { returns(T.nilable(String)) }
|
|
23
23
|
attr_reader :cursor
|
|
24
24
|
|
|
@@ -34,7 +34,7 @@ module XTwitterScraper
|
|
|
34
34
|
end
|
|
35
35
|
def self.new(
|
|
36
36
|
id:,
|
|
37
|
-
# Pagination cursor
|
|
37
|
+
# Pagination cursor for thread tweets
|
|
38
38
|
cursor: nil,
|
|
39
39
|
request_options: {}
|
|
40
40
|
)
|
|
@@ -16,23 +16,20 @@ module XTwitterScraper
|
|
|
16
16
|
end
|
|
17
17
|
|
|
18
18
|
sig { returns(String) }
|
|
19
|
-
attr_accessor :
|
|
19
|
+
attr_accessor :id
|
|
20
20
|
|
|
21
21
|
sig do
|
|
22
22
|
params(
|
|
23
|
-
|
|
23
|
+
id: String,
|
|
24
24
|
request_options: XTwitterScraper::RequestOptions::OrHash
|
|
25
25
|
).returns(T.attached_class)
|
|
26
26
|
end
|
|
27
|
-
def self.new(
|
|
27
|
+
def self.new(id:, request_options: {})
|
|
28
28
|
end
|
|
29
29
|
|
|
30
30
|
sig do
|
|
31
31
|
override.returns(
|
|
32
|
-
{
|
|
33
|
-
tweet_id: String,
|
|
34
|
-
request_options: XTwitterScraper::RequestOptions
|
|
35
|
-
}
|
|
32
|
+
{ id: String, request_options: XTwitterScraper::RequestOptions }
|
|
36
33
|
)
|
|
37
34
|
end
|
|
38
35
|
def to_hash
|