mirror of
https://github.com/thegeneralist01/twitter-openapi
synced 2026-01-11 23:50:26 +01:00
update file
Signed-off-by: ふぁ <yuki@yuki0311.com>
This commit is contained in:
parent
9b3deabd8e
commit
3d54c8d9a7
13 changed files with 600 additions and 605 deletions
605
openapi-3.0.yaml
605
openapi-3.0.yaml
|
|
@ -1,605 +0,0 @@
|
||||||
openapi: 3.0.3
|
|
||||||
info:
|
|
||||||
title: Twitter OpenAPI
|
|
||||||
description: |-
|
|
||||||
Twitter OpenAPI
|
|
||||||
termsOfService: https://github.com/fa0311
|
|
||||||
contact:
|
|
||||||
email: yuki@yuki0311.com
|
|
||||||
license:
|
|
||||||
name: other
|
|
||||||
url: https://github.com/fa0311/twitter-openapi/LICENSE
|
|
||||||
version: 0.0.1
|
|
||||||
servers:
|
|
||||||
- url: https://twitter.com/i/api/graphql
|
|
||||||
|
|
||||||
paths:
|
|
||||||
/BntFPEOxs3GYdPaS6CjUcg/HomeTimeline:
|
|
||||||
get:
|
|
||||||
operationId: getHomeTimeline
|
|
||||||
description: get tweet list of timeline
|
|
||||||
parameters:
|
|
||||||
- $ref: "#/components/parameters/Variables"
|
|
||||||
- $ref: "#/components/parameters/Features"
|
|
||||||
- in: query
|
|
||||||
name: queryId
|
|
||||||
required: true
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
default: "BntFPEOxs3GYdPaS6CjUcg"
|
|
||||||
|
|
||||||
responses:
|
|
||||||
"200":
|
|
||||||
description: Successful operation
|
|
||||||
content:
|
|
||||||
application/json:
|
|
||||||
schema:
|
|
||||||
$ref: "#/components/schemas/HomeTimelineResponse"
|
|
||||||
|
|
||||||
/FaBzCqZXuQCb4PhB0RHqHw/Following:
|
|
||||||
get:
|
|
||||||
operationId: getFollowing
|
|
||||||
description: get user list of following
|
|
||||||
|
|
||||||
parameters:
|
|
||||||
- $ref: "#/components/parameters/Variables"
|
|
||||||
- $ref: "#/components/parameters/Features"
|
|
||||||
- in: query
|
|
||||||
name: queryId
|
|
||||||
required: true
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
default: "FaBzCqZXuQCb4PhB0RHqHw"
|
|
||||||
|
|
||||||
responses:
|
|
||||||
"200":
|
|
||||||
description: Successful operation
|
|
||||||
content:
|
|
||||||
application/json:
|
|
||||||
schema:
|
|
||||||
$ref: "#/components/schemas/HomeTimelineData"
|
|
||||||
|
|
||||||
/VptSi88PiaQhBevFbGVlGg/Followers:
|
|
||||||
get:
|
|
||||||
operationId: getFollowers
|
|
||||||
description: get user list of followers
|
|
||||||
|
|
||||||
parameters:
|
|
||||||
- $ref: "#/components/parameters/Variables"
|
|
||||||
- $ref: "#/components/parameters/Features"
|
|
||||||
- in: query
|
|
||||||
name: queryId
|
|
||||||
required: true
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
default: "VptSi88PiaQhBevFbGVlGg"
|
|
||||||
|
|
||||||
responses:
|
|
||||||
"200":
|
|
||||||
description: Successful operation
|
|
||||||
content:
|
|
||||||
application/json:
|
|
||||||
schema:
|
|
||||||
$ref: "#/components/schemas/HomeTimelineData"
|
|
||||||
|
|
||||||
components:
|
|
||||||
schemas:
|
|
||||||
TypeName:
|
|
||||||
type: string
|
|
||||||
enum:
|
|
||||||
[
|
|
||||||
TimelineTweet,
|
|
||||||
TimelineTimelineItem,
|
|
||||||
TimelineTimelineCursor,
|
|
||||||
TweetWithVisibilityResults,
|
|
||||||
Tweet,
|
|
||||||
User,
|
|
||||||
]
|
|
||||||
|
|
||||||
InstructionType:
|
|
||||||
type: string
|
|
||||||
enum:
|
|
||||||
[
|
|
||||||
TimelineAddEntries,
|
|
||||||
TimelineAddToModule,
|
|
||||||
TimelineTerminateTimeline,
|
|
||||||
TimelineShowAlert,
|
|
||||||
]
|
|
||||||
|
|
||||||
ContentEntryType:
|
|
||||||
type: string
|
|
||||||
enum: [TimelineTimelineItem, TimelineTimelineCursor]
|
|
||||||
|
|
||||||
ContentItemType:
|
|
||||||
type: string
|
|
||||||
enum: [TimelineTweet]
|
|
||||||
|
|
||||||
TestObject:
|
|
||||||
type: object
|
|
||||||
|
|
||||||
HomeTimelineResponse:
|
|
||||||
required:
|
|
||||||
- "data"
|
|
||||||
properties:
|
|
||||||
data:
|
|
||||||
$ref: "#/components/schemas/HomeTimelineData"
|
|
||||||
|
|
||||||
HomeTimelineData:
|
|
||||||
required:
|
|
||||||
- "home"
|
|
||||||
properties:
|
|
||||||
home:
|
|
||||||
$ref: "#/components/schemas/HomeTimelineHome"
|
|
||||||
|
|
||||||
HomeTimelineHome:
|
|
||||||
required:
|
|
||||||
- "home_timeline_urt"
|
|
||||||
properties:
|
|
||||||
home_timeline_urt:
|
|
||||||
$ref: "#/components/schemas/HomeTimelineUrt"
|
|
||||||
|
|
||||||
HomeTimelineUrt:
|
|
||||||
required:
|
|
||||||
- "instructions"
|
|
||||||
- "metadata"
|
|
||||||
- "responseObjects"
|
|
||||||
properties:
|
|
||||||
instructions:
|
|
||||||
type: array
|
|
||||||
items:
|
|
||||||
$ref: "#/components/schemas/InstructionUnion"
|
|
||||||
metadata:
|
|
||||||
type: object # todo
|
|
||||||
responseObjects:
|
|
||||||
type: object # todo
|
|
||||||
|
|
||||||
InstructionUnion:
|
|
||||||
oneOf:
|
|
||||||
- $ref: "#/components/schemas/TimelineAddEntries"
|
|
||||||
discriminator:
|
|
||||||
propertyName: type
|
|
||||||
mapping": # deprecated
|
|
||||||
TimelineAddEntries: "#components/schemas/TimelineAddEntries"
|
|
||||||
|
|
||||||
TimelineAddEntries:
|
|
||||||
required:
|
|
||||||
- type
|
|
||||||
- entries
|
|
||||||
properties:
|
|
||||||
type:
|
|
||||||
type: string
|
|
||||||
$ref: "#/components/schemas/InstructionType" # TimelineAddEntries
|
|
||||||
entries:
|
|
||||||
type: array
|
|
||||||
items:
|
|
||||||
$ref: "#/components/schemas/TimelineAddEntry"
|
|
||||||
|
|
||||||
TimelineAddEntry:
|
|
||||||
required:
|
|
||||||
- "content"
|
|
||||||
- "entryId"
|
|
||||||
- "sortIndex"
|
|
||||||
properties:
|
|
||||||
content:
|
|
||||||
$ref: "#/components/schemas/ContentUnion"
|
|
||||||
entryId:
|
|
||||||
type: string
|
|
||||||
pattern: '^[a-z\-]+[0-9]+$'
|
|
||||||
sortIndex:
|
|
||||||
type: string
|
|
||||||
pattern: "[0-9]+$"
|
|
||||||
|
|
||||||
ContentUnion:
|
|
||||||
oneOf:
|
|
||||||
- $ref: "#/components/schemas/TimelineTimelineItem"
|
|
||||||
- $ref: "#/components/schemas/TimelineTimelineCursor"
|
|
||||||
discriminator:
|
|
||||||
propertyName: entryType
|
|
||||||
mapping": # deprecated
|
|
||||||
TimelineTimelineItem: "#components/schemas/TimelineTimelineItem"
|
|
||||||
TimelineTimelineCursor: "#/components/schemas/TimelineTimelineCursor"
|
|
||||||
|
|
||||||
TimelineTimelineItem:
|
|
||||||
required:
|
|
||||||
- "__typename"
|
|
||||||
- "entryType"
|
|
||||||
- "itemContent"
|
|
||||||
properties:
|
|
||||||
__typename:
|
|
||||||
$ref: "#/components/schemas/TypeName" # TimelineTimelineItem
|
|
||||||
entryType:
|
|
||||||
type: string # enum
|
|
||||||
$ref: "#/components/schemas/ContentEntryType" # TimelineTimelineItem
|
|
||||||
itemContent:
|
|
||||||
$ref: "#/components/schemas/ItemContent"
|
|
||||||
clientEventInfo:
|
|
||||||
type: object # todo
|
|
||||||
feedbackInfo:
|
|
||||||
type: object # todo
|
|
||||||
|
|
||||||
TimelineTimelineCursor:
|
|
||||||
required:
|
|
||||||
- "__typename"
|
|
||||||
- "entryType"
|
|
||||||
- "cursorType"
|
|
||||||
- "value"
|
|
||||||
properties:
|
|
||||||
__typename:
|
|
||||||
$ref: "#/components/schemas/TypeName" # TimelineTimelineCursor
|
|
||||||
entryType:
|
|
||||||
type: string # enum
|
|
||||||
$ref: "#/components/schemas/ContentEntryType" # TimelineTimelineCursor
|
|
||||||
cursorType:
|
|
||||||
type: string
|
|
||||||
enum: [Top, Bottom]
|
|
||||||
value:
|
|
||||||
type: string
|
|
||||||
|
|
||||||
ItemContent:
|
|
||||||
required:
|
|
||||||
- "__typename"
|
|
||||||
- "itemType"
|
|
||||||
- "tweetDisplayType"
|
|
||||||
- "tweet_results"
|
|
||||||
properties:
|
|
||||||
__typename:
|
|
||||||
$ref: "#/components/schemas/TypeName" # TimelineTweet
|
|
||||||
itemType:
|
|
||||||
$ref: "#/components/schemas/ContentItemType" # TimelineTweet
|
|
||||||
tweetDisplayType:
|
|
||||||
type: string # enum
|
|
||||||
tweet_results:
|
|
||||||
$ref: "#/components/schemas/ItemResult"
|
|
||||||
|
|
||||||
ItemResult:
|
|
||||||
required:
|
|
||||||
- "result"
|
|
||||||
properties:
|
|
||||||
result:
|
|
||||||
$ref: "#/components/schemas/TweetResult"
|
|
||||||
|
|
||||||
TweetResult:
|
|
||||||
required:
|
|
||||||
- "__typename"
|
|
||||||
- "rest_id"
|
|
||||||
- "core"
|
|
||||||
- "edit_control"
|
|
||||||
- "edit_prespective"
|
|
||||||
- "is_translatable"
|
|
||||||
- "legacy"
|
|
||||||
- "views"
|
|
||||||
|
|
||||||
properties:
|
|
||||||
__typename:
|
|
||||||
$ref: "#/components/schemas/TypeName" # Tweet TweetWithVisibilityResults
|
|
||||||
rest_id:
|
|
||||||
type: string
|
|
||||||
pattern: "^[0-9]+$"
|
|
||||||
core:
|
|
||||||
$ref: "#/components/schemas/UserResultCore"
|
|
||||||
unmention_data:
|
|
||||||
type: object # todo
|
|
||||||
edit_control:
|
|
||||||
type: object
|
|
||||||
properties:
|
|
||||||
edit_tweet_ids:
|
|
||||||
type: array
|
|
||||||
items:
|
|
||||||
type: string
|
|
||||||
pattern: "^[0-9]+$"
|
|
||||||
editable_until_msecs:
|
|
||||||
type: string
|
|
||||||
pattern: "^[0-9]+$"
|
|
||||||
is_edit_eligible:
|
|
||||||
type: boolean
|
|
||||||
edits_remaining:
|
|
||||||
type: string
|
|
||||||
pattern: "^[0-9]+$"
|
|
||||||
edit_prespective:
|
|
||||||
type: object
|
|
||||||
properties:
|
|
||||||
favorited:
|
|
||||||
type: boolean
|
|
||||||
retweeted:
|
|
||||||
type: boolean
|
|
||||||
is_translatable:
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
UserLegacy:
|
|
||||||
$ref: "#/components/schemas/UserLegacy"
|
|
||||||
views:
|
|
||||||
type: object
|
|
||||||
properties:
|
|
||||||
count:
|
|
||||||
type: string
|
|
||||||
pattern: "^[0-9]+$"
|
|
||||||
state:
|
|
||||||
type: string # enum
|
|
||||||
|
|
||||||
UserResultCore:
|
|
||||||
required:
|
|
||||||
- "user_results"
|
|
||||||
properties:
|
|
||||||
user_results:
|
|
||||||
$ref: "#/components/schemas/UserResults"
|
|
||||||
|
|
||||||
UserResults:
|
|
||||||
required:
|
|
||||||
- "result"
|
|
||||||
properties:
|
|
||||||
result:
|
|
||||||
$ref: "#/components/schemas/UserResult"
|
|
||||||
|
|
||||||
UserResult:
|
|
||||||
required:
|
|
||||||
- "__typename"
|
|
||||||
- "affiliates_highlighted_label"
|
|
||||||
- "has_graduated_access"
|
|
||||||
- "id"
|
|
||||||
- "is_blue_verified"
|
|
||||||
- "legacy"
|
|
||||||
- "rest_id"
|
|
||||||
- "super_follow_eligible"
|
|
||||||
- "super_followed_by"
|
|
||||||
- "super_following"
|
|
||||||
|
|
||||||
properties:
|
|
||||||
__typename:
|
|
||||||
$ref: "#/components/schemas/TypeName" # User
|
|
||||||
affiliates_highlighted_label:
|
|
||||||
type: object # todo
|
|
||||||
has_graduated_access:
|
|
||||||
type: boolean
|
|
||||||
has_nft_avatar:
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
id:
|
|
||||||
type: string
|
|
||||||
pattern: '^[a-z\-]+[0-9]+$'
|
|
||||||
is_blue_verified:
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
legacy:
|
|
||||||
$ref: "#/components/schemas/UserLegacy"
|
|
||||||
rest_id:
|
|
||||||
type: string
|
|
||||||
pattern: "^[0-9]+$"
|
|
||||||
business_account:
|
|
||||||
type: object # todo
|
|
||||||
super_follow_eligible:
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
super_followed_by:
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
super_following:
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
|
|
||||||
UserLegacy:
|
|
||||||
required:
|
|
||||||
- "blocked_by"
|
|
||||||
- "blocking"
|
|
||||||
- "can_dm"
|
|
||||||
- "can_media_tag"
|
|
||||||
- "created_at"
|
|
||||||
- "default_profile"
|
|
||||||
- "default_profile_image"
|
|
||||||
- "description"
|
|
||||||
- "fast_followers_count"
|
|
||||||
- "favourites_count"
|
|
||||||
- "follow_request_sent"
|
|
||||||
- "followed_by"
|
|
||||||
- "followers_count"
|
|
||||||
- "following"
|
|
||||||
- "friends_count"
|
|
||||||
- "has_custom_timelines"
|
|
||||||
- "is_translator"
|
|
||||||
- "listed_count"
|
|
||||||
- "location"
|
|
||||||
- "media_count"
|
|
||||||
- "muting"
|
|
||||||
- "name"
|
|
||||||
- "normal_followers_count"
|
|
||||||
- "notifications"
|
|
||||||
- "pinned_tweet_ids_str"
|
|
||||||
- "possibly_sensitive"
|
|
||||||
- "profile_image_url_https"
|
|
||||||
- "profile_interstitial_type"
|
|
||||||
- "protected"
|
|
||||||
- "screen_name"
|
|
||||||
- "statuses_count"
|
|
||||||
- "translator_type"
|
|
||||||
- "verified"
|
|
||||||
- "want_retweets"
|
|
||||||
properties:
|
|
||||||
blocked_by:
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
blocking:
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
can_dm:
|
|
||||||
type: boolean
|
|
||||||
can_media_tag:
|
|
||||||
type: boolean
|
|
||||||
created_at:
|
|
||||||
type: string # Wed Jul 08 14:05:58 +0000 2009
|
|
||||||
default_profile:
|
|
||||||
type: boolean
|
|
||||||
default_profile_image:
|
|
||||||
type: boolean
|
|
||||||
description:
|
|
||||||
type: string
|
|
||||||
entities:
|
|
||||||
type: object # todo
|
|
||||||
fast_followers_count:
|
|
||||||
type: integer
|
|
||||||
favourites_count:
|
|
||||||
type: integer
|
|
||||||
follow_request_sent:
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
followed_by:
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
followers_count:
|
|
||||||
type: integer
|
|
||||||
following:
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
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
|
|
||||||
default: false
|
|
||||||
name:
|
|
||||||
type: string
|
|
||||||
normal_followers_count:
|
|
||||||
type: integer
|
|
||||||
notifications:
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
pinned_tweet_ids_str:
|
|
||||||
type: array
|
|
||||||
items:
|
|
||||||
type: string
|
|
||||||
possibly_sensitive:
|
|
||||||
type: boolean
|
|
||||||
profile_banner_extensions:
|
|
||||||
type: object
|
|
||||||
profile_banner_url:
|
|
||||||
type: string
|
|
||||||
profile_image_extensions:
|
|
||||||
type: object
|
|
||||||
profile_image_url_https:
|
|
||||||
type: string
|
|
||||||
profile_interstitial_type:
|
|
||||||
type: string
|
|
||||||
protected:
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
screen_name:
|
|
||||||
type: string
|
|
||||||
statuses_count:
|
|
||||||
type: integer
|
|
||||||
translator_type:
|
|
||||||
type: string
|
|
||||||
url:
|
|
||||||
type: string
|
|
||||||
verified:
|
|
||||||
type: boolean
|
|
||||||
want_retweets:
|
|
||||||
type: boolean
|
|
||||||
|
|
||||||
TweetLegacy:
|
|
||||||
required:
|
|
||||||
- "bookmark_count"
|
|
||||||
- "bookmarked"
|
|
||||||
- "created_at"
|
|
||||||
- "conversation_id_str"
|
|
||||||
- "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"
|
|
||||||
properties:
|
|
||||||
bookmark_count:
|
|
||||||
type: integer
|
|
||||||
bookmarked:
|
|
||||||
type: boolean
|
|
||||||
created_at:
|
|
||||||
type: string # Thu Apr 06 13:23:34 +0000 2023
|
|
||||||
conversation_id_str:
|
|
||||||
type: string
|
|
||||||
pattern: "^[0-9]+$"
|
|
||||||
display_text_range:
|
|
||||||
type: array
|
|
||||||
items:
|
|
||||||
type: integer
|
|
||||||
entities:
|
|
||||||
type: object
|
|
||||||
favorite_count:
|
|
||||||
type: integer
|
|
||||||
favorited:
|
|
||||||
type: boolean
|
|
||||||
full_text:
|
|
||||||
type: string
|
|
||||||
is_quote_status:
|
|
||||||
type: boolean
|
|
||||||
lang:
|
|
||||||
type: string # enum
|
|
||||||
possibly_sensitive:
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
possibly_sensitive_editable:
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
quote_count:
|
|
||||||
type: integer
|
|
||||||
reply_count:
|
|
||||||
type: integer
|
|
||||||
retweet_count:
|
|
||||||
type: integer
|
|
||||||
retweeted:
|
|
||||||
type: boolean
|
|
||||||
user_id_str:
|
|
||||||
type: string
|
|
||||||
pattern: "^[0-9]+$"
|
|
||||||
id_str:
|
|
||||||
type: string
|
|
||||||
pattern: "^[0-9]+$"
|
|
||||||
# === parameters ===
|
|
||||||
|
|
||||||
parameters:
|
|
||||||
Variables:
|
|
||||||
name: variables
|
|
||||||
in: query
|
|
||||||
required: true
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
|
|
||||||
Features:
|
|
||||||
name: features
|
|
||||||
in: query
|
|
||||||
required: true
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
|
|
||||||
# https://github.com/OpenAPITools/openapi-generator/issues/13584
|
|
||||||
# It doesn't seem to work with dart lang.
|
|
||||||
|
|
||||||
VariablesV3:
|
|
||||||
name: variables
|
|
||||||
in: query
|
|
||||||
required: true
|
|
||||||
content:
|
|
||||||
application/json:
|
|
||||||
schema:
|
|
||||||
type: object
|
|
||||||
FeaturesV3:
|
|
||||||
name: features
|
|
||||||
in: query
|
|
||||||
required: true
|
|
||||||
content:
|
|
||||||
application/json:
|
|
||||||
schema:
|
|
||||||
type: object
|
|
||||||
22
openapi/openapi-3.0.yaml
Normal file
22
openapi/openapi-3.0.yaml
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
openapi: 3.0.3
|
||||||
|
info:
|
||||||
|
title: Twitter OpenAPI
|
||||||
|
description: |-
|
||||||
|
Twitter OpenAPI
|
||||||
|
termsOfService: https://github.com/fa0311
|
||||||
|
contact:
|
||||||
|
email: yuki@yuki0311.com
|
||||||
|
license:
|
||||||
|
name: other
|
||||||
|
url: https://github.com/fa0311/twitter-openapi/LICENSE
|
||||||
|
version: 0.0.1
|
||||||
|
servers:
|
||||||
|
- url: https://twitter.com/i/api/graphql
|
||||||
|
|
||||||
|
paths:
|
||||||
|
/BntFPEOxs3GYdPaS6CjUcg/HomeTimeline:
|
||||||
|
$ref: ./src/paths/timeline/HomeTimeline.yaml
|
||||||
|
/FaBzCqZXuQCb4PhB0RHqHw/Following:
|
||||||
|
$ref: ./src/paths/follow/Following.yaml
|
||||||
|
/VptSi88PiaQhBevFbGVlGg/Followers:
|
||||||
|
$ref: ./src/paths/follow/Followers.yaml
|
||||||
9
openapi/src/components/parameters/Features.yaml
Normal file
9
openapi/src/components/parameters/Features.yaml
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
# https://github.com/OpenAPITools/openapi-generator/issues/13584
|
||||||
|
|
||||||
|
Features:
|
||||||
|
in: query
|
||||||
|
required: true
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
type: object
|
||||||
9
openapi/src/components/parameters/Variables.yaml
Normal file
9
openapi/src/components/parameters/Variables.yaml
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
# https://github.com/OpenAPITools/openapi-generator/issues/13584
|
||||||
|
|
||||||
|
Variables:
|
||||||
|
in: query
|
||||||
|
required: true
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
type: object
|
||||||
49
openapi/src/components/schemas/Content.yaml
Normal file
49
openapi/src/components/schemas/Content.yaml
Normal file
|
|
@ -0,0 +1,49 @@
|
||||||
|
ContentUnion:
|
||||||
|
oneOf:
|
||||||
|
- $ref: "#/TimelineTimelineItem"
|
||||||
|
- $ref: "#/TimelineTimelineCursor"
|
||||||
|
discriminator:
|
||||||
|
propertyName: entryType
|
||||||
|
mapping": # deprecated
|
||||||
|
TimelineTimelineItem: "#/TimelineTimelineItem"
|
||||||
|
TimelineTimelineCursor: "#/TimelineTimelineCursor"
|
||||||
|
|
||||||
|
ContentEntryType:
|
||||||
|
type: string
|
||||||
|
enum: [TimelineTimelineItem, TimelineTimelineCursor]
|
||||||
|
|
||||||
|
TimelineTimelineItem:
|
||||||
|
required:
|
||||||
|
- "__typename"
|
||||||
|
- "entryType"
|
||||||
|
- "itemContent"
|
||||||
|
properties:
|
||||||
|
__typename:
|
||||||
|
$ref: "./TypeName.yaml#/TypeName" # TimelineTimelineItem
|
||||||
|
entryType:
|
||||||
|
type: string # enum
|
||||||
|
$ref: "#/ContentEntryType" # TimelineTimelineItem
|
||||||
|
itemContent:
|
||||||
|
$ref: "./ItemContent.yaml#/ItemContent"
|
||||||
|
clientEventInfo:
|
||||||
|
type: object # todo
|
||||||
|
feedbackInfo:
|
||||||
|
type: object # todo
|
||||||
|
|
||||||
|
TimelineTimelineCursor:
|
||||||
|
required:
|
||||||
|
- "__typename"
|
||||||
|
- "entryType"
|
||||||
|
- "cursorType"
|
||||||
|
- "value"
|
||||||
|
properties:
|
||||||
|
__typename:
|
||||||
|
$ref: "./TypeName.yaml#/TypeName" # TimelineTimelineCursor
|
||||||
|
entryType:
|
||||||
|
type: string # enum
|
||||||
|
$ref: "#/ContentEntryType" # TimelineTimelineCursor
|
||||||
|
cursorType:
|
||||||
|
type: string
|
||||||
|
enum: [Top, Bottom]
|
||||||
|
value:
|
||||||
|
type: string
|
||||||
45
openapi/src/components/schemas/Instruction.yaml
Normal file
45
openapi/src/components/schemas/Instruction.yaml
Normal file
|
|
@ -0,0 +1,45 @@
|
||||||
|
InstructionUnion:
|
||||||
|
oneOf:
|
||||||
|
- $ref: "#/TimelineAddEntries"
|
||||||
|
discriminator:
|
||||||
|
propertyName: type
|
||||||
|
mapping": # deprecated
|
||||||
|
TimelineAddEntries: "#/TimelineAddEntries"
|
||||||
|
|
||||||
|
InstructionType:
|
||||||
|
type: string
|
||||||
|
enum:
|
||||||
|
[
|
||||||
|
TimelineAddEntries,
|
||||||
|
TimelineAddToModule,
|
||||||
|
TimelineTerminateTimeline,
|
||||||
|
TimelineShowAlert,
|
||||||
|
]
|
||||||
|
|
||||||
|
TimelineAddEntries:
|
||||||
|
required:
|
||||||
|
- type
|
||||||
|
- entries
|
||||||
|
properties:
|
||||||
|
type:
|
||||||
|
type: string
|
||||||
|
$ref: "#/InstructionType" # TimelineAddEntries
|
||||||
|
entries:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
$ref: "#/TimelineAddEntry"
|
||||||
|
|
||||||
|
TimelineAddEntry:
|
||||||
|
required:
|
||||||
|
- "content"
|
||||||
|
- "entryId"
|
||||||
|
- "sortIndex"
|
||||||
|
properties:
|
||||||
|
content:
|
||||||
|
$ref: "./Content.yaml#/ContentUnion"
|
||||||
|
entryId:
|
||||||
|
type: string
|
||||||
|
pattern: '^[a-z\-]+[0-9]+$'
|
||||||
|
sortIndex:
|
||||||
|
type: string
|
||||||
|
pattern: "[0-9]+$"
|
||||||
27
openapi/src/components/schemas/ItemContent.yaml
Normal file
27
openapi/src/components/schemas/ItemContent.yaml
Normal file
|
|
@ -0,0 +1,27 @@
|
||||||
|
ContentItemType:
|
||||||
|
type: string
|
||||||
|
enum: [TimelineTweet]
|
||||||
|
|
||||||
|
ItemContent:
|
||||||
|
required:
|
||||||
|
- "__typename"
|
||||||
|
- "itemType"
|
||||||
|
- "tweetDisplayType"
|
||||||
|
- "tweet_results"
|
||||||
|
properties:
|
||||||
|
__typename:
|
||||||
|
$ref: "TypeName.yaml#/TypeName" # TimelineTweet
|
||||||
|
itemType:
|
||||||
|
type: string # enum
|
||||||
|
$ref: "#/ContentItemType" # TimelineTweet
|
||||||
|
tweetDisplayType:
|
||||||
|
type: string
|
||||||
|
tweet_results:
|
||||||
|
$ref: "#/ItemResult"
|
||||||
|
|
||||||
|
ItemResult:
|
||||||
|
required:
|
||||||
|
- "result"
|
||||||
|
properties:
|
||||||
|
result:
|
||||||
|
$ref: "./Tweet.yaml#/TweetResult"
|
||||||
123
openapi/src/components/schemas/Tweet.yaml
Normal file
123
openapi/src/components/schemas/Tweet.yaml
Normal file
|
|
@ -0,0 +1,123 @@
|
||||||
|
TweetResult:
|
||||||
|
required:
|
||||||
|
- "__typename"
|
||||||
|
- "rest_id"
|
||||||
|
- "core"
|
||||||
|
- "edit_control"
|
||||||
|
- "edit_prespective"
|
||||||
|
- "is_translatable"
|
||||||
|
- "legacy"
|
||||||
|
- "views"
|
||||||
|
|
||||||
|
properties:
|
||||||
|
__typename:
|
||||||
|
$ref: "TypeName.yaml#/TypeName" # Tweet TweetWithVisibilityResults
|
||||||
|
rest_id:
|
||||||
|
type: string
|
||||||
|
pattern: "^[0-9]+$"
|
||||||
|
core:
|
||||||
|
$ref: "./User.yaml#/UserResultCore"
|
||||||
|
unmention_data:
|
||||||
|
type: object # todo
|
||||||
|
edit_control:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
edit_tweet_ids:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
pattern: "^[0-9]+$"
|
||||||
|
editable_until_msecs:
|
||||||
|
type: string
|
||||||
|
pattern: "^[0-9]+$"
|
||||||
|
is_edit_eligible:
|
||||||
|
type: boolean
|
||||||
|
edits_remaining:
|
||||||
|
type: string
|
||||||
|
pattern: "^[0-9]+$"
|
||||||
|
edit_prespective:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
favorited:
|
||||||
|
type: boolean
|
||||||
|
retweeted:
|
||||||
|
type: boolean
|
||||||
|
is_translatable:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
legacy:
|
||||||
|
$ref: "#/TweetLegacy"
|
||||||
|
views:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
count:
|
||||||
|
type: string
|
||||||
|
pattern: "^[0-9]+$"
|
||||||
|
state:
|
||||||
|
type: string # enum
|
||||||
|
|
||||||
|
TweetLegacy:
|
||||||
|
required:
|
||||||
|
- "bookmark_count"
|
||||||
|
- "bookmarked"
|
||||||
|
- "created_at"
|
||||||
|
- "conversation_id_str"
|
||||||
|
- "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"
|
||||||
|
properties:
|
||||||
|
bookmark_count:
|
||||||
|
type: integer
|
||||||
|
bookmarked:
|
||||||
|
type: boolean
|
||||||
|
created_at:
|
||||||
|
type: string # Thu Apr 06 13:23:34 +0000 2023
|
||||||
|
conversation_id_str:
|
||||||
|
type: string
|
||||||
|
pattern: "^[0-9]+$"
|
||||||
|
display_text_range:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: integer
|
||||||
|
entities:
|
||||||
|
type: object
|
||||||
|
favorite_count:
|
||||||
|
type: integer
|
||||||
|
favorited:
|
||||||
|
type: boolean
|
||||||
|
full_text:
|
||||||
|
type: string
|
||||||
|
is_quote_status:
|
||||||
|
type: boolean
|
||||||
|
lang:
|
||||||
|
type: string # enum
|
||||||
|
possibly_sensitive:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
possibly_sensitive_editable:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
quote_count:
|
||||||
|
type: integer
|
||||||
|
reply_count:
|
||||||
|
type: integer
|
||||||
|
retweet_count:
|
||||||
|
type: integer
|
||||||
|
retweeted:
|
||||||
|
type: boolean
|
||||||
|
user_id_str:
|
||||||
|
type: string
|
||||||
|
pattern: "^[0-9]+$"
|
||||||
|
id_str:
|
||||||
|
type: string
|
||||||
|
pattern: "^[0-9]+$"
|
||||||
11
openapi/src/components/schemas/TypeName.yaml
Normal file
11
openapi/src/components/schemas/TypeName.yaml
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
TypeName:
|
||||||
|
type: string
|
||||||
|
enum:
|
||||||
|
[
|
||||||
|
TimelineTweet,
|
||||||
|
TimelineTimelineItem,
|
||||||
|
TimelineTimelineCursor,
|
||||||
|
TweetWithVisibilityResults,
|
||||||
|
Tweet,
|
||||||
|
User,
|
||||||
|
]
|
||||||
185
openapi/src/components/schemas/User.yaml
Normal file
185
openapi/src/components/schemas/User.yaml
Normal file
|
|
@ -0,0 +1,185 @@
|
||||||
|
UserResultCore:
|
||||||
|
required:
|
||||||
|
- "user_results"
|
||||||
|
properties:
|
||||||
|
user_results:
|
||||||
|
$ref: "#/UserResults"
|
||||||
|
|
||||||
|
UserResults:
|
||||||
|
required:
|
||||||
|
- "result"
|
||||||
|
properties:
|
||||||
|
result:
|
||||||
|
$ref: "#/UserResult"
|
||||||
|
|
||||||
|
UserResult:
|
||||||
|
required:
|
||||||
|
- "__typename"
|
||||||
|
- "affiliates_highlighted_label"
|
||||||
|
- "has_graduated_access"
|
||||||
|
- "id"
|
||||||
|
- "is_blue_verified"
|
||||||
|
- "legacy"
|
||||||
|
- "rest_id"
|
||||||
|
- "super_follow_eligible"
|
||||||
|
- "super_followed_by"
|
||||||
|
- "super_following"
|
||||||
|
|
||||||
|
properties:
|
||||||
|
__typename:
|
||||||
|
$ref: "TypeName.yaml#/TypeName" # User
|
||||||
|
affiliates_highlighted_label:
|
||||||
|
type: object # todo
|
||||||
|
has_graduated_access:
|
||||||
|
type: boolean
|
||||||
|
has_nft_avatar:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
id:
|
||||||
|
type: string
|
||||||
|
pattern: '^[a-z\-]+[0-9]+$'
|
||||||
|
is_blue_verified:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
legacy:
|
||||||
|
$ref: "#/UserLegacy"
|
||||||
|
rest_id:
|
||||||
|
type: string
|
||||||
|
pattern: "^[0-9]+$"
|
||||||
|
business_account:
|
||||||
|
type: object # todo
|
||||||
|
super_follow_eligible:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
super_followed_by:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
super_following:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
|
||||||
|
UserLegacy:
|
||||||
|
required:
|
||||||
|
- "blocked_by"
|
||||||
|
- "blocking"
|
||||||
|
- "can_dm"
|
||||||
|
- "can_media_tag"
|
||||||
|
- "created_at"
|
||||||
|
- "default_profile"
|
||||||
|
- "default_profile_image"
|
||||||
|
- "description"
|
||||||
|
- "fast_followers_count"
|
||||||
|
- "favourites_count"
|
||||||
|
- "follow_request_sent"
|
||||||
|
- "followed_by"
|
||||||
|
- "followers_count"
|
||||||
|
- "following"
|
||||||
|
- "friends_count"
|
||||||
|
- "has_custom_timelines"
|
||||||
|
- "is_translator"
|
||||||
|
- "listed_count"
|
||||||
|
- "location"
|
||||||
|
- "media_count"
|
||||||
|
- "muting"
|
||||||
|
- "name"
|
||||||
|
- "normal_followers_count"
|
||||||
|
- "notifications"
|
||||||
|
- "pinned_tweet_ids_str"
|
||||||
|
- "possibly_sensitive"
|
||||||
|
- "profile_image_url_https"
|
||||||
|
- "profile_interstitial_type"
|
||||||
|
- "protected"
|
||||||
|
- "screen_name"
|
||||||
|
- "statuses_count"
|
||||||
|
- "translator_type"
|
||||||
|
- "verified"
|
||||||
|
- "want_retweets"
|
||||||
|
properties:
|
||||||
|
blocked_by:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
blocking:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
can_dm:
|
||||||
|
type: boolean
|
||||||
|
can_media_tag:
|
||||||
|
type: boolean
|
||||||
|
created_at:
|
||||||
|
type: string # Wed Jul 08 14:05:58 +0000 2009
|
||||||
|
default_profile:
|
||||||
|
type: boolean
|
||||||
|
default_profile_image:
|
||||||
|
type: boolean
|
||||||
|
description:
|
||||||
|
type: string
|
||||||
|
entities:
|
||||||
|
type: object # todo
|
||||||
|
fast_followers_count:
|
||||||
|
type: integer
|
||||||
|
favourites_count:
|
||||||
|
type: integer
|
||||||
|
follow_request_sent:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
followed_by:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
followers_count:
|
||||||
|
type: integer
|
||||||
|
following:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
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
|
||||||
|
default: false
|
||||||
|
name:
|
||||||
|
type: string
|
||||||
|
normal_followers_count:
|
||||||
|
type: integer
|
||||||
|
notifications:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
pinned_tweet_ids_str:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
possibly_sensitive:
|
||||||
|
type: boolean
|
||||||
|
profile_banner_extensions:
|
||||||
|
type: object
|
||||||
|
profile_banner_url:
|
||||||
|
type: string
|
||||||
|
profile_image_extensions:
|
||||||
|
type: object
|
||||||
|
profile_image_url_https:
|
||||||
|
type: string
|
||||||
|
profile_interstitial_type:
|
||||||
|
type: string
|
||||||
|
protected:
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
screen_name:
|
||||||
|
type: string
|
||||||
|
statuses_count:
|
||||||
|
type: integer
|
||||||
|
translator_type:
|
||||||
|
type: string
|
||||||
|
url:
|
||||||
|
type: string
|
||||||
|
verified:
|
||||||
|
type: boolean
|
||||||
|
want_retweets:
|
||||||
|
type: boolean
|
||||||
26
openapi/src/paths/follow/Followers.yaml
Normal file
26
openapi/src/paths/follow/Followers.yaml
Normal file
|
|
@ -0,0 +1,26 @@
|
||||||
|
get:
|
||||||
|
operationId: getFollowers
|
||||||
|
description: get user list of followers
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: variables
|
||||||
|
in: query
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
|
||||||
|
- name: features
|
||||||
|
in: query
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
|
||||||
|
- name: queryId
|
||||||
|
in: query
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
default: "VptSi88PiaQhBevFbGVlGg"
|
||||||
|
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: Successful operation
|
||||||
26
openapi/src/paths/follow/Following.yaml
Normal file
26
openapi/src/paths/follow/Following.yaml
Normal file
|
|
@ -0,0 +1,26 @@
|
||||||
|
get:
|
||||||
|
operationId: getFollowing
|
||||||
|
description: get user list of following
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
- name: variables
|
||||||
|
in: query
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
|
||||||
|
- name: features
|
||||||
|
in: query
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
|
||||||
|
- name: queryId
|
||||||
|
in: query
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
default: "FaBzCqZXuQCb4PhB0RHqHw"
|
||||||
|
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: Successful operation
|
||||||
68
openapi/src/paths/timeline/HomeTimeline.yaml
Normal file
68
openapi/src/paths/timeline/HomeTimeline.yaml
Normal file
|
|
@ -0,0 +1,68 @@
|
||||||
|
get:
|
||||||
|
operationId: getHomeTimeline
|
||||||
|
description: get tweet list of timeline
|
||||||
|
parameters:
|
||||||
|
- name: variables
|
||||||
|
in: query
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
|
||||||
|
- name: features
|
||||||
|
in: query
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
|
||||||
|
- name: queryId
|
||||||
|
in: query
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
default: "BntFPEOxs3GYdPaS6CjUcg"
|
||||||
|
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: Successful operation
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: "#/components/schemas/HomeTimelineResponse"
|
||||||
|
|
||||||
|
components:
|
||||||
|
schemas:
|
||||||
|
HomeTimelineResponse:
|
||||||
|
required:
|
||||||
|
- "data"
|
||||||
|
properties:
|
||||||
|
data:
|
||||||
|
$ref: "#/components/schemas/HomeTimelineData"
|
||||||
|
|
||||||
|
HomeTimelineData:
|
||||||
|
required:
|
||||||
|
- "home"
|
||||||
|
properties:
|
||||||
|
home:
|
||||||
|
$ref: "#/components/schemas/HomeTimelineHome"
|
||||||
|
|
||||||
|
HomeTimelineHome:
|
||||||
|
required:
|
||||||
|
- "home_timeline_urt"
|
||||||
|
properties:
|
||||||
|
home_timeline_urt:
|
||||||
|
$ref: "#/components/schemas/HomeTimelineUrt"
|
||||||
|
|
||||||
|
HomeTimelineUrt:
|
||||||
|
required:
|
||||||
|
- "instructions"
|
||||||
|
- "metadata"
|
||||||
|
- "responseObjects"
|
||||||
|
properties:
|
||||||
|
instructions:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
$ref: "./../../components/schemas/Instruction.yaml#/InstructionUnion"
|
||||||
|
metadata:
|
||||||
|
type: object # todo
|
||||||
|
responseObjects:
|
||||||
|
type: object # todo
|
||||||
Loading…
Add table
Add a link
Reference in a new issue