x-twitter-scraper 0.9.0 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +1 -1
  4. data/lib/x_twitter_scraper/models/error.rb +12 -0
  5. data/lib/x_twitter_scraper/models/x/tweet_get_quotes_params.rb +2 -2
  6. data/lib/x_twitter_scraper/models/x/tweet_get_replies_params.rb +2 -2
  7. data/lib/x_twitter_scraper/models/x/tweet_get_thread_params.rb +309 -1
  8. data/lib/x_twitter_scraper/models/x/tweet_search_params.rb +2 -2
  9. data/lib/x_twitter_scraper/models/x/user_retrieve_likes_params.rb +2 -2
  10. data/lib/x_twitter_scraper/models/x/user_retrieve_media_params.rb +2 -2
  11. data/lib/x_twitter_scraper/models/x/user_retrieve_mentions_params.rb +2 -2
  12. data/lib/x_twitter_scraper/models/x/user_retrieve_replies_params.rb +2 -2
  13. data/lib/x_twitter_scraper/models/x/user_retrieve_tweets_params.rb +2 -2
  14. data/lib/x_twitter_scraper/resources/guest_wallets.rb +1 -1
  15. data/lib/x_twitter_scraper/resources/x/tweets.rb +98 -6
  16. data/lib/x_twitter_scraper/resources/x/users.rb +5 -5
  17. data/lib/x_twitter_scraper/version.rb +1 -1
  18. data/rbi/x_twitter_scraper/models/error.rbi +60 -0
  19. data/rbi/x_twitter_scraper/models/x/tweet_get_quotes_params.rbi +2 -2
  20. data/rbi/x_twitter_scraper/models/x/tweet_get_replies_params.rbi +2 -2
  21. data/rbi/x_twitter_scraper/models/x/tweet_get_thread_params.rbi +566 -0
  22. data/rbi/x_twitter_scraper/models/x/tweet_search_params.rbi +2 -2
  23. data/rbi/x_twitter_scraper/models/x/user_retrieve_likes_params.rbi +2 -2
  24. data/rbi/x_twitter_scraper/models/x/user_retrieve_media_params.rbi +2 -2
  25. data/rbi/x_twitter_scraper/models/x/user_retrieve_mentions_params.rbi +2 -2
  26. data/rbi/x_twitter_scraper/models/x/user_retrieve_replies_params.rbi +2 -2
  27. data/rbi/x_twitter_scraper/models/x/user_retrieve_tweets_params.rbi +2 -2
  28. data/rbi/x_twitter_scraper/resources/guest_wallets.rbi +1 -1
  29. data/rbi/x_twitter_scraper/resources/x/tweets.rbi +106 -4
  30. data/rbi/x_twitter_scraper/resources/x/users.rbi +5 -5
  31. data/sig/x_twitter_scraper/models/error.rbs +24 -0
  32. data/sig/x_twitter_scraper/models/x/tweet_get_thread_params.rbs +288 -1
  33. data/sig/x_twitter_scraper/resources/x/tweets.rbs +32 -0
  34. metadata +1 -1
@@ -203,7 +203,7 @@ module XTwitterScraper
203
203
  sig { params(min_bookmarks: Integer).void }
204
204
  attr_writer :min_bookmarks
205
205
 
206
- # Minimum likes threshold.
206
+ # Minimum likes threshold. minLikes is also accepted.
207
207
  sig { returns(T.nilable(Integer)) }
208
208
  attr_reader :min_faves
209
209
 
@@ -515,7 +515,7 @@ module XTwitterScraper
515
515
  mentioning: nil,
516
516
  # Minimum bookmark count threshold.
517
517
  min_bookmarks: nil,
518
- # Minimum likes threshold.
518
+ # Minimum likes threshold. minLikes is also accepted.
519
519
  min_faves: nil,
520
520
  # Minimum quote count threshold.
521
521
  min_quotes: nil,
@@ -10,7 +10,7 @@ module XTwitterScraper
10
10
  class GuestWallets
11
11
  # Create a one-use hosted checkout after the user confirms $10-$250 USD. The
12
12
  # request creates no charge. It returns a paid-read API key without an Xquik
13
- # account. Replays return the same key.
13
+ # account. Idempotent replays return the same key.
14
14
  sig do
15
15
  params(
16
16
  amount_minor: Integer,
@@ -279,7 +279,7 @@ module XTwitterScraper
279
279
  mentioning: nil,
280
280
  # Minimum bookmark count threshold.
281
281
  min_bookmarks: nil,
282
- # Minimum likes threshold.
282
+ # Minimum likes threshold. minLikes is also accepted.
283
283
  min_faves: nil,
284
284
  # Minimum quote count threshold.
285
285
  min_quotes: nil,
@@ -466,7 +466,7 @@ module XTwitterScraper
466
466
  mentioning: nil,
467
467
  # Minimum bookmark count threshold.
468
468
  min_bookmarks: nil,
469
- # Minimum likes threshold.
469
+ # Minimum likes threshold. minLikes is also accepted.
470
470
  min_faves: nil,
471
471
  # Minimum quote count threshold.
472
472
  min_quotes: nil,
@@ -600,25 +600,127 @@ module XTwitterScraper
600
600
  sig do
601
601
  params(
602
602
  id: String,
603
+ any_words: String,
604
+ blue_verified_only: T::Boolean,
605
+ cashtags: String,
606
+ conversation_id: String,
603
607
  cursor: String,
608
+ exact_phrase: String,
609
+ exclude_words: String,
610
+ from_user: String,
611
+ hashtags: String,
612
+ in_reply_to_tweet_id: String,
613
+ language: String,
614
+ max_faves: Integer,
615
+ max_quotes: Integer,
616
+ max_replies: Integer,
617
+ max_retweets: Integer,
618
+ media_type:
619
+ XTwitterScraper::X::TweetGetThreadParams::MediaType::OrSymbol,
620
+ mentioning: String,
621
+ min_bookmarks: Integer,
622
+ min_faves: Integer,
623
+ min_quotes: Integer,
624
+ min_replies: Integer,
625
+ min_retweets: Integer,
626
+ min_views: Integer,
604
627
  page_size: Integer,
628
+ quotes: XTwitterScraper::X::TweetGetThreadParams::Quotes::OrSymbol,
629
+ quotes_of_tweet_id: String,
630
+ replies:
631
+ XTwitterScraper::X::TweetGetThreadParams::Replies::OrSymbol,
632
+ retweets:
633
+ XTwitterScraper::X::TweetGetThreadParams::Retweets::OrSymbol,
634
+ retweets_of_tweet_id: String,
635
+ since_date: Date,
636
+ to_user: String,
637
+ until_date: Date,
638
+ url: String,
639
+ verified_only: T::Boolean,
605
640
  request_options: XTwitterScraper::RequestOptions::OrHash
606
641
  ).returns(XTwitterScraper::PaginatedTweets)
607
642
  end
608
643
  def get_thread(
609
644
  # Tweet ID to get thread context
610
645
  id,
646
+ # Words or quoted phrases where any one can match. Separate with spaces, commas,
647
+ # or lines.
648
+ any_words: nil,
649
+ # Only return tweets from Blue-verified authors.
650
+ blue_verified_only: nil,
651
+ # Cashtags separated by spaces, commas, or lines.
652
+ cashtags: nil,
653
+ # Conversation ID filter.
654
+ conversation_id: nil,
611
655
  # Pagination cursor for thread tweets
612
656
  cursor: nil,
657
+ # Exact phrase to match.
658
+ exact_phrase: nil,
659
+ # Words or quoted phrases to exclude. Separate with spaces, commas, or lines.
660
+ exclude_words: nil,
661
+ # Filter by author username.
662
+ from_user: nil,
663
+ # Hashtags separated by spaces, commas, or lines.
664
+ hashtags: nil,
665
+ # Only replies to this tweet ID.
666
+ in_reply_to_tweet_id: nil,
667
+ # Language code filter, e.g. en or tr.
668
+ language: nil,
669
+ # Maximum likes threshold. maxLikes is also accepted.
670
+ max_faves: nil,
671
+ # Maximum quotes threshold.
672
+ max_quotes: nil,
673
+ # Maximum replies threshold.
674
+ max_replies: nil,
675
+ # Maximum retweets threshold.
676
+ max_retweets: nil,
677
+ # Filter by media type.
678
+ media_type: nil,
679
+ # Filter tweets mentioning a username.
680
+ mentioning: nil,
681
+ # Minimum bookmark count threshold.
682
+ min_bookmarks: nil,
683
+ # Minimum likes threshold. minLikes is also accepted.
684
+ min_faves: nil,
685
+ # Minimum quote count threshold.
686
+ min_quotes: nil,
687
+ # Minimum replies threshold.
688
+ min_replies: nil,
689
+ # Minimum retweets threshold.
690
+ min_retweets: nil,
691
+ # Minimum view count threshold.
692
+ min_views: nil,
613
693
  # Maximum page items (1-100, default 20). Source, filters, or credits can reduce
614
694
  # results. Continue while has_next_page is true. Deprecated limit and count
615
695
  # aliases remain accepted.
616
696
  page_size: nil,
697
+ # Quote mode.
698
+ quotes: nil,
699
+ # Only quotes of this tweet ID.
700
+ quotes_of_tweet_id: nil,
701
+ # Reply mode.
702
+ replies: nil,
703
+ # Retweet mode.
704
+ retweets: nil,
705
+ # Only retweets of this tweet ID.
706
+ retweets_of_tweet_id: nil,
707
+ # Start date in YYYY-MM-DD format.
708
+ since_date: nil,
709
+ # Filter replies sent to a username.
710
+ to_user: nil,
711
+ # End date in YYYY-MM-DD format.
712
+ until_date: nil,
713
+ # URL substring or domain filter.
714
+ url: nil,
715
+ # Only return tweets from verified authors.
716
+ verified_only: nil,
617
717
  request_options: {}
618
718
  )
619
719
  end
620
720
 
621
- # No-mode search maximizes coverage.
721
+ # No-mode search maximizes coverage. New cursorless `Latest` sessions return rows
722
+ # newest-first across cursor pages. Existing cursors preserve their established
723
+ # ordering.
622
724
  sig do
623
725
  params(
624
726
  q: String,
@@ -742,7 +844,7 @@ module XTwitterScraper
742
844
  mentioning: nil,
743
845
  # Minimum bookmark count threshold.
744
846
  min_bookmarks: nil,
745
- # Minimum likes threshold.
847
+ # Minimum likes threshold. minLikes is also accepted.
746
848
  min_faves: nil,
747
849
  # Minimum quote count threshold.
748
850
  min_quotes: nil,
@@ -389,7 +389,7 @@ module XTwitterScraper
389
389
  mentioning: nil,
390
390
  # Minimum bookmark count threshold.
391
391
  min_bookmarks: nil,
392
- # Minimum likes threshold.
392
+ # Minimum likes threshold. minLikes is also accepted.
393
393
  min_faves: nil,
394
394
  # Minimum quote count threshold.
395
395
  min_quotes: nil,
@@ -548,7 +548,7 @@ module XTwitterScraper
548
548
  mentioning: nil,
549
549
  # Minimum bookmark count threshold.
550
550
  min_bookmarks: nil,
551
- # Minimum likes threshold.
551
+ # Minimum likes threshold. minLikes is also accepted.
552
552
  min_faves: nil,
553
553
  # Minimum quote count threshold.
554
554
  min_quotes: nil,
@@ -709,7 +709,7 @@ module XTwitterScraper
709
709
  mentioning: nil,
710
710
  # Minimum bookmark count threshold.
711
711
  min_bookmarks: nil,
712
- # Minimum likes threshold.
712
+ # Minimum likes threshold. minLikes is also accepted.
713
713
  min_faves: nil,
714
714
  # Minimum quote count threshold.
715
715
  min_quotes: nil,
@@ -878,7 +878,7 @@ module XTwitterScraper
878
878
  mentioning: nil,
879
879
  # Minimum bookmark count threshold.
880
880
  min_bookmarks: nil,
881
- # Minimum likes threshold.
881
+ # Minimum likes threshold. minLikes is also accepted.
882
882
  min_faves: nil,
883
883
  # Minimum quote count threshold.
884
884
  min_quotes: nil,
@@ -1103,7 +1103,7 @@ module XTwitterScraper
1103
1103
  mentioning: nil,
1104
1104
  # Minimum bookmark count threshold.
1105
1105
  min_bookmarks: nil,
1106
- # Minimum likes threshold.
1106
+ # Minimum likes threshold. minLikes is also accepted.
1107
1107
  min_faves: nil,
1108
1108
  # Minimum quote count threshold.
1109
1109
  min_quotes: nil,
@@ -112,12 +112,17 @@ module XTwitterScraper
112
112
  | :idempotency_conflict
113
113
  | :idempotency_key_conflict
114
114
  | :invalid_community_id
115
+ | :invalid_complete_replies_request
115
116
  | :invalid_coverage_cursor
117
+ | :invalid_coverage_request
116
118
  | :invalid_idempotency_key
117
119
  | :invalid_list_id
120
+ | :invalid_output_options
118
121
  | :invalid_payment_amount
119
122
  | :invalid_range
123
+ | :invalid_reply_options
120
124
  | :login_rate_limited
125
+ | :login_service_unavailable
121
126
  | :missing_idempotency_key
122
127
  | :missing_ids
123
128
  | :no_cached_style
@@ -128,6 +133,7 @@ module XTwitterScraper
128
133
  | :support_media_rate_limit
129
134
  | :support_request_rate_limit
130
135
  | :too_many_ids
136
+ | :too_many_tweets
131
137
  | :unknown_field
132
138
  | :unsupported_media_type
133
139
  | :webhook_inactive
@@ -219,12 +225,17 @@ module XTwitterScraper
219
225
  IDEMPOTENCY_CONFLICT: :idempotency_conflict
220
226
  IDEMPOTENCY_KEY_CONFLICT: :idempotency_key_conflict
221
227
  INVALID_COMMUNITY_ID: :invalid_community_id
228
+ INVALID_COMPLETE_REPLIES_REQUEST: :invalid_complete_replies_request
222
229
  INVALID_COVERAGE_CURSOR: :invalid_coverage_cursor
230
+ INVALID_COVERAGE_REQUEST: :invalid_coverage_request
223
231
  INVALID_IDEMPOTENCY_KEY: :invalid_idempotency_key
224
232
  INVALID_LIST_ID: :invalid_list_id
233
+ INVALID_OUTPUT_OPTIONS: :invalid_output_options
225
234
  INVALID_PAYMENT_AMOUNT: :invalid_payment_amount
226
235
  INVALID_RANGE: :invalid_range
236
+ INVALID_REPLY_OPTIONS: :invalid_reply_options
227
237
  LOGIN_RATE_LIMITED: :login_rate_limited
238
+ LOGIN_SERVICE_UNAVAILABLE: :login_service_unavailable
228
239
  MISSING_IDEMPOTENCY_KEY: :missing_idempotency_key
229
240
  MISSING_IDS: :missing_ids
230
241
  NO_CACHED_STYLE: :no_cached_style
@@ -235,6 +246,7 @@ module XTwitterScraper
235
246
  SUPPORT_MEDIA_RATE_LIMIT: :support_media_rate_limit
236
247
  SUPPORT_REQUEST_RATE_LIMIT: :support_request_rate_limit
237
248
  TOO_MANY_IDS: :too_many_ids
249
+ TOO_MANY_TWEETS: :too_many_tweets
238
250
  UNKNOWN_FIELD: :unknown_field
239
251
  UNSUPPORTED_MEDIA_TYPE: :unsupported_media_type
240
252
  WEBHOOK_INACTIVE: :webhook_inactive
@@ -353,12 +365,17 @@ module XTwitterScraper
353
365
  | :idempotency_conflict
354
366
  | :idempotency_key_conflict
355
367
  | :invalid_community_id
368
+ | :invalid_complete_replies_request
356
369
  | :invalid_coverage_cursor
370
+ | :invalid_coverage_request
357
371
  | :invalid_idempotency_key
358
372
  | :invalid_list_id
373
+ | :invalid_output_options
359
374
  | :invalid_payment_amount
360
375
  | :invalid_range
376
+ | :invalid_reply_options
361
377
  | :login_rate_limited
378
+ | :login_service_unavailable
362
379
  | :missing_idempotency_key
363
380
  | :missing_ids
364
381
  | :no_cached_style
@@ -369,6 +386,7 @@ module XTwitterScraper
369
386
  | :support_media_rate_limit
370
387
  | :support_request_rate_limit
371
388
  | :too_many_ids
389
+ | :too_many_tweets
372
390
  | :unknown_field
373
391
  | :unsupported_media_type
374
392
  | :webhook_inactive
@@ -460,12 +478,17 @@ module XTwitterScraper
460
478
  IDEMPOTENCY_CONFLICT: :idempotency_conflict
461
479
  IDEMPOTENCY_KEY_CONFLICT: :idempotency_key_conflict
462
480
  INVALID_COMMUNITY_ID: :invalid_community_id
481
+ INVALID_COMPLETE_REPLIES_REQUEST: :invalid_complete_replies_request
463
482
  INVALID_COVERAGE_CURSOR: :invalid_coverage_cursor
483
+ INVALID_COVERAGE_REQUEST: :invalid_coverage_request
464
484
  INVALID_IDEMPOTENCY_KEY: :invalid_idempotency_key
465
485
  INVALID_LIST_ID: :invalid_list_id
486
+ INVALID_OUTPUT_OPTIONS: :invalid_output_options
466
487
  INVALID_PAYMENT_AMOUNT: :invalid_payment_amount
467
488
  INVALID_RANGE: :invalid_range
489
+ INVALID_REPLY_OPTIONS: :invalid_reply_options
468
490
  LOGIN_RATE_LIMITED: :login_rate_limited
491
+ LOGIN_SERVICE_UNAVAILABLE: :login_service_unavailable
469
492
  MISSING_IDEMPOTENCY_KEY: :missing_idempotency_key
470
493
  MISSING_IDS: :missing_ids
471
494
  NO_CACHED_STYLE: :no_cached_style
@@ -476,6 +499,7 @@ module XTwitterScraper
476
499
  SUPPORT_MEDIA_RATE_LIMIT: :support_media_rate_limit
477
500
  SUPPORT_REQUEST_RATE_LIMIT: :support_request_rate_limit
478
501
  TOO_MANY_IDS: :too_many_ids
502
+ TOO_MANY_TWEETS: :too_many_tweets
479
503
  UNKNOWN_FIELD: :unknown_field
480
504
  UNSUPPORTED_MEDIA_TYPE: :unsupported_media_type
481
505
  WEBHOOK_INACTIVE: :webhook_inactive
@@ -6,7 +6,43 @@ module XTwitterScraper
6
6
  module Models
7
7
  module X
8
8
  type tweet_get_thread_params =
9
- { id: String, cursor: String, page_size: Integer }
9
+ {
10
+ id: String,
11
+ any_words: String,
12
+ blue_verified_only: bool,
13
+ cashtags: String,
14
+ conversation_id: String,
15
+ cursor: String,
16
+ exact_phrase: String,
17
+ exclude_words: String,
18
+ from_user: String,
19
+ hashtags: String,
20
+ in_reply_to_tweet_id: String,
21
+ language: String,
22
+ max_faves: Integer,
23
+ max_quotes: Integer,
24
+ max_replies: Integer,
25
+ max_retweets: Integer,
26
+ media_type: XTwitterScraper::Models::X::TweetGetThreadParams::media_type,
27
+ mentioning: String,
28
+ min_bookmarks: Integer,
29
+ min_faves: Integer,
30
+ min_quotes: Integer,
31
+ min_replies: Integer,
32
+ min_retweets: Integer,
33
+ min_views: Integer,
34
+ page_size: Integer,
35
+ quotes: XTwitterScraper::Models::X::TweetGetThreadParams::quotes,
36
+ quotes_of_tweet_id: String,
37
+ replies: XTwitterScraper::Models::X::TweetGetThreadParams::replies,
38
+ retweets: XTwitterScraper::Models::X::TweetGetThreadParams::retweets,
39
+ retweets_of_tweet_id: String,
40
+ since_date: Date,
41
+ to_user: String,
42
+ until_date: Date,
43
+ url: String,
44
+ verified_only: bool
45
+ }
10
46
  & XTwitterScraper::Internal::Type::request_parameters
11
47
 
12
48
  class TweetGetThreadParams < XTwitterScraper::Internal::Type::BaseModel
@@ -15,27 +51,278 @@ module XTwitterScraper
15
51
 
16
52
  attr_accessor id: String
17
53
 
54
+ attr_reader any_words: String?
55
+
56
+ def any_words=: (String) -> String
57
+
58
+ attr_reader blue_verified_only: bool?
59
+
60
+ def blue_verified_only=: (bool) -> bool
61
+
62
+ attr_reader cashtags: String?
63
+
64
+ def cashtags=: (String) -> String
65
+
66
+ attr_reader conversation_id: String?
67
+
68
+ def conversation_id=: (String) -> String
69
+
18
70
  attr_reader cursor: String?
19
71
 
20
72
  def cursor=: (String) -> String
21
73
 
74
+ attr_reader exact_phrase: String?
75
+
76
+ def exact_phrase=: (String) -> String
77
+
78
+ attr_reader exclude_words: String?
79
+
80
+ def exclude_words=: (String) -> String
81
+
82
+ attr_reader from_user: String?
83
+
84
+ def from_user=: (String) -> String
85
+
86
+ attr_reader hashtags: String?
87
+
88
+ def hashtags=: (String) -> String
89
+
90
+ attr_reader in_reply_to_tweet_id: String?
91
+
92
+ def in_reply_to_tweet_id=: (String) -> String
93
+
94
+ attr_reader language: String?
95
+
96
+ def language=: (String) -> String
97
+
98
+ attr_reader max_faves: Integer?
99
+
100
+ def max_faves=: (Integer) -> Integer
101
+
102
+ attr_reader max_quotes: Integer?
103
+
104
+ def max_quotes=: (Integer) -> Integer
105
+
106
+ attr_reader max_replies: Integer?
107
+
108
+ def max_replies=: (Integer) -> Integer
109
+
110
+ attr_reader max_retweets: Integer?
111
+
112
+ def max_retweets=: (Integer) -> Integer
113
+
114
+ attr_reader media_type: XTwitterScraper::Models::X::TweetGetThreadParams::media_type?
115
+
116
+ def media_type=: (
117
+ XTwitterScraper::Models::X::TweetGetThreadParams::media_type
118
+ ) -> XTwitterScraper::Models::X::TweetGetThreadParams::media_type
119
+
120
+ attr_reader mentioning: String?
121
+
122
+ def mentioning=: (String) -> String
123
+
124
+ attr_reader min_bookmarks: Integer?
125
+
126
+ def min_bookmarks=: (Integer) -> Integer
127
+
128
+ attr_reader min_faves: Integer?
129
+
130
+ def min_faves=: (Integer) -> Integer
131
+
132
+ attr_reader min_quotes: Integer?
133
+
134
+ def min_quotes=: (Integer) -> Integer
135
+
136
+ attr_reader min_replies: Integer?
137
+
138
+ def min_replies=: (Integer) -> Integer
139
+
140
+ attr_reader min_retweets: Integer?
141
+
142
+ def min_retweets=: (Integer) -> Integer
143
+
144
+ attr_reader min_views: Integer?
145
+
146
+ def min_views=: (Integer) -> Integer
147
+
22
148
  attr_reader page_size: Integer?
23
149
 
24
150
  def page_size=: (Integer) -> Integer
25
151
 
152
+ attr_reader quotes: XTwitterScraper::Models::X::TweetGetThreadParams::quotes?
153
+
154
+ def quotes=: (
155
+ XTwitterScraper::Models::X::TweetGetThreadParams::quotes
156
+ ) -> XTwitterScraper::Models::X::TweetGetThreadParams::quotes
157
+
158
+ attr_reader quotes_of_tweet_id: String?
159
+
160
+ def quotes_of_tweet_id=: (String) -> String
161
+
162
+ attr_reader replies: XTwitterScraper::Models::X::TweetGetThreadParams::replies?
163
+
164
+ def replies=: (
165
+ XTwitterScraper::Models::X::TweetGetThreadParams::replies
166
+ ) -> XTwitterScraper::Models::X::TweetGetThreadParams::replies
167
+
168
+ attr_reader retweets: XTwitterScraper::Models::X::TweetGetThreadParams::retweets?
169
+
170
+ def retweets=: (
171
+ XTwitterScraper::Models::X::TweetGetThreadParams::retweets
172
+ ) -> XTwitterScraper::Models::X::TweetGetThreadParams::retweets
173
+
174
+ attr_reader retweets_of_tweet_id: String?
175
+
176
+ def retweets_of_tweet_id=: (String) -> String
177
+
178
+ attr_reader since_date: Date?
179
+
180
+ def since_date=: (Date) -> Date
181
+
182
+ attr_reader to_user: String?
183
+
184
+ def to_user=: (String) -> String
185
+
186
+ attr_reader until_date: Date?
187
+
188
+ def until_date=: (Date) -> Date
189
+
190
+ attr_reader url: String?
191
+
192
+ def url=: (String) -> String
193
+
194
+ attr_reader verified_only: bool?
195
+
196
+ def verified_only=: (bool) -> bool
197
+
26
198
  def initialize: (
27
199
  id: String,
200
+ ?any_words: String,
201
+ ?blue_verified_only: bool,
202
+ ?cashtags: String,
203
+ ?conversation_id: String,
28
204
  ?cursor: String,
205
+ ?exact_phrase: String,
206
+ ?exclude_words: String,
207
+ ?from_user: String,
208
+ ?hashtags: String,
209
+ ?in_reply_to_tweet_id: String,
210
+ ?language: String,
211
+ ?max_faves: Integer,
212
+ ?max_quotes: Integer,
213
+ ?max_replies: Integer,
214
+ ?max_retweets: Integer,
215
+ ?media_type: XTwitterScraper::Models::X::TweetGetThreadParams::media_type,
216
+ ?mentioning: String,
217
+ ?min_bookmarks: Integer,
218
+ ?min_faves: Integer,
219
+ ?min_quotes: Integer,
220
+ ?min_replies: Integer,
221
+ ?min_retweets: Integer,
222
+ ?min_views: Integer,
29
223
  ?page_size: Integer,
224
+ ?quotes: XTwitterScraper::Models::X::TweetGetThreadParams::quotes,
225
+ ?quotes_of_tweet_id: String,
226
+ ?replies: XTwitterScraper::Models::X::TweetGetThreadParams::replies,
227
+ ?retweets: XTwitterScraper::Models::X::TweetGetThreadParams::retweets,
228
+ ?retweets_of_tweet_id: String,
229
+ ?since_date: Date,
230
+ ?to_user: String,
231
+ ?until_date: Date,
232
+ ?url: String,
233
+ ?verified_only: bool,
30
234
  ?request_options: XTwitterScraper::request_opts
31
235
  ) -> void
32
236
 
33
237
  def to_hash: -> {
34
238
  id: String,
239
+ any_words: String,
240
+ blue_verified_only: bool,
241
+ cashtags: String,
242
+ conversation_id: String,
35
243
  cursor: String,
244
+ exact_phrase: String,
245
+ exclude_words: String,
246
+ from_user: String,
247
+ hashtags: String,
248
+ in_reply_to_tweet_id: String,
249
+ language: String,
250
+ max_faves: Integer,
251
+ max_quotes: Integer,
252
+ max_replies: Integer,
253
+ max_retweets: Integer,
254
+ media_type: XTwitterScraper::Models::X::TweetGetThreadParams::media_type,
255
+ mentioning: String,
256
+ min_bookmarks: Integer,
257
+ min_faves: Integer,
258
+ min_quotes: Integer,
259
+ min_replies: Integer,
260
+ min_retweets: Integer,
261
+ min_views: Integer,
36
262
  page_size: Integer,
263
+ quotes: XTwitterScraper::Models::X::TweetGetThreadParams::quotes,
264
+ quotes_of_tweet_id: String,
265
+ replies: XTwitterScraper::Models::X::TweetGetThreadParams::replies,
266
+ retweets: XTwitterScraper::Models::X::TweetGetThreadParams::retweets,
267
+ retweets_of_tweet_id: String,
268
+ since_date: Date,
269
+ to_user: String,
270
+ until_date: Date,
271
+ url: String,
272
+ verified_only: bool,
37
273
  request_options: XTwitterScraper::RequestOptions
38
274
  }
275
+
276
+ type media_type = :images | :videos | :gifs | :media | :links | :none
277
+
278
+ module MediaType
279
+ extend XTwitterScraper::Internal::Type::Enum
280
+
281
+ IMAGES: :images
282
+ VIDEOS: :videos
283
+ GIFS: :gifs
284
+ MEDIA: :media
285
+ LINKS: :links
286
+ NONE: :none
287
+
288
+ def self?.values: -> ::Array[XTwitterScraper::Models::X::TweetGetThreadParams::media_type]
289
+ end
290
+
291
+ type quotes = :include | :exclude | :only
292
+
293
+ module Quotes
294
+ extend XTwitterScraper::Internal::Type::Enum
295
+
296
+ INCLUDE: :include
297
+ EXCLUDE: :exclude
298
+ ONLY: :only
299
+
300
+ def self?.values: -> ::Array[XTwitterScraper::Models::X::TweetGetThreadParams::quotes]
301
+ end
302
+
303
+ type replies = :include | :exclude | :only
304
+
305
+ module Replies
306
+ extend XTwitterScraper::Internal::Type::Enum
307
+
308
+ INCLUDE: :include
309
+ EXCLUDE: :exclude
310
+ ONLY: :only
311
+
312
+ def self?.values: -> ::Array[XTwitterScraper::Models::X::TweetGetThreadParams::replies]
313
+ end
314
+
315
+ type retweets = :include | :exclude | :only
316
+
317
+ module Retweets
318
+ extend XTwitterScraper::Internal::Type::Enum
319
+
320
+ INCLUDE: :include
321
+ EXCLUDE: :exclude
322
+ ONLY: :only
323
+
324
+ def self?.values: -> ::Array[XTwitterScraper::Models::X::TweetGetThreadParams::retweets]
325
+ end
39
326
  end
40
327
  end
41
328
  end
@@ -197,8 +197,40 @@ module XTwitterScraper
197
197
 
198
198
  def get_thread: (
199
199
  String id,
200
+ ?any_words: String,
201
+ ?blue_verified_only: bool,
202
+ ?cashtags: String,
203
+ ?conversation_id: String,
200
204
  ?cursor: String,
205
+ ?exact_phrase: String,
206
+ ?exclude_words: String,
207
+ ?from_user: String,
208
+ ?hashtags: String,
209
+ ?in_reply_to_tweet_id: String,
210
+ ?language: String,
211
+ ?max_faves: Integer,
212
+ ?max_quotes: Integer,
213
+ ?max_replies: Integer,
214
+ ?max_retweets: Integer,
215
+ ?media_type: XTwitterScraper::Models::X::TweetGetThreadParams::media_type,
216
+ ?mentioning: String,
217
+ ?min_bookmarks: Integer,
218
+ ?min_faves: Integer,
219
+ ?min_quotes: Integer,
220
+ ?min_replies: Integer,
221
+ ?min_retweets: Integer,
222
+ ?min_views: Integer,
201
223
  ?page_size: Integer,
224
+ ?quotes: XTwitterScraper::Models::X::TweetGetThreadParams::quotes,
225
+ ?quotes_of_tweet_id: String,
226
+ ?replies: XTwitterScraper::Models::X::TweetGetThreadParams::replies,
227
+ ?retweets: XTwitterScraper::Models::X::TweetGetThreadParams::retweets,
228
+ ?retweets_of_tweet_id: String,
229
+ ?since_date: Date,
230
+ ?to_user: String,
231
+ ?until_date: Date,
232
+ ?url: String,
233
+ ?verified_only: bool,
202
234
  ?request_options: XTwitterScraper::request_opts
203
235
  ) -> XTwitterScraper::PaginatedTweets
204
236