Add endpoints and schema for history retrieval by UUID
Introduced a new API endpoint to fetch all punishment history for a specified UUID. Updated existing schemas, controllers, and mappers to support this functionality. Adjusted login endpoints to improve request handling and streamlined frontend form setup for appeals.
This commit is contained in:
@@ -28,6 +28,8 @@ paths:
|
||||
$ref: './schemas/bans/bans.yml#/getTotalResultsForUserSearch'
|
||||
/history/single/{type}/{id}:
|
||||
$ref: './schemas/bans/bans.yml#/getHistoryById'
|
||||
/history/all/{uuid}:
|
||||
$ref: './schemas/bans/bans.yml#/getAllHistoryForUUID'
|
||||
/history/total:
|
||||
$ref: './schemas/bans/bans.yml#/getTotalPunishments'
|
||||
/appeal/update-mail:
|
||||
@@ -36,7 +38,7 @@ paths:
|
||||
$ref: './schemas/forms/appeal/appeal.yml#/MinecraftAppeal'
|
||||
/appeal/discord-appeal:
|
||||
$ref: './schemas/forms/appeal/appeal.yml#/DiscordAppeal'
|
||||
/login/addUserLogin:
|
||||
$ref: './schemas/login/login.yml#/AddUserLogin'
|
||||
/login/requestNewUserLogin/{uuid}:
|
||||
$ref: './schemas/login/login.yml#/RequestNewUserLogin'
|
||||
/login/userLogin:
|
||||
$ref: './schemas/login/login.yml#/UserLogin'
|
||||
|
||||
@@ -89,7 +89,7 @@ getHistoryForUuid:
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/UserType'
|
||||
- $ref: '#/components/parameters/HistoryType'
|
||||
- $ref: '#/components/parameters/Uuid'
|
||||
- $ref: '../generic/parameters.yml#/components/parameters/Uuid'
|
||||
- $ref: '#/components/parameters/Page'
|
||||
responses:
|
||||
'200':
|
||||
@@ -158,7 +158,7 @@ getTotalResultsForUuidSearch:
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/UserType'
|
||||
- $ref: '#/components/parameters/HistoryType'
|
||||
- $ref: '#/components/parameters/Uuid'
|
||||
- $ref: '../generic/parameters.yml#/components/parameters/Uuid'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful operation
|
||||
@@ -195,6 +195,22 @@ getHistoryById:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../generic/errors.yml#/components/schemas/ApiError'
|
||||
getAllHistoryForUUID:
|
||||
get:
|
||||
tags:
|
||||
- history
|
||||
summary: Gets all history for specified UUID
|
||||
description: Retrieves all history for specified UUID
|
||||
operationId: getAllHistoryForUUID
|
||||
parameters:
|
||||
- $ref: '../generic/parameters.yml#/components/parameters/Uuid'
|
||||
responses:
|
||||
'200':
|
||||
description: Successful operation
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/PunishmentHistoryList'
|
||||
components:
|
||||
parameters:
|
||||
HistoryType:
|
||||
@@ -212,13 +228,6 @@ components:
|
||||
schema:
|
||||
type: string
|
||||
description: The (partial) username to search for
|
||||
Uuid:
|
||||
name: uuid
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: string
|
||||
description: The uuid of the desired user
|
||||
UserType:
|
||||
name: userType
|
||||
in: path
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
components:
|
||||
parameters:
|
||||
Uuid:
|
||||
name: uuid
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: string
|
||||
description: The uuid of the desired user
|
||||
@@ -1,51 +1,55 @@
|
||||
UserLogin:
|
||||
post:
|
||||
get:
|
||||
tags:
|
||||
- login
|
||||
summary: Log in to the site
|
||||
description: Log in to the site through a code from the server
|
||||
operationId: login
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/LoginData'
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/Code'
|
||||
responses:
|
||||
'200':
|
||||
description: Logged in
|
||||
content:
|
||||
application/json:
|
||||
application/text:
|
||||
schema:
|
||||
$ref: '#/components/schemas/LoginResult'
|
||||
type: string
|
||||
description: A JWT token for this user
|
||||
'401':
|
||||
description: Login failed - Invalid credentials
|
||||
content:
|
||||
application/json:
|
||||
application/text:
|
||||
schema:
|
||||
$ref: '../generic/errors.yml#/components/schemas/ApiError'
|
||||
default:
|
||||
description: Unexpected error
|
||||
content:
|
||||
application/json:
|
||||
application/text:
|
||||
schema:
|
||||
$ref: '../generic/errors.yml#/components/schemas/ApiError'
|
||||
AddUserLogin:
|
||||
post:
|
||||
RequestNewUserLogin:
|
||||
get:
|
||||
tags:
|
||||
- login
|
||||
summary: Add a login
|
||||
description: Add a code, user combination that can be used to log in
|
||||
operationId: addLogin
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/AddLogin'
|
||||
summary: Request a login
|
||||
description: Request a code, that can be used to log in
|
||||
operationId: requestLogin
|
||||
parameters:
|
||||
- $ref: '../generic/parameters.yml#/components/parameters/Uuid'
|
||||
responses:
|
||||
'200':
|
||||
description: Success
|
||||
content:
|
||||
application/text:
|
||||
schema:
|
||||
type: string
|
||||
description: code to log in with
|
||||
'401':
|
||||
description: Login failed - Invalid secret
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../generic/errors.yml#/components/schemas/ApiError'
|
||||
default:
|
||||
description: Unexpected error
|
||||
content:
|
||||
@@ -53,6 +57,14 @@ AddUserLogin:
|
||||
schema:
|
||||
$ref: '../generic/errors.yml#/components/schemas/ApiError'
|
||||
components:
|
||||
parameters:
|
||||
Code:
|
||||
name: code
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: string
|
||||
description: The code to log in with
|
||||
schemas:
|
||||
LoginData:
|
||||
type: object
|
||||
@@ -62,35 +74,11 @@ components:
|
||||
loginCode:
|
||||
type: string
|
||||
description: The code to log in
|
||||
LoginResult:
|
||||
type: object
|
||||
required:
|
||||
- uuid
|
||||
- userName
|
||||
- auth
|
||||
properties:
|
||||
uuid:
|
||||
type: string
|
||||
format: uuid
|
||||
description: UUID of logged in user
|
||||
userName:
|
||||
type: string
|
||||
description: Name of the logged in user
|
||||
auth:
|
||||
type: string
|
||||
description: Token to use along side requests
|
||||
AddLogin:
|
||||
type: object
|
||||
required:
|
||||
- loginCode
|
||||
- uuid
|
||||
properties:
|
||||
auth:
|
||||
type: string
|
||||
description: Token to verify the sender is allowed to add logins
|
||||
loginCode:
|
||||
type: string
|
||||
description: The code that can be logged in with
|
||||
uuid:
|
||||
type: string
|
||||
format: uuid
|
||||
|
||||
Reference in New Issue
Block a user