rettiwt-api 5.0.0-alpha.3 → 5.0.0-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/dist/collections/Extractors.d.ts +6 -2
  2. package/dist/collections/Extractors.js +1 -0
  3. package/dist/collections/Extractors.js.map +1 -1
  4. package/dist/collections/Groups.js +1 -0
  5. package/dist/collections/Groups.js.map +1 -1
  6. package/dist/collections/Requests.js +1 -0
  7. package/dist/collections/Requests.js.map +1 -1
  8. package/dist/commands/User.js +15 -0
  9. package/dist/commands/User.js.map +1 -1
  10. package/dist/enums/Api.d.ts +1 -51
  11. package/dist/enums/Api.js +1 -52
  12. package/dist/enums/Api.js.map +1 -1
  13. package/dist/enums/Resource.d.ts +1 -0
  14. package/dist/enums/Resource.js +1 -0
  15. package/dist/enums/Resource.js.map +1 -1
  16. package/dist/index.d.ts +5 -6
  17. package/dist/index.js +2 -5
  18. package/dist/index.js.map +1 -1
  19. package/dist/models/data/List.d.ts +4 -0
  20. package/dist/models/data/List.js +7 -0
  21. package/dist/models/data/List.js.map +1 -1
  22. package/dist/models/data/Notification.d.ts +4 -0
  23. package/dist/models/data/Notification.js +7 -0
  24. package/dist/models/data/Notification.js.map +1 -1
  25. package/dist/models/data/Tweet.d.ts +4 -0
  26. package/dist/models/data/Tweet.js +7 -0
  27. package/dist/models/data/Tweet.js.map +1 -1
  28. package/dist/models/data/User.d.ts +4 -0
  29. package/dist/models/data/User.js +7 -0
  30. package/dist/models/data/User.js.map +1 -1
  31. package/dist/models/errors/TwitterError.d.ts +37 -0
  32. package/dist/models/errors/TwitterError.js +60 -0
  33. package/dist/models/errors/TwitterError.js.map +1 -0
  34. package/dist/requests/List.js +28 -9
  35. package/dist/requests/List.js.map +1 -1
  36. package/dist/requests/Tweet.js +91 -34
  37. package/dist/requests/Tweet.js.map +1 -1
  38. package/dist/requests/User.js +231 -111
  39. package/dist/requests/User.js.map +1 -1
  40. package/dist/services/internal/AuthService.d.ts +5 -5
  41. package/dist/services/internal/AuthService.js +6 -7
  42. package/dist/services/internal/AuthService.js.map +1 -1
  43. package/dist/services/internal/ErrorService.d.ts +5 -76
  44. package/dist/services/internal/ErrorService.js +13 -116
  45. package/dist/services/internal/ErrorService.js.map +1 -1
  46. package/dist/services/internal/TidService.d.ts +4 -4
  47. package/dist/services/internal/TidService.js +8 -9
  48. package/dist/services/internal/TidService.js.map +1 -1
  49. package/dist/services/public/FetcherService.js +2 -2
  50. package/dist/services/public/FetcherService.js.map +1 -1
  51. package/dist/services/public/TweetService.js.map +1 -1
  52. package/dist/services/public/UserService.d.ts +29 -2
  53. package/dist/services/public/UserService.js +46 -4
  54. package/dist/services/public/UserService.js.map +1 -1
  55. package/dist/types/errors/TwitterError.d.ts +30 -0
  56. package/dist/types/{raw/generic/Error.js → errors/TwitterError.js} +1 -1
  57. package/dist/types/errors/TwitterError.js.map +1 -0
  58. package/dist/types/raw/base/Error.d.ts +32 -0
  59. package/dist/types/raw/base/Error.js +4 -0
  60. package/dist/types/raw/base/Error.js.map +1 -0
  61. package/dist/types/raw/generic/Response.d.ts +0 -2
  62. package/dist/types/raw/tweet/DetailsBulk.d.ts +288 -0
  63. package/dist/types/raw/tweet/DetailsBulk.js +4 -0
  64. package/dist/types/raw/tweet/DetailsBulk.js.map +1 -0
  65. package/dist/types/raw/user/DetailsBulk.d.ts +91 -0
  66. package/dist/types/raw/user/DetailsBulk.js +4 -0
  67. package/dist/types/raw/user/DetailsBulk.js.map +1 -0
  68. package/package.json +1 -1
  69. package/src/collections/Extractors.ts +8 -2
  70. package/src/collections/Groups.ts +1 -0
  71. package/src/collections/Requests.ts +1 -0
  72. package/src/commands/User.ts +15 -0
  73. package/src/enums/Api.ts +0 -51
  74. package/src/enums/Resource.ts +1 -0
  75. package/src/index.ts +5 -6
  76. package/src/models/data/List.ts +9 -0
  77. package/src/models/data/Notification.ts +10 -0
  78. package/src/models/data/Tweet.ts +9 -0
  79. package/src/models/data/User.ts +9 -0
  80. package/src/models/errors/TwitterError.ts +65 -0
  81. package/src/requests/List.ts +28 -9
  82. package/src/requests/Tweet.ts +91 -34
  83. package/src/requests/User.ts +231 -111
  84. package/src/services/internal/AuthService.ts +7 -8
  85. package/src/services/internal/ErrorService.ts +14 -132
  86. package/src/services/internal/TidService.ts +9 -10
  87. package/src/services/public/FetcherService.ts +2 -2
  88. package/src/services/public/TweetService.ts +3 -2
  89. package/src/services/public/UserService.ts +59 -8
  90. package/src/types/errors/TwitterError.ts +37 -0
  91. package/src/types/raw/base/Error.ts +37 -0
  92. package/src/types/raw/generic/Response.ts +0 -3
  93. package/src/types/raw/tweet/DetailsBulk.ts +338 -0
  94. package/src/types/raw/user/DetailsBulk.ts +104 -0
  95. package/dist/enums/Http.d.ts +0 -68
  96. package/dist/enums/Http.js +0 -73
  97. package/dist/enums/Http.js.map +0 -1
  98. package/dist/models/errors/ApiError.d.ts +0 -15
  99. package/dist/models/errors/ApiError.js +0 -23
  100. package/dist/models/errors/ApiError.js.map +0 -1
  101. package/dist/models/errors/HttpError.d.ts +0 -15
  102. package/dist/models/errors/HttpError.js +0 -23
  103. package/dist/models/errors/HttpError.js.map +0 -1
  104. package/dist/models/errors/RettiwtError.d.ts +0 -9
  105. package/dist/models/errors/RettiwtError.js +0 -17
  106. package/dist/models/errors/RettiwtError.js.map +0 -1
  107. package/dist/models/errors/TimeoutError.d.ts +0 -12
  108. package/dist/models/errors/TimeoutError.js +0 -19
  109. package/dist/models/errors/TimeoutError.js.map +0 -1
  110. package/dist/types/raw/generic/Error.d.ts +0 -30
  111. package/dist/types/raw/generic/Error.js.map +0 -1
  112. package/src/enums/Http.ts +0 -68
  113. package/src/models/errors/ApiError.ts +0 -21
  114. package/src/models/errors/HttpError.ts +0 -21
  115. package/src/models/errors/RettiwtError.ts +0 -13
  116. package/src/models/errors/TimeoutError.ts +0 -15
  117. package/src/types/raw/generic/Error.ts +0 -35
@@ -18,7 +18,7 @@ export class UserRequests {
18
18
  public static affiliates(id: string, count?: number, cursor?: string): AxiosRequestConfig {
19
19
  return {
20
20
  method: 'get',
21
- url: 'https://x.com/i/api/graphql/0M9yTHGhZjdIIxIcI9H2xQ/UserBusinessProfileTeamTimeline',
21
+ url: 'https://x.com/i/api/graphql/OVFfg1hExk_AygiMVSJd-Q/UserBusinessProfileTeamTimeline',
22
22
  params: {
23
23
  /* eslint-disable @typescript-eslint/naming-convention */
24
24
  variables: JSON.stringify({
@@ -31,9 +31,9 @@ export class UserRequests {
31
31
  withVoice: false,
32
32
  }),
33
33
  features: JSON.stringify({
34
+ rweb_video_screen_enabled: false,
34
35
  profile_label_improvements_pcf_label_in_post_enabled: true,
35
36
  rweb_tipjar_consumption_enabled: true,
36
- responsive_web_graphql_exclude_directive_enabled: true,
37
37
  verified_phone_label_enabled: true,
38
38
  creator_subscriptions_tweet_preview_api_enabled: true,
39
39
  responsive_web_graphql_timeline_navigation_enabled: true,
@@ -52,15 +52,15 @@ export class UserRequests {
52
52
  longform_notetweets_consumption_enabled: true,
53
53
  responsive_web_twitter_article_tweet_consumption_enabled: true,
54
54
  tweet_awards_web_tipping_enabled: false,
55
+ responsive_web_grok_show_grok_translated_post: false,
55
56
  responsive_web_grok_analysis_button_from_backend: true,
56
57
  creator_subscriptions_quote_tweet_preview_enabled: false,
57
58
  freedom_of_speech_not_reach_fetch_enabled: true,
58
59
  standardized_nudges_misinfo: true,
59
60
  tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled: true,
60
- rweb_video_timestamps_enabled: true,
61
61
  longform_notetweets_rich_text_read_enabled: true,
62
62
  longform_notetweets_inline_media_enabled: true,
63
- responsive_web_grok_image_annotation_enabled: false,
63
+ responsive_web_grok_image_annotation_enabled: true,
64
64
  responsive_web_enhance_cards_enabled: false,
65
65
  }),
66
66
  /* eslint-enable @typescript-eslint/naming-convention */
@@ -102,7 +102,7 @@ export class UserRequests {
102
102
  public static bookmarks(count?: number, cursor?: string): AxiosRequestConfig {
103
103
  return {
104
104
  method: 'get',
105
- url: 'https://x.com/i/api/graphql/qToeLeMs43Q8cr7tRYXmaQ/Bookmarks',
105
+ url: 'https://x.com/i/api/graphql/-LGfdImKeQz0xS_jjUwzlA/Bookmarks',
106
106
  params: {
107
107
  /* eslint-disable @typescript-eslint/naming-convention */
108
108
  variables: JSON.stringify({
@@ -111,27 +111,36 @@ export class UserRequests {
111
111
  includePromotedContent: false,
112
112
  }),
113
113
  features: JSON.stringify({
114
- graphql_timeline_v2_bookmark_timeline: true,
114
+ rweb_video_screen_enabled: false,
115
+ profile_label_improvements_pcf_label_in_post_enabled: true,
116
+ rweb_tipjar_consumption_enabled: true,
117
+ verified_phone_label_enabled: true,
115
118
  creator_subscriptions_tweet_preview_api_enabled: true,
119
+ responsive_web_graphql_timeline_navigation_enabled: true,
120
+ responsive_web_graphql_skip_user_profile_image_extensions_enabled: false,
121
+ premium_content_api_read_enabled: false,
122
+ communities_web_enable_tweet_community_results_fetch: true,
116
123
  c9s_tweet_anatomy_moderator_badge_enabled: true,
117
- tweetypie_unmention_optimization_enabled: true,
124
+ responsive_web_grok_analyze_button_fetch_trends_enabled: false,
125
+ responsive_web_grok_analyze_post_followups_enabled: true,
126
+ responsive_web_jetfuel_frame: false,
127
+ responsive_web_grok_share_attachment_enabled: true,
128
+ articles_preview_enabled: true,
118
129
  responsive_web_edit_tweet_api_enabled: true,
119
130
  graphql_is_translatable_rweb_tweet_is_translatable_enabled: true,
120
131
  view_counts_everywhere_api_enabled: true,
121
132
  longform_notetweets_consumption_enabled: true,
122
133
  responsive_web_twitter_article_tweet_consumption_enabled: true,
123
134
  tweet_awards_web_tipping_enabled: false,
124
- longform_notetweets_rich_text_read_enabled: true,
125
- longform_notetweets_inline_media_enabled: true,
126
- rweb_video_timestamps_enabled: true,
127
- responsive_web_graphql_exclude_directive_enabled: true,
128
- verified_phone_label_enabled: false,
135
+ responsive_web_grok_show_grok_translated_post: false,
136
+ responsive_web_grok_analysis_button_from_backend: true,
137
+ creator_subscriptions_quote_tweet_preview_enabled: false,
129
138
  freedom_of_speech_not_reach_fetch_enabled: true,
130
139
  standardized_nudges_misinfo: true,
131
140
  tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled: true,
132
- responsive_web_media_download_video_enabled: false,
133
- responsive_web_graphql_skip_user_profile_image_extensions_enabled: false,
134
- responsive_web_graphql_timeline_navigation_enabled: true,
141
+ longform_notetweets_rich_text_read_enabled: true,
142
+ longform_notetweets_inline_media_enabled: true,
143
+ responsive_web_grok_image_annotation_enabled: true,
135
144
  responsive_web_enhance_cards_enabled: false,
136
145
  }),
137
146
  /* eslint-enable @typescript-eslint/naming-convention */
@@ -151,14 +160,18 @@ export class UserRequests {
151
160
  /* eslint-disable @typescript-eslint/naming-convention */
152
161
  variables: JSON.stringify({ userIds: ids }),
153
162
  features: JSON.stringify({
163
+ hidden_profile_likes_enabled: false,
164
+ hidden_profile_subscriptions_enabled: false,
165
+ responsive_web_graphql_exclude_directive_enabled: true,
166
+ verified_phone_label_enabled: true,
167
+ subscriptions_verification_info_verified_since_enabled: true,
168
+ highlights_tweets_tab_ui_enabled: true,
169
+ creator_subscriptions_tweet_preview_api_enabled: true,
170
+ responsive_web_graphql_skip_user_profile_image_extensions_enabled: false,
171
+ responsive_web_graphql_timeline_navigation_enabled: true,
154
172
  profile_label_improvements_pcf_label_in_post_enabled: false,
155
173
  rweb_tipjar_consumption_enabled: false,
156
- responsive_web_graphql_exclude_directive_enabled: false,
157
- verified_phone_label_enabled: false,
158
- responsive_web_graphql_skip_user_profile_image_extensions_enabled: false,
159
- responsive_web_graphql_timeline_navigation_enabled: false,
160
174
  }),
161
- fieldToggles: JSON.stringify({ withAuxiliaryUserLabels: false }),
162
175
  /* eslint-enable @typescript-eslint/naming-convention */
163
176
  },
164
177
  paramsSerializer: { encode: encodeURIComponent },
@@ -171,19 +184,20 @@ export class UserRequests {
171
184
  public static detailsById(id: string): AxiosRequestConfig {
172
185
  return {
173
186
  method: 'get',
174
- url: 'https://x.com/i/api/graphql/i_0UQ54YrCyqLUvgGzXygA/UserByRestId',
187
+ url: 'https://x.com/i/api/graphql/WJ7rCtezBVT6nk6VM5R8Bw/UserByRestId',
175
188
  params: {
176
189
  /* eslint-disable @typescript-eslint/naming-convention */
177
190
  variables: JSON.stringify({ userId: id, withSafetyModeUserFields: true }),
178
191
  features: JSON.stringify({
179
- hidden_profile_likes_enabled: false,
180
- hidden_profile_subscriptions_enabled: false,
181
- responsive_web_graphql_exclude_directive_enabled: true,
192
+ hidden_profile_subscriptions_enabled: true,
193
+ profile_label_improvements_pcf_label_in_post_enabled: true,
194
+ rweb_tipjar_consumption_enabled: true,
182
195
  verified_phone_label_enabled: true,
183
- subscriptions_verification_info_verified_since_enabled: true,
184
196
  highlights_tweets_tab_ui_enabled: true,
197
+ responsive_web_twitter_article_notes_tab_enabled: true,
198
+ subscriptions_feature_can_gift_premium: true,
185
199
  creator_subscriptions_tweet_preview_api_enabled: true,
186
- responsive_web_graphql_skip_user_profile_image_extensions_enabled: false,
200
+ responsive_web_graphql_skip_user_profile_image_extensions_enabled: true,
187
201
  responsive_web_graphql_timeline_navigation_enabled: true,
188
202
  }),
189
203
  /* eslint-enable @typescript-eslint/naming-convention */
@@ -198,20 +212,25 @@ export class UserRequests {
198
212
  public static detailsByUsername(userName: string): AxiosRequestConfig {
199
213
  return {
200
214
  method: 'get',
201
- url: 'https://x.com/i/api/graphql/oUZZZ8Oddwxs8Cd3iW3UEA/UserByScreenName',
215
+ url: 'https://x.com/i/api/graphql/1VOOyvKkiI3FMmkeDNxM9A/UserByScreenName',
202
216
  params: {
203
217
  /* eslint-disable @typescript-eslint/naming-convention */
204
218
  variables: JSON.stringify({ screen_name: userName, withSafetyModeUserFields: true }),
205
219
  features: JSON.stringify({
206
- hidden_profile_likes_enabled: false,
207
- responsive_web_graphql_exclude_directive_enabled: true,
220
+ hidden_profile_subscriptions_enabled: true,
221
+ profile_label_improvements_pcf_label_in_post_enabled: true,
222
+ rweb_tipjar_consumption_enabled: true,
208
223
  verified_phone_label_enabled: true,
224
+ subscriptions_verification_info_is_identity_verified_enabled: true,
209
225
  subscriptions_verification_info_verified_since_enabled: true,
210
226
  highlights_tweets_tab_ui_enabled: true,
227
+ responsive_web_twitter_article_notes_tab_enabled: true,
228
+ subscriptions_feature_can_gift_premium: true,
211
229
  creator_subscriptions_tweet_preview_api_enabled: true,
212
230
  responsive_web_graphql_skip_user_profile_image_extensions_enabled: false,
213
231
  responsive_web_graphql_timeline_navigation_enabled: true,
214
232
  }),
233
+ fieldToggles: JSON.stringify({ withAuxiliaryUserLabels: true }),
215
234
  /* eslint-enable @typescript-eslint/naming-convention */
216
235
  },
217
236
  paramsSerializer: { encode: encodeURIComponent },
@@ -240,7 +259,7 @@ export class UserRequests {
240
259
  public static followed(count?: number, cursor?: string): AxiosRequestConfig {
241
260
  return {
242
261
  method: 'get',
243
- url: 'https://x.com/i/api/graphql/9EwYy8pLBOSFlEoSP2STiQ/HomeLatestTimeline',
262
+ url: 'https://x.com/i/api/graphql/CRprHpVA12yhsub-KRERIg/HomeLatestTimeline',
244
263
  params: {
245
264
  /* eslint-disable @typescript-eslint/naming-convention */
246
265
  variables: JSON.stringify({
@@ -251,30 +270,36 @@ export class UserRequests {
251
270
  withCommunity: false,
252
271
  }),
253
272
  features: JSON.stringify({
273
+ rweb_video_screen_enabled: false,
274
+ profile_label_improvements_pcf_label_in_post_enabled: true,
254
275
  rweb_tipjar_consumption_enabled: true,
255
- responsive_web_graphql_exclude_directive_enabled: true,
256
276
  verified_phone_label_enabled: true,
257
277
  creator_subscriptions_tweet_preview_api_enabled: true,
258
278
  responsive_web_graphql_timeline_navigation_enabled: true,
259
279
  responsive_web_graphql_skip_user_profile_image_extensions_enabled: false,
280
+ premium_content_api_read_enabled: false,
260
281
  communities_web_enable_tweet_community_results_fetch: true,
261
282
  c9s_tweet_anatomy_moderator_badge_enabled: true,
262
- articles_preview_enabled: false,
263
- tweetypie_unmention_optimization_enabled: true,
283
+ responsive_web_grok_analyze_button_fetch_trends_enabled: false,
284
+ responsive_web_grok_analyze_post_followups_enabled: true,
285
+ responsive_web_jetfuel_frame: false,
286
+ responsive_web_grok_share_attachment_enabled: true,
287
+ articles_preview_enabled: true,
264
288
  responsive_web_edit_tweet_api_enabled: true,
265
289
  graphql_is_translatable_rweb_tweet_is_translatable_enabled: true,
266
290
  view_counts_everywhere_api_enabled: true,
267
291
  longform_notetweets_consumption_enabled: true,
268
292
  responsive_web_twitter_article_tweet_consumption_enabled: true,
269
293
  tweet_awards_web_tipping_enabled: false,
294
+ responsive_web_grok_show_grok_translated_post: false,
295
+ responsive_web_grok_analysis_button_from_backend: true,
270
296
  creator_subscriptions_quote_tweet_preview_enabled: false,
271
297
  freedom_of_speech_not_reach_fetch_enabled: true,
272
298
  standardized_nudges_misinfo: true,
273
299
  tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled: true,
274
- tweet_with_visibility_results_prefer_gql_media_interstitial_enabled: false,
275
- rweb_video_timestamps_enabled: true,
276
300
  longform_notetweets_rich_text_read_enabled: true,
277
301
  longform_notetweets_inline_media_enabled: true,
302
+ responsive_web_grok_image_annotation_enabled: true,
278
303
  responsive_web_enhance_cards_enabled: false,
279
304
  }),
280
305
  /* eslint-enable @typescript-eslint/naming-convention */
@@ -291,7 +316,7 @@ export class UserRequests {
291
316
  public static followers(id: string, count?: number, cursor?: string): AxiosRequestConfig {
292
317
  return {
293
318
  method: 'get',
294
- url: 'https://x.com/i/api/graphql/6y5TB_HrwQM0FBGDiNfoEA/Followers',
319
+ url: 'https://x.com/i/api/graphql/Elc_-qTARceHpztqhI9PQA/Followers',
295
320
  params: {
296
321
  /* eslint-disable @typescript-eslint/naming-convention */
297
322
  variables: JSON.stringify({
@@ -301,25 +326,36 @@ export class UserRequests {
301
326
  includePromotedContent: false,
302
327
  }),
303
328
  features: JSON.stringify({
304
- rweb_lists_timeline_redesign_enabled: true,
305
- responsive_web_graphql_exclude_directive_enabled: true,
329
+ rweb_video_screen_enabled: false,
330
+ profile_label_improvements_pcf_label_in_post_enabled: true,
331
+ rweb_tipjar_consumption_enabled: true,
306
332
  verified_phone_label_enabled: true,
307
333
  creator_subscriptions_tweet_preview_api_enabled: true,
308
334
  responsive_web_graphql_timeline_navigation_enabled: true,
309
335
  responsive_web_graphql_skip_user_profile_image_extensions_enabled: false,
310
- tweetypie_unmention_optimization_enabled: true,
336
+ premium_content_api_read_enabled: false,
337
+ communities_web_enable_tweet_community_results_fetch: true,
338
+ c9s_tweet_anatomy_moderator_badge_enabled: true,
339
+ responsive_web_grok_analyze_button_fetch_trends_enabled: false,
340
+ responsive_web_grok_analyze_post_followups_enabled: true,
341
+ responsive_web_jetfuel_frame: false,
342
+ responsive_web_grok_share_attachment_enabled: true,
343
+ articles_preview_enabled: true,
311
344
  responsive_web_edit_tweet_api_enabled: true,
312
345
  graphql_is_translatable_rweb_tweet_is_translatable_enabled: true,
313
346
  view_counts_everywhere_api_enabled: true,
314
347
  longform_notetweets_consumption_enabled: true,
315
- responsive_web_twitter_article_tweet_consumption_enabled: false,
348
+ responsive_web_twitter_article_tweet_consumption_enabled: true,
316
349
  tweet_awards_web_tipping_enabled: false,
350
+ responsive_web_grok_show_grok_translated_post: false,
351
+ responsive_web_grok_analysis_button_from_backend: true,
352
+ creator_subscriptions_quote_tweet_preview_enabled: false,
317
353
  freedom_of_speech_not_reach_fetch_enabled: true,
318
354
  standardized_nudges_misinfo: true,
319
355
  tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled: true,
320
356
  longform_notetweets_rich_text_read_enabled: true,
321
357
  longform_notetweets_inline_media_enabled: true,
322
- responsive_web_media_download_video_enabled: false,
358
+ responsive_web_grok_image_annotation_enabled: true,
323
359
  responsive_web_enhance_cards_enabled: false,
324
360
  }),
325
361
  /* eslint-enable @typescript-eslint/naming-convention */
@@ -336,7 +372,7 @@ export class UserRequests {
336
372
  public static following(id: string, count?: number, cursor?: string): AxiosRequestConfig {
337
373
  return {
338
374
  method: 'get',
339
- url: 'https://x.com/i/api/graphql/V8zHw0SZijWORSsb-FNrng/Following',
375
+ url: 'https://x.com/i/api/graphql/C1qZ6bs-L3oc_TKSZyxkXQ/Following',
340
376
  params: {
341
377
  /* eslint-disable @typescript-eslint/naming-convention */
342
378
  variables: JSON.stringify({
@@ -346,25 +382,36 @@ export class UserRequests {
346
382
  includePromotedContent: false,
347
383
  }),
348
384
  features: JSON.stringify({
349
- rweb_lists_timeline_redesign_enabled: true,
350
- responsive_web_graphql_exclude_directive_enabled: true,
385
+ rweb_video_screen_enabled: false,
386
+ profile_label_improvements_pcf_label_in_post_enabled: true,
387
+ rweb_tipjar_consumption_enabled: true,
351
388
  verified_phone_label_enabled: true,
352
389
  creator_subscriptions_tweet_preview_api_enabled: true,
353
390
  responsive_web_graphql_timeline_navigation_enabled: true,
354
391
  responsive_web_graphql_skip_user_profile_image_extensions_enabled: false,
355
- tweetypie_unmention_optimization_enabled: true,
392
+ premium_content_api_read_enabled: false,
393
+ communities_web_enable_tweet_community_results_fetch: true,
394
+ c9s_tweet_anatomy_moderator_badge_enabled: true,
395
+ responsive_web_grok_analyze_button_fetch_trends_enabled: false,
396
+ responsive_web_grok_analyze_post_followups_enabled: true,
397
+ responsive_web_jetfuel_frame: false,
398
+ responsive_web_grok_share_attachment_enabled: true,
399
+ articles_preview_enabled: true,
356
400
  responsive_web_edit_tweet_api_enabled: true,
357
401
  graphql_is_translatable_rweb_tweet_is_translatable_enabled: true,
358
402
  view_counts_everywhere_api_enabled: true,
359
403
  longform_notetweets_consumption_enabled: true,
360
- responsive_web_twitter_article_tweet_consumption_enabled: false,
404
+ responsive_web_twitter_article_tweet_consumption_enabled: true,
361
405
  tweet_awards_web_tipping_enabled: false,
406
+ responsive_web_grok_show_grok_translated_post: false,
407
+ responsive_web_grok_analysis_button_from_backend: true,
408
+ creator_subscriptions_quote_tweet_preview_enabled: false,
362
409
  freedom_of_speech_not_reach_fetch_enabled: true,
363
410
  standardized_nudges_misinfo: true,
364
411
  tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled: true,
365
412
  longform_notetweets_rich_text_read_enabled: true,
366
413
  longform_notetweets_inline_media_enabled: true,
367
- responsive_web_media_download_video_enabled: false,
414
+ responsive_web_grok_image_annotation_enabled: true,
368
415
  responsive_web_enhance_cards_enabled: false,
369
416
  }),
370
417
  /* eslint-enable @typescript-eslint/naming-convention */
@@ -381,7 +428,7 @@ export class UserRequests {
381
428
  public static highlights(id: string, count?: number, cursor?: string): AxiosRequestConfig {
382
429
  return {
383
430
  method: 'get',
384
- url: 'https://x.com/i/api/graphql/Tqc024xHjye_svtpHJ236Q/UserHighlightsTweets',
431
+ url: 'https://x.com/i/api/graphql/cr8FsaThDCa9LKeD9CNZ4w/UserHighlightsTweets',
385
432
  params: {
386
433
  /* eslint-disable @typescript-eslint/naming-convention */
387
434
  variables: JSON.stringify({
@@ -392,27 +439,39 @@ export class UserRequests {
392
439
  withVoice: false,
393
440
  }),
394
441
  features: JSON.stringify({
395
- responsive_web_graphql_exclude_directive_enabled: true,
442
+ rweb_video_screen_enabled: false,
443
+ profile_label_improvements_pcf_label_in_post_enabled: true,
444
+ rweb_tipjar_consumption_enabled: true,
396
445
  verified_phone_label_enabled: true,
397
446
  creator_subscriptions_tweet_preview_api_enabled: true,
398
447
  responsive_web_graphql_timeline_navigation_enabled: true,
399
448
  responsive_web_graphql_skip_user_profile_image_extensions_enabled: false,
449
+ premium_content_api_read_enabled: false,
450
+ communities_web_enable_tweet_community_results_fetch: true,
400
451
  c9s_tweet_anatomy_moderator_badge_enabled: true,
401
- tweetypie_unmention_optimization_enabled: true,
452
+ responsive_web_grok_analyze_button_fetch_trends_enabled: false,
453
+ responsive_web_grok_analyze_post_followups_enabled: true,
454
+ responsive_web_jetfuel_frame: false,
455
+ responsive_web_grok_share_attachment_enabled: true,
456
+ articles_preview_enabled: true,
402
457
  responsive_web_edit_tweet_api_enabled: true,
403
458
  graphql_is_translatable_rweb_tweet_is_translatable_enabled: true,
404
459
  view_counts_everywhere_api_enabled: true,
405
460
  longform_notetweets_consumption_enabled: true,
406
461
  responsive_web_twitter_article_tweet_consumption_enabled: true,
407
462
  tweet_awards_web_tipping_enabled: false,
463
+ responsive_web_grok_show_grok_translated_post: false,
464
+ responsive_web_grok_analysis_button_from_backend: true,
465
+ creator_subscriptions_quote_tweet_preview_enabled: false,
408
466
  freedom_of_speech_not_reach_fetch_enabled: true,
409
467
  standardized_nudges_misinfo: true,
410
468
  tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled: true,
411
- rweb_video_timestamps_enabled: true,
412
469
  longform_notetweets_rich_text_read_enabled: true,
413
470
  longform_notetweets_inline_media_enabled: true,
471
+ responsive_web_grok_image_annotation_enabled: true,
414
472
  responsive_web_enhance_cards_enabled: false,
415
473
  }),
474
+ fieldToggles: { withArticlePlainText: false },
416
475
  /* eslint-enable @typescript-eslint/naming-convention */
417
476
  },
418
477
  paramsSerializer: { encode: encodeURIComponent },
@@ -427,7 +486,7 @@ export class UserRequests {
427
486
  public static likes(id: string, count?: number, cursor?: string): AxiosRequestConfig {
428
487
  return {
429
488
  method: 'get',
430
- url: 'https://x.com/i/api/graphql/kgZtsNyE46T3JaEf2nF9vw/Likes',
489
+ url: 'https://x.com/i/api/graphql/eQl7iWsCr2fChppuJdAeRw/Likes',
431
490
  params: {
432
491
  /* eslint-disable @typescript-eslint/naming-convention */
433
492
  variables: JSON.stringify({
@@ -441,27 +500,39 @@ export class UserRequests {
441
500
  withV2Timeline: false,
442
501
  }),
443
502
  features: JSON.stringify({
444
- rweb_lists_timeline_redesign_enabled: true,
445
- responsive_web_graphql_exclude_directive_enabled: true,
503
+ rweb_video_screen_enabled: false,
504
+ profile_label_improvements_pcf_label_in_post_enabled: true,
505
+ rweb_tipjar_consumption_enabled: true,
446
506
  verified_phone_label_enabled: true,
447
507
  creator_subscriptions_tweet_preview_api_enabled: true,
448
508
  responsive_web_graphql_timeline_navigation_enabled: true,
449
509
  responsive_web_graphql_skip_user_profile_image_extensions_enabled: false,
450
- tweetypie_unmention_optimization_enabled: true,
510
+ premium_content_api_read_enabled: false,
511
+ communities_web_enable_tweet_community_results_fetch: true,
512
+ c9s_tweet_anatomy_moderator_badge_enabled: true,
513
+ responsive_web_grok_analyze_button_fetch_trends_enabled: false,
514
+ responsive_web_grok_analyze_post_followups_enabled: true,
515
+ responsive_web_jetfuel_frame: false,
516
+ responsive_web_grok_share_attachment_enabled: true,
517
+ articles_preview_enabled: true,
451
518
  responsive_web_edit_tweet_api_enabled: true,
452
519
  graphql_is_translatable_rweb_tweet_is_translatable_enabled: true,
453
520
  view_counts_everywhere_api_enabled: true,
454
521
  longform_notetweets_consumption_enabled: true,
455
- responsive_web_twitter_article_tweet_consumption_enabled: false,
522
+ responsive_web_twitter_article_tweet_consumption_enabled: true,
456
523
  tweet_awards_web_tipping_enabled: false,
524
+ responsive_web_grok_show_grok_translated_post: false,
525
+ responsive_web_grok_analysis_button_from_backend: true,
526
+ creator_subscriptions_quote_tweet_preview_enabled: false,
457
527
  freedom_of_speech_not_reach_fetch_enabled: true,
458
528
  standardized_nudges_misinfo: true,
459
529
  tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled: true,
460
530
  longform_notetweets_rich_text_read_enabled: true,
461
531
  longform_notetweets_inline_media_enabled: true,
462
- responsive_web_media_download_video_enabled: false,
532
+ responsive_web_grok_image_annotation_enabled: true,
463
533
  responsive_web_enhance_cards_enabled: false,
464
534
  }),
535
+ fieldToggles: { withArticlePlainText: false },
465
536
  /* eslint-enable @typescript-eslint/naming-convention */
466
537
  },
467
538
  paramsSerializer: { encode: encodeURIComponent },
@@ -476,7 +547,7 @@ export class UserRequests {
476
547
  public static media(id: string, count?: number, cursor?: string): AxiosRequestConfig {
477
548
  return {
478
549
  method: 'get',
479
- url: 'https://x.com/i/api/graphql/EnIWTNQ8Tum-7t1NnZHOEQ/UserMedia',
550
+ url: 'https://x.com/i/api/graphql/vFPc2LVIu7so2uA_gHQAdg/UserMedia',
480
551
  params: {
481
552
  /* eslint-disable @typescript-eslint/naming-convention */
482
553
  variables: JSON.stringify({
@@ -490,27 +561,39 @@ export class UserRequests {
490
561
  withV2Timeline: false,
491
562
  }),
492
563
  features: JSON.stringify({
493
- responsive_web_graphql_exclude_directive_enabled: true,
564
+ rweb_video_screen_enabled: false,
565
+ profile_label_improvements_pcf_label_in_post_enabled: true,
566
+ rweb_tipjar_consumption_enabled: true,
494
567
  verified_phone_label_enabled: true,
495
568
  creator_subscriptions_tweet_preview_api_enabled: true,
496
569
  responsive_web_graphql_timeline_navigation_enabled: true,
497
570
  responsive_web_graphql_skip_user_profile_image_extensions_enabled: false,
571
+ premium_content_api_read_enabled: false,
572
+ communities_web_enable_tweet_community_results_fetch: true,
498
573
  c9s_tweet_anatomy_moderator_badge_enabled: true,
499
- tweetypie_unmention_optimization_enabled: true,
574
+ responsive_web_grok_analyze_button_fetch_trends_enabled: false,
575
+ responsive_web_grok_analyze_post_followups_enabled: true,
576
+ responsive_web_jetfuel_frame: false,
577
+ responsive_web_grok_share_attachment_enabled: true,
578
+ articles_preview_enabled: true,
500
579
  responsive_web_edit_tweet_api_enabled: true,
501
580
  graphql_is_translatable_rweb_tweet_is_translatable_enabled: true,
502
581
  view_counts_everywhere_api_enabled: true,
503
582
  longform_notetweets_consumption_enabled: true,
504
583
  responsive_web_twitter_article_tweet_consumption_enabled: true,
505
584
  tweet_awards_web_tipping_enabled: false,
585
+ responsive_web_grok_show_grok_translated_post: false,
586
+ responsive_web_grok_analysis_button_from_backend: true,
587
+ creator_subscriptions_quote_tweet_preview_enabled: false,
506
588
  freedom_of_speech_not_reach_fetch_enabled: true,
507
589
  standardized_nudges_misinfo: true,
508
590
  tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled: true,
509
- rweb_video_timestamps_enabled: true,
510
591
  longform_notetweets_rich_text_read_enabled: true,
511
592
  longform_notetweets_inline_media_enabled: true,
593
+ responsive_web_grok_image_annotation_enabled: true,
512
594
  responsive_web_enhance_cards_enabled: false,
513
595
  }),
596
+ fieldToggles: { withArticlePlainText: false },
514
597
  /* eslint-enable @typescript-eslint/naming-convention */
515
598
  },
516
599
  paramsSerializer: { encode: encodeURIComponent },
@@ -524,40 +607,47 @@ export class UserRequests {
524
607
  public static notifications(count?: number, cursor?: string): AxiosRequestConfig {
525
608
  return {
526
609
  method: 'get',
527
- url: 'https://x.com/i/api/2/notifications/all.json',
610
+ url: 'https://x.com/i/api/graphql/gaBVLalXDBRDJz6maKgdWg/NotificationsTimeline',
528
611
  params: {
529
612
  /* eslint-disable @typescript-eslint/naming-convention */
530
- include_profile_interstitial_type: 1,
531
- include_blocking: 1,
532
- include_blocked_by: 1,
533
- include_followed_by: 1,
534
- include_want_retweets: 1,
535
- include_mute_edge: 1,
536
- include_can_dm: 1,
537
- include_can_media_tag: 1,
538
- include_ext_is_blue_verified: 1,
539
- include_ext_verified_type: 1,
540
- include_ext_profile_image_shape: 1,
541
- skip_status: 1,
542
- cards_platform: 'Web-12',
543
- include_cards: 1,
544
- include_ext_alt_text: true,
545
- include_ext_limited_action_results: true,
546
- include_quote_count: true,
547
- include_reply_count: 1,
548
- tweet_mode: 'extended',
549
- include_ext_views: true,
550
- include_entities: true,
551
- include_user_entities: true,
552
- include_ext_media_color: true,
553
- include_ext_media_availability: true,
554
- include_ext_sensitive_media_warning: true,
555
- include_ext_trusted_friends_metadata: true,
556
- send_error_codes: true,
557
- simple_quoted_tweet: true,
558
- count: count,
559
- cursor: cursor,
560
- ext: 'mediaStats%2ChighlightedLabel%2CvoiceInfo%2CbirdwatchPivot%2CsuperFollowMetadata%2CunmentionInfo%2CeditControl%2Carticle',
613
+ variables: JSON.stringify({
614
+ timeline_type: 'All',
615
+ count: count,
616
+ cursor: cursor,
617
+ }),
618
+ features: JSON.stringify({
619
+ rweb_video_screen_enabled: false,
620
+ profile_label_improvements_pcf_label_in_post_enabled: true,
621
+ rweb_tipjar_consumption_enabled: true,
622
+ verified_phone_label_enabled: true,
623
+ creator_subscriptions_tweet_preview_api_enabled: true,
624
+ responsive_web_graphql_timeline_navigation_enabled: true,
625
+ responsive_web_graphql_skip_user_profile_image_extensions_enabled: false,
626
+ premium_content_api_read_enabled: false,
627
+ communities_web_enable_tweet_community_results_fetch: true,
628
+ c9s_tweet_anatomy_moderator_badge_enabled: true,
629
+ responsive_web_grok_analyze_button_fetch_trends_enabled: false,
630
+ responsive_web_grok_analyze_post_followups_enabled: true,
631
+ responsive_web_jetfuel_frame: false,
632
+ responsive_web_grok_share_attachment_enabled: true,
633
+ articles_preview_enabled: true,
634
+ responsive_web_edit_tweet_api_enabled: true,
635
+ graphql_is_translatable_rweb_tweet_is_translatable_enabled: true,
636
+ view_counts_everywhere_api_enabled: true,
637
+ longform_notetweets_consumption_enabled: true,
638
+ responsive_web_twitter_article_tweet_consumption_enabled: true,
639
+ tweet_awards_web_tipping_enabled: false,
640
+ responsive_web_grok_show_grok_translated_post: false,
641
+ responsive_web_grok_analysis_button_from_backend: true,
642
+ creator_subscriptions_quote_tweet_preview_enabled: false,
643
+ freedom_of_speech_not_reach_fetch_enabled: true,
644
+ standardized_nudges_misinfo: true,
645
+ tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled: true,
646
+ longform_notetweets_rich_text_read_enabled: true,
647
+ longform_notetweets_inline_media_enabled: true,
648
+ responsive_web_grok_image_annotation_enabled: true,
649
+ responsive_web_enhance_cards_enabled: false,
650
+ }),
561
651
  /* eslint-enable @typescript-eslint/naming-convention */
562
652
  },
563
653
  };
@@ -570,7 +660,7 @@ export class UserRequests {
570
660
  public static recommended(count?: number, cursor?: string): AxiosRequestConfig {
571
661
  return {
572
662
  method: 'get',
573
- url: 'https://x.com/i/api/graphql/q1x0puFIVMzsbx2Yoh-usA/HomeTimeline',
663
+ url: 'https://x.com/i/api/graphql/Q_P3YVnmHunGFkZ8ISM-7w/HomeTimeline',
574
664
  params: {
575
665
  /* eslint-disable @typescript-eslint/naming-convention */
576
666
  variables: JSON.stringify({
@@ -582,30 +672,36 @@ export class UserRequests {
582
672
  seenTweetIds: [],
583
673
  }),
584
674
  features: JSON.stringify({
675
+ rweb_video_screen_enabled: false,
676
+ profile_label_improvements_pcf_label_in_post_enabled: true,
585
677
  rweb_tipjar_consumption_enabled: true,
586
- responsive_web_graphql_exclude_directive_enabled: true,
587
678
  verified_phone_label_enabled: true,
588
679
  creator_subscriptions_tweet_preview_api_enabled: true,
589
680
  responsive_web_graphql_timeline_navigation_enabled: true,
590
681
  responsive_web_graphql_skip_user_profile_image_extensions_enabled: false,
682
+ premium_content_api_read_enabled: false,
591
683
  communities_web_enable_tweet_community_results_fetch: true,
592
684
  c9s_tweet_anatomy_moderator_badge_enabled: true,
593
- articles_preview_enabled: false,
594
- tweetypie_unmention_optimization_enabled: true,
685
+ responsive_web_grok_analyze_button_fetch_trends_enabled: false,
686
+ responsive_web_grok_analyze_post_followups_enabled: true,
687
+ responsive_web_jetfuel_frame: false,
688
+ responsive_web_grok_share_attachment_enabled: true,
689
+ articles_preview_enabled: true,
595
690
  responsive_web_edit_tweet_api_enabled: true,
596
691
  graphql_is_translatable_rweb_tweet_is_translatable_enabled: true,
597
692
  view_counts_everywhere_api_enabled: true,
598
693
  longform_notetweets_consumption_enabled: true,
599
694
  responsive_web_twitter_article_tweet_consumption_enabled: true,
600
695
  tweet_awards_web_tipping_enabled: false,
696
+ responsive_web_grok_show_grok_translated_post: false,
697
+ responsive_web_grok_analysis_button_from_backend: true,
601
698
  creator_subscriptions_quote_tweet_preview_enabled: false,
602
699
  freedom_of_speech_not_reach_fetch_enabled: true,
603
700
  standardized_nudges_misinfo: true,
604
701
  tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled: true,
605
- tweet_with_visibility_results_prefer_gql_media_interstitial_enabled: false,
606
- rweb_video_timestamps_enabled: true,
607
702
  longform_notetweets_rich_text_read_enabled: true,
608
703
  longform_notetweets_inline_media_enabled: true,
704
+ responsive_web_grok_image_annotation_enabled: true,
609
705
  responsive_web_enhance_cards_enabled: false,
610
706
  }),
611
707
  /* eslint-enable @typescript-eslint/naming-convention */
@@ -678,7 +774,7 @@ export class UserRequests {
678
774
  public static tweets(id: string, count?: number, cursor?: string): AxiosRequestConfig {
679
775
  return {
680
776
  method: 'get',
681
- url: 'https://x.com/i/api/graphql/9bXBrlmUXOHFZEq0DuvYWA/UserTweets',
777
+ url: 'https://x.com/i/api/graphql/HeWHY26ItCfUmm1e6ITjeA/UserTweets',
682
778
  params: {
683
779
  /* eslint-disable @typescript-eslint/naming-convention */
684
780
  variables: JSON.stringify({
@@ -691,27 +787,39 @@ export class UserRequests {
691
787
  withV2Timeline: false,
692
788
  }),
693
789
  features: JSON.stringify({
694
- responsive_web_graphql_exclude_directive_enabled: true,
790
+ rweb_video_screen_enabled: false,
791
+ profile_label_improvements_pcf_label_in_post_enabled: true,
792
+ rweb_tipjar_consumption_enabled: true,
695
793
  verified_phone_label_enabled: true,
696
- responsive_web_home_pinned_timelines_enabled: false,
697
794
  creator_subscriptions_tweet_preview_api_enabled: true,
698
795
  responsive_web_graphql_timeline_navigation_enabled: true,
699
796
  responsive_web_graphql_skip_user_profile_image_extensions_enabled: false,
700
- tweetypie_unmention_optimization_enabled: true,
797
+ premium_content_api_read_enabled: false,
798
+ communities_web_enable_tweet_community_results_fetch: true,
799
+ c9s_tweet_anatomy_moderator_badge_enabled: true,
800
+ responsive_web_grok_analyze_button_fetch_trends_enabled: false,
801
+ responsive_web_grok_analyze_post_followups_enabled: true,
802
+ responsive_web_jetfuel_frame: false,
803
+ responsive_web_grok_share_attachment_enabled: true,
804
+ articles_preview_enabled: true,
701
805
  responsive_web_edit_tweet_api_enabled: true,
702
806
  graphql_is_translatable_rweb_tweet_is_translatable_enabled: true,
703
807
  view_counts_everywhere_api_enabled: true,
704
808
  longform_notetweets_consumption_enabled: true,
705
- responsive_web_twitter_article_tweet_consumption_enabled: false,
809
+ responsive_web_twitter_article_tweet_consumption_enabled: true,
706
810
  tweet_awards_web_tipping_enabled: false,
811
+ responsive_web_grok_show_grok_translated_post: false,
812
+ responsive_web_grok_analysis_button_from_backend: true,
813
+ creator_subscriptions_quote_tweet_preview_enabled: false,
707
814
  freedom_of_speech_not_reach_fetch_enabled: true,
708
815
  standardized_nudges_misinfo: true,
709
816
  tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled: true,
710
817
  longform_notetweets_rich_text_read_enabled: true,
711
818
  longform_notetweets_inline_media_enabled: true,
712
- responsive_web_media_download_video_enabled: false,
819
+ responsive_web_grok_image_annotation_enabled: true,
713
820
  responsive_web_enhance_cards_enabled: false,
714
821
  }),
822
+ fieldToggles: { withArticlePlainText: false },
715
823
  /* eslint-enable @typescript-eslint/naming-convention */
716
824
  },
717
825
  paramsSerializer: { encode: encodeURIComponent },
@@ -726,7 +834,7 @@ export class UserRequests {
726
834
  public static tweetsAndReplies(id: string, count?: number, cursor?: string): AxiosRequestConfig {
727
835
  return {
728
836
  method: 'get',
729
- url: 'https://x.com/i/api/graphql/JFsmXeZ0h-hs934UFSfayw/UserTweetsAndReplies',
837
+ url: 'https://x.com/i/api/graphql/OAx9yEcW3JA9bPo63pcYlA/UserTweetsAndReplies',
730
838
  params: {
731
839
  /* eslint-disable @typescript-eslint/naming-convention */
732
840
  variables: JSON.stringify({
@@ -739,27 +847,39 @@ export class UserRequests {
739
847
  withV2Timeline: false,
740
848
  }),
741
849
  features: JSON.stringify({
742
- responsive_web_graphql_exclude_directive_enabled: true,
850
+ rweb_video_screen_enabled: false,
851
+ profile_label_improvements_pcf_label_in_post_enabled: true,
852
+ rweb_tipjar_consumption_enabled: true,
743
853
  verified_phone_label_enabled: true,
744
- responsive_web_home_pinned_timelines_enabled: true,
745
854
  creator_subscriptions_tweet_preview_api_enabled: true,
746
855
  responsive_web_graphql_timeline_navigation_enabled: true,
747
856
  responsive_web_graphql_skip_user_profile_image_extensions_enabled: false,
748
- tweetypie_unmention_optimization_enabled: true,
857
+ premium_content_api_read_enabled: false,
858
+ communities_web_enable_tweet_community_results_fetch: true,
859
+ c9s_tweet_anatomy_moderator_badge_enabled: true,
860
+ responsive_web_grok_analyze_button_fetch_trends_enabled: false,
861
+ responsive_web_grok_analyze_post_followups_enabled: true,
862
+ responsive_web_jetfuel_frame: false,
863
+ responsive_web_grok_share_attachment_enabled: true,
864
+ articles_preview_enabled: true,
749
865
  responsive_web_edit_tweet_api_enabled: true,
750
866
  graphql_is_translatable_rweb_tweet_is_translatable_enabled: true,
751
867
  view_counts_everywhere_api_enabled: true,
752
868
  longform_notetweets_consumption_enabled: true,
753
- responsive_web_twitter_article_tweet_consumption_enabled: false,
869
+ responsive_web_twitter_article_tweet_consumption_enabled: true,
754
870
  tweet_awards_web_tipping_enabled: false,
871
+ responsive_web_grok_show_grok_translated_post: false,
872
+ responsive_web_grok_analysis_button_from_backend: true,
873
+ creator_subscriptions_quote_tweet_preview_enabled: false,
755
874
  freedom_of_speech_not_reach_fetch_enabled: true,
756
875
  standardized_nudges_misinfo: true,
757
876
  tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled: true,
758
877
  longform_notetweets_rich_text_read_enabled: true,
759
878
  longform_notetweets_inline_media_enabled: true,
760
- responsive_web_media_download_video_enabled: false,
879
+ responsive_web_grok_image_annotation_enabled: true,
761
880
  responsive_web_enhance_cards_enabled: false,
762
881
  }),
882
+ fieldToggles: { withArticlePlainText: false },
763
883
  /* eslint-enable @typescript-eslint/naming-convention */
764
884
  },
765
885
  paramsSerializer: { encode: encodeURIComponent },