From db793e66fbf51f3c76fa4a927c5076a26423766a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=81=B5=E3=81=81?= Date: Thu, 7 Nov 2024 02:02:24 +0900 Subject: [PATCH] [destructive] error handling --- .vscode/settings.json | 2 +- README.md | 3 +- dist/compatible/openapi-3.0.yaml | 275 +- .../compatible_discriminator/openapi-3.0.yaml | 6650 ----------------- dist/docs/openapi-3.0.yaml | 275 +- src/openapi/paths/bookmarks.yaml | 12 +- src/openapi/paths/follow.yaml | 18 +- src/openapi/paths/other.yaml | 4 +- src/openapi/paths/post.yaml | 97 +- src/openapi/paths/profile.yaml | 10 +- src/openapi/paths/timeline.yaml | 34 +- src/openapi/paths/tweet.yaml | 40 +- src/openapi/paths/user.yaml | 22 +- src/openapi/paths/usertweets.yaml | 32 +- src/openapi/response/error.yaml | 19 - test/python/openapi-generator-config.yaml | 2 +- 16 files changed, 380 insertions(+), 7115 deletions(-) delete mode 100644 dist/compatible_discriminator/openapi-3.0.yaml diff --git a/.vscode/settings.json b/.vscode/settings.json index 44ac117..f2ddcd8 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -4,7 +4,7 @@ "yaml.validate": true, "yaml.hover": true, "yaml.schemas": { - "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/schemas/v3.0/schema.json": "src/**/*.yaml" + "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/refs/heads/main/schemas/v3.0/schema.yaml": "src/**/*.yaml" }, "[json]": { "editor.defaultFormatter": "esbenp.prettier-vscode" diff --git a/README.md b/README.md index 205f2fb..651205f 100644 --- a/README.md +++ b/README.md @@ -17,9 +17,8 @@ openapi-generator-cli generate -g -i https://raw.githubusercontent.co There are several outputs, but the one that most closely follows the OpenAPI specification is `dist/docs`. However, a lot of syntax that is not supported by some generators is used. -Therefore, it is recommended to use `dist/compatible` or `dist/compatible_discriminator`. -You can also modify the hook to make the generated results more user-friendly. [build_config.py](./tools/build_config.py) +You can also modify the hook to make the generated results more user-friendly. [build_config.py](./tools/build_config.py) Note that the license also inherits to the output. diff --git a/dist/compatible/openapi-3.0.yaml b/dist/compatible/openapi-3.0.yaml index 4c3cd3e..78df516 100644 --- a/dist/compatible/openapi-3.0.yaml +++ b/dist/compatible/openapi-3.0.yaml @@ -266,14 +266,14 @@ components: properties: data: $ref: '#/components/schemas/BookmarksResponseData' - required: - - data + errors: + items: + $ref: '#/components/schemas/Error' + type: array BookmarksResponseData: properties: bookmark_timeline_v2: $ref: '#/components/schemas/BookmarksTimeline' - required: - - bookmark_timeline_v2 BookmarksTimeline: properties: timeline: @@ -577,14 +577,16 @@ components: properties: data: $ref: '#/components/schemas/CreateBookmarkResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data CreateBookmarkResponseData: properties: tweet_bookmark_put: type: string - required: - - tweet_bookmark_put CreateRetweet: properties: result: @@ -595,14 +597,16 @@ components: properties: data: $ref: '#/components/schemas/CreateRetweetResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data CreateRetweetResponseData: properties: create_retweet: $ref: '#/components/schemas/CreateRetweetResponseResult' - required: - - create_retweet CreateRetweetResponseResult: properties: retweet_results: @@ -619,14 +623,16 @@ components: properties: data: $ref: '#/components/schemas/CreateTweetResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data CreateTweetResponseData: properties: create_tweet: $ref: '#/components/schemas/CreateTweetResponseResult' - required: - - create_tweet CreateTweetResponseResult: properties: tweet_results: @@ -654,14 +660,16 @@ components: properties: data: $ref: '#/components/schemas/DeleteBookmarkResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data DeleteBookmarkResponseData: properties: tweet_bookmark_delete: type: string - required: - - tweet_bookmark_delete DeleteRetweet: properties: result: @@ -674,14 +682,16 @@ components: properties: data: $ref: '#/components/schemas/DeleteRetweetResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data DeleteRetweetResponseData: properties: create_retweet: - $ref: '#/components/schemas/CreateRetweetResponseResult' - required: - - unretweet + $ref: '#/components/schemas/DeleteRetweetResponseResult' DeleteRetweetResponseResult: properties: retweet_results: @@ -692,14 +702,16 @@ components: properties: data: $ref: '#/components/schemas/DeleteTweetResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data DeleteTweetResponseData: properties: delete_retweet: $ref: '#/components/schemas/DeleteTweetResponseResult' - required: - - delete_tweet DeleteTweetResponseResult: properties: tweet_results: @@ -811,23 +823,6 @@ components: - kind - tracing type: object - Errors: - properties: - data: - $ref: '#/components/schemas/ErrorsData' - errors: - items: - $ref: '#/components/schemas/Error' - type: array - required: - - errors - type: object - ErrorsData: - properties: - user: - pattern: dummy - type: string - type: object ExtMediaAvailability: properties: reason: @@ -849,12 +844,14 @@ components: properties: favorite_tweet: type: string - required: - - favorite_tweet - FavoriteTweetResponseData: + FavoriteTweetResponse: properties: data: $ref: '#/components/schemas/FavoriteTweet' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data FeedbackInfo: @@ -869,14 +866,16 @@ components: properties: data: $ref: '#/components/schemas/FollowResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data FollowResponseData: properties: user: $ref: '#/components/schemas/FollowResponseUser' - required: - - user FollowResponseResult: properties: __typename: @@ -920,8 +919,6 @@ components: properties: home: $ref: '#/components/schemas/HomeTimelineHome' - required: - - home InstructionType: enum: - TimelineAddEntries @@ -981,6 +978,10 @@ components: properties: data: $ref: '#/components/schemas/ListTweetsTimelineData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data ListTweetsTimeline: @@ -991,8 +992,6 @@ components: properties: list: $ref: '#/components/schemas/ListTweetsTimelineList' - required: - - list ListTweetsTimelineList: properties: tweets_timeline: @@ -1368,7 +1367,7 @@ components: required: - fetchStatus type: object - OtherResponse: + OtherObjectAll: properties: Session: $ref: '#/components/schemas/Session' @@ -1387,14 +1386,16 @@ components: properties: data: $ref: '#/components/schemas/ProfileResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data ProfileResponseData: properties: user_result_by_screen_name: $ref: '#/components/schemas/UserResultByScreenName' - required: - - user_result_by_screen_name QuotedRefResult: properties: result: @@ -1445,12 +1446,14 @@ components: properties: search_by_raw_query: $ref: '#/components/schemas/SearchByRawQuery' - required: - - search_by_raw_query SearchTimelineResponse: properties: data: $ref: '#/components/schemas/SearchTimelineData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data SelfThread: @@ -1796,6 +1799,10 @@ components: properties: data: $ref: '#/components/schemas/HomeTimelineResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data TimelineShowAlert: @@ -2195,14 +2202,16 @@ components: properties: data: $ref: '#/components/schemas/TweetDetailResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data TweetDetailResponseData: properties: threaded_conversation_with_injections_v2: $ref: '#/components/schemas/Timeline' - required: - - threaded_conversation_with_injections_v2 TweetEditControl: properties: edit_control_initial: @@ -2253,14 +2262,16 @@ components: properties: data: $ref: '#/components/schemas/TweetFavoritersResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data TweetFavoritersResponseData: properties: favoriters_timeline: $ref: '#/components/schemas/TimelineV2' - required: - - favoriters_timeline TweetInterstitial: properties: __typename: @@ -2460,26 +2471,30 @@ components: properties: tweetResult: $ref: '#/components/schemas/ItemResult' - required: - - tweetResult TweetResultByRestIdResponse: properties: data: $ref: '#/components/schemas/TweetResultByRestIdData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data TweetRetweetersResponse: properties: data: $ref: '#/components/schemas/TweetRetweetersResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data TweetRetweetersResponseData: properties: retweeters_timeline: $ref: '#/components/schemas/TimelineV2' - required: - - retweeters_timeline TweetTombstone: additionalProperties: true properties: @@ -2569,12 +2584,14 @@ components: properties: unfavorite_tweet: type: string - required: - - unfavorite_tweet - UnfavoriteTweetResponseData: + UnfavoriteTweetResponse: properties: data: $ref: '#/components/schemas/UnfavoriteTweet' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data UnifiedCard: @@ -2710,12 +2727,14 @@ components: properties: user: $ref: '#/components/schemas/UserHighlightsTweetsUser' - required: - - user UserHighlightsTweetsResponse: properties: data: $ref: '#/components/schemas/UserHighlightsTweetsData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data UserHighlightsTweetsResult: @@ -2930,6 +2949,10 @@ components: properties: data: $ref: '#/components/schemas/UserResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data UserResponseData: @@ -3015,12 +3038,14 @@ components: properties: user: $ref: '#/components/schemas/UserTweetsUser' - required: - - user UserTweetsResponse: properties: data: $ref: '#/components/schemas/UserTweetsData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data UserTweetsResult: @@ -3125,6 +3150,10 @@ components: properties: data: $ref: '#/components/schemas/UsersResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data UsersResponseData: @@ -3133,8 +3162,6 @@ components: items: $ref: '#/components/schemas/UserResults' type: array - required: - - users securitySchemes: Accept: description: '*/*' @@ -4067,9 +4094,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/BookmarksResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/BookmarksResponse' description: Successful operation headers: x-connection-hash: @@ -4138,9 +4163,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/CreateBookmarkResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/CreateBookmarkResponse' description: Successful operation headers: x-connection-hash: @@ -4214,9 +4237,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/CreateRetweetResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/CreateRetweetResponse' description: Successful operation headers: x-connection-hash: @@ -4468,9 +4489,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/CreateTweetResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/CreateTweetResponse' description: Successful operation headers: x-connection-hash: @@ -4539,9 +4558,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/DeleteBookmarkResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/DeleteBookmarkResponse' description: Successful operation headers: x-connection-hash: @@ -4615,9 +4632,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/DeleteRetweetResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/DeleteRetweetResponse' description: Successful operation headers: x-connection-hash: @@ -4691,9 +4706,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/DeleteTweetResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/DeleteTweetResponse' description: Successful operation headers: x-connection-hash: @@ -4762,9 +4775,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/FavoriteTweetResponseData' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/FavoriteTweetResponse' description: Successful operation headers: x-connection-hash: @@ -4852,9 +4863,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/TweetFavoritersResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/TweetFavoritersResponse' description: Successful operation headers: x-connection-hash: @@ -4942,9 +4951,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/FollowResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/FollowResponse' description: Successful operation headers: x-connection-hash: @@ -5032,9 +5039,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/FollowResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/FollowResponse' description: Successful operation headers: x-connection-hash: @@ -5122,9 +5127,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/FollowResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/FollowResponse' description: Successful operation headers: x-connection-hash: @@ -5212,9 +5215,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/TimelineResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/TimelineResponse' description: Successful operation headers: x-connection-hash: @@ -5304,9 +5305,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/TimelineResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/TimelineResponse' description: Successful operation headers: x-connection-hash: @@ -5403,9 +5402,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/UserTweetsResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/UserTweetsResponse' description: Successful operation headers: x-connection-hash: @@ -5491,9 +5488,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/ListLatestTweetsTimelineResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/ListLatestTweetsTimelineResponse' description: Successful operation headers: x-connection-hash: @@ -5553,9 +5548,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/ProfileResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/ProfileResponse' description: Successful operation headers: x-connection-hash: @@ -5641,9 +5634,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/TweetRetweetersResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/TweetRetweetersResponse' description: Successful operation headers: x-connection-hash: @@ -5731,9 +5722,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/SearchTimelineResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/SearchTimelineResponse' description: Successful operation headers: x-connection-hash: @@ -5834,9 +5823,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/TweetDetailResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/TweetDetailResponse' description: Successful operation headers: x-connection-hash: @@ -5937,9 +5924,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/TweetResultByRestIdResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/TweetResultByRestIdResponse' description: Successful operation headers: x-connection-hash: @@ -6011,9 +5996,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/UnfavoriteTweetResponseData' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/UnfavoriteTweetResponse' description: Successful operation headers: x-connection-hash: @@ -6081,9 +6064,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/UserResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/UserResponse' description: Successful operation headers: x-connection-hash: @@ -6164,9 +6145,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/UserResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/UserResponse' description: Successful operation headers: x-connection-hash: @@ -6254,9 +6233,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/UserHighlightsTweetsResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/UserHighlightsTweetsResponse' description: Successful operation headers: x-connection-hash: @@ -6353,9 +6330,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/UserTweetsResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/UserTweetsResponse' description: Successful operation headers: x-connection-hash: @@ -6452,9 +6427,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/UserTweetsResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/UserTweetsResponse' description: Successful operation headers: x-connection-hash: @@ -6549,9 +6522,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/UserTweetsResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/UserTweetsResponse' description: Successful operation headers: x-connection-hash: @@ -6615,9 +6586,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/UsersResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/UsersResponse' description: Successful operation headers: x-connection-hash: @@ -6655,7 +6624,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/OtherResponse' + $ref: '#/components/schemas/OtherObjectAll' description: Successful operation tags: - other diff --git a/dist/compatible_discriminator/openapi-3.0.yaml b/dist/compatible_discriminator/openapi-3.0.yaml deleted file mode 100644 index 3cae37a..0000000 --- a/dist/compatible_discriminator/openapi-3.0.yaml +++ /dev/null @@ -1,6650 +0,0 @@ -components: - schemas: - AdditionalMediaInfo: - properties: - call_to_actions: - $ref: '#/components/schemas/AdditionalMediaInfoCallToActions' - description: - type: string - embeddable: - type: boolean - monetizable: - type: boolean - source_user: - $ref: '#/components/schemas/UserResultCore' - title: - type: string - required: - - monetizable - AdditionalMediaInfoCallToActions: - properties: - visit_site: - $ref: '#/components/schemas/AdditionalMediaInfoCallToActionsUrl' - watch_now: - $ref: '#/components/schemas/AdditionalMediaInfoCallToActionsUrl' - AdditionalMediaInfoCallToActionsUrl: - properties: - url: - format: uri - type: string - required: - - url - AllowDownloadStatus: - properties: - allow_download: - type: boolean - Article: - properties: - article_results: - $ref: '#/components/schemas/ArticleResults' - required: - - article_results - ArticleCoverMedia: - properties: - id: - type: string - media_id: - pattern: ^[0-9]+$ - type: string - media_info: - $ref: '#/components/schemas/ArticleCoverMediaInfo' - media_key: - type: string - required: - - id - - media_key - - media_id - - media_info - ArticleCoverMediaColorInfo: - properties: - palette: - items: - $ref: '#/components/schemas/ArticleCoverMediaColorInfoPalette' - type: array - required: - - palette - ArticleCoverMediaColorInfoPalette: - properties: - percentage: - type: number - rgb: - $ref: '#/components/schemas/ArticleCoverMediaColorInfoPaletteRGB' - required: - - percentage - - rgb - ArticleCoverMediaColorInfoPaletteRGB: - properties: - blue: - type: integer - green: - type: integer - red: - type: integer - required: - - blue - - green - - red - ArticleCoverMediaInfo: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - color_info: - $ref: '#/components/schemas/ArticleCoverMediaColorInfo' - original_img_height: - type: integer - original_img_url: - format: uri - type: string - original_img_width: - type: integer - required: - - original_img_height - - original_img_width - - original_img_url - - color_info - ArticleLifecycleState: - properties: - modified_at_secs: - type: integer - required: - - modified_at_secs - ArticleMetadata: - properties: - first_published_at_secs: - type: integer - required: - - first_published_at_secs - ArticleResult: - properties: - cover_media: - $ref: '#/components/schemas/ArticleCoverMedia' - id: - type: string - lifecycle_state: - $ref: '#/components/schemas/ArticleLifecycleState' - metadata: - $ref: '#/components/schemas/ArticleMetadata' - preview_text: - type: string - rest_id: - pattern: ^[0-9]+$ - type: string - title: - type: string - required: - - rest_id - - id - - title - - preview_text - - cover_media - - metadata - ArticleResults: - properties: - result: - $ref: '#/components/schemas/ArticleResult' - required: - - result - AuthorCommunityRelationship: - properties: - community_results: - $ref: '#/components/schemas/Community' - role: - enum: - - Member - - Moderator - type: string - user_results: - $ref: '#/components/schemas/UserResults' - required: - - community_results - BirdwatchEntity: - properties: - fromIndex: - type: integer - ref: - $ref: '#/components/schemas/BirdwatchEntityRef' - toIndex: - type: integer - required: - - fromIndex - - toIndex - - ref - BirdwatchEntityRef: - properties: - text: - type: string - type: - enum: - - TimelineUrl - - TimelineRichTextHashtag - type: string - url: - format: uri - type: string - urlType: - enum: - - ExternalUrl - type: string - required: - - type - BirdwatchPivot: - properties: - callToAction: - $ref: '#/components/schemas/BirdwatchPivotCallToAction' - destinationUrl: - format: uri - type: string - footer: - $ref: '#/components/schemas/BirdwatchPivotFooter' - iconType: - enum: - - BirdwatchV1Icon - type: string - note: - $ref: '#/components/schemas/BirdwatchPivotNote' - shorttitle: - type: string - subtitle: - $ref: '#/components/schemas/BirdwatchPivotSubtitle' - title: - type: string - visualStyle: - enum: - - Default - type: string - required: - - destinationUrl - - footer - - note - - subtitle - - title - - shorttitle - - iconType - BirdwatchPivotCallToAction: - properties: - destinationUrl: - format: uri - type: string - prompt: - type: string - title: - type: string - required: - - prompt - - title - - destinationUrl - BirdwatchPivotFooter: - properties: - entities: - items: - $ref: '#/components/schemas/BirdwatchEntity' - type: array - text: - type: string - required: - - text - - entities - BirdwatchPivotNote: - properties: - rest_id: - pattern: ^[0-9]+$ - type: string - required: - - rest_id - BirdwatchPivotSubtitle: - properties: - entities: - items: - $ref: '#/components/schemas/BirdwatchEntity' - type: array - text: - type: string - required: - - text - - entities - BookmarksResponse: - properties: - data: - $ref: '#/components/schemas/BookmarksResponseData' - required: - - data - BookmarksResponseData: - properties: - bookmark_timeline_v2: - $ref: '#/components/schemas/BookmarksTimeline' - required: - - bookmark_timeline_v2 - BookmarksTimeline: - properties: - timeline: - $ref: '#/components/schemas/Timeline' - required: - - timeline - Callback: - properties: - endpoint: - format: uri - type: string - required: - - endpoint - ClientEventInfo: - properties: - component: - type: string - details: - additionalProperties: true - type: object - element: - type: string - CommunitiesActions: - properties: - create: - type: boolean - required: - - create - type: object - Community: - properties: - result: - $ref: '#/components/schemas/CommunityData' - required: - - result - CommunityActions: - properties: - delete_action_result: - $ref: '#/components/schemas/CommunityDeleteActionResult' - join_action_result: - $ref: '#/components/schemas/CommunityJoinActionResult' - leave_action_result: - $ref: '#/components/schemas/CommunityLeaveActionResult' - pin_action_result: - $ref: '#/components/schemas/CommunityPinActionResult' - unpin_action_result: - $ref: '#/components/schemas/CommunityUnpinActionResult' - CommunityData: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - actions: - $ref: '#/components/schemas/CommunityActions' - admin_results: - $ref: '#/components/schemas/UserResults' - created_at: - type: integer - creator_results: - $ref: '#/components/schemas/UserResults' - custom_banner_media: - additionalProperties: true - type: object - default_banner_media: - additionalProperties: true - type: object - description: - type: string - id_str: - pattern: ^[0-9]+$ - type: string - invites_policy: - enum: - - MemberInvitesAllowed - type: string - invites_result: - $ref: '#/components/schemas/CommunityInvitesResult' - is_pinned: - type: boolean - join_policy: - enum: - - Open - type: string - join_requests_result: - $ref: '#/components/schemas/CommunityJoinRequestsResult' - member_count: - type: integer - members_facepile_results: - items: - $ref: '#/components/schemas/UserResults' - type: array - moderator_count: - type: integer - name: - type: string - primary_community_topic: - $ref: '#/components/schemas/PrimaryCommunityTopic' - question: - type: string - role: - enum: - - NonMember - type: string - rules: - items: - $ref: '#/components/schemas/CommunityRule' - type: array - search_tags: - items: - type: string - type: array - show_only_users_to_display: - items: - type: string - type: array - urls: - $ref: '#/components/schemas/CommunityUrls' - viewer_relationship: - additionalProperties: true - type: object - required: - - __typename - - id_str - - name - - description - - search_tags - - actions - - admin_results - - creator_results - - invites_result - - join_policy - - invites_policy - - is_pinned - - members_facepile_results - - moderator_count - - member_count - - role - - rules - CommunityDeleteActionResult: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - reason: - enum: - - Unavailable - type: string - required: - - __typename - - reason - CommunityInvitesResult: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - message: - type: string - reason: - enum: - - Unavailable - type: string - required: - - __typename - - reason - - message - CommunityJoinActionResult: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - required: - - __typename - CommunityJoinRequestsResult: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - required: - - __typename - CommunityLeaveActionResult: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - message: - type: string - reason: - enum: - - ViewerNotMember - type: string - required: - - __typename - - reason - - message - CommunityPinActionResult: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - required: - - __typename - CommunityRelationship: - properties: - actions: - $ref: '#/components/schemas/CommunityActions' - id: - type: string - moderation_state: - additionalProperties: true - type: object - rest_id: - pattern: ^[0-9]+$ - type: string - required: - - id - - rest_id - - moderation_state - - actions - CommunityRule: - properties: - description: - type: string - name: - type: string - rest_id: - pattern: ^[0-9]+$ - type: string - required: - - rest_id - - name - CommunityUnpinActionResult: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - required: - - __typename - CommunityUrls: - properties: - permalink: - $ref: '#/components/schemas/CommunityUrlsPermalink' - required: - - permalink - CommunityUrlsPermalink: - properties: - url: - format: uri - type: string - required: - - url - ContentEntryType: - enum: - - TimelineTimelineItem - - TimelineTimelineCursor - - TimelineTimelineModule - type: string - ContentItemType: - enum: - - TimelineTweet - - TimelineTimelineCursor - - TimelineUser - - TimelinePrompt - - TimelineMessagePrompt - - TimelineCommunity - type: string - ContentUnion: - discriminator: - mapping": - TimelineTimelineCursor: '#/components/schemas/TimelineTimelineCursor' - TimelineTimelineItem: '#/components/schemas/TimelineTimelineItem' - TimelineTimelineModule: '#/components/schemas/TimelineTimelineModule' - propertyName: entryType - oneOf: - - $ref: '#/components/schemas/TimelineTimelineItem' - - $ref: '#/components/schemas/TimelineTimelineModule' - - $ref: '#/components/schemas/TimelineTimelineCursor' - ConversationControl: - properties: - mode: - enum: - - Community - - Verified - - ByInvitation - type: string - required: - - mode - CoverCta: - properties: - Text: - type: string - buttonStyle: - enum: - - Primary - type: string - callbacks: - items: - $ref: '#/components/schemas/Callback' - type: array - clientEventInfo: - $ref: '#/components/schemas/CtaClientEventInfo' - ctaBehavior: - $ref: '#/components/schemas/TimelineCoverBehavior' - required: - - text - - ctaBehavior - - callbacks - - clientEventInfo - CreateBookmarkResponse: - properties: - data: - $ref: '#/components/schemas/CreateBookmarkResponseData' - required: - - data - CreateBookmarkResponseData: - properties: - tweet_bookmark_put: - type: string - required: - - tweet_bookmark_put - CreateRetweet: - properties: - result: - $ref: '#/components/schemas/Retweet' - required: - - result - CreateRetweetResponse: - properties: - data: - $ref: '#/components/schemas/CreateRetweetResponseData' - required: - - data - CreateRetweetResponseData: - properties: - create_retweet: - $ref: '#/components/schemas/CreateRetweetResponseResult' - required: - - create_retweet - CreateRetweetResponseResult: - properties: - retweet_results: - $ref: '#/components/schemas/CreateRetweet' - required: - - retweet_results - CreateTweet: - properties: - result: - $ref: '#/components/schemas/Tweet' - required: - - result - CreateTweetResponse: - properties: - data: - $ref: '#/components/schemas/CreateTweetResponseData' - required: - - data - CreateTweetResponseData: - properties: - create_tweet: - $ref: '#/components/schemas/CreateTweetResponseResult' - required: - - create_tweet - CreateTweetResponseResult: - properties: - tweet_results: - $ref: '#/components/schemas/CreateTweet' - required: - - tweet_results - CtaClientEventInfo: - properties: - action: - enum: - - primary_cta - type: string - required: - - action - CursorType: - enum: - - Top - - Bottom - - ShowMore - - ShowMoreThreads - - Gap - - ShowMoreThreadsPrompt - type: string - DeleteBookmarkResponse: - properties: - data: - $ref: '#/components/schemas/DeleteBookmarkResponseData' - required: - - data - DeleteBookmarkResponseData: - properties: - tweet_bookmark_delete: - type: string - required: - - tweet_bookmark_delete - DeleteRetweet: - properties: - result: - items: - $ref: '#/components/schemas/Retweet' - type: object - required: - - result - DeleteRetweetResponse: - properties: - data: - $ref: '#/components/schemas/DeleteRetweetResponseData' - required: - - data - DeleteRetweetResponseData: - properties: - create_retweet: - $ref: '#/components/schemas/CreateRetweetResponseResult' - required: - - unretweet - DeleteRetweetResponseResult: - properties: - retweet_results: - $ref: '#/components/schemas/DeleteRetweet' - required: - - source_tweet_results - DeleteTweetResponse: - properties: - data: - $ref: '#/components/schemas/DeleteTweetResponseData' - required: - - data - DeleteTweetResponseData: - properties: - delete_retweet: - $ref: '#/components/schemas/DeleteTweetResponseResult' - required: - - delete_tweet - DeleteTweetResponseResult: - properties: - tweet_results: - type: object - required: - - tweet_results - DisplayTreatment: - properties: - actionText: - type: string - labelText: - type: string - required: - - actionText - type: object - DisplayType: - enum: - - Vertical - - VerticalConversation - - VerticalGrid - - Carousel - type: string - Entities: - properties: - hashtags: - items: - $ref: '#/components/schemas/Hashtag' - type: array - media: - items: - $ref: '#/components/schemas/Media' - type: array - symbols: - items: - $ref: '#/components/schemas/Symbol' - type: array - timestamps: - items: - $ref: '#/components/schemas/Timestamp' - type: array - urls: - items: - $ref: '#/components/schemas/Url' - type: array - user_mentions: - items: - $ref: '#/components/schemas/UserMention' - type: array - required: - - hashtags - - symbols - - user_mentions - - urls - Error: - properties: - code: - type: integer - extensions: - $ref: '#/components/schemas/ErrorExtensions' - kind: - type: string - locations: - items: - $ref: '#/components/schemas/Location' - type: array - message: - type: string - name: - type: string - path: - items: - type: string - type: array - retry_after: - type: integer - source: - type: string - tracing: - $ref: '#/components/schemas/Tracing' - required: - - message - - locations - - path - - extensions - - code - - kind - - name - - source - - tracing - type: object - ErrorExtensions: - properties: - code: - type: integer - kind: - type: string - name: - type: string - retry_after: - type: integer - source: - type: string - tracing: - $ref: '#/components/schemas/Tracing' - required: - - name - - source - - code - - kind - - tracing - type: object - Errors: - properties: - data: - $ref: '#/components/schemas/ErrorsData' - errors: - items: - $ref: '#/components/schemas/Error' - type: array - required: - - errors - type: object - ErrorsData: - properties: - user: - pattern: dummy - type: string - type: object - ExtMediaAvailability: - properties: - reason: - type: string - status: - enum: - - Available - - Unavailable - type: string - ExtendedEntities: - properties: - media: - items: - $ref: '#/components/schemas/MediaExtended' - type: array - required: - - media - FavoriteTweet: - properties: - favorite_tweet: - type: string - required: - - favorite_tweet - FavoriteTweetResponseData: - properties: - data: - $ref: '#/components/schemas/FavoriteTweet' - required: - - data - FeedbackInfo: - properties: - feedbackKeys: - items: - type: string - type: array - required: - - feedbackType - FollowResponse: - properties: - data: - $ref: '#/components/schemas/FollowResponseData' - required: - - data - FollowResponseData: - properties: - user: - $ref: '#/components/schemas/FollowResponseUser' - required: - - user - FollowResponseResult: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - timeline: - $ref: '#/components/schemas/FollowTimeline' - required: - - __typename - - timeline - FollowResponseUser: - properties: - result: - $ref: '#/components/schemas/FollowResponseResult' - required: - - result - FollowTimeline: - properties: - timeline: - $ref: '#/components/schemas/Timeline' - required: - - timeline - Hashtag: - additionalProperties: true - type: object - Highlight: - properties: - textHighlights: - items: - $ref: '#/components/schemas/TextHighlight' - type: array - required: - - textHighlights - type: object - HomeTimelineHome: - properties: - home_timeline_urt: - $ref: '#/components/schemas/Timeline' - required: - - home_timeline_urt - HomeTimelineResponseData: - properties: - home: - $ref: '#/components/schemas/HomeTimelineHome' - required: - - home - InstructionType: - enum: - - TimelineAddEntries - - TimelineAddToModule - - TimelineClearCache - - TimelinePinEntry - - TimelineReplaceEntry - - TimelineShowAlert - - TimelineTerminateTimeline - - TimelineShowCover - type: string - InstructionUnion: - discriminator: - mapping": - TimelineAddEntries: '#/components/schemas/TimelineAddEntries' - TimelineAddToModule: '#/components/schemas/TimelineAddToModule' - TimelineClearCache: '#/components/schemas/TimelineClearCache' - TimelinePinEntry: '#/components/schemas/TimelinePinEntry' - TimelineReplaceEntry: '#/components/schemas/TimelineReplaceEntry' - TimelineShowAlert: '#/components/schemas/TimelineShowAlert' - TimelineShowCover: '#/components/schemas/TimelineShowCover' - TimelineTerminateTimeline: '#/components/schemas/TimelineTerminateTimeline' - propertyName: type - oneOf: - - $ref: '#/components/schemas/TimelineAddEntries' - - $ref: '#/components/schemas/TimelineAddToModule' - - $ref: '#/components/schemas/TimelineClearCache' - - $ref: '#/components/schemas/TimelinePinEntry' - - $ref: '#/components/schemas/TimelineReplaceEntry' - - $ref: '#/components/schemas/TimelineShowAlert' - - $ref: '#/components/schemas/TimelineTerminateTimeline' - - $ref: '#/components/schemas/TimelineShowCover' - ItemContentUnion: - discriminator: - mapping": - TimelineCommunity: '#/components/schemas/TimelineCommunity' - TimelineMessagePrompt: '#/components/schemas/TimelineMessagePrompt' - TimelinePrompt: '#/components/schemas/TimelinePrompt' - TimelineTimelineCursor: '#/components/schemas/TimelineTimelineCursor' - TimelineTweet: '#/components/schemas/TimelineTweet' - TimelineUser: '#/components/schemas/TimelineUser' - propertyName: __typename - oneOf: - - $ref: '#/components/schemas/TimelineTweet' - - $ref: '#/components/schemas/TimelineTimelineCursor' - - $ref: '#/components/schemas/TimelineUser' - - $ref: '#/components/schemas/TimelinePrompt' - - $ref: '#/components/schemas/TimelineMessagePrompt' - - $ref: '#/components/schemas/TimelineCommunity' - ItemResult: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - result: - $ref: '#/components/schemas/TweetUnion' - ListLatestTweetsTimelineResponse: - properties: - data: - $ref: '#/components/schemas/ListTweetsTimelineData' - required: - - data - ListTweetsTimeline: - properties: - timeline: - $ref: '#/components/schemas/Timeline' - ListTweetsTimelineData: - properties: - list: - $ref: '#/components/schemas/ListTweetsTimelineList' - required: - - list - ListTweetsTimelineList: - properties: - tweets_timeline: - $ref: '#/components/schemas/ListTweetsTimeline' - required: - - tweets_timeline - Location: - properties: - column: - type: integer - line: - type: integer - required: - - line - - column - type: object - Media: - properties: - additional_media_info: - $ref: '#/components/schemas/AdditionalMediaInfo' - allow_download_status: - $ref: '#/components/schemas/AllowDownloadStatus' - display_url: - format: uri - type: string - expanded_url: - format: uri - type: string - ext_alt_text: - type: string - ext_media_availability: - $ref: '#/components/schemas/ExtMediaAvailability' - features: - type: object - id_str: - pattern: ^[0-9]+$ - type: string - indices: - items: - type: integer - type: array - media_key: - type: string - media_results: - $ref: '#/components/schemas/MediaResults' - media_url_https: - format: uri - type: string - original_info: - $ref: '#/components/schemas/MediaOriginalInfo' - sensitive_media_warning: - $ref: '#/components/schemas/SensitiveMediaWarning' - sizes: - $ref: '#/components/schemas/MediaSizes' - source_status_id_str: - pattern: ^[0-9]+$ - type: string - source_user_id_str: - pattern: ^[0-9]+$ - type: string - type: - enum: - - photo - - video - - animated_gif - type: string - url: - format: uri - type: string - video_info: - $ref: '#/components/schemas/MediaVideoInfo' - required: - - display_url - - expanded_url - - id_str - - indices - - media_url_https - - type - - url - - sizes - - original_info - - media_key - - ext_media_availability - MediaExtended: - properties: - additional_media_info: - $ref: '#/components/schemas/AdditionalMediaInfo' - allow_download_status: - $ref: '#/components/schemas/AllowDownloadStatus' - display_url: - format: uri - type: string - expanded_url: - format: uri - type: string - ext_alt_text: - type: string - ext_media_availability: - $ref: '#/components/schemas/ExtMediaAvailability' - features: - type: object - id_str: - pattern: ^[0-9]+$ - type: string - indices: - items: - type: integer - type: array - mediaStats: - $ref: '#/components/schemas/MediaStats' - media_key: - type: string - media_results: - $ref: '#/components/schemas/MediaResults' - media_url_https: - format: uri - type: string - original_info: - $ref: '#/components/schemas/MediaOriginalInfo' - sensitive_media_warning: - $ref: '#/components/schemas/SensitiveMediaWarning' - sizes: - $ref: '#/components/schemas/MediaSizes' - source_status_id_str: - pattern: ^[0-9]+$ - type: string - source_user_id_str: - pattern: ^[0-9]+$ - type: string - type: - enum: - - photo - - video - - animated_gif - type: string - url: - format: uri - type: string - video_info: - $ref: '#/components/schemas/MediaVideoInfo' - required: - - display_url - - expanded_url - - id_str - - indices - - media_key - - media_url_https - - type - - url - - sizes - - original_info - MediaOriginalInfo: - properties: - focus_rects: - items: - $ref: '#/components/schemas/MediaOriginalInfoFocusRect' - type: array - height: - type: integer - width: - type: integer - required: - - height - - width - MediaOriginalInfoFocusRect: - properties: - h: - type: integer - w: - type: integer - x: - type: integer - y: - type: integer - required: - - x - - y - - w - - h - type: object - MediaResult: - properties: - media_key: - type: string - required: - - media_key - MediaResults: - properties: - result: - $ref: '#/components/schemas/MediaResult' - required: - - result - MediaSize: - properties: - h: - type: integer - resize: - enum: - - crop - - fit - type: string - w: - type: integer - required: - - w - - h - - resize - MediaSizes: - properties: - large: - $ref: '#/components/schemas/MediaSize' - medium: - $ref: '#/components/schemas/MediaSize' - small: - $ref: '#/components/schemas/MediaSize' - thumb: - $ref: '#/components/schemas/MediaSize' - required: - - large - - medium - - small - - thumb - MediaStats: - properties: - viewCount: - type: integer - required: - - viewCount - MediaVideoInfo: - properties: - aspect_ratio: - items: - type: integer - type: array - duration_millis: - type: integer - variants: - items: - $ref: '#/components/schemas/MediaVideoInfoVariant' - type: array - required: - - aspect_ratio - - variants - MediaVideoInfoVariant: - properties: - bitrate: - type: integer - content_type: - type: string - url: - format: uri - type: string - required: - - content_type - - url - MediaVisibilityResults: - properties: - blurred_image_interstitial: - $ref: '#/components/schemas/MediaVisibilityResultsBlurredImageInterstitial' - required: - - blurred_image_interstitial - MediaVisibilityResultsBlurredImageInterstitial: - properties: - opacity: - type: number - text: - $ref: '#/components/schemas/TweetInterstitialText' - title: - $ref: '#/components/schemas/TweetInterstitialText' - required: - - opacity - - text - - title - ModuleEntry: - properties: - clientEventInfo: - $ref: '#/components/schemas/ClientEventInfo' - feedbackInfo: - $ref: '#/components/schemas/FeedbackInfo' - itemContent: - $ref: '#/components/schemas/ItemContentUnion' - required: - - itemContent - ModuleItem: - properties: - entryId: - pattern: ^(([a-z]+|[0-9]+|[0-9a-f]+)(-|$))+ - type: string - item: - $ref: '#/components/schemas/ModuleEntry' - required: - - entryId - - item - NoteTweet: - properties: - is_expandable: - type: boolean - note_tweet_results: - $ref: '#/components/schemas/NoteTweetResult' - required: - - is_expandable - - note_tweet_results - NoteTweetResult: - properties: - result: - $ref: '#/components/schemas/NoteTweetResultData' - required: - - result - NoteTweetResultData: - properties: - entity_set: - $ref: '#/components/schemas/Entities' - id: - pattern: ^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)?$ - type: string - media: - $ref: '#/components/schemas/NoteTweetResultMedia' - richtext: - $ref: '#/components/schemas/NoteTweetResultRichText' - text: - type: string - required: - - entity_set - - id - - text - NoteTweetResultMedia: - properties: - inline_media: - items: - $ref: '#/components/schemas/NoteTweetResultMediaInlineMedia' - type: array - required: - - inline_media - NoteTweetResultMediaInlineMedia: - properties: - index: - type: integer - media_id: - pattern: ^[0-9]+$ - type: string - required: - - media_id - - index - NoteTweetResultRichText: - properties: - richtext_tags: - items: - $ref: '#/components/schemas/NoteTweetResultRichTextTag' - type: array - required: - - richtext_tags - NoteTweetResultRichTextTag: - properties: - from_index: - type: integer - richtext_types: - items: - enum: - - Bold - - Italic - type: string - type: array - to_index: - type: integer - required: - - from_index - - to_index - - richtext_types - OneFactorLoginEligibility: - properties: - fetchStatus: - type: string - required: - - fetchStatus - type: object - OtherResponse: - properties: - Session: - $ref: '#/components/schemas/Session' - type: object - PrimaryCommunityTopic: - properties: - topic_id: - pattern: ^[0-9]+$ - type: string - topic_name: - type: string - required: - - topic_id - - topic_name - ProfileResponse: - properties: - data: - $ref: '#/components/schemas/ProfileResponseData' - required: - - data - ProfileResponseData: - properties: - user_result_by_screen_name: - $ref: '#/components/schemas/UserResultByScreenName' - required: - - user_result_by_screen_name - QuotedRefResult: - properties: - result: - $ref: '#/components/schemas/TweetUnion' - QuotedStatusPermalink: - properties: - display: - format: uri - type: string - expanded: - format: uri - type: string - url: - format: uri - type: string - required: - - url - - expanded - - display - Retweet: - properties: - legacy: - properties: - full_text: - type: string - required: - - full_text - type: object - rest_id: - pattern: ^[0-9]+$ - type: string - required: - - rest_id - - legacy - SearchByRawQuery: - properties: - search_timeline: - $ref: '#/components/schemas/SearchTimeline' - required: - - search_timeline - SearchTimeline: - properties: - timeline: - $ref: '#/components/schemas/Timeline' - required: - - timeline - SearchTimelineData: - properties: - search_by_raw_query: - $ref: '#/components/schemas/SearchByRawQuery' - required: - - search_by_raw_query - SearchTimelineResponse: - properties: - data: - $ref: '#/components/schemas/SearchTimelineData' - required: - - data - SelfThread: - properties: - id_str: - pattern: ^[0-9]+$ - type: string - required: - - id_str - SensitiveMediaWarning: - properties: - adult_content: - type: boolean - graphic_violence: - type: boolean - other: - type: boolean - Session: - properties: - SsoInitTokens: - type: object - communitiesActions: - $ref: '#/components/schemas/CommunitiesActions' - country: - pattern: ^[A-Z]{2}$ - type: string - guestId: - pattern: ^[0-9]+$ - type: string - hasCommunityMemberships: - type: boolean - isActiveCreator: - type: boolean - isRestrictedSession: - type: boolean - isSuperFollowSubscriber: - type: boolean - language: - pattern: ^[a-z]{2}$ - type: string - oneFactorLoginEligibility: - $ref: '#/components/schemas/OneFactorLoginEligibility' - superFollowersCount: - type: integer - superFollowsApplicationStatus: - enum: - - NotStarted - type: string - userFeatures: - $ref: '#/components/schemas/UserFeatures' - user_id: - pattern: ^[0-9]+$ - type: string - required: - - country - - communitiesActions - - isActiveCreator - - isRestrictedSession - - guestId - - hasCommunityMemberships - - language - - oneFactorLoginEligibility - - ssoInitTokens - - superFollowersCount - - superFollowsApplicationStatus - - user_id - - userFeatures - - isSuperFollowSubscriber - type: object - SocialContextLandingUrl: - properties: - url: - format: uri - type: string - urlType: - enum: - - DeepLink - - UrtEndpoint - - ExternalUrl - type: string - urtEndpointOptions: - $ref: '#/components/schemas/UrtEndpointOptions' - type: object - SocialContextUnion: - discriminator: - mapping": - TimelineGeneralContext: '#/components/schemas/TimelineGeneralContext' - TimelineTopicContext: '#/components/schemas/TimelineTopicContext' - propertyName: type - oneOf: - - $ref: '#/components/schemas/TimelineGeneralContext' - - $ref: '#/components/schemas/TimelineTopicContext' - SocialContextUnionType: - enum: - - TimelineGeneralContext - - TimelineTopicContext - type: string - SuperFollowsReplyUserResult: - properties: - result: - $ref: '#/components/schemas/SuperFollowsReplyUserResultData' - required: - - result - SuperFollowsReplyUserResultData: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - legacy: - $ref: '#/components/schemas/SuperFollowsReplyUserResultLegacy' - required: - - __typename - - legacy - SuperFollowsReplyUserResultLegacy: - properties: - screen_name: - type: string - required: - - screen_name - Symbol: - additionalProperties: true - type: object - Text: - properties: - entities: - items: - $ref: '#/components/schemas/TextEntity' - type: array - text: - type: string - required: - - text - - entities - TextEntity: - properties: - fromIndex: - type: integer - ref: - $ref: '#/components/schemas/TextEntityRef' - toIndex: - type: integer - required: - - fromIndex - - toIndex - - ref - TextEntityRef: - properties: - type: - enum: - - TimelineUrl - type: string - url: - format: uri - type: string - urlType: - enum: - - ExternalUrl - type: string - required: - - type - - url - - urlType - TextHighlight: - properties: - endIndex: - type: integer - startIndex: - type: integer - required: - - startIndex - - endIndex - type: object - Timeline: - properties: - instructions: - items: - $ref: '#/components/schemas/InstructionUnion' - type: array - metadata: - additionalProperties: true - type: object - responseObjects: - additionalProperties: true - type: object - required: - - instructions - TimelineAddEntries: - properties: - entries: - items: - $ref: '#/components/schemas/TimelineAddEntry' - type: array - type: - $ref: '#/components/schemas/InstructionType' - required: - - type - - entries - TimelineAddEntry: - properties: - content: - $ref: '#/components/schemas/ContentUnion' - entryId: - pattern: ^(([a-z]+|[0-9]+|[0-9a-f]+)(-|$))+ - type: string - sortIndex: - pattern: '[0-9]+$' - type: string - required: - - content - - entryId - - sortIndex - TimelineAddToModule: - properties: - moduleEntryId: - type: string - moduleItems: - items: - $ref: '#/components/schemas/ModuleItem' - type: array - prepend: - type: boolean - type: - $ref: '#/components/schemas/InstructionType' - required: - - type - - moduleItems - - moduleEntryId - TimelineClearCache: - properties: - type: - $ref: '#/components/schemas/InstructionType' - required: - - type - TimelineCommunity: - additionalProperties: true - properties: - __typename: - $ref: '#/components/schemas/TypeName' - TimelineCoverBehavior: - properties: - type: - enum: - - TimelineCoverBehaviorDismiss - - TimelineCoverBehaviorNavigate - type: string - url: - type: TimelineCoverBehaviorUrl - required: - - type - TimelineCoverBehaviorUrl: - properties: - url: - format: uri - type: string - url_type: - enum: - - ExternalUrl - type: string - required: - - url - - url_type - TimelineGeneralContext: - properties: - contextType: - enum: - - Follow - - Pin - - Like - - Location - - Sparkle - - Conversation - - List - - Community - type: string - landingUrl: - $ref: '#/components/schemas/SocialContextLandingUrl' - text: - type: string - type: - $ref: '#/components/schemas/SocialContextUnionType' - type: object - TimelineHalfCover: - properties: - dismissible: - type: boolean - halfCoverDisplayType: - enum: - - Cover - type: string - impressionCallbacks: - items: - $ref: '#/components/schemas/Callback' - type: array - primaryCoverCta: - $ref: '#/components/schemas/CoverCta' - primaryText: - $ref: '#/components/schemas/Text' - secondaryText: - $ref: '#/components/schemas/Text' - type: - enum: - - TimelineHalfCover - type: string - required: - - type - - halfCoverDisplayType - - primaryText - - primaryCoverCta - - secondaryText - - impressionCallbacks - - dismissible - TimelineMessagePrompt: - additionalProperties: true - properties: - __typename: - $ref: '#/components/schemas/TypeName' - TimelinePinEntry: - properties: - entry: - $ref: '#/components/schemas/TimelineAddEntry' - type: - $ref: '#/components/schemas/InstructionType' - required: - - type - - entry - TimelinePrompt: - additionalProperties: true - properties: - __typename: - $ref: '#/components/schemas/TypeName' - TimelineReplaceEntry: - properties: - entry: - $ref: '#/components/schemas/TimelineAddEntry' - entry_id_to_replace: - type: string - type: - $ref: '#/components/schemas/InstructionType' - required: - - type - - entry_id_to_replace - - entry - TimelineResponse: - properties: - data: - $ref: '#/components/schemas/HomeTimelineResponseData' - required: - - data - TimelineShowAlert: - properties: - alertType: - enum: - - NewTweets - type: string - colorConfig: - additionalProperties: true - type: object - displayDurationMs: - type: integer - displayLocation: - enum: - - Top - type: string - iconDisplayInfo: - additionalProperties: true - type: object - richText: - properties: - entities: - items: - additionalProperties: true - type: object - type: array - text: - type: string - type: object - triggerDelayMs: - type: integer - type: - $ref: '#/components/schemas/InstructionType' - usersResults: - items: - $ref: '#/components/schemas/UserResults' - type: array - required: - - type - - usersResults - - richText - TimelineShowCover: - properties: - clientEventInfo: - $ref: '#/components/schemas/ClientEventInfo' - cover: - $ref: '#/components/schemas/TimelineHalfCover' - type: - $ref: '#/components/schemas/InstructionType' - required: - - type - - clientEventInfo - - cover - TimelineTerminateTimeline: - properties: - direction: - enum: - - Top - - Bottom - - TopAndBottom - type: string - type: - $ref: '#/components/schemas/InstructionType' - required: - - type - - direction - TimelineTimelineCursor: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - cursorType: - $ref: '#/components/schemas/CursorType' - displayTreatment: - $ref: '#/components/schemas/DisplayTreatment' - entryType: - $ref: '#/components/schemas/ContentEntryType' - itemType: - $ref: '#/components/schemas/ContentEntryType' - stopOnEmptyResponse: - type: boolean - value: - type: string - required: - - __typename - - cursorType - - value - TimelineTimelineItem: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - clientEventInfo: - $ref: '#/components/schemas/ClientEventInfo' - entryType: - $ref: '#/components/schemas/ContentEntryType' - feedbackInfo: - additionalProperties: true - type: object - itemContent: - $ref: '#/components/schemas/ItemContentUnion' - required: - - __typename - - entryType - - itemContent - TimelineTimelineModule: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - type: string - clientEventInfo: - additionalProperties: true - type: object - displayType: - $ref: '#/components/schemas/DisplayType' - entryType: - $ref: '#/components/schemas/ContentEntryType' - feedbackInfo: - $ref: '#/components/schemas/FeedbackInfo' - footer: - additionalProperties: true - type: object - header: - additionalProperties: true - type: object - items: - items: - $ref: '#/components/schemas/ModuleItem' - type: array - metadata: - additionalProperties: true - type: object - required: - - __typename - - entryType - - displayType - - clientEventInfo - TimelineTopicContext: - properties: - functionalityType: - enum: - - Basic - type: string - topic: - $ref: '#/components/schemas/TopicContext' - type: - $ref: '#/components/schemas/SocialContextUnionType' - type: object - TimelineTweet: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - highlights: - $ref: '#/components/schemas/Highlight' - itemType: - $ref: '#/components/schemas/ContentItemType' - promotedMetadata: - additionalProperties: true - type: object - socialContext: - $ref: '#/components/schemas/SocialContextUnion' - tweetDisplayType: - enum: - - Tweet - - SelfThread - - MediaGrid - - CondensedTweet - type: string - tweet_results: - $ref: '#/components/schemas/ItemResult' - required: - - __typename - - itemType - - tweetDisplayType - - tweet_results - TimelineUser: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - itemType: - $ref: '#/components/schemas/ContentItemType' - socialContext: - $ref: '#/components/schemas/SocialContextUnion' - userDisplayType: - enum: - - User - - UserDetailed - - SubscribableUser - type: string - user_results: - $ref: '#/components/schemas/UserResults' - required: - - __typename - - itemType - - userDisplayType - - user_results - TimelineV2: - properties: - timeline: - $ref: '#/components/schemas/Timeline' - Timestamp: - properties: - indices: - items: - type: integer - type: array - seconds: - type: integer - text: - type: string - required: - - indices - - seconds - - text - TopicContext: - properties: - description: - type: string - following: - type: boolean - icon_url: - format: uri - type: string - id: - type: string - name: - type: string - not_interested: - type: boolean - topic_id: - type: string - type: object - Tracing: - properties: - trace_id: - pattern: ^[0-9a-f]{16}$ - type: string - required: - - trace_id - type: object - Tweet: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - article: - $ref: '#/components/schemas/Article' - author_community_relationship: - $ref: '#/components/schemas/AuthorCommunityRelationship' - birdwatch_pivot: - $ref: '#/components/schemas/BirdwatchPivot' - card: - $ref: '#/components/schemas/TweetCard' - community_relationship: - $ref: '#/components/schemas/CommunityRelationship' - community_results: - $ref: '#/components/schemas/Community' - core: - $ref: '#/components/schemas/UserResultCore' - edit_control: - $ref: '#/components/schemas/TweetEditControl' - edit_prespective: - $ref: '#/components/schemas/TweetEditPrespective' - has_birdwatch_notes: - type: boolean - is_translatable: - type: boolean - legacy: - $ref: '#/components/schemas/TweetLegacy' - note_tweet: - $ref: '#/components/schemas/NoteTweet' - previous_counts: - $ref: '#/components/schemas/TweetPreviousCounts' - quick_promote_eligibility: - type: object - quotedRefResult: - $ref: '#/components/schemas/QuotedRefResult' - quoted_status_result: - $ref: '#/components/schemas/ItemResult' - rest_id: - pattern: ^[0-9]+$ - type: string - source: - type: string - superFollowsReplyUserResult: - $ref: '#/components/schemas/SuperFollowsReplyUserResult' - unified_card: - $ref: '#/components/schemas/UnifiedCard' - unmention_data: - additionalProperties: true - type: object - views: - $ref: '#/components/schemas/TweetView' - required: - - rest_id - TweetCard: - properties: - legacy: - $ref: '#/components/schemas/TweetCardLegacy' - rest_id: - type: string - TweetCardLegacy: - properties: - binding_values: - items: - $ref: '#/components/schemas/TweetCardLegacyBindingValue' - type: array - card_platform: - $ref: '#/components/schemas/TweetCardPlatformData' - name: - type: string - url: - type: string - user_refs_results: - items: - $ref: '#/components/schemas/UserResults' - type: array - required: - - binding_values - - name - - url - TweetCardLegacyBindingValue: - properties: - key: - type: string - value: - $ref: '#/components/schemas/TweetCardLegacyBindingValueData' - required: - - key - - value - TweetCardLegacyBindingValueData: - properties: - boolean_value: - type: boolean - image_color_value: - additionalProperties: true - type: object - image_value: - $ref: '#/components/schemas/TweetCardLegacyBindingValueDataImage' - scribe_key: - type: string - string_value: - type: string - type: - type: string - user_value: - $ref: '#/components/schemas/UserValue' - required: - - type - TweetCardLegacyBindingValueDataImage: - properties: - alt: - type: string - height: - type: integer - url: - format: uri - type: string - width: - type: integer - required: - - height - - width - - url - TweetCardPlatform: - properties: - audience: - $ref: '#/components/schemas/TweetCardPlatformAudience' - device: - $ref: '#/components/schemas/TweetCardPlatformDevice' - required: - - audience - - device - TweetCardPlatformAudience: - properties: - name: - enum: - - production - type: string - required: - - name - TweetCardPlatformData: - properties: - platform: - $ref: '#/components/schemas/TweetCardPlatform' - required: - - platform - TweetCardPlatformDevice: - properties: - name: - type: string - version: - pattern: ^[0-9]+$ - type: string - required: - - name - - version - TweetDetailResponse: - properties: - data: - $ref: '#/components/schemas/TweetDetailResponseData' - required: - - data - TweetDetailResponseData: - properties: - threaded_conversation_with_injections_v2: - $ref: '#/components/schemas/Timeline' - required: - - threaded_conversation_with_injections_v2 - TweetEditControl: - properties: - edit_control_initial: - $ref: '#/components/schemas/TweetEditControlInitial' - edit_tweet_ids: - items: - pattern: ^[0-9]+$ - type: string - type: array - editable_until_msecs: - pattern: ^[0-9]+$ - type: string - edits_remaining: - pattern: ^[0-9]+$ - type: string - initial_tweet_id: - pattern: ^[0-9]+$ - type: string - is_edit_eligible: - type: boolean - TweetEditControlInitial: - properties: - edit_tweet_ids: - items: - pattern: ^[0-9]+$ - type: string - type: array - editable_until_msecs: - pattern: ^[0-9]+$ - type: string - edits_remaining: - pattern: ^[0-9]+$ - type: string - is_edit_eligible: - type: boolean - required: - - edit_tweet_ids - - editable_until_msecs - - is_edit_eligible - - edits_remaining - TweetEditPrespective: - properties: - favorited: - type: boolean - retweeted: - type: boolean - TweetFavoritersResponse: - properties: - data: - $ref: '#/components/schemas/TweetFavoritersResponseData' - required: - - data - TweetFavoritersResponseData: - properties: - favoriters_timeline: - $ref: '#/components/schemas/TimelineV2' - required: - - favoriters_timeline - TweetInterstitial: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - displayType: - enum: - - NonCompliant - type: string - revealText: - $ref: '#/components/schemas/TweetInterstitialRevealText' - text: - $ref: '#/components/schemas/TweetInterstitialText' - required: - - __typename - - displayType - - text - - revealText - TweetInterstitialRevealText: - properties: - entities: - items: - $ref: '#/components/schemas/TweetInterstitialTextEntity' - type: array - rtl: - type: boolean - text: - type: string - required: - - rtl - - text - - entities - TweetInterstitialText: - properties: - entities: - items: - $ref: '#/components/schemas/TweetInterstitialTextEntity' - type: array - rtl: - type: boolean - text: - type: string - required: - - rtl - - text - - entities - TweetInterstitialTextEntity: - properties: - fromIndex: - type: integer - ref: - $ref: '#/components/schemas/TweetInterstitialTextEntityRef' - toIndex: - type: integer - required: - - fromIndex - - toIndex - - ref - TweetInterstitialTextEntityRef: - properties: - type: - enum: - - TimelineUrl - type: string - url: - format: uri - type: string - urlType: - enum: - - ExternalUrl - type: string - required: - - type - - url - - urlType - TweetLegacy: - properties: - bookmark_count: - type: integer - bookmarked: - type: boolean - conversation_control: - additionalProperties: true - conversation_id_str: - pattern: ^[0-9]+$ - type: string - created_at: - $ref: '#/components/schemas/TwitterTimeFormat' - display_text_range: - items: - type: integer - type: array - entities: - $ref: '#/components/schemas/Entities' - extended_entities: - $ref: '#/components/schemas/ExtendedEntities' - favorite_count: - type: integer - favorited: - type: boolean - full_text: - type: string - id_str: - pattern: ^[0-9]+$ - type: string - in_reply_to_screen_name: - type: string - in_reply_to_status_id_str: - pattern: ^[0-9]+$ - type: string - in_reply_to_user_id_str: - pattern: ^[0-9]+$ - type: string - is_quote_status: - type: boolean - lang: - type: string - limited_actions: - enum: - - limited_replies - - non_compliant - - dynamic_product_ad - - stale_tweet - - community_tweet_non_member_public_community - - community_tweet_non_member_closed_community - type: string - place: - additionalProperties: true - possibly_sensitive: - type: boolean - possibly_sensitive_editable: - type: boolean - quote_count: - type: integer - quoted_status_id_str: - pattern: ^[0-9]+$ - type: string - quoted_status_permalink: - $ref: '#/components/schemas/QuotedStatusPermalink' - reply_count: - type: integer - retweet_count: - type: integer - retweeted: - type: boolean - retweeted_status_result: - $ref: '#/components/schemas/ItemResult' - scopes: - $ref: '#/components/schemas/TweetLegacyScopes' - self_thread: - $ref: '#/components/schemas/SelfThread' - user_id_str: - pattern: ^[0-9]+$ - type: string - required: - - bookmark_count - - bookmarked - - conversation_id_str - - created_at - - display_text_range - - entities - - favorite_count - - favorited - - full_text - - is_quote_status - - lang - - quote_count - - reply_count - - retweet_count - - retweeted - - user_id_str - - id_str - TweetLegacyScopes: - properties: - followers: - type: boolean - required: - - followers - TweetPreviousCounts: - properties: - bookmark_count: - type: integer - favorite_count: - type: integer - quote_count: - type: integer - reply_count: - type: integer - retweet_count: - type: integer - required: - - bookmark_count - - favorite_count - - quote_count - - reply_count - - retweet_count - TweetResultByRestIdData: - properties: - tweetResult: - $ref: '#/components/schemas/ItemResult' - required: - - tweetResult - TweetResultByRestIdResponse: - properties: - data: - $ref: '#/components/schemas/TweetResultByRestIdData' - required: - - data - TweetRetweetersResponse: - properties: - data: - $ref: '#/components/schemas/TweetRetweetersResponseData' - required: - - data - TweetRetweetersResponseData: - properties: - retweeters_timeline: - $ref: '#/components/schemas/TimelineV2' - required: - - retweeters_timeline - TweetTombstone: - additionalProperties: true - properties: - __typename: - $ref: '#/components/schemas/TypeName' - TweetUnavailable: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - reason: - type: string - TweetUnion: - discriminator: - mapping": - Tweet: '#/components/schemas/Tweet' - TweetTombstone: '#/components/schemas/TweetTombstone' - TweetUnavailable: '#/components/schemas/TweetUnavailable' - TweetWithVisibilityResults: '#/components/schemas/TweetWithVisibilityResults' - propertyName: __typename - oneOf: - - $ref: '#/components/schemas/Tweet' - - $ref: '#/components/schemas/TweetWithVisibilityResults' - - $ref: '#/components/schemas/TweetTombstone' - - $ref: '#/components/schemas/TweetUnavailable' - TweetView: - properties: - count: - pattern: ^[0-9]+$ - type: string - state: - enum: - - Enabled - - EnabledWithCount - type: string - required: - - state - TweetWithVisibilityResults: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - limitedActionResults: - additionalProperties: true - type: object - mediaVisibilityResults: - $ref: '#/components/schemas/MediaVisibilityResults' - tweet: - $ref: '#/components/schemas/Tweet' - tweetInterstitial: - $ref: '#/components/schemas/TweetInterstitial' - required: - - __typename - - tweet - TwitterTimeFormat: - example: Sat Dec 31 23:59:59 +0000 2023 - pattern: '^(Sun|Mon|Tue|Wed|Thu|Fri|Sat) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) - (0[1-9]|[12][0-9]|3[01]) (0[0-9]|1[0-9]|2[0-3])(: ?)([0-5][0-9])(: ?)([0-5][0-9]) - ([+-][0-9]{4}) ([0-9]{4})$' - type: string - TypeName: - enum: - - TimelineTweet - - TimelineTimelineItem - - TimelineUser - - TimelineTimelineCursor - - TweetWithVisibilityResults - - ContextualTweetInterstitial - - TimelineTimelineModule - - TweetTombstone - - TimelinePrompt - - TimelineMessagePrompt - - TimelineCommunity - - TweetUnavailable - - Tweet - - User - - UserUnavailable - - Community - - CommunityDeleteActionUnavailable - - CommunityJoinAction - - CommunityLeaveActionUnavailable - - CommunityTweetPinActionUnavailable - - CommunityTweetUnpinActionUnavailable - - CommunityInvitesUnavailable - - CommunityJoinRequestsUnavailable - - ApiImage - type: string - UnfavoriteTweet: - properties: - unfavorite_tweet: - type: string - required: - - unfavorite_tweet - UnfavoriteTweetResponseData: - properties: - data: - $ref: '#/components/schemas/UnfavoriteTweet' - required: - - data - UnifiedCard: - properties: - card_fetch_state: - enum: - - NoCard - type: string - required: - - card_fetch_state - Url: - properties: - display_url: - type: string - expanded_url: - format: uri - type: string - indices: - items: - type: integer - type: array - url: - format: uri - type: string - required: - - url - - indices - - display_url - type: object - UrtEndpointOptions: - properties: - requestParams: - items: - $ref: '#/components/schemas/UrtEndpointRequestParams' - type: array - title: - type: string - required: - - title - - requestParams - type: object - UrtEndpointRequestParams: - properties: - key: - type: string - value: - type: string - required: - - key - - value - type: object - User: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - affiliates_highlighted_label: - additionalProperties: true - type: object - business_account: - additionalProperties: true - type: object - creator_subscriptions_count: - type: integer - has_graduated_access: - type: boolean - has_hidden_likes_on_profile: - type: boolean - has_nft_avatar: - type: boolean - highlights_info: - $ref: '#/components/schemas/UserHighlightsInfo' - id: - pattern: ^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)?$ - type: string - is_blue_verified: - type: boolean - is_profile_translatable: - type: boolean - legacy: - $ref: '#/components/schemas/UserLegacy' - legacy_extended_profile: - $ref: '#/components/schemas/UserLegacyExtendedProfile' - premium_gifting_eligible: - type: boolean - professional: - $ref: '#/components/schemas/UserProfessional' - profile_image_shape: - enum: - - Circle - - Square - - Hexagon - type: string - rest_id: - pattern: ^[0-9]+$ - type: string - super_follow_eligible: - type: boolean - super_followed_by: - type: boolean - super_following: - type: boolean - tipjar_settings: - $ref: '#/components/schemas/UserTipJarSettings' - user_seed_tweet_count: - type: integer - verification_info: - $ref: '#/components/schemas/UserVerificationInfo' - required: - - __typename - - affiliates_highlighted_label - - id - - is_blue_verified - - legacy - - rest_id - - profile_image_shape - UserFeatures: - properties: - mediatool_studio_library: - type: boolean - required: - - mediatool_studio_library - type: object - UserHighlightsInfo: - properties: - can_highlight_tweets: - type: boolean - highlighted_tweets: - type: string - required: - - can_highlight_tweets - - highlighted_tweets - UserHighlightsTweetsData: - properties: - user: - $ref: '#/components/schemas/UserHighlightsTweetsUser' - required: - - user - UserHighlightsTweetsResponse: - properties: - data: - $ref: '#/components/schemas/UserHighlightsTweetsData' - required: - - data - UserHighlightsTweetsResult: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - timeline: - $ref: '#/components/schemas/UserHighlightsTweetsTimeline' - required: - - timeline - - __typename - UserHighlightsTweetsTimeline: - properties: - timeline: - $ref: '#/components/schemas/Timeline' - required: - - timeline - UserHighlightsTweetsUser: - properties: - result: - $ref: '#/components/schemas/UserHighlightsTweetsResult' - required: - - result - UserLegacy: - properties: - blocked_by: - type: boolean - blocking: - type: boolean - can_dm: - type: boolean - can_media_tag: - type: boolean - created_at: - $ref: '#/components/schemas/TwitterTimeFormat' - default_profile: - type: boolean - default_profile_image: - type: boolean - description: - type: string - entities: - additionalProperties: true - type: object - fast_followers_count: - type: integer - favourites_count: - type: integer - follow_request_sent: - type: boolean - followed_by: - type: boolean - followers_count: - type: integer - following: - type: boolean - friends_count: - type: integer - has_custom_timelines: - type: boolean - is_translator: - type: boolean - listed_count: - type: integer - location: - type: string - media_count: - type: integer - muting: - type: boolean - name: - type: string - normal_followers_count: - type: integer - notifications: - type: boolean - pinned_tweet_ids_str: - items: - type: string - type: array - possibly_sensitive: - type: boolean - profile_banner_extensions: - type: object - profile_banner_url: - format: uri - type: string - profile_image_extensions: - type: object - profile_image_url_https: - format: uri - type: string - profile_interstitial_type: - type: string - protected: - type: boolean - screen_name: - type: string - statuses_count: - type: integer - translator_type: - type: string - url: - type: string - verified: - type: boolean - verified_type: - enum: - - Business - - Government - type: string - want_retweets: - type: boolean - withheld_in_countries: - items: - type: string - type: array - required: - - created_at - - default_profile - - default_profile_image - - description - - entities - - fast_followers_count - - favourites_count - - followers_count - - friends_count - - has_custom_timelines - - is_translator - - listed_count - - location - - media_count - - name - - normal_followers_count - - pinned_tweet_ids_str - - possibly_sensitive - - profile_image_url_https - - profile_interstitial_type - - screen_name - - status - - statuses_count - - translator_type - - verified - UserLegacyExtendedProfile: - properties: - birthdate: - $ref: '#/components/schemas/UserLegacyExtendedProfileBirthdate' - UserLegacyExtendedProfileBirthdate: - properties: - day: - type: integer - month: - type: integer - visibility: - enum: - - Self - - Public - - MutualFollow - - Followers - - Following - type: string - year: - type: integer - year_visibility: - enum: - - Self - - Public - - MutualFollow - - Followers - - Following - type: string - required: - - day - - month - - year - - visibility - - year_visibility - UserMention: - additionalProperties: true - type: object - UserProfessional: - properties: - category: - items: - $ref: '#/components/schemas/UserProfessionalCategory' - type: array - professional_type: - enum: - - Business - - Creator - type: string - rest_id: - pattern: ^[0-9]+$ - type: string - required: - - rest_id - - professional_type - - category - UserProfessionalCategory: - properties: - icon_name: - type: string - id: - type: integer - name: - type: string - required: - - id - - name - - icon_name - UserResponse: - properties: - data: - $ref: '#/components/schemas/UserResponseData' - required: - - data - UserResponseData: - properties: - user: - $ref: '#/components/schemas/UserResults' - UserResultByScreenName: - properties: - id: - pattern: ^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)?$ - type: string - result: - $ref: '#/components/schemas/UserResultByScreenNameResult' - required: - - id - - result - UserResultByScreenNameLegacy: - properties: - blocked_by: - type: boolean - blocking: - type: boolean - followed_by: - type: boolean - following: - type: boolean - name: - type: string - protected: - type: boolean - screen_name: - type: string - UserResultByScreenNameResult: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - id: - pattern: ^[0-9a-zA-Z=]+$ - type: string - legacy: - $ref: '#/components/schemas/UserResultByScreenNameLegacy' - profilemodules: - additionalProperties: true - type: object - rest_id: - pattern: ^[0-9]+$ - type: string - required: - - __typename - - id - - legacy - - profilemodules - - rest_id - UserResultCore: - properties: - user_results: - $ref: '#/components/schemas/UserResults' - required: - - user_results - UserResults: - properties: - result: - $ref: '#/components/schemas/UserUnion' - UserTipJarSettings: - properties: - bandcamp_handle: - type: string - bitcoin_handle: - type: string - cash_app_handle: - type: string - ethereum_handle: - type: string - gofundme_handle: - type: string - is_enabled: - type: boolean - patreon_handle: - type: string - venmo_handle: - type: string - UserTweetsData: - properties: - user: - $ref: '#/components/schemas/UserTweetsUser' - required: - - user - UserTweetsResponse: - properties: - data: - $ref: '#/components/schemas/UserTweetsData' - required: - - data - UserTweetsResult: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - timeline_v2: - $ref: '#/components/schemas/TimelineV2' - required: - - __typename - - timeline_v2 - UserTweetsUser: - properties: - result: - $ref: '#/components/schemas/UserTweetsResult' - required: - - result - UserUnavailable: - properties: - __typename: - $ref: '#/components/schemas/TypeName' - message: - type: string - reason: - type: string - required: - - __typename - - reason - UserUnion: - discriminator: - mapping": - User: '#/components/schemas/User' - UserUnavailable: '#/components/schemas/UserUnavailable' - propertyName: __typename - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/UserUnavailable' - UserValue: - properties: - id_str: - pattern: ^[0-9]+$ - type: string - required: - - id_str - UserVerificationInfo: - properties: - is_identity_verified: - type: boolean - reason: - $ref: '#/components/schemas/UserVerificationInfoReason' - required: - - is_identity_verified - UserVerificationInfoReason: - properties: - description: - $ref: '#/components/schemas/UserVerificationInfoReasonDescription' - override_verified_year: - type: integer - verified_since_msec: - pattern: ^-?[0-9]+$ - type: string - required: - - description - - verified_since_msec - - override_verified_year - UserVerificationInfoReasonDescription: - properties: - entities: - items: - $ref: '#/components/schemas/UserVerificationInfoReasonDescriptionEntities' - type: array - text: - type: string - required: - - text - - entities - UserVerificationInfoReasonDescriptionEntities: - properties: - from_index: - type: integer - ref: - $ref: '#/components/schemas/UserVerificationInfoReasonDescriptionEntitiesRef' - to_index: - type: integer - required: - - from_index - - to_index - - ref - UserVerificationInfoReasonDescriptionEntitiesRef: - properties: - url: - format: uri - type: string - url_type: - enum: - - ExternalUrl - type: string - required: - - url - - url_type - UsersResponse: - properties: - data: - $ref: '#/components/schemas/UsersResponseData' - required: - - data - UsersResponseData: - properties: - users: - items: - $ref: '#/components/schemas/UserResults' - type: array - required: - - users - securitySchemes: - Accept: - description: '*/*' - in: header - name: Accept - type: apiKey - AcceptEncoding: - description: gzip, deflate, br, zstd - in: header - name: Accept-Encoding - type: apiKey - AcceptLanguage: - description: en-US,en;q=0.9 - in: header - name: Accept-Language - type: apiKey - ActiveUser: - description: 'yes' - in: header - name: x-twitter-active-user - type: apiKey - AuthType: - description: OAuth2Session if you are logged in - in: header - name: x-twitter-auth-type - type: apiKey - BearerAuth: - description: AAAAAAAAAAAAAAAAAAAAANRILgAAAAAAnNwIzUejRCOuH5E6I8xnZz4puTs%3D1Zv7ttfk8LF81IUq16cHjhLTvJu4FA33AGWWjCpTnA - scheme: bearer - type: http - ClientLanguage: - description: en - in: header - name: x-twitter-client-language - type: apiKey - ClientTransactionId: - in: header - name: x-client-transaction-id - type: apiKey - ClientUuid: - description: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx - in: header - name: x-client-uuid - type: apiKey - CookieAuthToken: - description: HttpOnly cookie - in: cookie - name: auth_token - type: apiKey - CookieCt0: - description: document.cookie.split('; ').find(row => row.startsWith('ct0=')); - in: cookie - name: ct0 - type: apiKey - CookieGt0: - description: document.cookie.split('; ').find(row => row.startsWith('gt0=')); - in: cookie - name: gt0 - type: apiKey - CsrfToken: - description: document.cookie.split('; ').find(row => row.startsWith('ct0=')); - in: header - name: x-csrf-token - type: apiKey - GuestToken: - description: document.cookie.split('; ').find(row => row.startsWith('gt=')); - in: header - name: x-guest-token - type: apiKey - Referer: - description: https://x.com/home - in: header - name: Referer - type: apiKey - SecChUa: - description: '"Chromium";v="116", "Not)A;Brand";v="24", "Google Chrome";v="116"' - in: header - name: Sec-Ch-Ua - type: apiKey - SecChUaMobile: - description: ?0 - in: header - name: Sec-Ch-Ua-Mobile - type: apiKey - SecChUaPlatform: - description: '"Windows"' - in: header - name: Sec-Ch-Ua-Platform - type: apiKey - SecFetchDest: - description: empty - in: header - name: Sec-Fetch-Dest - type: apiKey - SecFetchMode: - description: cors - in: header - name: Sec-Fetch-Mode - type: apiKey - SecFetchSite: - description: same-origin - in: header - name: Sec-Fetch-Site - type: apiKey - UserAgent: - description: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, - like Gecko) Chrome/130.0.0.0 Safari/537.36 - in: header - name: user-agent - type: apiKey -info: - contact: - email: yuki@yuki0311.com - description: Twitter OpenAPI(Swagger) specification - license: - name: custom license or AGPL-3.0-or-later - url: https://github.com/fa0311/twitter-openapi#license - termsOfService: https://github.com/fa0311 - title: Twitter OpenAPI - version: 0.0.1 -openapi: 3.0.3 -paths: - /1.1/friends/following/list.json: - get: - description: get friends following list - operationId: getFriendsFollowingList - parameters: - - in: query - name: include_profile_interstitial_type - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_blocking - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_blocked_by - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_followed_by - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_want_retweets - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_mute_edge - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_can_dm - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_can_media_tag - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_ext_has_nft_avatar - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_ext_is_blue_verified - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_ext_verified_type - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_ext_profile_image_shape - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: skip_status - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: cursor - required: true - schema: - default: -1 - example: -1 - type: integer - - in: query - name: user_id - required: true - schema: - default: '44196397' - example: '44196397' - type: string - - in: query - name: count - required: true - schema: - default: 3 - example: 3 - type: integer - - in: query - name: with_total_count - required: true - schema: - default: true - example: true - type: boolean - responses: - '200': - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - v1.1-get - /1.1/friendships/create.json: - post: - description: post create friendships - operationId: postCreateFriendships - parameters: [] - requestBody: - content: - application/x-www-form-urlencoded: - schema: - properties: - include_blocked_by: - default: 1 - example: 1 - type: integer - include_blocking: - default: 1 - example: 1 - type: integer - include_can_dm: - default: 1 - example: 1 - type: integer - include_can_media_tag: - default: 1 - example: 1 - type: integer - include_ext_has_nft_avatar: - default: 1 - example: 1 - type: integer - include_ext_is_blue_verified: - default: 1 - example: 1 - type: integer - include_ext_profile_image_shape: - default: 1 - example: 1 - type: integer - include_ext_verified_type: - default: 1 - example: 1 - type: integer - include_followed_by: - default: 1 - example: 1 - type: integer - include_mute_edge: - default: 1 - example: 1 - type: integer - include_profile_interstitial_type: - default: 1 - example: 1 - type: integer - include_want_retweets: - default: 1 - example: 1 - type: integer - skip_status: - default: 1 - example: 1 - type: integer - user_id: - default: '44196397' - example: '44196397' - type: string - required: - - include_profile_interstitial_type - - include_blocking - - include_blocked_by - - include_followed_by - - include_want_retweets - - include_mute_edge - - include_can_dm - - include_can_media_tag - - include_ext_has_nft_avatar - - include_ext_is_blue_verified - - include_ext_verified_type - - include_ext_profile_image_shape - - skip_status - - user_id - description: body - required: true - responses: - '200': - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - v1.1-post - /1.1/friendships/destroy.json: - post: - description: post destroy friendships - operationId: postDestroyFriendships - parameters: [] - requestBody: - content: - application/x-www-form-urlencoded: - schema: - properties: - include_blocked_by: - default: 1 - example: 1 - type: integer - include_blocking: - default: 1 - example: 1 - type: integer - include_can_dm: - default: 1 - example: 1 - type: integer - include_can_media_tag: - default: 1 - example: 1 - type: integer - include_ext_has_nft_avatar: - default: 1 - example: 1 - type: integer - include_ext_is_blue_verified: - default: 1 - example: 1 - type: integer - include_ext_profile_image_shape: - default: 1 - example: 1 - type: integer - include_ext_verified_type: - default: 1 - example: 1 - type: integer - include_followed_by: - default: 1 - example: 1 - type: integer - include_mute_edge: - default: 1 - example: 1 - type: integer - include_profile_interstitial_type: - default: 1 - example: 1 - type: integer - include_want_retweets: - default: 1 - example: 1 - type: integer - skip_status: - default: 1 - example: 1 - type: integer - user_id: - default: '44196397' - example: '44196397' - type: string - required: - - include_profile_interstitial_type - - include_blocking - - include_blocked_by - - include_followed_by - - include_want_retweets - - include_mute_edge - - include_can_dm - - include_can_media_tag - - include_ext_has_nft_avatar - - include_ext_is_blue_verified - - include_ext_verified_type - - include_ext_profile_image_shape - - skip_status - - user_id - description: body - required: true - responses: - '200': - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - v1.1-post - /1.1/search/typeahead.json: - get: - description: get search typeahead - operationId: getSearchTypeahead - parameters: - - in: query - name: include_ext_is_blue_verified - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_ext_verified_type - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_ext_profile_image_shape - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: q - required: true - schema: - default: test - example: test - type: string - - in: query - name: src - required: true - schema: - default: search_box - example: search_box - type: string - - in: query - name: result_type - required: true - schema: - default: events,users,topics - example: events,users,topics - type: string - responses: - '200': - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - v1.1-get - /2/search/adaptive.json: - get: - description: get search adaptive - operationId: getSearchAdaptive - parameters: - - in: query - name: include_profile_interstitial_type - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_blocking - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_blocked_by - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_followed_by - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_want_retweets - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_mute_edge - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_can_dm - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_can_media_tag - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_ext_has_nft_avatar - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_ext_is_blue_verified - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_ext_verified_type - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_ext_profile_image_shape - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: skip_status - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: cards_platform - required: true - schema: - default: Web-12 - example: Web-12 - type: string - - in: query - name: include_cards - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_ext_alt_text - required: true - schema: - default: true - example: true - type: boolean - - in: query - name: include_ext_limited_action_results - required: true - schema: - default: false - example: false - type: boolean - - in: query - name: include_quote_count - required: true - schema: - default: true - example: true - type: boolean - - in: query - name: include_reply_count - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: tweet_mode - required: true - schema: - default: extended - example: extended - type: string - - in: query - name: include_ext_views - required: true - schema: - default: true - example: true - type: boolean - - in: query - name: include_entities - required: true - schema: - default: true - example: true - type: boolean - - in: query - name: include_user_entities - required: true - schema: - default: true - example: true - type: boolean - - in: query - name: include_ext_media_color - required: true - schema: - default: true - example: true - type: boolean - - in: query - name: include_ext_media_availability - required: true - schema: - default: true - example: true - type: boolean - - in: query - name: include_ext_sensitive_media_warning - required: true - schema: - default: true - example: true - type: boolean - - in: query - name: include_ext_trusted_friends_metadata - required: true - schema: - default: true - example: true - type: boolean - - in: query - name: send_error_codes - required: true - schema: - default: true - example: true - type: boolean - - in: query - name: simple_quoted_tweet - required: true - schema: - default: true - example: true - type: boolean - - in: query - name: q - required: true - schema: - default: elon musk - example: elon musk - type: string - - in: query - name: query_source - required: true - schema: - default: trend_click - example: trend_click - type: string - - in: query - name: count - required: true - schema: - default: 20 - example: 20 - type: integer - - in: query - name: requestContext - required: true - schema: - default: launch - example: launch - type: string - - in: query - name: pc - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: spelling_corrections - required: true - schema: - default: 1 - example: 1 - type: integer - - in: query - name: include_ext_edit_control - required: true - schema: - default: true - example: true - type: boolean - - in: query - name: ext - required: true - schema: - default: mediaStats,highlightedLabel,hasNftAvatar,voiceInfo,birdwatchPivot,enrichments,superFollowMetadata,unmentionInfo,editControl,vibe - example: mediaStats,highlightedLabel,hasNftAvatar,voiceInfo,birdwatchPivot,enrichments,superFollowMetadata,unmentionInfo,editControl,vibe - type: string - responses: - '200': - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - v2.0-get - /graphql/{pathQueryId}/Bookmarks: - get: - description: get bookmarks - operationId: getBookmarks - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: L7vvM2UluPgWOW4GDvWyvw - example: L7vvM2UluPgWOW4GDvWyvw - type: string - - in: query - name: variables - required: true - schema: - default: '{"count": 20, "includePromotedContent": true}' - example: '{"count": 20, "includePromotedContent": true}' - type: string - - in: query - name: features - required: true - schema: - default: '{"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, "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}' - example: '{"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, "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}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/BookmarksResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - tweet - /graphql/{pathQueryId}/CreateBookmark: - post: - description: create Bookmark - operationId: postCreateBookmark - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: aoDbu3RHznuiSkQ9aNM67Q - example: aoDbu3RHznuiSkQ9aNM67Q - type: string - requestBody: - content: - application/json: - schema: - properties: - queryId: - default: aoDbu3RHznuiSkQ9aNM67Q - example: aoDbu3RHznuiSkQ9aNM67Q - type: string - variables: - properties: - tweet_id: - default: '1349129669258448897' - example: '1349129669258448897' - type: string - required: - - tweet_id - type: object - required: - - queryId - - variables - description: body - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateBookmarkResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - post - /graphql/{pathQueryId}/CreateRetweet: - post: - description: create Retweet - operationId: postCreateRetweet - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: ojPdsZsimiJrUGLR1sjUtA - example: ojPdsZsimiJrUGLR1sjUtA - type: string - requestBody: - content: - application/json: - schema: - properties: - queryId: - default: ojPdsZsimiJrUGLR1sjUtA - example: ojPdsZsimiJrUGLR1sjUtA - type: string - variables: - properties: - dark_request: - default: false - example: false - type: boolean - tweet_id: - default: '1349129669258448897' - example: '1349129669258448897' - type: string - required: - - tweet_id - - dark_request - type: object - required: - - queryId - - variables - description: body - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateRetweetResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - post - /graphql/{pathQueryId}/CreateTweet: - post: - description: create Tweet - operationId: postCreateTweet - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: xT36w0XM3A8jDynpkram2A - example: xT36w0XM3A8jDynpkram2A - type: string - requestBody: - content: - application/json: - schema: - properties: - features: - properties: - articles_preview_enabled: - default: true - example: true - type: boolean - c9s_tweet_anatomy_moderator_badge_enabled: - default: true - example: true - type: boolean - communities_web_enable_tweet_community_results_fetch: - default: true - example: true - type: boolean - creator_subscriptions_quote_tweet_preview_enabled: - default: false - example: false - type: boolean - freedom_of_speech_not_reach_fetch_enabled: - default: true - example: true - type: boolean - graphql_is_translatable_rweb_tweet_is_translatable_enabled: - default: true - example: true - type: boolean - longform_notetweets_consumption_enabled: - default: true - example: true - type: boolean - longform_notetweets_inline_media_enabled: - default: true - example: true - type: boolean - longform_notetweets_rich_text_read_enabled: - default: true - example: true - type: boolean - responsive_web_edit_tweet_api_enabled: - default: true - example: true - type: boolean - responsive_web_enhance_cards_enabled: - default: false - example: false - type: boolean - responsive_web_graphql_exclude_directive_enabled: - default: true - example: true - type: boolean - responsive_web_graphql_skip_user_profile_image_extensions_enabled: - default: false - example: false - type: boolean - responsive_web_graphql_timeline_navigation_enabled: - default: true - example: true - type: boolean - responsive_web_twitter_article_tweet_consumption_enabled: - default: true - example: true - type: boolean - rweb_tipjar_consumption_enabled: - default: true - example: true - type: boolean - rweb_video_timestamps_enabled: - default: true - example: true - type: boolean - standardized_nudges_misinfo: - default: true - example: true - type: boolean - tweet_awards_web_tipping_enabled: - default: false - example: false - type: boolean - tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled: - default: true - example: true - type: boolean - verified_phone_label_enabled: - default: false - example: false - type: boolean - view_counts_everywhere_api_enabled: - default: true - example: true - type: boolean - required: - - communities_web_enable_tweet_community_results_fetch - - c9s_tweet_anatomy_moderator_badge_enabled - - responsive_web_edit_tweet_api_enabled - - graphql_is_translatable_rweb_tweet_is_translatable_enabled - - view_counts_everywhere_api_enabled - - longform_notetweets_consumption_enabled - - responsive_web_twitter_article_tweet_consumption_enabled - - tweet_awards_web_tipping_enabled - - creator_subscriptions_quote_tweet_preview_enabled - - longform_notetweets_rich_text_read_enabled - - longform_notetweets_inline_media_enabled - - articles_preview_enabled - - rweb_video_timestamps_enabled - - rweb_tipjar_consumption_enabled - - responsive_web_graphql_exclude_directive_enabled - - verified_phone_label_enabled - - freedom_of_speech_not_reach_fetch_enabled - - standardized_nudges_misinfo - - tweet_with_visibility_results_prefer_gql_limited_actions_policy_enabled - - responsive_web_graphql_skip_user_profile_image_extensions_enabled - - responsive_web_graphql_timeline_navigation_enabled - - responsive_web_enhance_cards_enabled - type: object - queryId: - default: xT36w0XM3A8jDynpkram2A - example: xT36w0XM3A8jDynpkram2A - type: string - variables: - properties: - attachment_url: - default: https://x.com/elonmusk/status/1349129669258448897 - example: https://x.com/elonmusk/status/1349129669258448897 - type: string - conversation_control: - properties: - mode: - default: Community - example: Community - type: string - required: - - mode - type: object - dark_request: - default: false - example: false - type: boolean - disallowed_reply_options: - properties: {} - type: object - media: - properties: - media_entities: - items: - properties: - media_id: - default: '1111111111111111111' - example: '1111111111111111111' - type: string - tagged_users: - items: - default: '44196397' - example: '44196397' - type: string - type: array - required: - - media_id - - tagged_users - type: object - type: array - possibly_sensitive: - default: false - example: false - type: boolean - required: - - possibly_sensitive - type: object - reply: - properties: - exclude_reply_user_ids: - items: - type: object - type: array - in_reply_to_tweet_id: - default: '1111111111111111111' - example: '1111111111111111111' - type: string - required: - - in_reply_to_tweet_id - - exclude_reply_user_ids - type: object - semantic_annotation_ids: - items: - type: object - type: array - tweet_text: - default: test - example: test - type: string - required: - - tweet_text - - media - - semantic_annotation_ids - - dark_request - type: object - required: - - queryId - - variables - - features - description: body - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateTweetResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - post - /graphql/{pathQueryId}/DeleteBookmark: - post: - description: delete Bookmark - operationId: postDeleteBookmark - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: Wlmlj2-xzyS1GN3a6cj-mQ - example: Wlmlj2-xzyS1GN3a6cj-mQ - type: string - requestBody: - content: - application/json: - schema: - properties: - queryId: - default: Wlmlj2-xzyS1GN3a6cj-mQ - example: Wlmlj2-xzyS1GN3a6cj-mQ - type: string - variables: - properties: - tweet_id: - default: '1349129669258448897' - example: '1349129669258448897' - type: string - required: - - tweet_id - type: object - required: - - queryId - - variables - description: body - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DeleteBookmarkResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - post - /graphql/{pathQueryId}/DeleteRetweet: - post: - description: delete Retweet - operationId: postDeleteRetweet - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: iQtK4dl5hBmXewYZuEOKVw - example: iQtK4dl5hBmXewYZuEOKVw - type: string - requestBody: - content: - application/json: - schema: - properties: - queryId: - default: iQtK4dl5hBmXewYZuEOKVw - example: iQtK4dl5hBmXewYZuEOKVw - type: string - variables: - properties: - dark_request: - default: false - example: false - type: boolean - source_tweet_id: - default: '1349129669258448897' - example: '1349129669258448897' - type: string - required: - - source_tweet_id - - dark_request - type: object - required: - - queryId - - variables - description: body - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DeleteRetweetResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - post - /graphql/{pathQueryId}/DeleteTweet: - post: - description: delete Retweet - operationId: postDeleteTweet - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: VaenaVgh5q5ih7kvyVjgtg - example: VaenaVgh5q5ih7kvyVjgtg - type: string - requestBody: - content: - application/json: - schema: - properties: - queryId: - default: VaenaVgh5q5ih7kvyVjgtg - example: VaenaVgh5q5ih7kvyVjgtg - type: string - variables: - properties: - dark_request: - default: false - example: false - type: boolean - tweet_id: - default: '1349129669258448897' - example: '1349129669258448897' - type: string - required: - - tweet_id - - dark_request - type: object - required: - - queryId - - variables - description: body - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DeleteTweetResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - post - /graphql/{pathQueryId}/FavoriteTweet: - post: - description: favorite Tweet - operationId: postFavoriteTweet - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: lI07N6Otwv1PhnEgXILM7A - example: lI07N6Otwv1PhnEgXILM7A - type: string - requestBody: - content: - application/json: - schema: - properties: - queryId: - default: lI07N6Otwv1PhnEgXILM7A - example: lI07N6Otwv1PhnEgXILM7A - type: string - variables: - properties: - tweet_id: - default: '1349129669258448897' - example: '1349129669258448897' - type: string - required: - - tweet_id - type: object - required: - - queryId - - variables - description: body - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/FavoriteTweetResponseData' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - post - /graphql/{pathQueryId}/Favoriters: - get: - description: get tweet favoriters - operationId: getFavoriters - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: riUYr3PwuHNe4tCmzjPNrg - example: riUYr3PwuHNe4tCmzjPNrg - type: string - - in: query - name: variables - required: true - schema: - default: '{"tweetId": "1349129669258448897", "count": 20, "includePromotedContent": - true}' - example: '{"tweetId": "1349129669258448897", "count": 20, "includePromotedContent": - true}' - type: string - - in: query - name: features - required: true - schema: - default: '{"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}' - example: '{"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}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TweetFavoritersResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - user-list - /graphql/{pathQueryId}/Followers: - get: - description: get user list of followers - operationId: getFollowers - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: OSXFkKmGvfw_6pGgGtkWFg - example: OSXFkKmGvfw_6pGgGtkWFg - type: string - - in: query - name: variables - required: true - schema: - default: '{"userId": "44196397", "count": 20, "includePromotedContent": - false}' - example: '{"userId": "44196397", "count": 20, "includePromotedContent": - false}' - type: string - - in: query - name: features - required: true - schema: - default: '{"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}' - example: '{"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}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/FollowResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - user-list - /graphql/{pathQueryId}/FollowersYouKnow: - get: - description: get followers you know - operationId: getFollowersYouKnow - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: 52sUpz5G7XvESPWgKW9i9Q - example: 52sUpz5G7XvESPWgKW9i9Q - type: string - - in: query - name: variables - required: true - schema: - default: '{"userId": "44196397", "count": 20, "includePromotedContent": - false}' - example: '{"userId": "44196397", "count": 20, "includePromotedContent": - false}' - type: string - - in: query - name: features - required: true - schema: - default: '{"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}' - example: '{"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}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/FollowResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - user-list - /graphql/{pathQueryId}/Following: - get: - description: get user list of following - operationId: getFollowing - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: 7oQrdmth4zE3EtD42ZxgOA - example: 7oQrdmth4zE3EtD42ZxgOA - type: string - - in: query - name: variables - required: true - schema: - default: '{"userId": "44196397", "count": 20, "includePromotedContent": - false}' - example: '{"userId": "44196397", "count": 20, "includePromotedContent": - false}' - type: string - - in: query - name: features - required: true - schema: - default: '{"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}' - example: '{"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}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/FollowResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - user-list - /graphql/{pathQueryId}/HomeLatestTimeline: - get: - description: get tweet list of timeline - operationId: getHomeLatestTimeline - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: HyuV8ml52TYmyUjyrDq1CQ - example: HyuV8ml52TYmyUjyrDq1CQ - type: string - - in: query - name: variables - required: true - schema: - default: '{"count": 20, "includePromotedContent": true, "latestControlAvailable": - true, "requestContext": "launch", "seenTweetIds": ["1349129669258448897"]}' - example: '{"count": 20, "includePromotedContent": true, "latestControlAvailable": - true, "requestContext": "launch", "seenTweetIds": ["1349129669258448897"]}' - type: string - - in: query - name: features - required: true - schema: - default: '{"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}' - example: '{"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}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TimelineResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - tweet - /graphql/{pathQueryId}/HomeTimeline: - get: - description: get tweet list of timeline - operationId: getHomeTimeline - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: E6AtJXVPtK7nIHAntKc5fA - example: E6AtJXVPtK7nIHAntKc5fA - type: string - - in: query - name: variables - required: true - schema: - default: '{"count": 20, "includePromotedContent": true, "latestControlAvailable": - true, "requestContext": "launch", "seenTweetIds": ["1349129669258448897"], - "withCommunity": true}' - example: '{"count": 20, "includePromotedContent": true, "latestControlAvailable": - true, "requestContext": "launch", "seenTweetIds": ["1349129669258448897"], - "withCommunity": true}' - type: string - - in: query - name: features - required: true - schema: - default: '{"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}' - example: '{"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}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TimelineResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - tweet - /graphql/{pathQueryId}/Likes: - get: - description: get user likes tweets - operationId: getLikes - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: px6_YxfWkXo0odY84iqqmw - example: px6_YxfWkXo0odY84iqqmw - type: string - - in: query - name: variables - required: true - schema: - default: '{"userId": "44196397", "count": 20, "includePromotedContent": - false, "withClientEventToken": false, "withBirdwatchNotes": false, "withVoice": - true, "withV2Timeline": true}' - example: '{"userId": "44196397", "count": 20, "includePromotedContent": - false, "withClientEventToken": false, "withBirdwatchNotes": false, "withVoice": - true, "withV2Timeline": true}' - type: string - - in: query - name: features - required: true - schema: - default: '{"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}' - example: '{"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}' - type: string - - in: query - name: fieldToggles - required: true - schema: - default: '{"withArticlePlainText": false}' - example: '{"withArticlePlainText": false}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserTweetsResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - tweet - /graphql/{pathQueryId}/ListLatestTweetsTimeline: - get: - description: get tweet list of timeline - operationId: getListLatestTweetsTimeline - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: f-Lsj0rHCztXcgdo585UUw - example: f-Lsj0rHCztXcgdo585UUw - type: string - - in: query - name: variables - required: true - schema: - default: '{"listId": "1539453138322673664", "count": 20}' - example: '{"listId": "1539453138322673664", "count": 20}' - type: string - - in: query - name: features - required: true - schema: - default: '{"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}' - example: '{"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}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListLatestTweetsTimelineResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - tweet - /graphql/{pathQueryId}/ProfileSpotlightsQuery: - get: - description: get user by screen name - operationId: getProfileSpotlightsQuery - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: -0XdHI-mrHWBQd8-oLo1aA - example: -0XdHI-mrHWBQd8-oLo1aA - type: string - - in: query - name: variables - required: true - schema: - default: '{"screen_name": "elonmusk"}' - example: '{"screen_name": "elonmusk"}' - type: string - - in: query - name: features - required: true - schema: - default: '{}' - example: '{}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ProfileResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - /graphql/{pathQueryId}/Retweeters: - get: - description: get tweet retweeters - operationId: getRetweeters - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: rPcOnVhyaTBQrVgPuY7x7A - example: rPcOnVhyaTBQrVgPuY7x7A - type: string - - in: query - name: variables - required: true - schema: - default: '{"tweetId": "1349129669258448897", "count": 20, "includePromotedContent": - true}' - example: '{"tweetId": "1349129669258448897", "count": 20, "includePromotedContent": - true}' - type: string - - in: query - name: features - required: true - schema: - default: '{"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}' - example: '{"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}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TweetRetweetersResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - user-list - /graphql/{pathQueryId}/SearchTimeline: - get: - description: search tweet list. product:[Top, Latest, People, Photos, Videos] - operationId: getSearchTimeline - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: MJpyQGqgklrVl_0X9gNy3A - example: MJpyQGqgklrVl_0X9gNy3A - type: string - - in: query - name: variables - required: true - schema: - default: '{"rawQuery": "elonmusk", "count": 20, "querySource": "typed_query", - "product": "Top"}' - example: '{"rawQuery": "elonmusk", "count": 20, "querySource": "typed_query", - "product": "Top"}' - type: string - - in: query - name: features - required: true - schema: - default: '{"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}' - example: '{"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}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SearchTimelineResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - tweet - /graphql/{pathQueryId}/TweetDetail: - get: - description: get TweetDetail - operationId: getTweetDetail - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: nBS-WpgA6ZG0CyNHD517JQ - example: nBS-WpgA6ZG0CyNHD517JQ - type: string - - in: query - name: variables - required: true - schema: - default: '{"focalTweetId": "1349129669258448897", "referrer": "home", "with_rux_injections": - false, "rankingMode": "Relevance", "includePromotedContent": true, "withCommunity": - true, "withQuickPromoteEligibilityTweetFields": true, "withBirdwatchNotes": - true, "withVoice": true}' - example: '{"focalTweetId": "1349129669258448897", "referrer": "home", "with_rux_injections": - false, "rankingMode": "Relevance", "includePromotedContent": true, "withCommunity": - true, "withQuickPromoteEligibilityTweetFields": true, "withBirdwatchNotes": - true, "withVoice": true}' - type: string - - in: query - name: features - required: true - schema: - default: '{"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}' - example: '{"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}' - type: string - - in: query - name: fieldToggles - required: true - schema: - default: '{"withArticleRichContentState": true, "withArticlePlainText": - false, "withGrokAnalyze": false, "withDisallowedReplyControls": false}' - example: '{"withArticleRichContentState": true, "withArticlePlainText": - false, "withGrokAnalyze": false, "withDisallowedReplyControls": false}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TweetDetailResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - tweet - /graphql/{pathQueryId}/TweetResultByRestId: - get: - description: get TweetResultByRestId - operationId: getTweetResultByRestId - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: 7xflPyRiUxGVbJd4uWmbfg - example: 7xflPyRiUxGVbJd4uWmbfg - type: string - - in: query - name: variables - required: true - schema: - default: '{"tweetId": "1691730070669517096", "withCommunity": false, "includePromotedContent": - false, "withVoice": false}' - example: '{"tweetId": "1691730070669517096", "withCommunity": false, "includePromotedContent": - false, "withVoice": false}' - type: string - - in: query - name: features - required: true - schema: - default: '{"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, "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, "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, "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, "responsive_web_enhance_cards_enabled": - false}' - example: '{"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, "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, "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, "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, "responsive_web_enhance_cards_enabled": - false}' - type: string - - in: query - name: fieldToggles - required: true - schema: - default: '{"withArticleRichContentState": true, "withArticlePlainText": - false}' - example: '{"withArticleRichContentState": true, "withArticlePlainText": - false}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TweetResultByRestIdResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - /graphql/{pathQueryId}/UnfavoriteTweet: - post: - description: unfavorite Tweet - operationId: postUnfavoriteTweet - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: ZYKSe-w7KEslx3JhSIk5LA - example: ZYKSe-w7KEslx3JhSIk5LA - type: string - requestBody: - content: - application/json: - schema: - properties: - queryId: - default: ZYKSe-w7KEslx3JhSIk5LA - example: ZYKSe-w7KEslx3JhSIk5LA - type: string - variables: - properties: - dark_request: - default: false - example: false - type: boolean - tweet_id: - default: '1349129669258448897' - example: '1349129669258448897' - type: string - required: - - tweet_id - - dark_request - type: object - required: - - queryId - - variables - description: body - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UnfavoriteTweetResponseData' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - post - /graphql/{pathQueryId}/UserByRestId: - get: - description: get user by rest id - operationId: getUserByRestId - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: tD8zKvQzwY3kdx5yz6YmOw - example: tD8zKvQzwY3kdx5yz6YmOw - type: string - - in: query - name: variables - required: true - schema: - default: '{"userId": "44196397", "withSafetyModeUserFields": true}' - example: '{"userId": "44196397", "withSafetyModeUserFields": true}' - type: string - - in: query - name: features - required: true - schema: - default: '{"hidden_profile_likes_enabled": true, "hidden_profile_subscriptions_enabled": - true, "responsive_web_graphql_exclude_directive_enabled": true, "verified_phone_label_enabled": - false, "highlights_tweets_tab_ui_enabled": true, "responsive_web_twitter_article_notes_tab_enabled": - 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}' - example: '{"hidden_profile_likes_enabled": true, "hidden_profile_subscriptions_enabled": - true, "responsive_web_graphql_exclude_directive_enabled": true, "verified_phone_label_enabled": - false, "highlights_tweets_tab_ui_enabled": true, "responsive_web_twitter_article_notes_tab_enabled": - 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}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - user - /graphql/{pathQueryId}/UserByScreenName: - get: - description: get user by screen name - operationId: getUserByScreenName - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: BQ6xjFU6Mgm-WhEP3OiT9w - example: BQ6xjFU6Mgm-WhEP3OiT9w - type: string - - in: query - name: variables - required: true - schema: - default: '{"screen_name": "elonmusk"}' - example: '{"screen_name": "elonmusk"}' - type: string - - in: query - name: features - required: true - schema: - default: '{"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}' - example: '{"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}' - type: string - - in: query - name: fieldToggles - required: true - schema: - default: '{"withAuxiliaryUserLabels": false}' - example: '{"withAuxiliaryUserLabels": false}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - user - /graphql/{pathQueryId}/UserHighlightsTweets: - get: - description: get user highlights tweets - operationId: getUserHighlightsTweets - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: Z-XscDcWUuMO5HalgHf57A - example: Z-XscDcWUuMO5HalgHf57A - type: string - - in: query - name: variables - required: true - schema: - default: '{"userId": "44196397", "count": 40, "includePromotedContent": - true, "withVoice": true}' - example: '{"userId": "44196397", "count": 40, "includePromotedContent": - true, "withVoice": true}' - type: string - - in: query - name: features - required: true - schema: - default: '{"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}' - example: '{"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}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserHighlightsTweetsResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - tweet - /graphql/{pathQueryId}/UserMedia: - get: - description: get user media tweets - operationId: getUserMedia - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: HaouMjBviBKKTYZGV_9qtg - example: HaouMjBviBKKTYZGV_9qtg - type: string - - in: query - name: variables - required: true - schema: - default: '{"userId": "44196397", "count": 40, "includePromotedContent": - false, "withClientEventToken": false, "withBirdwatchNotes": false, "withVoice": - true, "withV2Timeline": true}' - example: '{"userId": "44196397", "count": 40, "includePromotedContent": - false, "withClientEventToken": false, "withBirdwatchNotes": false, "withVoice": - true, "withV2Timeline": true}' - type: string - - in: query - name: features - required: true - schema: - default: '{"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}' - example: '{"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}' - type: string - - in: query - name: fieldToggles - required: true - schema: - default: '{"withArticlePlainText": false}' - example: '{"withArticlePlainText": false}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserTweetsResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - tweet - /graphql/{pathQueryId}/UserTweets: - get: - description: get user tweets - operationId: getUserTweets - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: Tg82Ez_kxVaJf7OPbUdbCg - example: Tg82Ez_kxVaJf7OPbUdbCg - type: string - - in: query - name: variables - required: true - schema: - default: '{"userId": "44196397", "count": 40, "includePromotedContent": - true, "withQuickPromoteEligibilityTweetFields": true, "withVoice": true, - "withV2Timeline": true}' - example: '{"userId": "44196397", "count": 40, "includePromotedContent": - true, "withQuickPromoteEligibilityTweetFields": true, "withVoice": true, - "withV2Timeline": true}' - type: string - - in: query - name: features - required: true - schema: - default: '{"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}' - example: '{"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}' - type: string - - in: query - name: fieldToggles - required: true - schema: - default: '{"withArticlePlainText": false}' - example: '{"withArticlePlainText": false}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserTweetsResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - tweet - /graphql/{pathQueryId}/UserTweetsAndReplies: - get: - description: get user replies tweets - operationId: getUserTweetsAndReplies - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: HmWGzuzXoI6uFqqX6QNhEg - example: HmWGzuzXoI6uFqqX6QNhEg - type: string - - in: query - name: variables - required: true - schema: - default: '{"userId": "44196397", "count": 40, "includePromotedContent": - true, "withCommunity": true, "withVoice": true, "withV2Timeline": true}' - example: '{"userId": "44196397", "count": 40, "includePromotedContent": - true, "withCommunity": true, "withVoice": true, "withV2Timeline": true}' - type: string - - in: query - name: features - required: true - schema: - default: '{"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}' - example: '{"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}' - type: string - - in: query - name: fieldToggles - required: true - schema: - default: '{"withArticlePlainText": false}' - example: '{"withArticlePlainText": false}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserTweetsResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - tweet - /graphql/{pathQueryId}/UsersByRestIds: - get: - description: get users by rest ids - operationId: getUsersByRestIds - parameters: - - in: path - name: pathQueryId - required: true - schema: - default: lc85bOG5T3IIS4u485VtBg - example: lc85bOG5T3IIS4u485VtBg - type: string - - in: query - name: variables - required: true - schema: - default: '{"userIds": ["44196397"]}' - example: '{"userIds": ["44196397"]}' - type: string - - in: query - name: features - required: true - schema: - default: '{"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}' - example: '{"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}' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UsersResponse' - description: Successful operation - headers: - x-connection-hash: - schema: - type: string - x-rate-limit-limit: - schema: - type: integer - x-rate-limit-remaining: - schema: - type: integer - x-rate-limit-reset: - schema: - type: integer - x-response-time: - schema: - type: integer - x-tfe-preserve-body: - schema: - type: boolean - x-transaction-id: - schema: - type: string - x-twitter-response-tags: - schema: - type: string - tags: - - users - /other: - get: - description: This is not an actual endpoint - operationId: other - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OtherResponse' - description: Successful operation - tags: - - other -security: -- Accept: [] -- AcceptEncoding: [] -- AcceptLanguage: [] -- Referer: [] -- SecChUa: [] -- SecChUaMobile: [] -- SecChUaPlatform: [] -- SecFetchDest: [] -- SecFetchMode: [] -- SecFetchSite: [] -- UserAgent: [] -- BearerAuth: [] -- ClientTransactionId: [] -- ClientUuid: [] -- CsrfToken: [] -- GuestToken: [] -- ActiveUser: [] -- AuthType: [] -- ClientLanguage: [] -- CookieCt0: [] -- CookieAuthToken: [] -- CookieGt0: [] -servers: -- url: https://x.com/i/api -- url: https://twitter.com/i/api -tags: -- description: Responses containing User objects. - name: user -- description: Responses containing List[User] objects. - name: users -- description: Responses containing instruction objects. - name: user-list -- description: Responses containing instruction objects. - name: tweet -- description: post - name: post -- description: legacy APIs get - name: v1.1-get -- description: legacy APIs post - name: v1.1-post -- description: legacy APIs get - name: v2.0-get -- description: legacy APIs post - name: v2.0-post -- description: other - name: other diff --git a/dist/docs/openapi-3.0.yaml b/dist/docs/openapi-3.0.yaml index dad26c3..068c9f1 100644 --- a/dist/docs/openapi-3.0.yaml +++ b/dist/docs/openapi-3.0.yaml @@ -266,14 +266,14 @@ components: properties: data: $ref: '#/components/schemas/BookmarksResponseData' - required: - - data + errors: + items: + $ref: '#/components/schemas/Error' + type: array BookmarksResponseData: properties: bookmark_timeline_v2: $ref: '#/components/schemas/BookmarksTimeline' - required: - - bookmark_timeline_v2 BookmarksTimeline: properties: timeline: @@ -577,14 +577,16 @@ components: properties: data: $ref: '#/components/schemas/CreateBookmarkResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data CreateBookmarkResponseData: properties: tweet_bookmark_put: type: string - required: - - tweet_bookmark_put CreateRetweet: properties: result: @@ -595,14 +597,16 @@ components: properties: data: $ref: '#/components/schemas/CreateRetweetResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data CreateRetweetResponseData: properties: create_retweet: $ref: '#/components/schemas/CreateRetweetResponseResult' - required: - - create_retweet CreateRetweetResponseResult: properties: retweet_results: @@ -619,14 +623,16 @@ components: properties: data: $ref: '#/components/schemas/CreateTweetResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data CreateTweetResponseData: properties: create_tweet: $ref: '#/components/schemas/CreateTweetResponseResult' - required: - - create_tweet CreateTweetResponseResult: properties: tweet_results: @@ -654,14 +660,16 @@ components: properties: data: $ref: '#/components/schemas/DeleteBookmarkResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data DeleteBookmarkResponseData: properties: tweet_bookmark_delete: type: string - required: - - tweet_bookmark_delete DeleteRetweet: properties: result: @@ -674,14 +682,16 @@ components: properties: data: $ref: '#/components/schemas/DeleteRetweetResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data DeleteRetweetResponseData: properties: create_retweet: - $ref: '#/components/schemas/CreateRetweetResponseResult' - required: - - unretweet + $ref: '#/components/schemas/DeleteRetweetResponseResult' DeleteRetweetResponseResult: properties: retweet_results: @@ -692,14 +702,16 @@ components: properties: data: $ref: '#/components/schemas/DeleteTweetResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data DeleteTweetResponseData: properties: delete_retweet: $ref: '#/components/schemas/DeleteTweetResponseResult' - required: - - delete_tweet DeleteTweetResponseResult: properties: tweet_results: @@ -811,23 +823,6 @@ components: - kind - tracing type: object - Errors: - properties: - data: - $ref: '#/components/schemas/ErrorsData' - errors: - items: - $ref: '#/components/schemas/Error' - type: array - required: - - errors - type: object - ErrorsData: - properties: - user: - pattern: dummy - type: string - type: object ExtMediaAvailability: properties: reason: @@ -849,12 +844,14 @@ components: properties: favorite_tweet: type: string - required: - - favorite_tweet - FavoriteTweetResponseData: + FavoriteTweetResponse: properties: data: $ref: '#/components/schemas/FavoriteTweet' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data FeedbackInfo: @@ -869,14 +866,16 @@ components: properties: data: $ref: '#/components/schemas/FollowResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data FollowResponseData: properties: user: $ref: '#/components/schemas/FollowResponseUser' - required: - - user FollowResponseResult: properties: __typename: @@ -920,8 +919,6 @@ components: properties: home: $ref: '#/components/schemas/HomeTimelineHome' - required: - - home InstructionType: enum: - TimelineAddEntries @@ -981,6 +978,10 @@ components: properties: data: $ref: '#/components/schemas/ListTweetsTimelineData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data ListTweetsTimeline: @@ -991,8 +992,6 @@ components: properties: list: $ref: '#/components/schemas/ListTweetsTimelineList' - required: - - list ListTweetsTimelineList: properties: tweets_timeline: @@ -1368,7 +1367,7 @@ components: required: - fetchStatus type: object - OtherResponse: + OtherObjectAll: properties: Session: $ref: '#/components/schemas/Session' @@ -1387,14 +1386,16 @@ components: properties: data: $ref: '#/components/schemas/ProfileResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data ProfileResponseData: properties: user_result_by_screen_name: $ref: '#/components/schemas/UserResultByScreenName' - required: - - user_result_by_screen_name QuotedRefResult: properties: result: @@ -1445,12 +1446,14 @@ components: properties: search_by_raw_query: $ref: '#/components/schemas/SearchByRawQuery' - required: - - search_by_raw_query SearchTimelineResponse: properties: data: $ref: '#/components/schemas/SearchTimelineData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data SelfThread: @@ -1796,6 +1799,10 @@ components: properties: data: $ref: '#/components/schemas/HomeTimelineResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data TimelineShowAlert: @@ -2195,14 +2202,16 @@ components: properties: data: $ref: '#/components/schemas/TweetDetailResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data TweetDetailResponseData: properties: threaded_conversation_with_injections_v2: $ref: '#/components/schemas/Timeline' - required: - - threaded_conversation_with_injections_v2 TweetEditControl: properties: edit_control_initial: @@ -2253,14 +2262,16 @@ components: properties: data: $ref: '#/components/schemas/TweetFavoritersResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data TweetFavoritersResponseData: properties: favoriters_timeline: $ref: '#/components/schemas/TimelineV2' - required: - - favoriters_timeline TweetInterstitial: properties: __typename: @@ -2460,26 +2471,30 @@ components: properties: tweetResult: $ref: '#/components/schemas/ItemResult' - required: - - tweetResult TweetResultByRestIdResponse: properties: data: $ref: '#/components/schemas/TweetResultByRestIdData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data TweetRetweetersResponse: properties: data: $ref: '#/components/schemas/TweetRetweetersResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data TweetRetweetersResponseData: properties: retweeters_timeline: $ref: '#/components/schemas/TimelineV2' - required: - - retweeters_timeline TweetTombstone: additionalProperties: true properties: @@ -2569,12 +2584,14 @@ components: properties: unfavorite_tweet: type: string - required: - - unfavorite_tweet - UnfavoriteTweetResponseData: + UnfavoriteTweetResponse: properties: data: $ref: '#/components/schemas/UnfavoriteTweet' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data UnifiedCard: @@ -2710,12 +2727,14 @@ components: properties: user: $ref: '#/components/schemas/UserHighlightsTweetsUser' - required: - - user UserHighlightsTweetsResponse: properties: data: $ref: '#/components/schemas/UserHighlightsTweetsData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data UserHighlightsTweetsResult: @@ -2930,6 +2949,10 @@ components: properties: data: $ref: '#/components/schemas/UserResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data UserResponseData: @@ -3015,12 +3038,14 @@ components: properties: user: $ref: '#/components/schemas/UserTweetsUser' - required: - - user UserTweetsResponse: properties: data: $ref: '#/components/schemas/UserTweetsData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data UserTweetsResult: @@ -3125,6 +3150,10 @@ components: properties: data: $ref: '#/components/schemas/UsersResponseData' + errors: + items: + $ref: '#/components/schemas/Error' + type: array required: - data UsersResponseData: @@ -3133,8 +3162,6 @@ components: items: $ref: '#/components/schemas/UserResults' type: array - required: - - users securitySchemes: Accept: description: '*/*' @@ -4173,9 +4200,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/BookmarksResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/BookmarksResponse' description: Successful operation headers: x-connection-hash: @@ -4244,9 +4269,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/CreateBookmarkResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/CreateBookmarkResponse' description: Successful operation headers: x-connection-hash: @@ -4320,9 +4343,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/CreateRetweetResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/CreateRetweetResponse' description: Successful operation headers: x-connection-hash: @@ -4574,9 +4595,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/CreateTweetResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/CreateTweetResponse' description: Successful operation headers: x-connection-hash: @@ -4645,9 +4664,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/DeleteBookmarkResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/DeleteBookmarkResponse' description: Successful operation headers: x-connection-hash: @@ -4721,9 +4738,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/DeleteRetweetResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/DeleteRetweetResponse' description: Successful operation headers: x-connection-hash: @@ -4797,9 +4812,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/DeleteTweetResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/DeleteTweetResponse' description: Successful operation headers: x-connection-hash: @@ -4868,9 +4881,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/FavoriteTweetResponseData' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/FavoriteTweetResponse' description: Successful operation headers: x-connection-hash: @@ -5064,9 +5075,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/TweetFavoritersResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/TweetFavoritersResponse' description: Successful operation headers: x-connection-hash: @@ -5260,9 +5269,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/FollowResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/FollowResponse' description: Successful operation headers: x-connection-hash: @@ -5456,9 +5463,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/FollowResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/FollowResponse' description: Successful operation headers: x-connection-hash: @@ -5652,9 +5657,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/FollowResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/FollowResponse' description: Successful operation headers: x-connection-hash: @@ -5860,9 +5863,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/TimelineResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/TimelineResponse' description: Successful operation headers: x-connection-hash: @@ -6073,9 +6074,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/TimelineResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/TimelineResponse' description: Successful operation headers: x-connection-hash: @@ -6303,9 +6302,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/UserTweetsResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/UserTweetsResponse' description: Successful operation headers: x-connection-hash: @@ -6494,9 +6491,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/ListLatestTweetsTimelineResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/ListLatestTweetsTimelineResponse' description: Successful operation headers: x-connection-hash: @@ -6564,9 +6559,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/ProfileResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/ProfileResponse' description: Successful operation headers: x-connection-hash: @@ -6758,9 +6751,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/TweetRetweetersResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/TweetRetweetersResponse' description: Successful operation headers: x-connection-hash: @@ -6959,9 +6950,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/SearchTimelineResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/SearchTimelineResponse' description: Successful operation headers: x-connection-hash: @@ -7214,9 +7203,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/TweetDetailResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/TweetDetailResponse' description: Successful operation headers: x-connection-hash: @@ -7444,9 +7431,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/TweetResultByRestIdResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/TweetResultByRestIdResponse' description: Successful operation headers: x-connection-hash: @@ -7518,9 +7503,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/UnfavoriteTweetResponseData' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/UnfavoriteTweetResponse' description: Successful operation headers: x-connection-hash: @@ -7639,9 +7622,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/UserResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/UserResponse' description: Successful operation headers: x-connection-hash: @@ -7784,9 +7765,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/UserResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/UserResponse' description: Successful operation headers: x-connection-hash: @@ -7985,9 +7964,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/UserHighlightsTweetsResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/UserHighlightsTweetsResponse' description: Successful operation headers: x-connection-hash: @@ -8215,9 +8192,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/UserTweetsResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/UserTweetsResponse' description: Successful operation headers: x-connection-hash: @@ -8440,9 +8415,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/UserTweetsResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/UserTweetsResponse' description: Successful operation headers: x-connection-hash: @@ -8665,9 +8638,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/UserTweetsResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/UserTweetsResponse' description: Successful operation headers: x-connection-hash: @@ -8763,9 +8734,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: '#/components/schemas/UsersResponse' - - $ref: '#/components/schemas/Errors' + $ref: '#/components/schemas/UsersResponse' description: Successful operation headers: x-connection-hash: @@ -8803,7 +8772,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/OtherResponse' + $ref: '#/components/schemas/OtherObjectAll' description: Successful operation tags: - other diff --git a/src/openapi/paths/bookmarks.yaml b/src/openapi/paths/bookmarks.yaml index 160b40d..f063bca 100644 --- a/src/openapi/paths/bookmarks.yaml +++ b/src/openapi/paths/bookmarks.yaml @@ -14,24 +14,22 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/BookmarksResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/BookmarksResponse" tags: - "tweet" components: schemas: BookmarksResponse: - required: - - "data" properties: data: $ref: "#/components/schemas/BookmarksResponseData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" BookmarksResponseData: - required: - - "bookmark_timeline_v2" properties: bookmark_timeline_v2: $ref: "#/components/schemas/BookmarksTimeline" diff --git a/src/openapi/paths/follow.yaml b/src/openapi/paths/follow.yaml index 8861f35..89b662d 100644 --- a/src/openapi/paths/follow.yaml +++ b/src/openapi/paths/follow.yaml @@ -14,9 +14,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/FollowResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/FollowResponse" tags: - "user-list" @@ -30,9 +28,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/FollowResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/FollowResponse" tags: - "user-list" @@ -46,9 +42,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/FollowResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/FollowResponse" tags: - "user-list" @@ -60,10 +54,12 @@ components: properties: data: $ref: "#/components/schemas/FollowResponseData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" FollowResponseData: - required: - - "user" properties: user: $ref: "#/components/schemas/FollowResponseUser" diff --git a/src/openapi/paths/other.yaml b/src/openapi/paths/other.yaml index 40820dd..c4e3a57 100644 --- a/src/openapi/paths/other.yaml +++ b/src/openapi/paths/other.yaml @@ -14,13 +14,13 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/OtherResponse" + $ref: "#/components/schemas/OtherObjectAll" tags: - "other" components: schemas: - OtherResponse: + OtherObjectAll: type: object properties: Session: diff --git a/src/openapi/paths/post.yaml b/src/openapi/paths/post.yaml index cb9f623..458f71b 100644 --- a/src/openapi/paths/post.yaml +++ b/src/openapi/paths/post.yaml @@ -14,9 +14,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/FavoriteTweetResponseData" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/FavoriteTweetResponse" tags: - "post" @@ -30,9 +28,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/UnfavoriteTweetResponseData" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/UnfavoriteTweetResponse" tags: - "post" @@ -46,9 +42,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/CreateRetweetResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/CreateRetweetResponse" tags: - "post" @@ -62,9 +56,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/DeleteRetweetResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/DeleteRetweetResponse" tags: - "post" @@ -78,9 +70,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/CreateTweetResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/CreateTweetResponse" tags: - "post" @@ -94,9 +84,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/DeleteTweetResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/DeleteTweetResponse" tags: - "post" @@ -110,9 +98,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/CreateBookmarkResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/CreateBookmarkResponse" tags: - "post" @@ -126,38 +112,43 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/DeleteBookmarkResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/DeleteBookmarkResponse" tags: - "post" components: schemas: - FavoriteTweetResponseData: + # ---Favorite--- + FavoriteTweetResponse: required: - "data" properties: data: $ref: "#/components/schemas/FavoriteTweet" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" FavoriteTweet: - required: - - "favorite_tweet" properties: favorite_tweet: type: string - UnfavoriteTweetResponseData: + # ---Unfavorite--- + + UnfavoriteTweetResponse: required: - "data" properties: data: $ref: "#/components/schemas/UnfavoriteTweet" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" UnfavoriteTweet: - required: - - "unfavorite_tweet" properties: unfavorite_tweet: type: string @@ -170,10 +161,12 @@ components: properties: data: $ref: "#/components/schemas/CreateRetweetResponseData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" CreateRetweetResponseData: - required: - - "create_retweet" properties: create_retweet: $ref: "#/components/schemas/CreateRetweetResponseResult" @@ -208,19 +201,23 @@ components: full_text: type: string + # ---DeleteRetweet--- + DeleteRetweetResponse: required: - "data" properties: data: $ref: "#/components/schemas/DeleteRetweetResponseData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" DeleteRetweetResponseData: - required: - - "unretweet" properties: create_retweet: - $ref: "#/components/schemas/CreateRetweetResponseResult" + $ref: "#/components/schemas/DeleteRetweetResponseResult" DeleteRetweetResponseResult: required: @@ -246,10 +243,12 @@ components: properties: data: $ref: "#/components/schemas/CreateTweetResponseData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" CreateTweetResponseData: - required: - - "create_tweet" properties: create_tweet: $ref: "#/components/schemas/CreateTweetResponseResult" @@ -268,16 +267,20 @@ components: result: $ref: "./../schemas/tweet.yaml#/components/schemas/Tweet" + # ---DeleteTweet--- + DeleteTweetResponse: required: - "data" properties: data: $ref: "#/components/schemas/DeleteTweetResponseData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" DeleteTweetResponseData: - required: - - "delete_tweet" properties: delete_retweet: $ref: "#/components/schemas/DeleteTweetResponseResult" @@ -289,30 +292,38 @@ components: tweet_results: type: object + # ---Bookmark--- + CreateBookmarkResponse: required: - "data" properties: data: $ref: "#/components/schemas/CreateBookmarkResponseData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" CreateBookmarkResponseData: - required: - - "tweet_bookmark_put" properties: tweet_bookmark_put: type: string + # ---DeleteBookmark--- + DeleteBookmarkResponse: required: - "data" properties: data: $ref: "#/components/schemas/DeleteBookmarkResponseData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" DeleteBookmarkResponseData: - required: - - "tweet_bookmark_delete" properties: tweet_bookmark_delete: type: string diff --git a/src/openapi/paths/profile.yaml b/src/openapi/paths/profile.yaml index db3c2d5..53f261b 100644 --- a/src/openapi/paths/profile.yaml +++ b/src/openapi/paths/profile.yaml @@ -14,9 +14,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/ProfileResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/ProfileResponse" components: schemas: @@ -26,10 +24,12 @@ components: properties: data: $ref: "#/components/schemas/ProfileResponseData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" ProfileResponseData: - required: - - "user_result_by_screen_name" properties: user_result_by_screen_name: $ref: "#/components/schemas/UserResultByScreenName" diff --git a/src/openapi/paths/timeline.yaml b/src/openapi/paths/timeline.yaml index a765f38..edfcef8 100644 --- a/src/openapi/paths/timeline.yaml +++ b/src/openapi/paths/timeline.yaml @@ -14,9 +14,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/TimelineResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/TimelineResponse" tags: - "tweet" @@ -30,9 +28,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/TimelineResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/TimelineResponse" tags: - "tweet" @@ -46,9 +42,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/ListLatestTweetsTimelineResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/ListLatestTweetsTimelineResponse" tags: - "tweet" @@ -62,9 +56,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/SearchTimelineResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/SearchTimelineResponse" tags: - "tweet" @@ -76,10 +68,12 @@ components: properties: data: $ref: "#/components/schemas/HomeTimelineResponseData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" HomeTimelineResponseData: - required: - - "home" properties: home: $ref: "#/components/schemas/HomeTimelineHome" @@ -97,10 +91,12 @@ components: properties: data: $ref: "#/components/schemas/ListTweetsTimelineData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" ListTweetsTimelineData: - required: - - "list" properties: list: $ref: "#/components/schemas/ListTweetsTimelineList" @@ -123,10 +119,12 @@ components: properties: data: $ref: "#/components/schemas/SearchTimelineData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" SearchTimelineData: - required: - - "search_by_raw_query" properties: search_by_raw_query: $ref: "#/components/schemas/SearchByRawQuery" diff --git a/src/openapi/paths/tweet.yaml b/src/openapi/paths/tweet.yaml index 022bfdb..77d2410 100644 --- a/src/openapi/paths/tweet.yaml +++ b/src/openapi/paths/tweet.yaml @@ -14,9 +14,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/TweetDetailResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/TweetDetailResponse" tags: - "tweet" @@ -30,9 +28,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/TweetResultByRestIdResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/TweetResultByRestIdResponse" # tags: # - "tweet" @@ -46,9 +42,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/TweetFavoritersResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/TweetFavoritersResponse" tags: - "user-list" @@ -62,9 +56,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/TweetRetweetersResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/TweetRetweetersResponse" tags: - "user-list" @@ -76,10 +68,12 @@ components: properties: data: $ref: "#/components/schemas/TweetDetailResponseData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" TweetDetailResponseData: - required: - - "threaded_conversation_with_injections_v2" properties: threaded_conversation_with_injections_v2: $ref: "./../schemas/timeline.yaml#/components/schemas/Timeline" @@ -90,10 +84,12 @@ components: properties: data: $ref: "#/components/schemas/TweetResultByRestIdData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" TweetResultByRestIdData: - required: - - "tweetResult" properties: tweetResult: $ref: "./../schemas/content.yaml#/components/schemas/ItemResult" @@ -104,10 +100,12 @@ components: properties: data: $ref: "#/components/schemas/TweetFavoritersResponseData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" TweetFavoritersResponseData: - required: - - "favoriters_timeline" properties: favoriters_timeline: $ref: "./../schemas/timeline.yaml#/components/schemas/TimelineV2" @@ -118,10 +116,12 @@ components: properties: data: $ref: "#/components/schemas/TweetRetweetersResponseData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" TweetRetweetersResponseData: - required: - - "retweeters_timeline" properties: retweeters_timeline: $ref: "./../schemas/timeline.yaml#/components/schemas/TimelineV2" diff --git a/src/openapi/paths/user.yaml b/src/openapi/paths/user.yaml index 0dff140..8c7c8de 100644 --- a/src/openapi/paths/user.yaml +++ b/src/openapi/paths/user.yaml @@ -14,9 +14,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/UserResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/UserResponse" tags: - "user" @@ -30,9 +28,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/UserResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/UserResponse" tags: - "user" @@ -46,9 +42,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/UsersResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/UsersResponse" tags: - "users" @@ -60,6 +54,10 @@ components: properties: data: $ref: "#/components/schemas/UserResponseData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" UserResponseData: properties: @@ -72,10 +70,12 @@ components: properties: data: $ref: "#/components/schemas/UsersResponseData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" UsersResponseData: - required: - - "users" properties: users: type: array diff --git a/src/openapi/paths/usertweets.yaml b/src/openapi/paths/usertweets.yaml index 611d98a..c497040 100644 --- a/src/openapi/paths/usertweets.yaml +++ b/src/openapi/paths/usertweets.yaml @@ -14,9 +14,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/UserTweetsResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/UserTweetsResponse" tags: - "tweet" @@ -30,9 +28,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/UserTweetsResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/UserTweetsResponse" tags: - "tweet" @@ -46,9 +42,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/UserHighlightsTweetsResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/UserHighlightsTweetsResponse" tags: - "tweet" @@ -62,9 +56,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/UserTweetsResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/UserTweetsResponse" tags: - "tweet" @@ -78,9 +70,7 @@ paths: content: application/json: schema: - oneOf: - - $ref: "#/components/schemas/UserTweetsResponse" - - $ref: "./../schemas/error.yaml#/components/schemas/Errors" + $ref: "#/components/schemas/UserTweetsResponse" tags: - "tweet" @@ -92,10 +82,12 @@ components: properties: data: $ref: "#/components/schemas/UserTweetsData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" UserTweetsData: - required: - - "user" properties: user: $ref: "#/components/schemas/UserTweetsUser" @@ -123,10 +115,12 @@ components: properties: data: $ref: "#/components/schemas/UserHighlightsTweetsData" + errors: + type: array + items: + $ref: "./../response/error.yaml#/components/schemas/Error" UserHighlightsTweetsData: - required: - - "user" properties: user: $ref: "#/components/schemas/UserHighlightsTweetsUser" diff --git a/src/openapi/response/error.yaml b/src/openapi/response/error.yaml index a37f631..d253d32 100644 --- a/src/openapi/response/error.yaml +++ b/src/openapi/response/error.yaml @@ -6,25 +6,6 @@ info: paths: {} components: schemas: - Errors: - type: object - required: - - errors - properties: - errors: - type: array - items: - $ref: "#/components/schemas/Error" - data: - $ref: "#/components/schemas/ErrorsData" - - ErrorsData: - type: object - properties: - user: - type: string # always null - pattern: "dummy" - Error: type: object required: diff --git a/test/python/openapi-generator-config.yaml b/test/python/openapi-generator-config.yaml index 48c5e5a..29dd088 100644 --- a/test/python/openapi-generator-config.yaml +++ b/test/python/openapi-generator-config.yaml @@ -1,4 +1,4 @@ -inputSpec: dist/compatible_discriminator/openapi-3.0.yaml +inputSpec: dist/compatible/openapi-3.0.yaml outputDir: python_generated useOneOfDiscriminatorLookup: true