1
Fork 0
mirror of https://github.com/thegeneralist01/twitter-openapi synced 2026-01-11 23:50:26 +01:00

Merge pull request #8 from thecodrr/feature/dynamic-query-id-in-path

Add support for substituting queryId in paths
This commit is contained in:
ふぁ 2023-06-13 15:11:11 +09:00 committed by GitHub
commit 43731730f0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
11 changed files with 68 additions and 35 deletions

View file

@ -4,10 +4,12 @@ info:
version: 0.0.1 version: 0.0.1
paths: paths:
/graphql/{{queryId}}/Bookmarks: /graphql/{queryId}/Bookmarks:
get: get:
operationId: getBookmarks operationId: getBookmarks
description: get bookmarks description: get bookmarks
parameters:
- $ref: "../resources/parameters.yaml#/components/parameters/queryId"
responses: responses:
"200": "200":
description: Successful operation description: Successful operation

View file

@ -4,10 +4,12 @@ info:
version: 0.0.1 version: 0.0.1
paths: paths:
/graphql/{{queryId}}/Following: /graphql/{queryId}/Following:
get: get:
operationId: getFollowing operationId: getFollowing
description: get user list of following description: get user list of following
parameters:
- $ref: "../resources/parameters.yaml#/components/parameters/queryId"
responses: responses:
"200": "200":
description: Successful operation description: Successful operation
@ -18,10 +20,12 @@ paths:
tags: tags:
- "user-list" - "user-list"
/graphql/{{queryId}}/Followers: /graphql/{queryId}/Followers:
get: get:
operationId: getFollowers operationId: getFollowers
description: get user list of followers description: get user list of followers
parameters:
- $ref: "../resources/parameters.yaml#/components/parameters/queryId"
responses: responses:
"200": "200":
description: Successful operation description: Successful operation

View file

@ -4,10 +4,12 @@ info:
version: 0.0.1 version: 0.0.1
paths: paths:
/graphql/{{queryId}}/FavoriteTweet: /graphql/{queryId}/FavoriteTweet:
post: post:
operationId: postFavoriteTweet operationId: postFavoriteTweet
description: favorite Tweet description: favorite Tweet
parameters:
- $ref: "../resources/parameters.yaml#/components/parameters/queryId"
responses: responses:
"200": "200":
description: Successful operation description: Successful operation
@ -18,10 +20,12 @@ paths:
tags: tags:
- "post" - "post"
/graphql/{{queryId}}/UnfavoriteTweet: /graphql/{queryId}/UnfavoriteTweet:
post: post:
operationId: postUnfavoriteTweet operationId: postUnfavoriteTweet
description: unfavorite Tweet description: unfavorite Tweet
parameters:
- $ref: "../resources/parameters.yaml#/components/parameters/queryId"
responses: responses:
"200": "200":
description: Successful operation description: Successful operation
@ -32,10 +36,12 @@ paths:
tags: tags:
- "post" - "post"
/graphql/{{queryId}}/CreateRetweet: /graphql/{queryId}/CreateRetweet:
post: post:
operationId: postCreateRetweet operationId: postCreateRetweet
description: create Retweet description: create Retweet
parameters:
- $ref: "../resources/parameters.yaml#/components/parameters/queryId"
responses: responses:
"200": "200":
description: Successful operation description: Successful operation
@ -46,10 +52,12 @@ paths:
tags: tags:
- "post" - "post"
/graphql/{{queryId}}/DeleteRetweet: /graphql/{queryId}/DeleteRetweet:
post: post:
operationId: postDeleteRetweet operationId: postDeleteRetweet
description: delete Retweet description: delete Retweet
parameters:
- $ref: "../resources/parameters.yaml#/components/parameters/queryId"
responses: responses:
"200": "200":
description: Successful operation description: Successful operation
@ -60,10 +68,12 @@ paths:
tags: tags:
- "post" - "post"
/graphql/{{queryId}}/CreateTweet: /graphql/{queryId}/CreateTweet:
post: post:
operationId: postCreateTweet operationId: postCreateTweet
description: create Tweet description: create Tweet
parameters:
- $ref: "../resources/parameters.yaml#/components/parameters/queryId"
responses: responses:
"200": "200":
description: Successful operation description: Successful operation
@ -74,10 +84,12 @@ paths:
tags: tags:
- "post" - "post"
/graphql/{{queryId}}/DeleteTweet: /graphql/{queryId}/DeleteTweet:
post: post:
operationId: postDeleteTweet operationId: postDeleteTweet
description: delete Retweet description: delete Retweet
parameters:
- $ref: "../resources/parameters.yaml#/components/parameters/queryId"
responses: responses:
"200": "200":
description: Successful operation description: Successful operation

View file

@ -4,10 +4,12 @@ info:
version: 0.0.1 version: 0.0.1
paths: paths:
/graphql/{{queryId}}/ProfileSpotlightsQuery: /graphql/{queryId}/ProfileSpotlightsQuery:
get: get:
operationId: getProfileSpotlightsQuery operationId: getProfileSpotlightsQuery
description: "get user by screen name" description: "get user by screen name"
parameters:
- $ref: "../resources/parameters.yaml#/components/parameters/queryId"
responses: responses:
"200": "200":
description: Successful operation description: Successful operation

View file

@ -4,10 +4,12 @@ info:
version: 0.0.1 version: 0.0.1
paths: paths:
/graphql/{{queryId}}/HomeTimeline: /graphql/{queryId}/HomeTimeline:
get: get:
operationId: getHomeTimeline operationId: getHomeTimeline
description: get tweet list of timeline description: get tweet list of timeline
parameters:
- $ref: "../resources/parameters.yaml#/components/parameters/queryId"
responses: responses:
"200": "200":
description: Successful operation description: Successful operation
@ -18,10 +20,12 @@ paths:
tags: tags:
- "tweet" - "tweet"
/graphql/{{queryId}}/HomeLatestTimeline: /graphql/{queryId}/HomeLatestTimeline:
get: get:
operationId: getHomeLatestTimeline operationId: getHomeLatestTimeline
description: get tweet list of timeline description: get tweet list of timeline
parameters:
- $ref: "../resources/parameters.yaml#/components/parameters/queryId"
responses: responses:
"200": "200":
description: Successful operation description: Successful operation
@ -32,10 +36,12 @@ paths:
tags: tags:
- "tweet" - "tweet"
/graphql/{{queryId}}/ListLatestTweetsTimeline: /graphql/{queryId}/ListLatestTweetsTimeline:
get: get:
operationId: getListLatestTweetsTimeline operationId: getListLatestTweetsTimeline
description: get tweet list of timeline description: get tweet list of timeline
parameters:
- $ref: "../resources/parameters.yaml#/components/parameters/queryId"
responses: responses:
"200": "200":
description: Successful operation description: Successful operation

View file

@ -4,10 +4,12 @@ info:
version: 0.0.1 version: 0.0.1
paths: paths:
/graphql/{{queryId}}/TweetDetail: /graphql/{queryId}/TweetDetail:
get: get:
operationId: getTweetDetail operationId: getTweetDetail
description: get TweetDetail description: get TweetDetail
parameters:
- $ref: "../resources/parameters.yaml#/components/parameters/queryId"
responses: responses:
"200": "200":
description: Successful operation description: Successful operation

View file

@ -4,10 +4,12 @@ info:
version: 0.0.1 version: 0.0.1
paths: paths:
/graphql/{{queryId}}/UserByScreenName: /graphql/{queryId}/UserByScreenName:
get: get:
operationId: getUserByScreenName operationId: getUserByScreenName
description: "get user by screen name" description: "get user by screen name"
parameters:
- $ref: "../resources/parameters.yaml#/components/parameters/queryId"
responses: responses:
"200": "200":
description: Successful operation description: Successful operation

View file

@ -4,10 +4,12 @@ info:
version: 0.0.1 version: 0.0.1
paths: paths:
/graphql/{{queryId}}/UserTweets: /graphql/{queryId}/UserTweets:
get: get:
operationId: getUserTweets operationId: getUserTweets
description: "get user tweets" description: "get user tweets"
parameters:
- $ref: "../resources/parameters.yaml#/components/parameters/queryId"
responses: responses:
"200": "200":
description: Successful operation description: Successful operation
@ -18,10 +20,12 @@ paths:
tags: tags:
- "tweet" - "tweet"
/graphql/{{queryId}}/UserTweetsAndReplies: /graphql/{queryId}/UserTweetsAndReplies:
get: get:
operationId: getUserTweetsAndReplies operationId: getUserTweetsAndReplies
description: "get user replies tweets" description: "get user replies tweets"
parameters:
- $ref: "../resources/parameters.yaml#/components/parameters/queryId"
responses: responses:
"200": "200":
description: Successful operation description: Successful operation
@ -32,10 +36,12 @@ paths:
tags: tags:
- "tweet" - "tweet"
/graphql/{{queryId}}/UserMedia: /graphql/{queryId}/UserMedia:
get: get:
operationId: getUserMedia operationId: getUserMedia
description: "get user media tweets" description: "get user media tweets"
parameters:
- $ref: "../resources/parameters.yaml#/components/parameters/queryId"
responses: responses:
"200": "200":
description: Successful operation description: Successful operation
@ -46,10 +52,12 @@ paths:
tags: tags:
- "tweet" - "tweet"
/graphql/{{queryId}}/Likes: /graphql/{queryId}/Likes:
get: get:
operationId: getLikes operationId: getLikes
description: "get user likes tweets" description: "get user likes tweets"
parameters:
- $ref: "../resources/parameters.yaml#/components/parameters/queryId"
responses: responses:
"200": "200":
description: Successful operation description: Successful operation

View file

@ -0,0 +1,11 @@
openapi: 3.0.3
paths: {}
components:
parameters:
queryId:
name: queryId
in: path
required: true
schema:
type: string

View file

@ -13,7 +13,6 @@ class Config:
"other":[], "other":[],
"request": { "request": {
key: [ key: [
ReplaceQueryIdPlaceholder(split=-1),
SetResponsesHeader(suffix=None), SetResponsesHeader(suffix=None),
AddParametersOnContent( AddParametersOnContent(
split=-1, contentType="application/json" split=-1, contentType="application/json"
@ -23,7 +22,6 @@ class Config:
} }
| { | {
key: [ key: [
ReplaceQueryIdPlaceholder(split=-1),
SetResponsesHeader(suffix=None), SetResponsesHeader(suffix=None),
AddParametersOnParameters( AddParametersOnParameters(
split=-1, split=-1,
@ -61,7 +59,6 @@ class Config:
"other":[], "other":[],
"request": { "request": {
key: [ key: [
ReplaceQueryIdPlaceholder(split=-1),
AddSecuritySchemesOnHeader(split=-1), AddSecuritySchemesOnHeader(split=-1),
SetResponsesHeader(suffix=None), SetResponsesHeader(suffix=None),
AddParametersOnParameters( AddParametersOnParameters(
@ -73,7 +70,6 @@ class Config:
} }
| { | {
key: [ key: [
ReplaceQueryIdPlaceholder(split=-1),
AddSecuritySchemesOnHeader(split=-1), AddSecuritySchemesOnHeader(split=-1),
SetResponsesHeader(suffix=None), SetResponsesHeader(suffix=None),
AddParametersOnBody( AddParametersOnBody(
@ -115,7 +111,6 @@ class Config:
"other":[], "other":[],
"request": { "request": {
key: [ key: [
ReplaceQueryIdPlaceholder(split=-1),
SetResponsesHeader(suffix=None), SetResponsesHeader(suffix=None),
AddParametersOnParameters( AddParametersOnParameters(
split=-1, split=-1,
@ -126,7 +121,6 @@ class Config:
} }
| { | {
key: [ key: [
ReplaceQueryIdPlaceholder(split=-1),
SetResponsesHeader(suffix=None), SetResponsesHeader(suffix=None),
AddParametersOnBody( AddParametersOnBody(
split=-1, split=-1,
@ -165,7 +159,6 @@ class Config:
"other":[], "other":[],
"request": { "request": {
key: [ key: [
ReplaceQueryIdPlaceholder(split=-1),
SetResponsesHeader(suffix=None), SetResponsesHeader(suffix=None),
AddParametersOnParameters( AddParametersOnParameters(
split=-1, split=-1,
@ -176,7 +169,6 @@ class Config:
} }
| { | {
key: [ key: [
ReplaceQueryIdPlaceholder(split=-1),
SetResponsesHeader(suffix=None), SetResponsesHeader(suffix=None),
AddParametersOnParameters( AddParametersOnParameters(
split=-1, split=-1,

View file

@ -118,14 +118,6 @@ class AddSecuritySchemesOnHeader(RequestHookBase):
value["parameters"].extend(param) value["parameters"].extend(param)
return path, value return path, value
class ReplaceQueryIdPlaceholder(RequestHookBase):
def hook(self, path: str, value: dict):
path, value = super().hook(path, value)
new = self.PLACEHOLDER[self.path_name]["queryId"]
return path.replace(r"{{queryId}}", new), value
class SetResponsesHeader(RequestHookBase): class SetResponsesHeader(RequestHookBase):
suffix: str suffix: str