mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-11-02 12:05:57 +01:00
fix: testing openapi write tests
This commit is contained in:
committed by
Andrew Rodrigues
parent
16873800a6
commit
7aa4d104af
@@ -21,262 +21,23 @@ info:
|
||||
license:
|
||||
name: GPL-3.0
|
||||
servers:
|
||||
- url: /api/v1
|
||||
- url: /write/v1
|
||||
tags:
|
||||
- name: users
|
||||
description: 'Account related calls (create, modify, delete, etc.)'
|
||||
- name: categories
|
||||
description: Administrative calls to manage categories
|
||||
paths:
|
||||
'/users/{uid}':
|
||||
delete:
|
||||
tags:
|
||||
- users
|
||||
summary: delete a single user account
|
||||
parameters:
|
||||
- in: path
|
||||
name: uid
|
||||
schema:
|
||||
type: integer
|
||||
required: true
|
||||
description: uid of the user to delete
|
||||
responses:
|
||||
'200':
|
||||
description: user account deleted
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
type: object
|
||||
put:
|
||||
tags:
|
||||
- users
|
||||
summary: update a user account
|
||||
parameters:
|
||||
- in: path
|
||||
name: uid
|
||||
schema:
|
||||
type: integer
|
||||
required: true
|
||||
description: uid of the user to update
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: components/schemas/UserRequest.yaml#/UserRequest
|
||||
responses:
|
||||
'200':
|
||||
description: user profile updated
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
$ref: components/schemas/UserObj.yaml#/UserObj
|
||||
'401':
|
||||
$ref: components/responses/401.yaml#/401
|
||||
'403':
|
||||
$ref: components/responses/403.yaml#/403
|
||||
'426':
|
||||
$ref: components/responses/426.yaml#/426
|
||||
'500':
|
||||
$ref: components/responses/500.yaml#/500
|
||||
'/users/{uid}/password':
|
||||
put:
|
||||
tags:
|
||||
- users
|
||||
summary: change a user's password
|
||||
parameters:
|
||||
- in: path
|
||||
name: uid
|
||||
schema:
|
||||
type: integer
|
||||
required: true
|
||||
description: uid of the user to update
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
currentPassword:
|
||||
type: string
|
||||
description: test
|
||||
example: oldp455word
|
||||
newPassword:
|
||||
type: string
|
||||
example: s3cre7password
|
||||
required:
|
||||
- newPassword
|
||||
responses:
|
||||
'200':
|
||||
description: user profile updated
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
type: object
|
||||
'/users/{uid}/follow':
|
||||
post:
|
||||
tags:
|
||||
- users
|
||||
summary: follow a user
|
||||
parameters:
|
||||
- in: path
|
||||
name: uid
|
||||
schema:
|
||||
type: integer
|
||||
required: true
|
||||
description: uid of the user to follow
|
||||
responses:
|
||||
'200':
|
||||
description: successfully followed user
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
type: object
|
||||
delete:
|
||||
tags:
|
||||
- users
|
||||
summary: unfollows a user
|
||||
parameters:
|
||||
- in: path
|
||||
name: uid
|
||||
schema:
|
||||
type: integer
|
||||
required: true
|
||||
description: uid of the user to unfollow
|
||||
responses:
|
||||
'200':
|
||||
description: successfully unfollowed user
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
type: object
|
||||
'/users/{uid}/ban':
|
||||
put:
|
||||
tags:
|
||||
- users
|
||||
summary: ban a user
|
||||
parameters:
|
||||
- in: path
|
||||
name: uid
|
||||
schema:
|
||||
type: integer
|
||||
required: true
|
||||
description: uid of the user to ban
|
||||
requestBody:
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
until:
|
||||
type: number
|
||||
description: UNIX timestamp of the ban expiry
|
||||
example: 1585775608076
|
||||
reason:
|
||||
type: string
|
||||
example: the reason for the ban
|
||||
responses:
|
||||
'200':
|
||||
description: successfully banned user
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
type: object
|
||||
delete:
|
||||
tags:
|
||||
- users
|
||||
summary: unbans a user
|
||||
parameters:
|
||||
- in: path
|
||||
name: uid
|
||||
schema:
|
||||
type: integer
|
||||
required: true
|
||||
description: uid of the user to unban
|
||||
responses:
|
||||
'200':
|
||||
description: successfully unbanned user
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
type: object
|
||||
'/users/{uid}/tokens':
|
||||
post:
|
||||
tags:
|
||||
- users
|
||||
summary: generate a user token
|
||||
description: This route can only be used to generate tokens for the same user. In other words, you cannot use this route to generate a token for a different user than the one you are authenticated as.
|
||||
responses:
|
||||
'200':
|
||||
description: successfully generated a user token
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
type: object
|
||||
delete:
|
||||
tags:
|
||||
- users
|
||||
summary: delete user token
|
||||
parameters:
|
||||
- in: path
|
||||
name: token
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
description: a valid API token
|
||||
responses:
|
||||
'200':
|
||||
description: successfully deleted user token
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
type: object
|
||||
/users/{uid}:
|
||||
$ref: 'write/users/uid.yaml'
|
||||
/users/{uid}/password:
|
||||
$ref: 'write/users/uid/password.yaml'
|
||||
/users/{uid}/follow:
|
||||
$ref: 'write/users/uid/follow.yaml'
|
||||
/users/{uid}/ban:
|
||||
$ref: 'write/users/uid/ban.yaml'
|
||||
/users/{uid}/tokens:
|
||||
$ref: 'write/users/uid/tokens.yaml'
|
||||
/categories/:
|
||||
$ref: 'write/categories.yaml'
|
||||
/groups/:
|
||||
|
||||
60
public/openapi/write/users/uid.yaml
Normal file
60
public/openapi/write/users/uid.yaml
Normal file
@@ -0,0 +1,60 @@
|
||||
delete:
|
||||
tags:
|
||||
- users
|
||||
summary: delete a single user account
|
||||
parameters:
|
||||
- in: path
|
||||
name: uid
|
||||
schema:
|
||||
type: integer
|
||||
required: true
|
||||
description: uid of the user to delete
|
||||
responses:
|
||||
'200':
|
||||
description: user account deleted
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: ../../components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
type: object
|
||||
put:
|
||||
tags:
|
||||
- users
|
||||
summary: update a user account
|
||||
parameters:
|
||||
- in: path
|
||||
name: uid
|
||||
schema:
|
||||
type: integer
|
||||
required: true
|
||||
description: uid of the user to update
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: ../../components/schemas/UserRequest.yaml#/UserRequest
|
||||
responses:
|
||||
'200':
|
||||
description: user profile updated
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: ../../components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
$ref: ../../components/schemas/UserObj.yaml#/UserObj
|
||||
'401':
|
||||
$ref: ../../components/responses/401.yaml#/401
|
||||
'403':
|
||||
$ref: ../../components/responses/403.yaml#/403
|
||||
'426':
|
||||
$ref: ../../components/responses/426.yaml#/426
|
||||
'500':
|
||||
$ref: ../../components/responses/500.yaml#/500
|
||||
59
public/openapi/write/users/uid/ban.yaml
Normal file
59
public/openapi/write/users/uid/ban.yaml
Normal file
@@ -0,0 +1,59 @@
|
||||
put:
|
||||
tags:
|
||||
- users
|
||||
summary: ban a user
|
||||
parameters:
|
||||
- in: path
|
||||
name: uid
|
||||
schema:
|
||||
type: integer
|
||||
required: true
|
||||
description: uid of the user to ban
|
||||
requestBody:
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
until:
|
||||
type: number
|
||||
description: UNIX timestamp of the ban expiry
|
||||
example: 1585775608076
|
||||
reason:
|
||||
type: string
|
||||
example: the reason for the ban
|
||||
responses:
|
||||
'200':
|
||||
description: successfully banned user
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: ../../../components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
type: object
|
||||
delete:
|
||||
tags:
|
||||
- users
|
||||
summary: unbans a user
|
||||
parameters:
|
||||
- in: path
|
||||
name: uid
|
||||
schema:
|
||||
type: integer
|
||||
required: true
|
||||
description: uid of the user to unban
|
||||
responses:
|
||||
'200':
|
||||
description: successfully unbanned user
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: ../../../components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
type: object
|
||||
46
public/openapi/write/users/uid/follow.yaml
Normal file
46
public/openapi/write/users/uid/follow.yaml
Normal file
@@ -0,0 +1,46 @@
|
||||
post:
|
||||
tags:
|
||||
- users
|
||||
summary: follow a user
|
||||
parameters:
|
||||
- in: path
|
||||
name: uid
|
||||
schema:
|
||||
type: integer
|
||||
required: true
|
||||
description: uid of the user to follow
|
||||
responses:
|
||||
'200':
|
||||
description: successfully followed user
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: ../../../components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
type: object
|
||||
delete:
|
||||
tags:
|
||||
- users
|
||||
summary: unfollows a user
|
||||
parameters:
|
||||
- in: path
|
||||
name: uid
|
||||
schema:
|
||||
type: integer
|
||||
required: true
|
||||
description: uid of the user to unfollow
|
||||
responses:
|
||||
'200':
|
||||
description: successfully unfollowed user
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: ../../../components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
type: object
|
||||
39
public/openapi/write/users/uid/password.yaml
Normal file
39
public/openapi/write/users/uid/password.yaml
Normal file
@@ -0,0 +1,39 @@
|
||||
put:
|
||||
tags:
|
||||
- users
|
||||
summary: change a user's password
|
||||
parameters:
|
||||
- in: path
|
||||
name: uid
|
||||
schema:
|
||||
type: integer
|
||||
required: true
|
||||
description: uid of the user to update
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
currentPassword:
|
||||
type: string
|
||||
description: test
|
||||
example: oldp455word
|
||||
newPassword:
|
||||
type: string
|
||||
example: s3cre7password
|
||||
required:
|
||||
- newPassword
|
||||
responses:
|
||||
'200':
|
||||
description: user profile updated
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: ../../../components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
type: object
|
||||
40
public/openapi/write/users/uid/tokens.yaml
Normal file
40
public/openapi/write/users/uid/tokens.yaml
Normal file
@@ -0,0 +1,40 @@
|
||||
post:
|
||||
tags:
|
||||
- users
|
||||
summary: generate a user token
|
||||
description: This route can only be used to generate tokens for the same user. In other words, you cannot use this route to generate a token for a different user than the one you are authenticated as.
|
||||
responses:
|
||||
'200':
|
||||
description: successfully generated a user token
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: ../../../components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
type: object
|
||||
delete:
|
||||
tags:
|
||||
- users
|
||||
summary: delete user token
|
||||
parameters:
|
||||
- in: path
|
||||
name: token
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
description: a valid API token
|
||||
responses:
|
||||
'200':
|
||||
description: successfully deleted user token
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: ../../../components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
type: object
|
||||
Reference in New Issue
Block a user