x-twitter-scraper 0.7.2 → 0.9.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 +24 -0
- data/README.md +3 -3
- data/lib/x_twitter_scraper/models/credit_topup_balance_response.rb +5 -5
- data/lib/x_twitter_scraper/models/draw_export_params.rb +8 -3
- data/lib/x_twitter_scraper/models/draw_list_params.rb +2 -2
- data/lib/x_twitter_scraper/models/error.rb +8 -0
- data/lib/x_twitter_scraper/models/event_list_params.rb +13 -5
- data/lib/x_twitter_scraper/models/extraction_estimate_cost_params.rb +731 -82
- data/lib/x_twitter_scraper/models/extraction_estimate_cost_response.rb +1 -0
- data/lib/x_twitter_scraper/models/extraction_export_results_params.rb +145 -1
- data/lib/x_twitter_scraper/models/extraction_list_params.rb +2 -2
- data/lib/x_twitter_scraper/models/extraction_retrieve_params.rb +70 -3
- data/lib/x_twitter_scraper/models/extraction_run_params.rb +662 -1
- data/lib/x_twitter_scraper/models/extraction_run_response.rb +27 -48
- data/lib/x_twitter_scraper/models/guest_wallet_create_response.rb +8 -8
- data/lib/x_twitter_scraper/models/guest_wallet_topup_response.rb +9 -9
- data/lib/x_twitter_scraper/models/monitor.rb +29 -1
- data/lib/x_twitter_scraper/models/paginated_tweets.rb +4 -4
- data/lib/x_twitter_scraper/models/paginated_users.rb +5 -5
- data/lib/x_twitter_scraper/models/support/attachment_download_params.rb +28 -0
- data/lib/x_twitter_scraper/models/x/community_retrieve_members_params.rb +113 -1
- data/lib/x_twitter_scraper/models/x/community_retrieve_moderators_params.rb +117 -1
- data/lib/x_twitter_scraper/models/x/list_retrieve_followers_params.rb +117 -6
- data/lib/x_twitter_scraper/models/x/list_retrieve_members_params.rb +116 -1
- data/lib/x_twitter_scraper/models/x/tweet_get_favoriters_params.rb +117 -6
- data/lib/x_twitter_scraper/models/x/tweet_get_quotes_params.rb +153 -1
- data/lib/x_twitter_scraper/models/x/tweet_get_replies_params.rb +246 -16
- data/lib/x_twitter_scraper/models/x/tweet_get_replies_response.rb +3 -2
- data/lib/x_twitter_scraper/models/x/tweet_get_retweeters_params.rb +117 -6
- data/lib/x_twitter_scraper/models/x/tweet_search_params.rb +187 -14
- data/lib/x_twitter_scraper/models/x/tweet_search_response.rb +299 -0
- data/lib/x_twitter_scraper/models/x/user_retrieve_followers_params.rb +143 -10
- data/lib/x_twitter_scraper/models/x/user_retrieve_followers_response.rb +241 -0
- data/lib/x_twitter_scraper/models/x/user_retrieve_followers_you_know_params.rb +117 -6
- data/lib/x_twitter_scraper/models/x/user_retrieve_following_params.rb +143 -10
- data/lib/x_twitter_scraper/models/x/user_retrieve_following_response.rb +241 -0
- data/lib/x_twitter_scraper/models/x/user_retrieve_likes_params.rb +153 -1
- data/lib/x_twitter_scraper/models/x/user_retrieve_media_params.rb +153 -1
- data/lib/x_twitter_scraper/models/x/user_retrieve_mentions_params.rb +153 -1
- data/lib/x_twitter_scraper/models/x/user_retrieve_replies_params.rb +159 -7
- data/lib/x_twitter_scraper/models/x/user_retrieve_search_params.rb +116 -1
- data/lib/x_twitter_scraper/models/x/user_retrieve_tweets_params.rb +159 -7
- data/lib/x_twitter_scraper/models/x/user_retrieve_verified_followers_params.rb +157 -8
- data/lib/x_twitter_scraper/models/x/user_retrieve_verified_followers_response.rb +245 -0
- data/lib/x_twitter_scraper/models/x/x_account.rb +7 -11
- data/lib/x_twitter_scraper/resources/credits.rb +2 -2
- data/lib/x_twitter_scraper/resources/draws.rb +5 -2
- data/lib/x_twitter_scraper/resources/events.rb +10 -4
- data/lib/x_twitter_scraper/resources/extractions.rb +383 -84
- data/lib/x_twitter_scraper/resources/guest_wallets.rb +9 -13
- data/lib/x_twitter_scraper/resources/support/attachments.rb +42 -0
- data/lib/x_twitter_scraper/resources/support.rb +5 -0
- data/lib/x_twitter_scraper/resources/x/communities.rb +95 -4
- data/lib/x_twitter_scraper/resources/x/lists.rb +96 -5
- data/lib/x_twitter_scraper/resources/x/tweets.rb +286 -28
- data/lib/x_twitter_scraper/resources/x/users.rb +531 -41
- data/lib/x_twitter_scraper/version.rb +1 -1
- data/lib/x_twitter_scraper.rb +7 -1
- data/rbi/x_twitter_scraper/models/credit_topup_balance_response.rbi +6 -6
- data/rbi/x_twitter_scraper/models/draw_export_params.rbi +6 -3
- data/rbi/x_twitter_scraper/models/draw_list_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/error.rbi +40 -0
- data/rbi/x_twitter_scraper/models/event_list_params.rbi +15 -4
- data/rbi/x_twitter_scraper/models/extraction_estimate_cost_params.rbi +1338 -86
- data/rbi/x_twitter_scraper/models/extraction_estimate_cost_response.rbi +5 -0
- data/rbi/x_twitter_scraper/models/extraction_export_results_params.rbi +198 -0
- data/rbi/x_twitter_scraper/models/extraction_list_params.rbi +2 -2
- data/rbi/x_twitter_scraper/models/extraction_retrieve_params.rbi +194 -2
- data/rbi/x_twitter_scraper/models/extraction_run_params.rbi +1221 -0
- data/rbi/x_twitter_scraper/models/extraction_run_response.rbi +35 -162
- data/rbi/x_twitter_scraper/models/guest_wallet_create_response.rbi +8 -6
- data/rbi/x_twitter_scraper/models/guest_wallet_topup_response.rbi +9 -7
- data/rbi/x_twitter_scraper/models/monitor.rbi +54 -3
- data/rbi/x_twitter_scraper/models/paginated_tweets.rbi +4 -4
- data/rbi/x_twitter_scraper/models/paginated_users.rbi +5 -5
- data/rbi/x_twitter_scraper/models/support/attachment_download_params.rbi +51 -0
- data/rbi/x_twitter_scraper/models/x/community_retrieve_members_params.rbi +154 -0
- data/rbi/x_twitter_scraper/models/x/community_retrieve_moderators_params.rbi +154 -0
- data/rbi/x_twitter_scraper/models/x/list_retrieve_followers_params.rbi +160 -8
- data/rbi/x_twitter_scraper/models/x/list_retrieve_members_params.rbi +154 -0
- data/rbi/x_twitter_scraper/models/x/tweet_get_favoriters_params.rbi +160 -8
- data/rbi/x_twitter_scraper/models/x/tweet_get_quotes_params.rbi +209 -0
- data/rbi/x_twitter_scraper/models/x/tweet_get_replies_params.rbi +403 -20
- data/rbi/x_twitter_scraper/models/x/tweet_get_replies_response.rbi +3 -2
- data/rbi/x_twitter_scraper/models/x/tweet_get_retweeters_params.rbi +160 -8
- data/rbi/x_twitter_scraper/models/x/tweet_search_params.rbi +279 -16
- data/rbi/x_twitter_scraper/models/x/tweet_search_response.rbi +543 -0
- data/rbi/x_twitter_scraper/models/x/user_retrieve_followers_params.rbi +228 -12
- data/rbi/x_twitter_scraper/models/x/user_retrieve_followers_response.rbi +440 -0
- data/rbi/x_twitter_scraper/models/x/user_retrieve_followers_you_know_params.rbi +160 -8
- data/rbi/x_twitter_scraper/models/x/user_retrieve_following_params.rbi +228 -12
- data/rbi/x_twitter_scraper/models/x/user_retrieve_following_response.rbi +440 -0
- data/rbi/x_twitter_scraper/models/x/user_retrieve_likes_params.rbi +209 -0
- data/rbi/x_twitter_scraper/models/x/user_retrieve_media_params.rbi +209 -0
- data/rbi/x_twitter_scraper/models/x/user_retrieve_mentions_params.rbi +209 -0
- data/rbi/x_twitter_scraper/models/x/user_retrieve_replies_params.rbi +217 -8
- data/rbi/x_twitter_scraper/models/x/user_retrieve_search_params.rbi +154 -0
- data/rbi/x_twitter_scraper/models/x/user_retrieve_tweets_params.rbi +217 -8
- data/rbi/x_twitter_scraper/models/x/user_retrieve_verified_followers_params.rbi +248 -10
- data/rbi/x_twitter_scraper/models/x/user_retrieve_verified_followers_response.rbi +440 -0
- data/rbi/x_twitter_scraper/models/x/x_account.rbi +9 -15
- data/rbi/x_twitter_scraper/resources/credits.rbi +2 -2
- data/rbi/x_twitter_scraper/resources/draws.rbi +3 -2
- data/rbi/x_twitter_scraper/resources/events.rbi +5 -2
- data/rbi/x_twitter_scraper/resources/extractions.rbi +525 -83
- data/rbi/x_twitter_scraper/resources/guest_wallets.rbi +9 -13
- data/rbi/x_twitter_scraper/resources/support/attachments.rbi +35 -0
- data/rbi/x_twitter_scraper/resources/support.rbi +4 -0
- data/rbi/x_twitter_scraper/resources/x/communities.rbi +84 -0
- data/rbi/x_twitter_scraper/resources/x/lists.rbi +87 -4
- data/rbi/x_twitter_scraper/resources/x/tweets.rbi +307 -31
- data/rbi/x_twitter_scraper/resources/x/users.rbi +558 -34
- data/sig/x_twitter_scraper/models/error.rbs +16 -0
- data/sig/x_twitter_scraper/models/event_list_params.rbs +7 -0
- data/sig/x_twitter_scraper/models/extraction_estimate_cost_params.rbs +605 -1
- data/sig/x_twitter_scraper/models/extraction_estimate_cost_response.rbs +2 -0
- data/sig/x_twitter_scraper/models/extraction_export_results_params.rbs +127 -1
- data/sig/x_twitter_scraper/models/extraction_retrieve_params.rbs +74 -1
- data/sig/x_twitter_scraper/models/extraction_run_params.rbs +611 -1
- data/sig/x_twitter_scraper/models/extraction_run_response.rbs +29 -67
- data/sig/x_twitter_scraper/models/guest_wallet_create_response.rbs +4 -4
- data/sig/x_twitter_scraper/models/guest_wallet_topup_response.rbs +4 -4
- data/sig/x_twitter_scraper/models/monitor.rbs +29 -3
- data/sig/x_twitter_scraper/models/support/attachment_download_params.rbs +32 -0
- data/sig/x_twitter_scraper/models/x/community_retrieve_members_params.rbs +103 -1
- data/sig/x_twitter_scraper/models/x/community_retrieve_moderators_params.rbs +102 -1
- data/sig/x_twitter_scraper/models/x/list_retrieve_followers_params.rbs +103 -1
- data/sig/x_twitter_scraper/models/x/list_retrieve_members_params.rbs +103 -1
- data/sig/x_twitter_scraper/models/x/tweet_get_favoriters_params.rbs +103 -1
- data/sig/x_twitter_scraper/models/x/tweet_get_quotes_params.rbs +134 -1
- data/sig/x_twitter_scraper/models/x/tweet_get_replies_params.rbs +207 -2
- data/sig/x_twitter_scraper/models/x/tweet_get_retweeters_params.rbs +103 -1
- data/sig/x_twitter_scraper/models/x/tweet_search_params.rbs +154 -1
- data/sig/x_twitter_scraper/models/x/tweet_search_response.rbs +258 -0
- data/sig/x_twitter_scraper/models/x/user_retrieve_followers_params.rbs +119 -1
- data/sig/x_twitter_scraper/models/x/user_retrieve_followers_response.rbs +216 -0
- data/sig/x_twitter_scraper/models/x/user_retrieve_followers_you_know_params.rbs +103 -1
- data/sig/x_twitter_scraper/models/x/user_retrieve_following_params.rbs +119 -1
- data/sig/x_twitter_scraper/models/x/user_retrieve_following_response.rbs +216 -0
- data/sig/x_twitter_scraper/models/x/user_retrieve_likes_params.rbs +134 -1
- data/sig/x_twitter_scraper/models/x/user_retrieve_media_params.rbs +134 -1
- data/sig/x_twitter_scraper/models/x/user_retrieve_mentions_params.rbs +134 -1
- data/sig/x_twitter_scraper/models/x/user_retrieve_replies_params.rbs +134 -1
- data/sig/x_twitter_scraper/models/x/user_retrieve_search_params.rbs +102 -1
- data/sig/x_twitter_scraper/models/x/user_retrieve_tweets_params.rbs +134 -1
- data/sig/x_twitter_scraper/models/x/user_retrieve_verified_followers_params.rbs +137 -1
- data/sig/x_twitter_scraper/models/x/user_retrieve_verified_followers_response.rbs +216 -0
- data/sig/x_twitter_scraper/resources/events.rbs +1 -0
- data/sig/x_twitter_scraper/resources/extractions.rbs +137 -0
- data/sig/x_twitter_scraper/resources/support/attachments.rbs +15 -0
- data/sig/x_twitter_scraper/resources/support.rbs +2 -0
- data/sig/x_twitter_scraper/resources/x/communities.rbs +28 -0
- data/sig/x_twitter_scraper/resources/x/lists.rbs +28 -0
- data/sig/x_twitter_scraper/resources/x/tweets.rbs +93 -1
- data/sig/x_twitter_scraper/resources/x/users.rbs +173 -3
- metadata +19 -1
|
@@ -8,64 +8,43 @@ module XTwitterScraper
|
|
|
8
8
|
module Models
|
|
9
9
|
# @see XTwitterScraper::Resources::Extractions#run
|
|
10
10
|
class ExtractionRunResponse < XTwitterScraper::Internal::Type::BaseModel
|
|
11
|
-
# @!attribute
|
|
11
|
+
# @!attribute allowed
|
|
12
12
|
#
|
|
13
|
-
# @return [
|
|
14
|
-
required :
|
|
13
|
+
# @return [Boolean]
|
|
14
|
+
required :allowed, XTwitterScraper::Internal::Type::Boolean
|
|
15
15
|
|
|
16
|
-
# @!attribute
|
|
16
|
+
# @!attribute credits_available
|
|
17
17
|
#
|
|
18
|
-
# @return [
|
|
19
|
-
required :
|
|
18
|
+
# @return [String]
|
|
19
|
+
required :credits_available, String, api_name: :creditsAvailable
|
|
20
20
|
|
|
21
|
-
# @!attribute
|
|
22
|
-
# Identifier for the extraction tool used to run a job.
|
|
21
|
+
# @!attribute credits_required
|
|
23
22
|
#
|
|
24
|
-
# @return [
|
|
25
|
-
required :
|
|
26
|
-
enum: -> { XTwitterScraper::Models::ExtractionRunResponse::ToolType },
|
|
27
|
-
api_name: :toolType
|
|
23
|
+
# @return [String]
|
|
24
|
+
required :credits_required, String, api_name: :creditsRequired
|
|
28
25
|
|
|
29
|
-
# @!
|
|
30
|
-
# @param id [String]
|
|
31
|
-
#
|
|
32
|
-
# @param tool_type [Symbol, XTwitterScraper::Models::ExtractionRunResponse::ToolType] Identifier for the extraction tool used to run a job.
|
|
26
|
+
# @!attribute estimated_results
|
|
33
27
|
#
|
|
34
|
-
# @
|
|
28
|
+
# @return [Integer]
|
|
29
|
+
required :estimated_results, Integer, api_name: :estimatedResults
|
|
35
30
|
|
|
36
|
-
#
|
|
31
|
+
# @!attribute source
|
|
37
32
|
#
|
|
38
|
-
#
|
|
39
|
-
|
|
40
|
-
extend XTwitterScraper::Internal::Type::Enum
|
|
41
|
-
|
|
42
|
-
ARTICLE_EXTRACTOR = :article_extractor
|
|
43
|
-
COMMUNITY_EXTRACTOR = :community_extractor
|
|
44
|
-
COMMUNITY_MODERATOR_EXPLORER = :community_moderator_explorer
|
|
45
|
-
COMMUNITY_POST_EXTRACTOR = :community_post_extractor
|
|
46
|
-
COMMUNITY_SEARCH = :community_search
|
|
47
|
-
FAVORITERS = :favoriters
|
|
48
|
-
FOLLOWER_EXPLORER = :follower_explorer
|
|
49
|
-
FOLLOWING_EXPLORER = :following_explorer
|
|
50
|
-
LIST_FOLLOWER_EXPLORER = :list_follower_explorer
|
|
51
|
-
LIST_MEMBER_EXTRACTOR = :list_member_extractor
|
|
52
|
-
LIST_POST_EXTRACTOR = :list_post_extractor
|
|
53
|
-
MENTION_EXTRACTOR = :mention_extractor
|
|
54
|
-
PEOPLE_SEARCH = :people_search
|
|
55
|
-
POST_EXTRACTOR = :post_extractor
|
|
56
|
-
QUOTE_EXTRACTOR = :quote_extractor
|
|
57
|
-
REPLY_EXTRACTOR = :reply_extractor
|
|
58
|
-
REPOST_EXTRACTOR = :repost_extractor
|
|
59
|
-
SPACE_EXPLORER = :space_explorer
|
|
60
|
-
THREAD_EXTRACTOR = :thread_extractor
|
|
61
|
-
TWEET_SEARCH_EXTRACTOR = :tweet_search_extractor
|
|
62
|
-
USER_LIKES = :user_likes
|
|
63
|
-
USER_MEDIA = :user_media
|
|
64
|
-
VERIFIED_FOLLOWER_EXPLORER = :verified_follower_explorer
|
|
33
|
+
# @return [String]
|
|
34
|
+
required :source, String
|
|
65
35
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
36
|
+
# @!attribute resolved_x_user_id
|
|
37
|
+
#
|
|
38
|
+
# @return [String, nil]
|
|
39
|
+
optional :resolved_x_user_id, String, api_name: :resolvedXUserId
|
|
40
|
+
|
|
41
|
+
# @!method initialize(allowed:, credits_available:, credits_required:, estimated_results:, source:, resolved_x_user_id: nil)
|
|
42
|
+
# @param allowed [Boolean]
|
|
43
|
+
# @param credits_available [String]
|
|
44
|
+
# @param credits_required [String]
|
|
45
|
+
# @param estimated_results [Integer]
|
|
46
|
+
# @param source [String]
|
|
47
|
+
# @param resolved_x_user_id [String]
|
|
69
48
|
end
|
|
70
49
|
end
|
|
71
50
|
end
|
|
@@ -32,7 +32,7 @@ module XTwitterScraper
|
|
|
32
32
|
required :authorization, -> { XTwitterScraper::Models::GuestWalletCreateResponse::Authorization }
|
|
33
33
|
|
|
34
34
|
# @!attribute checkout_url
|
|
35
|
-
#
|
|
35
|
+
# Hosted checkout URL for user interaction.
|
|
36
36
|
#
|
|
37
37
|
# @return [String]
|
|
38
38
|
required :checkout_url, String
|
|
@@ -56,10 +56,10 @@ module XTwitterScraper
|
|
|
56
56
|
required :expires_at, Time
|
|
57
57
|
|
|
58
58
|
# @!attribute instructions
|
|
59
|
+
# Hosted checkout and status polling instructions.
|
|
59
60
|
#
|
|
60
|
-
# @return [
|
|
61
|
-
required :instructions,
|
|
62
|
-
const: :"Give checkout_url to the user. They must complete payment on Stripe. Never submit payment for them. After payment, poll status_url every poll_after_seconds until latest_purchase.status is no longer pending."
|
|
61
|
+
# @return [String]
|
|
62
|
+
required :instructions, String
|
|
63
63
|
|
|
64
64
|
# @!attribute poll_after_seconds
|
|
65
65
|
# Wait at least this long before polling status_url.
|
|
@@ -92,7 +92,7 @@ module XTwitterScraper
|
|
|
92
92
|
# @return [String]
|
|
93
93
|
required :wallet_id, String
|
|
94
94
|
|
|
95
|
-
# @!method initialize(amount:, api_key:, authorization:, checkout_url:, credits:, expires_at:, purchase_id:, status:, wallet_id:, account_required: false, credential_notice: :"Store api_key and the Idempotency-Key securely before sharing checkout_url. No email recovery is available.",
|
|
95
|
+
# @!method initialize(amount:, api_key:, authorization:, checkout_url:, credits:, expires_at:, instructions:, purchase_id:, status:, wallet_id:, account_required: false, credential_notice: :"Store api_key and the Idempotency-Key securely before sharing checkout_url. No email recovery is available.", poll_after_seconds: 2, requires_user_interaction: true, status_url: :"https://xquik.com/api/v1/guest-wallets/status")
|
|
96
96
|
# Some parameter documentations has been truncated, see
|
|
97
97
|
# {XTwitterScraper::Models::GuestWalletCreateResponse} for more details.
|
|
98
98
|
#
|
|
@@ -104,12 +104,14 @@ module XTwitterScraper
|
|
|
104
104
|
#
|
|
105
105
|
# @param authorization [XTwitterScraper::Models::GuestWalletCreateResponse::Authorization]
|
|
106
106
|
#
|
|
107
|
-
# @param checkout_url [String]
|
|
107
|
+
# @param checkout_url [String] Hosted checkout URL for user interaction.
|
|
108
108
|
#
|
|
109
109
|
# @param credits [String] Credits granted after verified payment.
|
|
110
110
|
#
|
|
111
111
|
# @param expires_at [Time] Time when the pending checkout expires.
|
|
112
112
|
#
|
|
113
|
+
# @param instructions [String] Hosted checkout and status polling instructions.
|
|
114
|
+
#
|
|
113
115
|
# @param purchase_id [String]
|
|
114
116
|
#
|
|
115
117
|
# @param status [Symbol, XTwitterScraper::Models::GuestWalletCreateResponse::Status]
|
|
@@ -120,8 +122,6 @@ module XTwitterScraper
|
|
|
120
122
|
#
|
|
121
123
|
# @param credential_notice [Symbol, :"Store api_key and the Idempotency-Key securely before sharing checkout_url. No email recovery is available."]
|
|
122
124
|
#
|
|
123
|
-
# @param instructions [Symbol, :"Give checkout_url to the user. They must complete payment on Stripe. Never submit payment for them. After payment, poll status_url every poll_after_seconds until latest_purchase.status is no longer pending."]
|
|
124
|
-
#
|
|
125
125
|
# @param poll_after_seconds [Integer, 2] Wait at least this long before polling status_url.
|
|
126
126
|
#
|
|
127
127
|
# @param requires_user_interaction [Boolean, true]
|
|
@@ -20,7 +20,7 @@ module XTwitterScraper
|
|
|
20
20
|
required :amount, -> { XTwitterScraper::GuestWalletAmount }
|
|
21
21
|
|
|
22
22
|
# @!attribute checkout_url
|
|
23
|
-
#
|
|
23
|
+
# Hosted checkout URL for user interaction.
|
|
24
24
|
#
|
|
25
25
|
# @return [String]
|
|
26
26
|
required :checkout_url, String
|
|
@@ -38,10 +38,10 @@ module XTwitterScraper
|
|
|
38
38
|
required :expires_at, Time
|
|
39
39
|
|
|
40
40
|
# @!attribute instructions
|
|
41
|
+
# Hosted checkout and status polling instructions.
|
|
41
42
|
#
|
|
42
|
-
# @return [
|
|
43
|
-
required :instructions,
|
|
44
|
-
const: :"Give checkout_url to the user. They must complete payment on Stripe. Never submit payment for them. After payment, poll status_url every poll_after_seconds until latest_purchase.status is no longer pending."
|
|
43
|
+
# @return [String]
|
|
44
|
+
required :instructions, String
|
|
45
45
|
|
|
46
46
|
# @!attribute poll_after_seconds
|
|
47
47
|
# Wait at least this long before polling status_url.
|
|
@@ -92,20 +92,22 @@ module XTwitterScraper
|
|
|
92
92
|
optional :credential_notice,
|
|
93
93
|
enum: -> { XTwitterScraper::Models::GuestWalletTopupResponse::CredentialNotice }
|
|
94
94
|
|
|
95
|
-
# @!method initialize(amount:, checkout_url:, credits:, expires_at:, purchase_id:, status:, wallet_id:, api_key: nil, authorization: nil, credential_notice: nil, account_required: false,
|
|
95
|
+
# @!method initialize(amount:, checkout_url:, credits:, expires_at:, instructions:, purchase_id:, status:, wallet_id:, api_key: nil, authorization: nil, credential_notice: nil, account_required: false, poll_after_seconds: 2, requires_user_interaction: true, status_url: :"https://xquik.com/api/v1/guest-wallets/status")
|
|
96
96
|
# Some parameter documentations has been truncated, see
|
|
97
97
|
# {XTwitterScraper::Models::GuestWalletTopupResponse} for more details.
|
|
98
98
|
#
|
|
99
|
-
# Pending
|
|
99
|
+
# Pending hosted checkout and guest wallet purchase details.
|
|
100
100
|
#
|
|
101
101
|
# @param amount [XTwitterScraper::Models::GuestWalletAmount] Confirmed USD amount for a guest wallet purchase.
|
|
102
102
|
#
|
|
103
|
-
# @param checkout_url [String]
|
|
103
|
+
# @param checkout_url [String] Hosted checkout URL for user interaction.
|
|
104
104
|
#
|
|
105
105
|
# @param credits [String] Credits granted after verified payment.
|
|
106
106
|
#
|
|
107
107
|
# @param expires_at [Time] Time when the pending checkout expires.
|
|
108
108
|
#
|
|
109
|
+
# @param instructions [String] Hosted checkout and status polling instructions.
|
|
110
|
+
#
|
|
109
111
|
# @param purchase_id [String]
|
|
110
112
|
#
|
|
111
113
|
# @param status [Symbol, XTwitterScraper::Models::GuestWalletTopupResponse::Status]
|
|
@@ -120,8 +122,6 @@ module XTwitterScraper
|
|
|
120
122
|
#
|
|
121
123
|
# @param account_required [Boolean, false]
|
|
122
124
|
#
|
|
123
|
-
# @param instructions [Symbol, :"Give checkout_url to the user. They must complete payment on Stripe. Never submit payment for them. After payment, poll status_url every poll_after_seconds until latest_purchase.status is no longer pending."]
|
|
124
|
-
#
|
|
125
125
|
# @param poll_after_seconds [Integer, 2] Wait at least this long before polling status_url.
|
|
126
126
|
#
|
|
127
127
|
# @param requires_user_interaction [Boolean, true]
|
|
@@ -47,7 +47,19 @@ module XTwitterScraper
|
|
|
47
47
|
# @return [String]
|
|
48
48
|
required :x_user_id, String, api_name: :xUserId
|
|
49
49
|
|
|
50
|
-
# @!
|
|
50
|
+
# @!attribute paused_at
|
|
51
|
+
# When Xquik automatically paused this monitor.
|
|
52
|
+
#
|
|
53
|
+
# @return [Time, nil]
|
|
54
|
+
optional :paused_at, Time, api_name: :pausedAt
|
|
55
|
+
|
|
56
|
+
# @!attribute paused_reason
|
|
57
|
+
# Why Xquik automatically paused this monitor.
|
|
58
|
+
#
|
|
59
|
+
# @return [Symbol, XTwitterScraper::Models::Monitor::PausedReason, nil]
|
|
60
|
+
optional :paused_reason, enum: -> { XTwitterScraper::Monitor::PausedReason }, api_name: :pausedReason
|
|
61
|
+
|
|
62
|
+
# @!method initialize(id:, created_at:, event_types:, is_active:, next_billing_at:, username:, x_user_id:, paused_at: nil, paused_reason: nil)
|
|
51
63
|
# Account monitor that tracks activity for a given X user.
|
|
52
64
|
#
|
|
53
65
|
# @param id [String]
|
|
@@ -63,6 +75,22 @@ module XTwitterScraper
|
|
|
63
75
|
# @param username [String]
|
|
64
76
|
#
|
|
65
77
|
# @param x_user_id [String]
|
|
78
|
+
#
|
|
79
|
+
# @param paused_at [Time] When Xquik automatically paused this monitor.
|
|
80
|
+
#
|
|
81
|
+
# @param paused_reason [Symbol, XTwitterScraper::Models::Monitor::PausedReason] Why Xquik automatically paused this monitor.
|
|
82
|
+
|
|
83
|
+
# Why Xquik automatically paused this monitor.
|
|
84
|
+
#
|
|
85
|
+
# @see XTwitterScraper::Models::Monitor#paused_reason
|
|
86
|
+
module PausedReason
|
|
87
|
+
extend XTwitterScraper::Internal::Type::Enum
|
|
88
|
+
|
|
89
|
+
X_USER_NOT_FOUND = :x_user_not_found
|
|
90
|
+
|
|
91
|
+
# @!method self.values
|
|
92
|
+
# @return [Array<Symbol>]
|
|
93
|
+
end
|
|
66
94
|
end
|
|
67
95
|
end
|
|
68
96
|
end
|
|
@@ -23,10 +23,10 @@ module XTwitterScraper
|
|
|
23
23
|
required :tweets, -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::SearchTweet] }
|
|
24
24
|
|
|
25
25
|
# @!method initialize(has_next_page:, next_cursor:, tweets:)
|
|
26
|
-
#
|
|
27
|
-
#
|
|
28
|
-
# next_cursor while has_next_page is true.
|
|
29
|
-
#
|
|
26
|
+
# No-mode search, user Tweet, user reply, and direct reply reads use automatic
|
|
27
|
+
# coverage. Shape, filters, aliases, and billing stay compatible. Unprefixed
|
|
28
|
+
# cursors remain legacy. Follow next_cursor while has_next_page is true. An empty
|
|
29
|
+
# filtered page can still have has_next_page true.
|
|
30
30
|
#
|
|
31
31
|
# @param has_next_page [Boolean]
|
|
32
32
|
# @param next_cursor [String]
|
|
@@ -23,11 +23,11 @@ module XTwitterScraper
|
|
|
23
23
|
required :users, -> { XTwitterScraper::Internal::Type::ArrayOf[XTwitterScraper::UserProfile] }
|
|
24
24
|
|
|
25
25
|
# @!method initialize(has_next_page:, next_cursor:, users:)
|
|
26
|
-
# Paginated user profiles.
|
|
27
|
-
#
|
|
28
|
-
#
|
|
29
|
-
#
|
|
30
|
-
#
|
|
26
|
+
# Paginated user profiles. No-mode follower, following, and verified follower
|
|
27
|
+
# requests merge independent views automatically. Response fields, page size,
|
|
28
|
+
# aliases, filters, and per-returned-profile billing stay unchanged. Existing
|
|
29
|
+
# unprefixed cursors retain legacy behavior. Follow next_cursor while
|
|
30
|
+
# has_next_page is true.
|
|
31
31
|
#
|
|
32
32
|
# @param has_next_page [Boolean]
|
|
33
33
|
# @param next_cursor [String]
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module XTwitterScraper
|
|
4
|
+
module Models
|
|
5
|
+
module Support
|
|
6
|
+
# @see XTwitterScraper::Resources::Support::Attachments#download
|
|
7
|
+
class AttachmentDownloadParams < XTwitterScraper::Internal::Type::BaseModel
|
|
8
|
+
extend XTwitterScraper::Internal::Type::RequestParameters::Converter
|
|
9
|
+
include XTwitterScraper::Internal::Type::RequestParameters
|
|
10
|
+
|
|
11
|
+
# @!attribute id
|
|
12
|
+
#
|
|
13
|
+
# @return [String]
|
|
14
|
+
required :id, String
|
|
15
|
+
|
|
16
|
+
# @!attribute range
|
|
17
|
+
#
|
|
18
|
+
# @return [String, nil]
|
|
19
|
+
optional :range, String
|
|
20
|
+
|
|
21
|
+
# @!method initialize(id:, range: nil, request_options: {})
|
|
22
|
+
# @param id [String]
|
|
23
|
+
# @param range [String]
|
|
24
|
+
# @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}]
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -17,12 +17,78 @@ module XTwitterScraper
|
|
|
17
17
|
# @return [String]
|
|
18
18
|
required :id, String
|
|
19
19
|
|
|
20
|
+
# @!attribute bio_contains
|
|
21
|
+
# Match any comma-separated or line-separated bio term, ignoring case.
|
|
22
|
+
#
|
|
23
|
+
# @return [String, nil]
|
|
24
|
+
optional :bio_contains, String
|
|
25
|
+
|
|
20
26
|
# @!attribute cursor
|
|
21
27
|
# Pagination cursor
|
|
22
28
|
#
|
|
23
29
|
# @return [String, nil]
|
|
24
30
|
optional :cursor, String
|
|
25
31
|
|
|
32
|
+
# @!attribute has_location
|
|
33
|
+
# Only return profiles with a location.
|
|
34
|
+
#
|
|
35
|
+
# @return [Boolean, nil]
|
|
36
|
+
optional :has_location, XTwitterScraper::Internal::Type::Boolean
|
|
37
|
+
|
|
38
|
+
# @!attribute has_website
|
|
39
|
+
# Only return profiles with a website.
|
|
40
|
+
#
|
|
41
|
+
# @return [Boolean, nil]
|
|
42
|
+
optional :has_website, XTwitterScraper::Internal::Type::Boolean
|
|
43
|
+
|
|
44
|
+
# @!attribute location_contains
|
|
45
|
+
# Match a location substring, ignoring case.
|
|
46
|
+
#
|
|
47
|
+
# @return [String, nil]
|
|
48
|
+
optional :location_contains, String
|
|
49
|
+
|
|
50
|
+
# @!attribute max_followers
|
|
51
|
+
# Maximum follower count. Missing counts pass this maximum.
|
|
52
|
+
#
|
|
53
|
+
# @return [Integer, nil]
|
|
54
|
+
optional :max_followers, Integer
|
|
55
|
+
|
|
56
|
+
# @!attribute max_following
|
|
57
|
+
# Maximum following count.
|
|
58
|
+
#
|
|
59
|
+
# @return [Integer, nil]
|
|
60
|
+
optional :max_following, Integer
|
|
61
|
+
|
|
62
|
+
# @!attribute max_statuses
|
|
63
|
+
# Maximum post count. maxPosts is also accepted.
|
|
64
|
+
#
|
|
65
|
+
# @return [Integer, nil]
|
|
66
|
+
optional :max_statuses, Integer
|
|
67
|
+
|
|
68
|
+
# @!attribute min_account_age_days
|
|
69
|
+
# Minimum account age in whole days.
|
|
70
|
+
#
|
|
71
|
+
# @return [Integer, nil]
|
|
72
|
+
optional :min_account_age_days, Integer
|
|
73
|
+
|
|
74
|
+
# @!attribute min_followers
|
|
75
|
+
# Minimum follower count. Filtering happens before billing.
|
|
76
|
+
#
|
|
77
|
+
# @return [Integer, nil]
|
|
78
|
+
optional :min_followers, Integer
|
|
79
|
+
|
|
80
|
+
# @!attribute min_following
|
|
81
|
+
# Minimum following count.
|
|
82
|
+
#
|
|
83
|
+
# @return [Integer, nil]
|
|
84
|
+
optional :min_following, Integer
|
|
85
|
+
|
|
86
|
+
# @!attribute min_statuses
|
|
87
|
+
# Minimum post count. minPosts is also accepted.
|
|
88
|
+
#
|
|
89
|
+
# @return [Integer, nil]
|
|
90
|
+
optional :min_statuses, Integer
|
|
91
|
+
|
|
26
92
|
# @!attribute page_size
|
|
27
93
|
# Items per page (20-200, default 20). This is an upper bound for paid
|
|
28
94
|
# authenticated calls: remaining credits can reduce the returned page size, and
|
|
@@ -31,16 +97,62 @@ module XTwitterScraper
|
|
|
31
97
|
# @return [Integer, nil]
|
|
32
98
|
optional :page_size, Integer
|
|
33
99
|
|
|
34
|
-
# @!
|
|
100
|
+
# @!attribute username_contains
|
|
101
|
+
# Match a username substring, ignoring case.
|
|
102
|
+
#
|
|
103
|
+
# @return [String, nil]
|
|
104
|
+
optional :username_contains, String
|
|
105
|
+
|
|
106
|
+
# @!attribute verified_only
|
|
107
|
+
# Only return verified profiles.
|
|
108
|
+
#
|
|
109
|
+
# @return [Boolean, nil]
|
|
110
|
+
optional :verified_only, XTwitterScraper::Internal::Type::Boolean
|
|
111
|
+
|
|
112
|
+
# @!attribute verified_type
|
|
113
|
+
# Match the verification type exactly, ignoring case.
|
|
114
|
+
#
|
|
115
|
+
# @return [String, nil]
|
|
116
|
+
optional :verified_type, String
|
|
117
|
+
|
|
118
|
+
# @!method initialize(id:, bio_contains: nil, cursor: nil, has_location: nil, has_website: nil, location_contains: nil, max_followers: nil, max_following: nil, max_statuses: nil, min_account_age_days: nil, min_followers: nil, min_following: nil, min_statuses: nil, page_size: nil, username_contains: nil, verified_only: nil, verified_type: nil, request_options: {})
|
|
35
119
|
# Some parameter documentations has been truncated, see
|
|
36
120
|
# {XTwitterScraper::Models::X::CommunityRetrieveMembersParams} for more details.
|
|
37
121
|
#
|
|
38
122
|
# @param id [String]
|
|
39
123
|
#
|
|
124
|
+
# @param bio_contains [String] Match any comma-separated or line-separated bio term, ignoring case.
|
|
125
|
+
#
|
|
40
126
|
# @param cursor [String] Pagination cursor
|
|
41
127
|
#
|
|
128
|
+
# @param has_location [Boolean] Only return profiles with a location.
|
|
129
|
+
#
|
|
130
|
+
# @param has_website [Boolean] Only return profiles with a website.
|
|
131
|
+
#
|
|
132
|
+
# @param location_contains [String] Match a location substring, ignoring case.
|
|
133
|
+
#
|
|
134
|
+
# @param max_followers [Integer] Maximum follower count. Missing counts pass this maximum.
|
|
135
|
+
#
|
|
136
|
+
# @param max_following [Integer] Maximum following count.
|
|
137
|
+
#
|
|
138
|
+
# @param max_statuses [Integer] Maximum post count. maxPosts is also accepted.
|
|
139
|
+
#
|
|
140
|
+
# @param min_account_age_days [Integer] Minimum account age in whole days.
|
|
141
|
+
#
|
|
142
|
+
# @param min_followers [Integer] Minimum follower count. Filtering happens before billing.
|
|
143
|
+
#
|
|
144
|
+
# @param min_following [Integer] Minimum following count.
|
|
145
|
+
#
|
|
146
|
+
# @param min_statuses [Integer] Minimum post count. minPosts is also accepted.
|
|
147
|
+
#
|
|
42
148
|
# @param page_size [Integer] Items per page (20-200, default 20). This is an upper bound for paid authenticat
|
|
43
149
|
#
|
|
150
|
+
# @param username_contains [String] Match a username substring, ignoring case.
|
|
151
|
+
#
|
|
152
|
+
# @param verified_only [Boolean] Only return verified profiles.
|
|
153
|
+
#
|
|
154
|
+
# @param verified_type [String] Match the verification type exactly, ignoring case.
|
|
155
|
+
#
|
|
44
156
|
# @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}]
|
|
45
157
|
end
|
|
46
158
|
end
|
|
@@ -17,17 +17,133 @@ module XTwitterScraper
|
|
|
17
17
|
# @return [String]
|
|
18
18
|
required :id, String
|
|
19
19
|
|
|
20
|
+
# @!attribute bio_contains
|
|
21
|
+
# Match any comma-separated or line-separated bio term, ignoring case.
|
|
22
|
+
#
|
|
23
|
+
# @return [String, nil]
|
|
24
|
+
optional :bio_contains, String
|
|
25
|
+
|
|
20
26
|
# @!attribute cursor
|
|
21
27
|
# Pagination cursor for community moderators
|
|
22
28
|
#
|
|
23
29
|
# @return [String, nil]
|
|
24
30
|
optional :cursor, String
|
|
25
31
|
|
|
26
|
-
# @!
|
|
32
|
+
# @!attribute has_location
|
|
33
|
+
# Only return profiles with a location.
|
|
34
|
+
#
|
|
35
|
+
# @return [Boolean, nil]
|
|
36
|
+
optional :has_location, XTwitterScraper::Internal::Type::Boolean
|
|
37
|
+
|
|
38
|
+
# @!attribute has_website
|
|
39
|
+
# Only return profiles with a website.
|
|
40
|
+
#
|
|
41
|
+
# @return [Boolean, nil]
|
|
42
|
+
optional :has_website, XTwitterScraper::Internal::Type::Boolean
|
|
43
|
+
|
|
44
|
+
# @!attribute location_contains
|
|
45
|
+
# Match a location substring, ignoring case.
|
|
46
|
+
#
|
|
47
|
+
# @return [String, nil]
|
|
48
|
+
optional :location_contains, String
|
|
49
|
+
|
|
50
|
+
# @!attribute max_followers
|
|
51
|
+
# Maximum follower count. Missing counts pass this maximum.
|
|
52
|
+
#
|
|
53
|
+
# @return [Integer, nil]
|
|
54
|
+
optional :max_followers, Integer
|
|
55
|
+
|
|
56
|
+
# @!attribute max_following
|
|
57
|
+
# Maximum following count.
|
|
58
|
+
#
|
|
59
|
+
# @return [Integer, nil]
|
|
60
|
+
optional :max_following, Integer
|
|
61
|
+
|
|
62
|
+
# @!attribute max_statuses
|
|
63
|
+
# Maximum post count. maxPosts is also accepted.
|
|
64
|
+
#
|
|
65
|
+
# @return [Integer, nil]
|
|
66
|
+
optional :max_statuses, Integer
|
|
67
|
+
|
|
68
|
+
# @!attribute min_account_age_days
|
|
69
|
+
# Minimum account age in whole days.
|
|
70
|
+
#
|
|
71
|
+
# @return [Integer, nil]
|
|
72
|
+
optional :min_account_age_days, Integer
|
|
73
|
+
|
|
74
|
+
# @!attribute min_followers
|
|
75
|
+
# Minimum follower count. Filtering happens before billing.
|
|
76
|
+
#
|
|
77
|
+
# @return [Integer, nil]
|
|
78
|
+
optional :min_followers, Integer
|
|
79
|
+
|
|
80
|
+
# @!attribute min_following
|
|
81
|
+
# Minimum following count.
|
|
82
|
+
#
|
|
83
|
+
# @return [Integer, nil]
|
|
84
|
+
optional :min_following, Integer
|
|
85
|
+
|
|
86
|
+
# @!attribute min_statuses
|
|
87
|
+
# Minimum post count. minPosts is also accepted.
|
|
88
|
+
#
|
|
89
|
+
# @return [Integer, nil]
|
|
90
|
+
optional :min_statuses, Integer
|
|
91
|
+
|
|
92
|
+
# @!attribute username_contains
|
|
93
|
+
# Match a username substring, ignoring case.
|
|
94
|
+
#
|
|
95
|
+
# @return [String, nil]
|
|
96
|
+
optional :username_contains, String
|
|
97
|
+
|
|
98
|
+
# @!attribute verified_only
|
|
99
|
+
# Only return verified profiles.
|
|
100
|
+
#
|
|
101
|
+
# @return [Boolean, nil]
|
|
102
|
+
optional :verified_only, XTwitterScraper::Internal::Type::Boolean
|
|
103
|
+
|
|
104
|
+
# @!attribute verified_type
|
|
105
|
+
# Match the verification type exactly, ignoring case.
|
|
106
|
+
#
|
|
107
|
+
# @return [String, nil]
|
|
108
|
+
optional :verified_type, String
|
|
109
|
+
|
|
110
|
+
# @!method initialize(id:, bio_contains: nil, cursor: nil, has_location: nil, has_website: nil, location_contains: nil, max_followers: nil, max_following: nil, max_statuses: nil, min_account_age_days: nil, min_followers: nil, min_following: nil, min_statuses: nil, username_contains: nil, verified_only: nil, verified_type: nil, request_options: {})
|
|
111
|
+
# Some parameter documentations has been truncated, see
|
|
112
|
+
# {XTwitterScraper::Models::X::CommunityRetrieveModeratorsParams} for more
|
|
113
|
+
# details.
|
|
114
|
+
#
|
|
27
115
|
# @param id [String]
|
|
28
116
|
#
|
|
117
|
+
# @param bio_contains [String] Match any comma-separated or line-separated bio term, ignoring case.
|
|
118
|
+
#
|
|
29
119
|
# @param cursor [String] Pagination cursor for community moderators
|
|
30
120
|
#
|
|
121
|
+
# @param has_location [Boolean] Only return profiles with a location.
|
|
122
|
+
#
|
|
123
|
+
# @param has_website [Boolean] Only return profiles with a website.
|
|
124
|
+
#
|
|
125
|
+
# @param location_contains [String] Match a location substring, ignoring case.
|
|
126
|
+
#
|
|
127
|
+
# @param max_followers [Integer] Maximum follower count. Missing counts pass this maximum.
|
|
128
|
+
#
|
|
129
|
+
# @param max_following [Integer] Maximum following count.
|
|
130
|
+
#
|
|
131
|
+
# @param max_statuses [Integer] Maximum post count. maxPosts is also accepted.
|
|
132
|
+
#
|
|
133
|
+
# @param min_account_age_days [Integer] Minimum account age in whole days.
|
|
134
|
+
#
|
|
135
|
+
# @param min_followers [Integer] Minimum follower count. Filtering happens before billing.
|
|
136
|
+
#
|
|
137
|
+
# @param min_following [Integer] Minimum following count.
|
|
138
|
+
#
|
|
139
|
+
# @param min_statuses [Integer] Minimum post count. minPosts is also accepted.
|
|
140
|
+
#
|
|
141
|
+
# @param username_contains [String] Match a username substring, ignoring case.
|
|
142
|
+
#
|
|
143
|
+
# @param verified_only [Boolean] Only return verified profiles.
|
|
144
|
+
#
|
|
145
|
+
# @param verified_type [String] Match the verification type exactly, ignoring case.
|
|
146
|
+
#
|
|
31
147
|
# @param request_options [XTwitterScraper::RequestOptions, Hash{Symbol=>Object}]
|
|
32
148
|
end
|
|
33
149
|
end
|