Add: open api schema
This commit is contained in:
parent
d01109459a
commit
ef96ad303a
1 changed files with 822 additions and 0 deletions
822
schema.yml
Normal file
822
schema.yml
Normal file
|
@ -0,0 +1,822 @@
|
||||||
|
openapi: 3.0.3
|
||||||
|
info:
|
||||||
|
title: Gallery-Archivist API
|
||||||
|
version: 1.0.0
|
||||||
|
description: A tool for archiving online galleries
|
||||||
|
paths:
|
||||||
|
/api/auth/logout/:
|
||||||
|
post:
|
||||||
|
operationId: auth_logout_create
|
||||||
|
tags:
|
||||||
|
- auth
|
||||||
|
requestBody:
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/Logout'
|
||||||
|
application/x-www-form-urlencoded:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/Logout'
|
||||||
|
multipart/form-data:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/Logout'
|
||||||
|
required: true
|
||||||
|
security:
|
||||||
|
- cookieAuth: []
|
||||||
|
- jwtAuth: []
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/Logout'
|
||||||
|
description: ''
|
||||||
|
/api/auth/token/:
|
||||||
|
post:
|
||||||
|
operationId: auth_token_create
|
||||||
|
description: |-
|
||||||
|
Takes a set of user credentials and returns an access and refresh JSON web
|
||||||
|
token pair to prove the authentication of those credentials.
|
||||||
|
tags:
|
||||||
|
- auth
|
||||||
|
requestBody:
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/TokenObtainPair'
|
||||||
|
application/x-www-form-urlencoded:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/TokenObtainPair'
|
||||||
|
multipart/form-data:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/TokenObtainPair'
|
||||||
|
required: true
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/TokenObtainPair'
|
||||||
|
description: ''
|
||||||
|
/api/auth/token/refresh/:
|
||||||
|
post:
|
||||||
|
operationId: auth_token_refresh_create
|
||||||
|
description: |-
|
||||||
|
Takes a refresh type JSON web token and returns an access type JSON web
|
||||||
|
token if the refresh token is valid.
|
||||||
|
tags:
|
||||||
|
- auth
|
||||||
|
requestBody:
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/TokenRefresh'
|
||||||
|
application/x-www-form-urlencoded:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/TokenRefresh'
|
||||||
|
multipart/form-data:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/TokenRefresh'
|
||||||
|
required: true
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/TokenRefresh'
|
||||||
|
description: ''
|
||||||
|
/api/creators/:
|
||||||
|
get:
|
||||||
|
operationId: creators_list
|
||||||
|
tags:
|
||||||
|
- creators
|
||||||
|
security:
|
||||||
|
- cookieAuth: []
|
||||||
|
- jwtAuth: []
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
$ref: '#/components/schemas/CreatorList'
|
||||||
|
description: ''
|
||||||
|
/api/creators/{creator_id}/:
|
||||||
|
get:
|
||||||
|
operationId: creators_retrieve
|
||||||
|
parameters:
|
||||||
|
- in: path
|
||||||
|
name: creator_id
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
required: true
|
||||||
|
tags:
|
||||||
|
- creators
|
||||||
|
security:
|
||||||
|
- cookieAuth: []
|
||||||
|
- jwtAuth: []
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/CreatorDetails'
|
||||||
|
description: ''
|
||||||
|
/api/images/:
|
||||||
|
get:
|
||||||
|
operationId: images_list
|
||||||
|
tags:
|
||||||
|
- images
|
||||||
|
security:
|
||||||
|
- cookieAuth: []
|
||||||
|
- jwtAuth: []
|
||||||
|
- {}
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
$ref: '#/components/schemas/Image'
|
||||||
|
description: ''
|
||||||
|
post:
|
||||||
|
operationId: images_create
|
||||||
|
tags:
|
||||||
|
- images
|
||||||
|
requestBody:
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/Image'
|
||||||
|
application/x-www-form-urlencoded:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/Image'
|
||||||
|
multipart/form-data:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/Image'
|
||||||
|
required: true
|
||||||
|
security:
|
||||||
|
- cookieAuth: []
|
||||||
|
- jwtAuth: []
|
||||||
|
- {}
|
||||||
|
responses:
|
||||||
|
'201':
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/Image'
|
||||||
|
description: ''
|
||||||
|
/api/images/{id}/:
|
||||||
|
get:
|
||||||
|
operationId: images_retrieve
|
||||||
|
parameters:
|
||||||
|
- in: path
|
||||||
|
name: id
|
||||||
|
schema:
|
||||||
|
type: integer
|
||||||
|
description: A unique integer value identifying this image.
|
||||||
|
required: true
|
||||||
|
tags:
|
||||||
|
- images
|
||||||
|
security:
|
||||||
|
- cookieAuth: []
|
||||||
|
- jwtAuth: []
|
||||||
|
- {}
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/Image'
|
||||||
|
description: ''
|
||||||
|
put:
|
||||||
|
operationId: images_update
|
||||||
|
parameters:
|
||||||
|
- in: path
|
||||||
|
name: id
|
||||||
|
schema:
|
||||||
|
type: integer
|
||||||
|
description: A unique integer value identifying this image.
|
||||||
|
required: true
|
||||||
|
tags:
|
||||||
|
- images
|
||||||
|
requestBody:
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/Image'
|
||||||
|
application/x-www-form-urlencoded:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/Image'
|
||||||
|
multipart/form-data:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/Image'
|
||||||
|
required: true
|
||||||
|
security:
|
||||||
|
- cookieAuth: []
|
||||||
|
- jwtAuth: []
|
||||||
|
- {}
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/Image'
|
||||||
|
description: ''
|
||||||
|
patch:
|
||||||
|
operationId: images_partial_update
|
||||||
|
parameters:
|
||||||
|
- in: path
|
||||||
|
name: id
|
||||||
|
schema:
|
||||||
|
type: integer
|
||||||
|
description: A unique integer value identifying this image.
|
||||||
|
required: true
|
||||||
|
tags:
|
||||||
|
- images
|
||||||
|
requestBody:
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/PatchedImage'
|
||||||
|
application/x-www-form-urlencoded:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/PatchedImage'
|
||||||
|
multipart/form-data:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/PatchedImage'
|
||||||
|
security:
|
||||||
|
- cookieAuth: []
|
||||||
|
- jwtAuth: []
|
||||||
|
- {}
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/Image'
|
||||||
|
description: ''
|
||||||
|
delete:
|
||||||
|
operationId: images_destroy
|
||||||
|
parameters:
|
||||||
|
- in: path
|
||||||
|
name: id
|
||||||
|
schema:
|
||||||
|
type: integer
|
||||||
|
description: A unique integer value identifying this image.
|
||||||
|
required: true
|
||||||
|
tags:
|
||||||
|
- images
|
||||||
|
security:
|
||||||
|
- cookieAuth: []
|
||||||
|
- jwtAuth: []
|
||||||
|
- {}
|
||||||
|
responses:
|
||||||
|
'204':
|
||||||
|
description: No response body
|
||||||
|
/api/posts/:
|
||||||
|
get:
|
||||||
|
operationId: posts_list
|
||||||
|
tags:
|
||||||
|
- posts
|
||||||
|
security:
|
||||||
|
- cookieAuth: []
|
||||||
|
- jwtAuth: []
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
$ref: '#/components/schemas/PostPreview'
|
||||||
|
description: ''
|
||||||
|
/api/posts/{post_id}/:
|
||||||
|
get:
|
||||||
|
operationId: posts_retrieve
|
||||||
|
parameters:
|
||||||
|
- in: path
|
||||||
|
name: post_id
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
required: true
|
||||||
|
tags:
|
||||||
|
- posts
|
||||||
|
security:
|
||||||
|
- cookieAuth: []
|
||||||
|
- jwtAuth: []
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/Post'
|
||||||
|
description: ''
|
||||||
|
/api/posts/{source_site}/:
|
||||||
|
get:
|
||||||
|
operationId: posts_list_2
|
||||||
|
parameters:
|
||||||
|
- in: path
|
||||||
|
name: source_site
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
required: true
|
||||||
|
tags:
|
||||||
|
- posts
|
||||||
|
security:
|
||||||
|
- cookieAuth: []
|
||||||
|
- jwtAuth: []
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
$ref: '#/components/schemas/PostPreview'
|
||||||
|
description: ''
|
||||||
|
/api/posts/{source_site}/{creator_slug_or_id}/:
|
||||||
|
get:
|
||||||
|
operationId: posts_list_3
|
||||||
|
parameters:
|
||||||
|
- in: path
|
||||||
|
name: creator_slug_or_id
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
required: true
|
||||||
|
- in: path
|
||||||
|
name: source_site
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
required: true
|
||||||
|
tags:
|
||||||
|
- posts
|
||||||
|
security:
|
||||||
|
- cookieAuth: []
|
||||||
|
- jwtAuth: []
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
$ref: '#/components/schemas/PostPreview'
|
||||||
|
description: ''
|
||||||
|
/api/posts/{source_site}/{creator_slug_or_id}/{category}:
|
||||||
|
get:
|
||||||
|
operationId: posts_list_4
|
||||||
|
parameters:
|
||||||
|
- in: path
|
||||||
|
name: category
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
required: true
|
||||||
|
- in: path
|
||||||
|
name: creator_slug_or_id
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
required: true
|
||||||
|
- in: path
|
||||||
|
name: source_site
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
required: true
|
||||||
|
tags:
|
||||||
|
- posts
|
||||||
|
security:
|
||||||
|
- cookieAuth: []
|
||||||
|
- jwtAuth: []
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
$ref: '#/components/schemas/PostPreview'
|
||||||
|
description: ''
|
||||||
|
/api/protected/:
|
||||||
|
get:
|
||||||
|
operationId: protected_retrieve
|
||||||
|
tags:
|
||||||
|
- protected
|
||||||
|
security:
|
||||||
|
- cookieAuth: []
|
||||||
|
- jwtAuth: []
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
description: No response body
|
||||||
|
/api/user/profile/:
|
||||||
|
get:
|
||||||
|
operationId: user_profile_retrieve
|
||||||
|
description: Retrieve and update the authenticated user's profile.
|
||||||
|
tags:
|
||||||
|
- user
|
||||||
|
security:
|
||||||
|
- cookieAuth: []
|
||||||
|
- jwtAuth: []
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/User'
|
||||||
|
description: ''
|
||||||
|
put:
|
||||||
|
operationId: user_profile_update
|
||||||
|
description: Retrieve and update the authenticated user's profile.
|
||||||
|
tags:
|
||||||
|
- user
|
||||||
|
requestBody:
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/User'
|
||||||
|
application/x-www-form-urlencoded:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/User'
|
||||||
|
multipart/form-data:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/User'
|
||||||
|
required: true
|
||||||
|
security:
|
||||||
|
- cookieAuth: []
|
||||||
|
- jwtAuth: []
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/User'
|
||||||
|
description: ''
|
||||||
|
patch:
|
||||||
|
operationId: user_profile_partial_update
|
||||||
|
description: Retrieve and update the authenticated user's profile.
|
||||||
|
tags:
|
||||||
|
- user
|
||||||
|
requestBody:
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/PatchedUser'
|
||||||
|
application/x-www-form-urlencoded:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/PatchedUser'
|
||||||
|
multipart/form-data:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/PatchedUser'
|
||||||
|
security:
|
||||||
|
- cookieAuth: []
|
||||||
|
- jwtAuth: []
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: '#/components/schemas/User'
|
||||||
|
description: ''
|
||||||
|
components:
|
||||||
|
schemas:
|
||||||
|
CreatorDetails:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
creator_id:
|
||||||
|
type: string
|
||||||
|
nullable: true
|
||||||
|
maxLength: 128
|
||||||
|
slug:
|
||||||
|
type: string
|
||||||
|
maxLength: 64
|
||||||
|
name:
|
||||||
|
type: string
|
||||||
|
maxLength: 64
|
||||||
|
mature:
|
||||||
|
type: boolean
|
||||||
|
avatar_url:
|
||||||
|
type: string
|
||||||
|
nullable: true
|
||||||
|
readOnly: true
|
||||||
|
banner_url:
|
||||||
|
type: string
|
||||||
|
nullable: true
|
||||||
|
readOnly: true
|
||||||
|
description:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: object
|
||||||
|
additionalProperties:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
date:
|
||||||
|
type: object
|
||||||
|
additionalProperties:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
categories:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: object
|
||||||
|
additionalProperties:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
required:
|
||||||
|
- avatar_url
|
||||||
|
- banner_url
|
||||||
|
- categories
|
||||||
|
- date
|
||||||
|
- description
|
||||||
|
- name
|
||||||
|
- slug
|
||||||
|
CreatorList:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
creator_id:
|
||||||
|
type: string
|
||||||
|
nullable: true
|
||||||
|
maxLength: 128
|
||||||
|
source_site:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
slug:
|
||||||
|
type: string
|
||||||
|
maxLength: 64
|
||||||
|
name:
|
||||||
|
type: string
|
||||||
|
maxLength: 64
|
||||||
|
mature:
|
||||||
|
type: boolean
|
||||||
|
date:
|
||||||
|
type: object
|
||||||
|
additionalProperties:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
description:
|
||||||
|
type: string
|
||||||
|
nullable: true
|
||||||
|
readOnly: true
|
||||||
|
avatar_url:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
banner_url:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
required:
|
||||||
|
- avatar_url
|
||||||
|
- banner_url
|
||||||
|
- date
|
||||||
|
- description
|
||||||
|
- name
|
||||||
|
- slug
|
||||||
|
- source_site
|
||||||
|
Image:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
id:
|
||||||
|
type: integer
|
||||||
|
readOnly: true
|
||||||
|
title:
|
||||||
|
type: string
|
||||||
|
maxLength: 255
|
||||||
|
image:
|
||||||
|
type: string
|
||||||
|
format: uri
|
||||||
|
uploaded_at:
|
||||||
|
type: string
|
||||||
|
format: date-time
|
||||||
|
readOnly: true
|
||||||
|
required:
|
||||||
|
- id
|
||||||
|
- image
|
||||||
|
- title
|
||||||
|
- uploaded_at
|
||||||
|
Logout:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
refresh:
|
||||||
|
type: string
|
||||||
|
required:
|
||||||
|
- refresh
|
||||||
|
PatchedImage:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
id:
|
||||||
|
type: integer
|
||||||
|
readOnly: true
|
||||||
|
title:
|
||||||
|
type: string
|
||||||
|
maxLength: 255
|
||||||
|
image:
|
||||||
|
type: string
|
||||||
|
format: uri
|
||||||
|
uploaded_at:
|
||||||
|
type: string
|
||||||
|
format: date-time
|
||||||
|
readOnly: true
|
||||||
|
PatchedUser:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
username:
|
||||||
|
type: string
|
||||||
|
description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_
|
||||||
|
only.
|
||||||
|
pattern: ^[\w.@+-]+$
|
||||||
|
maxLength: 150
|
||||||
|
email:
|
||||||
|
type: string
|
||||||
|
format: email
|
||||||
|
title: Email address
|
||||||
|
maxLength: 254
|
||||||
|
first_name:
|
||||||
|
type: string
|
||||||
|
maxLength: 150
|
||||||
|
last_name:
|
||||||
|
type: string
|
||||||
|
maxLength: 150
|
||||||
|
profile:
|
||||||
|
$ref: '#/components/schemas/UserProfile'
|
||||||
|
Post:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
post_id:
|
||||||
|
type: string
|
||||||
|
maxLength: 128
|
||||||
|
title:
|
||||||
|
type: string
|
||||||
|
maxLength: 64
|
||||||
|
description:
|
||||||
|
type: object
|
||||||
|
additionalProperties:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
source_site:
|
||||||
|
type: object
|
||||||
|
additionalProperties:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
creator:
|
||||||
|
type: object
|
||||||
|
additionalProperties:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
date:
|
||||||
|
type: object
|
||||||
|
additionalProperties:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
mature:
|
||||||
|
type: boolean
|
||||||
|
media:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: object
|
||||||
|
additionalProperties:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
tags:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
required:
|
||||||
|
- creator
|
||||||
|
- date
|
||||||
|
- description
|
||||||
|
- media
|
||||||
|
- post_id
|
||||||
|
- source_site
|
||||||
|
- tags
|
||||||
|
- title
|
||||||
|
PostPreview:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
post_id:
|
||||||
|
type: string
|
||||||
|
maxLength: 128
|
||||||
|
mature:
|
||||||
|
type: boolean
|
||||||
|
title:
|
||||||
|
type: string
|
||||||
|
maxLength: 64
|
||||||
|
description:
|
||||||
|
type: string
|
||||||
|
nullable: true
|
||||||
|
readOnly: true
|
||||||
|
source_site:
|
||||||
|
type: object
|
||||||
|
additionalProperties:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
category:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: object
|
||||||
|
additionalProperties:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
creator:
|
||||||
|
type: object
|
||||||
|
additionalProperties:
|
||||||
|
type: string
|
||||||
|
nullable: true
|
||||||
|
readOnly: true
|
||||||
|
date:
|
||||||
|
type: object
|
||||||
|
additionalProperties:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
media:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: object
|
||||||
|
additionalProperties:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
tags:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
required:
|
||||||
|
- category
|
||||||
|
- creator
|
||||||
|
- date
|
||||||
|
- description
|
||||||
|
- media
|
||||||
|
- post_id
|
||||||
|
- source_site
|
||||||
|
- tags
|
||||||
|
- title
|
||||||
|
TokenObtainPair:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
username:
|
||||||
|
type: string
|
||||||
|
writeOnly: true
|
||||||
|
password:
|
||||||
|
type: string
|
||||||
|
writeOnly: true
|
||||||
|
access:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
refresh:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
required:
|
||||||
|
- access
|
||||||
|
- password
|
||||||
|
- refresh
|
||||||
|
- username
|
||||||
|
TokenRefresh:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
access:
|
||||||
|
type: string
|
||||||
|
readOnly: true
|
||||||
|
refresh:
|
||||||
|
type: string
|
||||||
|
writeOnly: true
|
||||||
|
required:
|
||||||
|
- access
|
||||||
|
- refresh
|
||||||
|
User:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
username:
|
||||||
|
type: string
|
||||||
|
description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_
|
||||||
|
only.
|
||||||
|
pattern: ^[\w.@+-]+$
|
||||||
|
maxLength: 150
|
||||||
|
email:
|
||||||
|
type: string
|
||||||
|
format: email
|
||||||
|
title: Email address
|
||||||
|
maxLength: 254
|
||||||
|
first_name:
|
||||||
|
type: string
|
||||||
|
maxLength: 150
|
||||||
|
last_name:
|
||||||
|
type: string
|
||||||
|
maxLength: 150
|
||||||
|
profile:
|
||||||
|
$ref: '#/components/schemas/UserProfile'
|
||||||
|
required:
|
||||||
|
- profile
|
||||||
|
- username
|
||||||
|
UserProfile:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
show_mature:
|
||||||
|
type: boolean
|
||||||
|
securitySchemes:
|
||||||
|
cookieAuth:
|
||||||
|
type: apiKey
|
||||||
|
in: cookie
|
||||||
|
name: sessionid
|
||||||
|
jwtAuth:
|
||||||
|
type: http
|
||||||
|
scheme: bearer
|
||||||
|
bearerFormat: JWT
|
Loading…
Add table
Reference in a new issue