x-twitter-scraper 0.4.5 → 0.5.2

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 (222) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +33 -0
  3. data/README.md +8 -41
  4. data/lib/x_twitter_scraper/client.rb +1 -1
  5. data/lib/x_twitter_scraper/internal/type/union.rb +13 -0
  6. data/lib/x_twitter_scraper/models/account_retrieve_response.rb +4 -4
  7. data/lib/x_twitter_scraper/models/compose_create_params.rb +194 -122
  8. data/lib/x_twitter_scraper/models/compose_create_response.rb +326 -33
  9. data/lib/x_twitter_scraper/models/credit_retrieve_topup_status_params.rb +2 -2
  10. data/lib/x_twitter_scraper/models/error.rb +99 -3
  11. data/lib/x_twitter_scraper/models/extraction_estimate_cost_params.rb +8 -8
  12. data/lib/x_twitter_scraper/models/guest_wallet_create_params.rb +2 -2
  13. data/lib/x_twitter_scraper/models/guest_wallet_create_response.rb +27 -7
  14. data/lib/x_twitter_scraper/models/guest_wallet_topup_params.rb +2 -2
  15. data/lib/x_twitter_scraper/models/guest_wallet_topup_response.rb +27 -7
  16. data/lib/x_twitter_scraper/models/search_tweet.rb +12 -12
  17. data/lib/x_twitter_scraper/models/support/ticket_create_params.rb +7 -1
  18. data/lib/x_twitter_scraper/models/support/ticket_create_response.rb +40 -3
  19. data/lib/x_twitter_scraper/models/support/ticket_reply_params.rb +7 -1
  20. data/lib/x_twitter_scraper/models/support/ticket_reply_response.rb +40 -3
  21. data/lib/x_twitter_scraper/models/support/ticket_retrieve_response.rb +114 -1
  22. data/lib/x_twitter_scraper/models/x/communities/join_create_params.rb +8 -1
  23. data/lib/x_twitter_scraper/models/x/communities/join_create_response.rb +577 -4
  24. data/lib/x_twitter_scraper/models/x/communities/join_delete_all_params.rb +8 -1
  25. data/lib/x_twitter_scraper/models/x/communities/join_delete_all_response.rb +585 -4
  26. data/lib/x_twitter_scraper/models/x/community_create_params.rb +8 -1
  27. data/lib/x_twitter_scraper/models/x/community_create_response.rb +568 -8
  28. data/lib/x_twitter_scraper/models/x/community_delete_params.rb +8 -1
  29. data/lib/x_twitter_scraper/models/x/community_delete_response.rb +576 -4
  30. data/lib/x_twitter_scraper/models/x/dm_send_params.rb +8 -1
  31. data/lib/x_twitter_scraper/models/x/dm_send_response.rb +573 -7
  32. data/lib/x_twitter_scraper/models/x/media_upload_params.rb +8 -1
  33. data/lib/x_twitter_scraper/models/x/media_upload_response.rb +568 -11
  34. data/lib/x_twitter_scraper/models/x/profile_update_avatar_params.rb +8 -1
  35. data/lib/x_twitter_scraper/models/x/profile_update_avatar_response.rb +576 -4
  36. data/lib/x_twitter_scraper/models/x/profile_update_banner_params.rb +8 -1
  37. data/lib/x_twitter_scraper/models/x/profile_update_banner_response.rb +576 -4
  38. data/lib/x_twitter_scraper/models/x/profile_update_params.rb +8 -1
  39. data/lib/x_twitter_scraper/models/x/profile_update_response.rb +576 -4
  40. data/lib/x_twitter_scraper/models/x/tweet_author.rb +1 -14
  41. data/lib/x_twitter_scraper/models/x/tweet_create_params.rb +5 -5
  42. data/lib/x_twitter_scraper/models/x/tweet_create_response.rb +551 -12
  43. data/lib/x_twitter_scraper/models/x/tweet_delete_params.rb +8 -1
  44. data/lib/x_twitter_scraper/models/x/tweet_delete_response.rb +576 -4
  45. data/lib/x_twitter_scraper/models/x/tweets/like_create_params.rb +8 -1
  46. data/lib/x_twitter_scraper/models/x/tweets/like_create_response.rb +576 -4
  47. data/lib/x_twitter_scraper/models/x/tweets/like_delete_params.rb +8 -1
  48. data/lib/x_twitter_scraper/models/x/tweets/like_delete_response.rb +576 -4
  49. data/lib/x_twitter_scraper/models/x/tweets/retweet_create_params.rb +8 -1
  50. data/lib/x_twitter_scraper/models/x/tweets/retweet_create_response.rb +576 -4
  51. data/lib/x_twitter_scraper/models/x/tweets/retweet_delete_params.rb +8 -1
  52. data/lib/x_twitter_scraper/models/x/tweets/retweet_delete_response.rb +576 -4
  53. data/lib/x_twitter_scraper/models/x/user_remove_follower_params.rb +8 -1
  54. data/lib/x_twitter_scraper/models/x/user_remove_follower_response.rb +576 -4
  55. data/lib/x_twitter_scraper/models/x/user_retrieve_following_params.rb +2 -2
  56. data/lib/x_twitter_scraper/models/x/user_retrieve_replies_params.rb +2 -2
  57. data/lib/x_twitter_scraper/models/x/users/follow_create_params.rb +8 -1
  58. data/lib/x_twitter_scraper/models/x/users/follow_create_response.rb +576 -4
  59. data/lib/x_twitter_scraper/models/x/users/follow_delete_all_params.rb +8 -1
  60. data/lib/x_twitter_scraper/models/x/users/follow_delete_all_response.rb +576 -4
  61. data/lib/x_twitter_scraper/models/x/write_action_retrieve_response.rb +469 -52
  62. data/lib/x_twitter_scraper/models/x/x_account.rb +7 -7
  63. data/lib/x_twitter_scraper/models/x/x_account_detail.rb +1 -1
  64. data/lib/x_twitter_scraper/resources/compose.rb +8 -26
  65. data/lib/x_twitter_scraper/resources/credits.rb +1 -1
  66. data/lib/x_twitter_scraper/resources/extractions.rb +4 -4
  67. data/lib/x_twitter_scraper/resources/guest_wallets.rb +2 -2
  68. data/lib/x_twitter_scraper/resources/monitors/keywords.rb +4 -5
  69. data/lib/x_twitter_scraper/resources/monitors.rb +3 -3
  70. data/lib/x_twitter_scraper/resources/support/tickets.rb +24 -8
  71. data/lib/x_twitter_scraper/resources/trends.rb +1 -1
  72. data/lib/x_twitter_scraper/resources/x/communities/join.rb +22 -8
  73. data/lib/x_twitter_scraper/resources/x/communities.rb +25 -11
  74. data/lib/x_twitter_scraper/resources/x/dm.rb +13 -6
  75. data/lib/x_twitter_scraper/resources/x/media.rb +17 -7
  76. data/lib/x_twitter_scraper/resources/x/profile.rb +46 -17
  77. data/lib/x_twitter_scraper/resources/x/tweets/like.rb +22 -8
  78. data/lib/x_twitter_scraper/resources/x/tweets/retweet.rb +22 -8
  79. data/lib/x_twitter_scraper/resources/x/tweets.rb +31 -16
  80. data/lib/x_twitter_scraper/resources/x/users/follow.rb +22 -8
  81. data/lib/x_twitter_scraper/resources/x/users.rb +16 -9
  82. data/lib/x_twitter_scraper/resources/x.rb +1 -2
  83. data/lib/x_twitter_scraper/version.rb +1 -1
  84. data/rbi/x_twitter_scraper/client.rbi +1 -1
  85. data/rbi/x_twitter_scraper/models/account_retrieve_response.rbi +4 -4
  86. data/rbi/x_twitter_scraper/models/compose_create_params.rbi +392 -215
  87. data/rbi/x_twitter_scraper/models/compose_create_response.rbi +537 -48
  88. data/rbi/x_twitter_scraper/models/credit_retrieve_topup_status_params.rbi +2 -2
  89. data/rbi/x_twitter_scraper/models/error.rbi +379 -13
  90. data/rbi/x_twitter_scraper/models/extraction_estimate_cost_params.rbi +8 -8
  91. data/rbi/x_twitter_scraper/models/guest_wallet_create_params.rbi +2 -2
  92. data/rbi/x_twitter_scraper/models/guest_wallet_create_response.rbi +87 -5
  93. data/rbi/x_twitter_scraper/models/guest_wallet_topup_params.rbi +2 -2
  94. data/rbi/x_twitter_scraper/models/guest_wallet_topup_response.rbi +87 -5
  95. data/rbi/x_twitter_scraper/models/search_tweet.rbi +12 -12
  96. data/rbi/x_twitter_scraper/models/support/ticket_create_params.rbi +9 -1
  97. data/rbi/x_twitter_scraper/models/support/ticket_create_response.rbi +113 -7
  98. data/rbi/x_twitter_scraper/models/support/ticket_reply_params.rbi +9 -1
  99. data/rbi/x_twitter_scraper/models/support/ticket_reply_response.rbi +113 -7
  100. data/rbi/x_twitter_scraper/models/support/ticket_retrieve_response.rbi +276 -5
  101. data/rbi/x_twitter_scraper/models/x/communities/join_create_params.rbi +6 -0
  102. data/rbi/x_twitter_scraper/models/x/communities/join_create_response.rbi +1154 -3
  103. data/rbi/x_twitter_scraper/models/x/communities/join_delete_all_params.rbi +6 -0
  104. data/rbi/x_twitter_scraper/models/x/communities/join_delete_all_response.rbi +1154 -3
  105. data/rbi/x_twitter_scraper/models/x/community_create_params.rbi +6 -0
  106. data/rbi/x_twitter_scraper/models/x/community_create_response.rbi +1127 -5
  107. data/rbi/x_twitter_scraper/models/x/community_delete_params.rbi +6 -0
  108. data/rbi/x_twitter_scraper/models/x/community_delete_response.rbi +1148 -3
  109. data/rbi/x_twitter_scraper/models/x/dm_send_params.rbi +6 -0
  110. data/rbi/x_twitter_scraper/models/x/dm_send_response.rbi +1112 -6
  111. data/rbi/x_twitter_scraper/models/x/media_upload_params.rbi +6 -0
  112. data/rbi/x_twitter_scraper/models/x/media_upload_response.rbi +1124 -9
  113. data/rbi/x_twitter_scraper/models/x/profile_update_avatar_params.rbi +6 -0
  114. data/rbi/x_twitter_scraper/models/x/profile_update_avatar_response.rbi +1152 -3
  115. data/rbi/x_twitter_scraper/models/x/profile_update_banner_params.rbi +6 -0
  116. data/rbi/x_twitter_scraper/models/x/profile_update_banner_response.rbi +1152 -3
  117. data/rbi/x_twitter_scraper/models/x/profile_update_params.rbi +6 -0
  118. data/rbi/x_twitter_scraper/models/x/profile_update_response.rbi +1144 -3
  119. data/rbi/x_twitter_scraper/models/x/tweet_author.rbi +3 -13
  120. data/rbi/x_twitter_scraper/models/x/tweet_create_params.rbi +5 -8
  121. data/rbi/x_twitter_scraper/models/x/tweet_create_response.rbi +1108 -14
  122. data/rbi/x_twitter_scraper/models/x/tweet_delete_params.rbi +6 -0
  123. data/rbi/x_twitter_scraper/models/x/tweet_delete_response.rbi +1140 -3
  124. data/rbi/x_twitter_scraper/models/x/tweets/like_create_params.rbi +6 -0
  125. data/rbi/x_twitter_scraper/models/x/tweets/like_create_response.rbi +1154 -3
  126. data/rbi/x_twitter_scraper/models/x/tweets/like_delete_params.rbi +6 -0
  127. data/rbi/x_twitter_scraper/models/x/tweets/like_delete_response.rbi +1154 -3
  128. data/rbi/x_twitter_scraper/models/x/tweets/retweet_create_params.rbi +6 -0
  129. data/rbi/x_twitter_scraper/models/x/tweets/retweet_create_response.rbi +1154 -3
  130. data/rbi/x_twitter_scraper/models/x/tweets/retweet_delete_params.rbi +6 -0
  131. data/rbi/x_twitter_scraper/models/x/tweets/retweet_delete_response.rbi +1154 -3
  132. data/rbi/x_twitter_scraper/models/x/user_remove_follower_params.rbi +6 -0
  133. data/rbi/x_twitter_scraper/models/x/user_remove_follower_response.rbi +1152 -3
  134. data/rbi/x_twitter_scraper/models/x/user_retrieve_following_params.rbi +2 -2
  135. data/rbi/x_twitter_scraper/models/x/user_retrieve_replies_params.rbi +2 -2
  136. data/rbi/x_twitter_scraper/models/x/users/follow_create_params.rbi +6 -0
  137. data/rbi/x_twitter_scraper/models/x/users/follow_create_response.rbi +1154 -3
  138. data/rbi/x_twitter_scraper/models/x/users/follow_delete_all_params.rbi +6 -0
  139. data/rbi/x_twitter_scraper/models/x/users/follow_delete_all_response.rbi +1154 -3
  140. data/rbi/x_twitter_scraper/models/x/write_action_retrieve_response.rbi +930 -66
  141. data/rbi/x_twitter_scraper/models/x/x_account.rbi +9 -9
  142. data/rbi/x_twitter_scraper/models/x/x_account_detail.rbi +1 -1
  143. data/rbi/x_twitter_scraper/resources/compose.rbi +12 -38
  144. data/rbi/x_twitter_scraper/resources/credits.rbi +1 -1
  145. data/rbi/x_twitter_scraper/resources/extractions.rbi +4 -4
  146. data/rbi/x_twitter_scraper/resources/guest_wallets.rbi +2 -2
  147. data/rbi/x_twitter_scraper/resources/monitors/keywords.rbi +4 -5
  148. data/rbi/x_twitter_scraper/resources/monitors.rbi +3 -3
  149. data/rbi/x_twitter_scraper/resources/support/tickets.rbi +17 -2
  150. data/rbi/x_twitter_scraper/resources/trends.rbi +1 -1
  151. data/rbi/x_twitter_scraper/resources/x/communities/join.rbi +16 -4
  152. data/rbi/x_twitter_scraper/resources/x/communities.rbi +19 -7
  153. data/rbi/x_twitter_scraper/resources/x/dm.rbi +10 -3
  154. data/rbi/x_twitter_scraper/resources/x/media.rbi +9 -4
  155. data/rbi/x_twitter_scraper/resources/x/profile.rbi +27 -8
  156. data/rbi/x_twitter_scraper/resources/x/tweets/like.rbi +16 -4
  157. data/rbi/x_twitter_scraper/resources/x/tweets/retweet.rbi +16 -4
  158. data/rbi/x_twitter_scraper/resources/x/tweets.rbi +31 -12
  159. data/rbi/x_twitter_scraper/resources/x/users/follow.rbi +16 -4
  160. data/rbi/x_twitter_scraper/resources/x/users.rbi +13 -7
  161. data/rbi/x_twitter_scraper/resources/x.rbi +1 -2
  162. data/sig/x_twitter_scraper/models/compose_create_params.rbs +150 -90
  163. data/sig/x_twitter_scraper/models/compose_create_response.rbs +249 -27
  164. data/sig/x_twitter_scraper/models/error.rbs +170 -7
  165. data/sig/x_twitter_scraper/models/guest_wallet_create_response.rbs +35 -5
  166. data/sig/x_twitter_scraper/models/guest_wallet_topup_response.rbs +35 -5
  167. data/sig/x_twitter_scraper/models/support/ticket_create_params.rbs +7 -1
  168. data/sig/x_twitter_scraper/models/support/ticket_create_response.rbs +49 -5
  169. data/sig/x_twitter_scraper/models/support/ticket_reply_params.rbs +7 -1
  170. data/sig/x_twitter_scraper/models/support/ticket_reply_response.rbs +49 -5
  171. data/sig/x_twitter_scraper/models/support/ticket_retrieve_response.rbs +113 -2
  172. data/sig/x_twitter_scraper/models/x/communities/join_create_params.rbs +5 -1
  173. data/sig/x_twitter_scraper/models/x/communities/join_create_response.rbs +540 -4
  174. data/sig/x_twitter_scraper/models/x/communities/join_delete_all_params.rbs +5 -1
  175. data/sig/x_twitter_scraper/models/x/communities/join_delete_all_response.rbs +540 -4
  176. data/sig/x_twitter_scraper/models/x/community_create_params.rbs +10 -1
  177. data/sig/x_twitter_scraper/models/x/community_create_response.rbs +528 -7
  178. data/sig/x_twitter_scraper/models/x/community_delete_params.rbs +10 -1
  179. data/sig/x_twitter_scraper/models/x/community_delete_response.rbs +540 -4
  180. data/sig/x_twitter_scraper/models/x/dm_send_params.rbs +5 -0
  181. data/sig/x_twitter_scraper/models/x/dm_send_response.rbs +539 -5
  182. data/sig/x_twitter_scraper/models/x/media_upload_params.rbs +5 -1
  183. data/sig/x_twitter_scraper/models/x/media_upload_response.rbs +534 -7
  184. data/sig/x_twitter_scraper/models/x/profile_update_avatar_params.rbs +5 -1
  185. data/sig/x_twitter_scraper/models/x/profile_update_avatar_response.rbs +540 -4
  186. data/sig/x_twitter_scraper/models/x/profile_update_banner_params.rbs +5 -1
  187. data/sig/x_twitter_scraper/models/x/profile_update_banner_response.rbs +540 -4
  188. data/sig/x_twitter_scraper/models/x/profile_update_params.rbs +5 -0
  189. data/sig/x_twitter_scraper/models/x/profile_update_response.rbs +540 -4
  190. data/sig/x_twitter_scraper/models/x/tweet_author.rbs +3 -11
  191. data/sig/x_twitter_scraper/models/x/tweet_create_params.rbs +4 -6
  192. data/sig/x_twitter_scraper/models/x/tweet_create_response.rbs +518 -11
  193. data/sig/x_twitter_scraper/models/x/tweet_delete_params.rbs +5 -1
  194. data/sig/x_twitter_scraper/models/x/tweet_delete_response.rbs +540 -4
  195. data/sig/x_twitter_scraper/models/x/tweets/like_create_params.rbs +5 -1
  196. data/sig/x_twitter_scraper/models/x/tweets/like_create_response.rbs +540 -4
  197. data/sig/x_twitter_scraper/models/x/tweets/like_delete_params.rbs +5 -1
  198. data/sig/x_twitter_scraper/models/x/tweets/like_delete_response.rbs +540 -4
  199. data/sig/x_twitter_scraper/models/x/tweets/retweet_create_params.rbs +5 -1
  200. data/sig/x_twitter_scraper/models/x/tweets/retweet_create_response.rbs +540 -4
  201. data/sig/x_twitter_scraper/models/x/tweets/retweet_delete_params.rbs +5 -1
  202. data/sig/x_twitter_scraper/models/x/tweets/retweet_delete_response.rbs +540 -4
  203. data/sig/x_twitter_scraper/models/x/user_remove_follower_params.rbs +5 -1
  204. data/sig/x_twitter_scraper/models/x/user_remove_follower_response.rbs +540 -4
  205. data/sig/x_twitter_scraper/models/x/users/follow_create_params.rbs +5 -1
  206. data/sig/x_twitter_scraper/models/x/users/follow_create_response.rbs +540 -4
  207. data/sig/x_twitter_scraper/models/x/users/follow_delete_all_params.rbs +5 -1
  208. data/sig/x_twitter_scraper/models/x/users/follow_delete_all_response.rbs +540 -4
  209. data/sig/x_twitter_scraper/models/x/write_action_retrieve_response.rbs +428 -54
  210. data/sig/x_twitter_scraper/resources/compose.rbs +2 -12
  211. data/sig/x_twitter_scraper/resources/support/tickets.rbs +2 -0
  212. data/sig/x_twitter_scraper/resources/x/communities/join.rbs +2 -0
  213. data/sig/x_twitter_scraper/resources/x/communities.rbs +2 -0
  214. data/sig/x_twitter_scraper/resources/x/dm.rbs +1 -0
  215. data/sig/x_twitter_scraper/resources/x/media.rbs +1 -0
  216. data/sig/x_twitter_scraper/resources/x/profile.rbs +3 -0
  217. data/sig/x_twitter_scraper/resources/x/tweets/like.rbs +2 -0
  218. data/sig/x_twitter_scraper/resources/x/tweets/retweet.rbs +2 -0
  219. data/sig/x_twitter_scraper/resources/x/tweets.rbs +2 -1
  220. data/sig/x_twitter_scraper/resources/x/users/follow.rbs +2 -0
  221. data/sig/x_twitter_scraper/resources/x/users.rbs +1 -0
  222. metadata +17 -26
@@ -1,16 +1,60 @@
1
1
  module XTwitterScraper
2
2
  module Models
3
3
  module Support
4
- type ticket_create_response = { public_id: String }
4
+ type ticket_create_response =
5
+ {
6
+ attachments: ::Array[XTwitterScraper::Models::Support::TicketCreateResponse::Attachment],
7
+ public_id: String
8
+ }
5
9
 
6
10
  class TicketCreateResponse < XTwitterScraper::Internal::Type::BaseModel
7
- attr_reader public_id: String?
11
+ attr_accessor attachments: ::Array[XTwitterScraper::Models::Support::TicketCreateResponse::Attachment]
8
12
 
9
- def public_id=: (String) -> String
13
+ attr_accessor public_id: String
10
14
 
11
- def initialize: (?public_id: String) -> void
15
+ def initialize: (
16
+ attachments: ::Array[XTwitterScraper::Models::Support::TicketCreateResponse::Attachment],
17
+ public_id: String
18
+ ) -> void
12
19
 
13
- def to_hash: -> { public_id: String }
20
+ def to_hash: -> {
21
+ attachments: ::Array[XTwitterScraper::Models::Support::TicketCreateResponse::Attachment],
22
+ public_id: String
23
+ }
24
+
25
+ type attachment =
26
+ {
27
+ public_id: String,
28
+ status: XTwitterScraper::Models::Support::TicketCreateResponse::Attachment::status
29
+ }
30
+
31
+ class Attachment < XTwitterScraper::Internal::Type::BaseModel
32
+ attr_accessor public_id: String
33
+
34
+ attr_accessor status: XTwitterScraper::Models::Support::TicketCreateResponse::Attachment::status
35
+
36
+ def initialize: (
37
+ public_id: String,
38
+ status: XTwitterScraper::Models::Support::TicketCreateResponse::Attachment::status
39
+ ) -> void
40
+
41
+ def to_hash: -> {
42
+ public_id: String,
43
+ status: XTwitterScraper::Models::Support::TicketCreateResponse::Attachment::status
44
+ }
45
+
46
+ type status = :pending | :ready | :failed
47
+
48
+ module Status
49
+ extend XTwitterScraper::Internal::Type::Enum
50
+
51
+ PENDING: :pending
52
+ READY: :ready
53
+ FAILED: :failed
54
+
55
+ def self?.values: -> ::Array[XTwitterScraper::Models::Support::TicketCreateResponse::Attachment::status]
56
+ end
57
+ end
14
58
  end
15
59
  end
16
60
  end
@@ -2,7 +2,7 @@ module XTwitterScraper
2
2
  module Models
3
3
  module Support
4
4
  type ticket_reply_params =
5
- { id: String, body: String }
5
+ { id: String, body: String, idempotency_key: String }
6
6
  & XTwitterScraper::Internal::Type::request_parameters
7
7
 
8
8
  class TicketReplyParams < XTwitterScraper::Internal::Type::BaseModel
@@ -13,15 +13,21 @@ module XTwitterScraper
13
13
 
14
14
  attr_accessor body: String
15
15
 
16
+ attr_reader idempotency_key: String?
17
+
18
+ def idempotency_key=: (String) -> String
19
+
16
20
  def initialize: (
17
21
  id: String,
18
22
  body: String,
23
+ ?idempotency_key: String,
19
24
  ?request_options: XTwitterScraper::request_opts
20
25
  ) -> void
21
26
 
22
27
  def to_hash: -> {
23
28
  id: String,
24
29
  body: String,
30
+ idempotency_key: String,
25
31
  request_options: XTwitterScraper::RequestOptions
26
32
  }
27
33
  end
@@ -1,16 +1,60 @@
1
1
  module XTwitterScraper
2
2
  module Models
3
3
  module Support
4
- type ticket_reply_response = { public_id: String }
4
+ type ticket_reply_response =
5
+ {
6
+ attachments: ::Array[XTwitterScraper::Models::Support::TicketReplyResponse::Attachment],
7
+ public_id: String
8
+ }
5
9
 
6
10
  class TicketReplyResponse < XTwitterScraper::Internal::Type::BaseModel
7
- attr_reader public_id: String?
11
+ attr_accessor attachments: ::Array[XTwitterScraper::Models::Support::TicketReplyResponse::Attachment]
8
12
 
9
- def public_id=: (String) -> String
13
+ attr_accessor public_id: String
10
14
 
11
- def initialize: (?public_id: String) -> void
15
+ def initialize: (
16
+ attachments: ::Array[XTwitterScraper::Models::Support::TicketReplyResponse::Attachment],
17
+ public_id: String
18
+ ) -> void
12
19
 
13
- def to_hash: -> { public_id: String }
20
+ def to_hash: -> {
21
+ attachments: ::Array[XTwitterScraper::Models::Support::TicketReplyResponse::Attachment],
22
+ public_id: String
23
+ }
24
+
25
+ type attachment =
26
+ {
27
+ public_id: String,
28
+ status: XTwitterScraper::Models::Support::TicketReplyResponse::Attachment::status
29
+ }
30
+
31
+ class Attachment < XTwitterScraper::Internal::Type::BaseModel
32
+ attr_accessor public_id: String
33
+
34
+ attr_accessor status: XTwitterScraper::Models::Support::TicketReplyResponse::Attachment::status
35
+
36
+ def initialize: (
37
+ public_id: String,
38
+ status: XTwitterScraper::Models::Support::TicketReplyResponse::Attachment::status
39
+ ) -> void
40
+
41
+ def to_hash: -> {
42
+ public_id: String,
43
+ status: XTwitterScraper::Models::Support::TicketReplyResponse::Attachment::status
44
+ }
45
+
46
+ type status = :pending | :ready | :failed
47
+
48
+ module Status
49
+ extend XTwitterScraper::Internal::Type::Enum
50
+
51
+ PENDING: :pending
52
+ READY: :ready
53
+ FAILED: :failed
54
+
55
+ def self?.values: -> ::Array[XTwitterScraper::Models::Support::TicketReplyResponse::Attachment::status]
56
+ end
57
+ end
14
58
  end
15
59
  end
16
60
  end
@@ -56,9 +56,21 @@ module XTwitterScraper
56
56
  updated_at: Time
57
57
  }
58
58
 
59
- type message = { body: String, created_at: Time, sender: String }
59
+ type message =
60
+ {
61
+ attachments: ::Array[XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment],
62
+ body: String,
63
+ created_at: Time,
64
+ sender: String
65
+ }
60
66
 
61
67
  class Message < XTwitterScraper::Internal::Type::BaseModel
68
+ attr_reader attachments: ::Array[XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment]?
69
+
70
+ def attachments=: (
71
+ ::Array[XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment]
72
+ ) -> ::Array[XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment]
73
+
62
74
  attr_reader body: String?
63
75
 
64
76
  def body=: (String) -> String
@@ -72,12 +84,111 @@ module XTwitterScraper
72
84
  def sender=: (String) -> String
73
85
 
74
86
  def initialize: (
87
+ ?attachments: ::Array[XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment],
75
88
  ?body: String,
76
89
  ?created_at: Time,
77
90
  ?sender: String
78
91
  ) -> void
79
92
 
80
- def to_hash: -> { body: String, created_at: Time, sender: String }
93
+ def to_hash: -> {
94
+ attachments: ::Array[XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment],
95
+ body: String,
96
+ created_at: Time,
97
+ sender: String
98
+ }
99
+
100
+ type attachment =
101
+ {
102
+ content_type: XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment::content_type,
103
+ filename: String,
104
+ kind: XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment::kind,
105
+ public_id: String,
106
+ size_bytes: Integer,
107
+ status: XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment::status,
108
+ url: String
109
+ }
110
+
111
+ class Attachment < XTwitterScraper::Internal::Type::BaseModel
112
+ attr_accessor content_type: XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment::content_type
113
+
114
+ attr_accessor filename: String
115
+
116
+ attr_accessor kind: XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment::kind
117
+
118
+ attr_accessor public_id: String
119
+
120
+ attr_accessor size_bytes: Integer
121
+
122
+ attr_accessor status: XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment::status
123
+
124
+ attr_accessor url: String
125
+
126
+ def initialize: (
127
+ content_type: XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment::content_type,
128
+ filename: String,
129
+ kind: XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment::kind,
130
+ public_id: String,
131
+ size_bytes: Integer,
132
+ status: XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment::status,
133
+ url: String
134
+ ) -> void
135
+
136
+ def to_hash: -> {
137
+ content_type: XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment::content_type,
138
+ filename: String,
139
+ kind: XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment::kind,
140
+ public_id: String,
141
+ size_bytes: Integer,
142
+ status: XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment::status,
143
+ url: String
144
+ }
145
+
146
+ type content_type =
147
+ :"image/jpeg"
148
+ | :"image/png"
149
+ | :"image/gif"
150
+ | :"image/webp"
151
+ | :"video/mp4"
152
+ | :"video/quicktime"
153
+ | :"video/webm"
154
+
155
+ module ContentType
156
+ extend XTwitterScraper::Internal::Type::Enum
157
+
158
+ IMAGE_JPEG: :"image/jpeg"
159
+ IMAGE_PNG: :"image/png"
160
+ IMAGE_GIF: :"image/gif"
161
+ IMAGE_WEBP: :"image/webp"
162
+ VIDEO_MP4: :"video/mp4"
163
+ VIDEO_QUICKTIME: :"video/quicktime"
164
+ VIDEO_WEBM: :"video/webm"
165
+
166
+ def self?.values: -> ::Array[XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment::content_type]
167
+ end
168
+
169
+ type kind = :image | :video
170
+
171
+ module Kind
172
+ extend XTwitterScraper::Internal::Type::Enum
173
+
174
+ IMAGE: :image
175
+ VIDEO: :video
176
+
177
+ def self?.values: -> ::Array[XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment::kind]
178
+ end
179
+
180
+ type status = :pending | :ready | :failed
181
+
182
+ module Status
183
+ extend XTwitterScraper::Internal::Type::Enum
184
+
185
+ PENDING: :pending
186
+ READY: :ready
187
+ FAILED: :failed
188
+
189
+ def self?.values: -> ::Array[XTwitterScraper::Models::Support::TicketRetrieveResponse::Message::Attachment::status]
190
+ end
191
+ end
81
192
  end
82
193
  end
83
194
  end
@@ -3,7 +3,7 @@ module XTwitterScraper
3
3
  module X
4
4
  module Communities
5
5
  type join_create_params =
6
- { id: String, account: String }
6
+ { id: String, account: String, idempotency_key: String }
7
7
  & XTwitterScraper::Internal::Type::request_parameters
8
8
 
9
9
  class JoinCreateParams < XTwitterScraper::Internal::Type::BaseModel
@@ -14,15 +14,19 @@ module XTwitterScraper
14
14
 
15
15
  attr_accessor account: String
16
16
 
17
+ attr_accessor idempotency_key: String
18
+
17
19
  def initialize: (
18
20
  id: String,
19
21
  account: String,
22
+ idempotency_key: String,
20
23
  ?request_options: XTwitterScraper::request_opts
21
24
  ) -> void
22
25
 
23
26
  def to_hash: -> {
24
27
  id: String,
25
28
  account: String,
29
+ idempotency_key: String,
26
30
  request_options: XTwitterScraper::RequestOptions
27
31
  }
28
32
  end