1
Fork 0
mirror of https://github.com/thegeneralist01/twitter-openapi synced 2026-01-09 14:50:25 +01:00

Update openapi schemas

Signed-off-by: ふぁ <yuki@yuki0311.com>
This commit is contained in:
ふぁ 2024-09-27 12:15:03 +09:00
parent 4ffbb5e063
commit cd591c0377
No known key found for this signature in database
GPG key ID: 83A8A5E74872A8AA
10 changed files with 1365 additions and 932 deletions

3
.gitignore vendored
View file

@ -3,4 +3,5 @@ __pycache__/
cookie.json
*_generated
*.jar
cache/
cache/
tools/input.js

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -118,8 +118,8 @@ paths:
required: true
schema:
type: string
default: "https://twitter.com/home"
description: "https://twitter.com/home"
default: "https://x.com/home"
description: "https://x.com/home"
- name: Priority
in: header
required: true
@ -211,7 +211,7 @@ components:
name: Sec-Fetch-Site
type: apiKey
Referer:
description: "https://twitter.com/home"
description: "https://x.com/home"
in: header
name: Referer
type: apiKey

View file

@ -1,6 +1,6 @@
{
"HomeTimeline": {
"queryId": "q1x0puFIVMzsbx2Yoh-usA",
"queryId": "HJFjzBgCs16TqxewQOeLNg",
"variables": {
"count": 20,
"includePromotedContent": true,
@ -19,7 +19,6 @@
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"articles_preview_enabled": true,
"tweetypie_unmention_optimization_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
@ -30,7 +29,6 @@
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"tweet_with_visibility_results_prefer_gql_media_interstitial_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
@ -38,7 +36,7 @@
}
},
"HomeLatestTimeline": {
"queryId": "eL8vHLgEw2ZL9X9dKdakLQ",
"queryId": "DiTkXJgLqBBxCs7zaYsbtA",
"variables": {
"count": 20,
"includePromotedContent": true,
@ -56,7 +54,6 @@
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"articles_preview_enabled": true,
"tweetypie_unmention_optimization_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
@ -67,7 +64,6 @@
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"tweet_with_visibility_results_prefer_gql_media_interstitial_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
@ -75,7 +71,7 @@
}
},
"ListLatestTweetsTimeline": {
"queryId": "GX5ovLTwyoN1Td13GHvhIg",
"queryId": "Pa45JvqZuKcW1plybfgBlQ",
"variables": {
"listId": "1539453138322673664",
"count": 20
@ -90,7 +86,6 @@
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"articles_preview_enabled": true,
"tweetypie_unmention_optimization_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
@ -101,7 +96,6 @@
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"tweet_with_visibility_results_prefer_gql_media_interstitial_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
@ -109,20 +103,21 @@
}
},
"UserByScreenName": {
"queryId": "k5XapwcSikNsEsILW5FvgA",
"queryId": "Yka-W8dz7RaEuQNkroPkYw",
"variables": {
"screen_name": "elonmusk",
"withSafetyModeUserFields": true
},
"features": {
"hidden_profile_likes_enabled": true,
"hidden_profile_subscriptions_enabled": true,
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"subscriptions_verification_info_is_identity_verified_enabled": true,
"subscriptions_verification_info_verified_since_enabled": true,
"highlights_tweets_tab_ui_enabled": true,
"responsive_web_twitter_article_notes_tab_enabled": true,
"subscriptions_feature_can_gift_premium": true,
"creator_subscriptions_tweet_preview_api_enabled": true,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
"responsive_web_graphql_timeline_navigation_enabled": true
@ -150,11 +145,12 @@
}
},
"UsersByRestIds": {
"queryId": "itEhGywpgX9b3GJCzOtSrA",
"queryId": "GYBpHkmyXjeuX9IeNJmweA",
"variables": {
"userIds": ["44196397"]
},
"features": {
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
@ -162,14 +158,14 @@
}
},
"ProfileSpotlightsQuery": {
"queryId": "X-Sw7rvhcUhof35mh5ObKw",
"queryId": "-0XdHI-mrHWBQd8-oLo1aA",
"variables": {
"screen_name": "elonmusk"
},
"features": {}
},
"UserTweets": {
"queryId": "5ICa5d9-AitXZrIA3H-4MQ",
"queryId": "E3opETHurmVJflFsUBVuUQ",
"variables": {
"userId": "44196397",
"count": 40,
@ -179,31 +175,33 @@
"withV2Timeline": true
},
"features": {
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"creator_subscriptions_tweet_preview_api_enabled": true,
"responsive_web_graphql_timeline_navigation_enabled": true,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"tweetypie_unmention_optimization_enabled": true,
"articles_preview_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
"longform_notetweets_consumption_enabled": true,
"responsive_web_twitter_article_tweet_consumption_enabled": true,
"tweet_awards_web_tipping_enabled": false,
"creator_subscriptions_quote_tweet_preview_enabled": false,
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
"responsive_web_media_download_video_enabled": false,
"responsive_web_enhance_cards_enabled": false
}
},
"UserTweetsAndReplies": {
"queryId": "UtLStR_BnYUGD7Q453UXQg",
"queryId": "bt4TKuFz4T7Ckk-VvQVSow",
"variables": {
"userId": "44196397",
"count": 40,
@ -213,31 +211,33 @@
"withV2Timeline": true
},
"features": {
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"creator_subscriptions_tweet_preview_api_enabled": true,
"responsive_web_graphql_timeline_navigation_enabled": true,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"tweetypie_unmention_optimization_enabled": true,
"articles_preview_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
"longform_notetweets_consumption_enabled": true,
"responsive_web_twitter_article_tweet_consumption_enabled": true,
"tweet_awards_web_tipping_enabled": false,
"creator_subscriptions_quote_tweet_preview_enabled": false,
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
"responsive_web_media_download_video_enabled": false,
"responsive_web_enhance_cards_enabled": false
}
},
"UserHighlightsTweets": {
"queryId": "ZRU-YBvpJ5c-SOS-nb_Lhg",
"queryId": "Z-XscDcWUuMO5HalgHf57A",
"variables": {
"userId": "44196397",
"count": 40,
@ -245,31 +245,33 @@
"withVoice": true
},
"features": {
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"creator_subscriptions_tweet_preview_api_enabled": true,
"responsive_web_graphql_timeline_navigation_enabled": true,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"tweetypie_unmention_optimization_enabled": true,
"articles_preview_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
"longform_notetweets_consumption_enabled": true,
"responsive_web_twitter_article_tweet_consumption_enabled": true,
"tweet_awards_web_tipping_enabled": false,
"creator_subscriptions_quote_tweet_preview_enabled": false,
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
"responsive_web_media_download_video_enabled": false,
"responsive_web_enhance_cards_enabled": false
}
},
"UserMedia": {
"queryId": "tO4LMUYAZbR4T0SqQ85aAw",
"queryId": "dexO_2tohK86JDudXXG3Yw",
"variables": {
"userId": "44196397",
"count": 40,
@ -280,31 +282,33 @@
"withV2Timeline": true
},
"features": {
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"creator_subscriptions_tweet_preview_api_enabled": true,
"responsive_web_graphql_timeline_navigation_enabled": true,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"tweetypie_unmention_optimization_enabled": true,
"articles_preview_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
"longform_notetweets_consumption_enabled": true,
"responsive_web_twitter_article_tweet_consumption_enabled": true,
"tweet_awards_web_tipping_enabled": false,
"creator_subscriptions_quote_tweet_preview_enabled": false,
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
"responsive_web_media_download_video_enabled": false,
"responsive_web_enhance_cards_enabled": false
}
},
"Likes": {
"queryId": "9s8V6sUI8fZLDiN-REkAxA",
"queryId": "aeJWz--kknVBOl7wQ7gh7Q",
"variables": {
"userId": "44196397",
"count": 20,
@ -315,62 +319,66 @@
"withV2Timeline": true
},
"features": {
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"creator_subscriptions_tweet_preview_api_enabled": true,
"responsive_web_graphql_timeline_navigation_enabled": true,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"tweetypie_unmention_optimization_enabled": true,
"articles_preview_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
"longform_notetweets_consumption_enabled": true,
"responsive_web_twitter_article_tweet_consumption_enabled": true,
"tweet_awards_web_tipping_enabled": false,
"creator_subscriptions_quote_tweet_preview_enabled": false,
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
"responsive_web_media_download_video_enabled": false,
"responsive_web_enhance_cards_enabled": false
}
},
"Bookmarks": {
"queryId": "cQxQgX8MJYjWwC0dxpyfYg",
"queryId": "QUjXply7fA7fk05FRyajEg",
"variables": {
"count": 20,
"includePromotedContent": true
},
"features": {
"graphql_timeline_v2_bookmark_timeline": true,
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"creator_subscriptions_tweet_preview_api_enabled": true,
"responsive_web_graphql_timeline_navigation_enabled": true,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"tweetypie_unmention_optimization_enabled": true,
"articles_preview_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
"longform_notetweets_consumption_enabled": true,
"responsive_web_twitter_article_tweet_consumption_enabled": true,
"tweet_awards_web_tipping_enabled": false,
"creator_subscriptions_quote_tweet_preview_enabled": false,
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
"responsive_web_media_download_video_enabled": false,
"responsive_web_enhance_cards_enabled": false
}
},
"TweetDetail": {
"queryId": "zJvfJs3gSbrVhC0MKjt_OQ",
"queryId": "QuBlQ6SxNAQCt6-kBiCXCQ",
"variables": {
"focalTweetId": "1349129669258448897",
"referrer": "home",
@ -392,7 +400,6 @@
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"articles_preview_enabled": true,
"tweetypie_unmention_optimization_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
@ -403,7 +410,6 @@
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"tweet_with_visibility_results_prefer_gql_media_interstitial_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
@ -455,7 +461,7 @@
}
},
"SearchTimeline": {
"queryId": "fZK7JipRHWtiZsTodhsTfQ",
"queryId": "UN1i3zUiCWa-6r-Uaho4fw",
"variables": {
"rawQuery": "elonmusk",
"count": 20,
@ -463,26 +469,28 @@
"product": "Top"
},
"features": {
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"creator_subscriptions_tweet_preview_api_enabled": true,
"responsive_web_graphql_timeline_navigation_enabled": true,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"tweetypie_unmention_optimization_enabled": true,
"articles_preview_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
"longform_notetweets_consumption_enabled": true,
"responsive_web_twitter_article_tweet_consumption_enabled": true,
"tweet_awards_web_tipping_enabled": false,
"creator_subscriptions_quote_tweet_preview_enabled": false,
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
"responsive_web_media_download_video_enabled": false,
"responsive_web_enhance_cards_enabled": false
}
},
@ -518,162 +526,172 @@
}
},
"Retweeters": {
"queryId": "X-XEqG5qHQSAwmvy00xfyQ",
"queryId": "8019obfgnveiPiJuS2Rtow",
"variables": {
"tweetId": "1349129669258448897",
"count": 20,
"includePromotedContent": true
},
"features": {
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"creator_subscriptions_tweet_preview_api_enabled": true,
"responsive_web_graphql_timeline_navigation_enabled": true,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"tweetypie_unmention_optimization_enabled": true,
"articles_preview_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
"longform_notetweets_consumption_enabled": true,
"responsive_web_twitter_article_tweet_consumption_enabled": true,
"tweet_awards_web_tipping_enabled": false,
"creator_subscriptions_quote_tweet_preview_enabled": false,
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
"responsive_web_media_download_video_enabled": false,
"responsive_web_enhance_cards_enabled": false
}
},
"Followers": {
"queryId": "ZG1BQPaRSg04qo55kKaW2g",
"queryId": "OSXFkKmGvfw_6pGgGtkWFg",
"variables": {
"userId": "44196397",
"count": 20,
"includePromotedContent": false
},
"features": {
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"creator_subscriptions_tweet_preview_api_enabled": true,
"responsive_web_graphql_timeline_navigation_enabled": true,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"tweetypie_unmention_optimization_enabled": true,
"articles_preview_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
"longform_notetweets_consumption_enabled": true,
"responsive_web_twitter_article_tweet_consumption_enabled": true,
"tweet_awards_web_tipping_enabled": false,
"creator_subscriptions_quote_tweet_preview_enabled": false,
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
"responsive_web_media_download_video_enabled": false,
"responsive_web_enhance_cards_enabled": false
}
},
"Following": {
"queryId": "PAnE9toEjRfE-4tozRcsfw",
"queryId": "7oQrdmth4zE3EtD42ZxgOA",
"variables": {
"userId": "44196397",
"count": 20,
"includePromotedContent": false
},
"features": {
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"creator_subscriptions_tweet_preview_api_enabled": true,
"responsive_web_graphql_timeline_navigation_enabled": true,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"tweetypie_unmention_optimization_enabled": true,
"articles_preview_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
"longform_notetweets_consumption_enabled": true,
"responsive_web_twitter_article_tweet_consumption_enabled": true,
"tweet_awards_web_tipping_enabled": false,
"creator_subscriptions_quote_tweet_preview_enabled": false,
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
"responsive_web_media_download_video_enabled": false,
"responsive_web_enhance_cards_enabled": false
}
},
"BlueVerifiedFollowers": {
"queryId": "mg4dFO4kMIKt6tpqPMmFeg",
"queryId": "cpPRJUmSz2Fiu1PpIYmEsw",
"variables": {
"userId": "1347135745706708993",
"count": 20,
"includePromotedContent": false
},
"features": {
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"creator_subscriptions_tweet_preview_api_enabled": true,
"responsive_web_graphql_timeline_navigation_enabled": true,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"tweetypie_unmention_optimization_enabled": true,
"articles_preview_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
"longform_notetweets_consumption_enabled": true,
"responsive_web_twitter_article_tweet_consumption_enabled": true,
"tweet_awards_web_tipping_enabled": false,
"creator_subscriptions_quote_tweet_preview_enabled": false,
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
"responsive_web_media_download_video_enabled": false,
"responsive_web_enhance_cards_enabled": false
}
},
"FollowersYouKnow": {
"queryId": "citX7s5IAb1C6AVCqUO68g",
"queryId": "52sUpz5G7XvESPWgKW9i9Q",
"variables": {
"userId": "44196397",
"count": 20,
"includePromotedContent": false
},
"features": {
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"creator_subscriptions_tweet_preview_api_enabled": true,
"responsive_web_graphql_timeline_navigation_enabled": true,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"tweetypie_unmention_optimization_enabled": true,
"articles_preview_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
"longform_notetweets_consumption_enabled": true,
"responsive_web_twitter_article_tweet_consumption_enabled": true,
"tweet_awards_web_tipping_enabled": false,
"creator_subscriptions_quote_tweet_preview_enabled": false,
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
"responsive_web_media_download_video_enabled": false,
"responsive_web_enhance_cards_enabled": false
}
},
"CreateTweet": {
"queryId": "8ED1SMuUGkOZVBEjiYUTfw",
"queryId": "xT36w0XM3A8jDynpkram2A",
"variables": {
"tweet_text": "test",
"media": {
@ -690,26 +708,29 @@
"in_reply_to_tweet_id": "1111111111111111111",
"exclude_reply_user_ids": []
},
"dark_request": false
"dark_request": false,
"disallowed_reply_options": false
},
"features": {
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"tweetypie_unmention_optimization_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
"longform_notetweets_consumption_enabled": true,
"responsive_web_twitter_article_tweet_consumption_enabled": true,
"tweet_awards_web_tipping_enabled": false,
"creator_subscriptions_quote_tweet_preview_enabled": false,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
"articles_preview_enabled": true,
"rweb_video_timestamps_enabled": true,
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"responsive_web_media_download_video_enabled": false,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
"responsive_web_graphql_timeline_navigation_enabled": true,
"responsive_web_enhance_cards_enabled": false
@ -718,8 +739,7 @@
"FavoriteTweet": {
"queryId": "lI07N6Otwv1PhnEgXILM7A",
"variables": {
"tweet_id": "1349129669258448897",
"dark_request": false
"tweet_id": "1349129669258448897"
}
},
"UnfavoriteTweet": {
@ -763,7 +783,7 @@
}
},
"#=====v1.1====": {
"url": "https://twitter.com/i/api/1.1/"
"url": "https://x.com/i/api/1.1/"
},
"friendships/create.json": {
"include_profile_interstitial_type": 1,
@ -825,7 +845,7 @@
"result_type": "events,users,topics"
},
"#=====v2====": {
"url": "https://twitter.com/i/api/2"
"url": "https://x.com/i/api/2"
},
"search/adaptive.json": {
"include_profile_interstitial_type": 1,
@ -865,5 +885,160 @@
"spelling_corrections": 1,
"include_ext_edit_control": true,
"ext": "mediaStats,highlightedLabel,hasNftAvatar,voiceInfo,birdwatchPivot,enrichments,superFollowMetadata,unmentionInfo,editControl,vibe"
},
"#=====NotImplemented====": {},
"DataSaverMode": {
"queryId": "xF6sXnKJfS2AOylzxRjf6A"
},
"PinnedTimelines": {
"queryId": "xUjP0kS7EE05CLp3KUD-Eg",
"features": {
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
"responsive_web_graphql_timeline_navigation_enabled": true
}
},
"getAltTextPromptPreference": {
"queryId": "PFIxTk8owMoZgiMccP0r4g"
},
"ExploreSidebar": {
"queryId": "rqiZoeu9EBUhOqZdKY139g",
"features": {
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"creator_subscriptions_tweet_preview_api_enabled": true,
"responsive_web_graphql_timeline_navigation_enabled": true,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"articles_preview_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
"longform_notetweets_consumption_enabled": true,
"responsive_web_twitter_article_tweet_consumption_enabled": true,
"tweet_awards_web_tipping_enabled": false,
"creator_subscriptions_quote_tweet_preview_enabled": false,
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
"responsive_web_enhance_cards_enabled": false
}
},
"useFetchProfileBlocks_profileExistsQuery": {
"queryId": "Z2BA99jFw6TxaJM5v7Irmg"
},
"ExplorePage": {
"queryId": "IK_dxB178qS4T8cvA2G_UA",
"features": {
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"responsive_web_graphql_timeline_navigation_enabled": true,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
"creator_subscriptions_tweet_preview_api_enabled": true,
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"articles_preview_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
"longform_notetweets_consumption_enabled": true,
"responsive_web_twitter_article_tweet_consumption_enabled": true,
"tweet_awards_web_tipping_enabled": false,
"creator_subscriptions_quote_tweet_preview_enabled": false,
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
"responsive_web_enhance_cards_enabled": false
}
},
"CommunitiesCreateButtonQuery": {
"queryId": "ScODPHsG2d28Xr-rDSBThg"
},
"CarouselQuery": {
"queryId": "xfgycRkhqXy90CmTQZ7Kig"
},
"CommunitiesRankedTimeline": {
"queryId": "ruTkdk9a7c2U99VzD4MtMw",
"features": {
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"creator_subscriptions_tweet_preview_api_enabled": true,
"responsive_web_graphql_timeline_navigation_enabled": true,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"articles_preview_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
"longform_notetweets_consumption_enabled": true,
"responsive_web_twitter_article_tweet_consumption_enabled": true,
"tweet_awards_web_tipping_enabled": false,
"creator_subscriptions_quote_tweet_preview_enabled": false,
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
"responsive_web_enhance_cards_enabled": false
}
},
"BirdwatchFetchGlobalTimeline": {
"queryId": "Hu5em3YzOCFtiBOxT3qvEQ",
"features": {
"rweb_tipjar_consumption_enabled": true,
"responsive_web_graphql_exclude_directive_enabled": true,
"verified_phone_label_enabled": false,
"responsive_web_graphql_timeline_navigation_enabled": true,
"responsive_web_graphql_skip_user_profile_image_extensions_enabled": false,
"creator_subscriptions_tweet_preview_api_enabled": true,
"communities_web_enable_tweet_community_results_fetch": true,
"c9s_tweet_anatomy_moderator_badge_enabled": true,
"articles_preview_enabled": true,
"responsive_web_edit_tweet_api_enabled": true,
"graphql_is_translatable_rweb_tweet_is_translatable_enabled": true,
"view_counts_everywhere_api_enabled": true,
"longform_notetweets_consumption_enabled": true,
"responsive_web_twitter_article_tweet_consumption_enabled": true,
"tweet_awards_web_tipping_enabled": false,
"creator_subscriptions_quote_tweet_preview_enabled": false,
"freedom_of_speech_not_reach_fetch_enabled": true,
"standardized_nudges_misinfo": true,
"tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled": true,
"rweb_video_timestamps_enabled": true,
"longform_notetweets_rich_text_read_enabled": true,
"longform_notetweets_inline_media_enabled": true,
"responsive_web_enhance_cards_enabled": false
}
},
"BirdwatchFetchAuthenticatedUserProfile": {
"queryId": "hkYn13HnxM_eVCEGGl-Fdw",
"features": {
"responsive_web_birdwatch_top_contributor_enabled": true,
"responsive_web_birdwatch_mobile_nav_setting_enabled": false,
"responsive_web_birdwatch_note_limit_enabled": true
}
},
"useRelayDelegateDataPendingQuery": {
"queryId": "0d3YLrCrAvgiPrMFGc33SA"
},
"DelegatedAccountListQuery": {
"queryId": "R0L__TguknNYVKUvNwmBpA",
"features": {
"responsive_web_graphql_timeline_navigation_enabled": true
}
}
}

View file

@ -189,6 +189,8 @@ components:
$ref: "#/components/schemas/AuthorCommunityRelationship"
article:
$ref: "#/components/schemas/Article"
community_results:
$ref: "#/components/schemas/Community"
TweetEditControl:
properties:

View file

@ -98,6 +98,8 @@ components:
$ref: "#/components/schemas/UserLegacyExtendedProfile"
has_hidden_likes_on_profile:
type: boolean
premium_gifting_eligible:
type: boolean
UserProfessional:
required:

View file

@ -333,8 +333,8 @@ if __name__ == "__main__":
"1720975693524377759",
"1721006592303251551",
"1739194269477331076",
"1697450269259522256",
"1697450278742884799",
# "1697450269259522256",
# "1697450278742884799",
"1749500209061663043",
"1759056048764469303",
]

View file

@ -67,6 +67,7 @@ def main():
body_json_str = body_match.group(1).replace("\\", "")
body_json = json.loads(body_json_str)
features = body_json.get("features", None)
variables = body_json.get("variables", None)
else:
# GET リクエストの場合、まず URL を抽出
url_match = re.search(r'"(https?://[^"]+)"', fetch_code)
@ -87,6 +88,7 @@ def main():
features_json_str = query_dict.get("features", [None])[0]
if features_json_str is None:
features = None
variables = None
else:
try:
features = json.loads(features_json_str)
@ -95,22 +97,32 @@ def main():
"features の JSON パースに失敗しました。features は None として続行します。"
)
features = None
variables = None
# features を JSON としてフォーマットした後、Python の dict として正しい形式に変換
# " を ' に置換し、true/false を True/False に置換
# 生成するコードをフォーマット
# ファイルに書き込む
with open("./src/config/placeholder.json", "r") as f:
placeholder = json.load(f)
def check(a, b, msg):
if isinstance(a, dict) and isinstance(b, dict):
for k in {*a.keys(), *b.keys()}:
if k not in b:
print(f"{msg} key: {k} が存在しません。")
elif k not in a:
print(f"{msg} key: {k} が存在しません。")
else:
check(a[k], b[k], msg)
check(
variables,
placeholder.get(endpoint, {}).get("variables", {}),
f"{endpoint} の variables が不一致です。",
)
with open("./src/config/placeholder.json", "w") as f:
placeholder[endpoint] = {
**placeholder.get(endpoint, {}),
"queryId": query_id,
"features": features,
}
placeholder[endpoint] = placeholder.get(endpoint, {})
placeholder[endpoint]["queryId"] = query_id
if features:
placeholder[endpoint]["features"] = features
json.dump(placeholder, f, indent=4)