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.
348 lines
10 KiB
YAML
348 lines
10 KiB
YAML
getUserNames:
|
|
get:
|
|
tags:
|
|
- history
|
|
summary: Get user names
|
|
description: Get all user names with punishment history of the specified type
|
|
operationId: getUserNames
|
|
parameters:
|
|
- $ref: '#/components/parameters/UserType'
|
|
- $ref: '#/components/parameters/HistoryType'
|
|
responses:
|
|
'200':
|
|
description: Successful operation
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: A list of users
|
|
default:
|
|
description: Unexpected error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '../generic/errors.yml#/components/schemas/ApiError'
|
|
getHistoryForUsers:
|
|
get:
|
|
tags:
|
|
- history
|
|
summary: Get history for users
|
|
description: >
|
|
Get all users with punishment history of the specified type,
|
|
where the user name starts with the search query, 100 records at a time
|
|
operationId: getHistoryForUsers
|
|
parameters:
|
|
- $ref: '#/components/parameters/UserType'
|
|
- $ref: '#/components/parameters/HistoryType'
|
|
- $ref: '#/components/parameters/User'
|
|
- $ref: '#/components/parameters/Page'
|
|
responses:
|
|
'200':
|
|
description: Successful operation
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/PunishmentHistoryList'
|
|
default:
|
|
description: Unexpected error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '../generic/errors.yml#/components/schemas/ApiError'
|
|
getHistoryForAll:
|
|
get:
|
|
tags:
|
|
- history
|
|
summary: Get history for users
|
|
description: >
|
|
Get all users with punishment history of the specified type,
|
|
where the user name starts with the search query, 100 records at a time
|
|
operationId: getHistoryForAll
|
|
parameters:
|
|
- $ref: '#/components/parameters/UserType'
|
|
- $ref: '#/components/parameters/HistoryType'
|
|
- $ref: '#/components/parameters/Page'
|
|
responses:
|
|
'200':
|
|
description: Successful operation
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/PunishmentHistoryList'
|
|
default:
|
|
description: Unexpected error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '../generic/errors.yml#/components/schemas/ApiError'
|
|
getHistoryForUuid:
|
|
get:
|
|
tags:
|
|
- history
|
|
summary: Get user
|
|
description: >
|
|
Get all users with punishment history of the specified type,
|
|
where the user uuid matches, 100 records at a time
|
|
operationId: getHistoryForUuid
|
|
parameters:
|
|
- $ref: '#/components/parameters/UserType'
|
|
- $ref: '#/components/parameters/HistoryType'
|
|
- $ref: '../generic/parameters.yml#/components/parameters/Uuid'
|
|
- $ref: '#/components/parameters/Page'
|
|
responses:
|
|
'200':
|
|
description: Successful operation
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/PunishmentHistoryList'
|
|
default:
|
|
description: Unexpected error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '../generic/errors.yml#/components/schemas/ApiError'
|
|
getTotalPunishments:
|
|
get:
|
|
tags:
|
|
- history
|
|
summary: Get total history count per type
|
|
description: Retrieves the total count of punishments for each type available (ban, mute, kick, warn, or all).
|
|
operationId: getTotalPunishments
|
|
responses:
|
|
'200':
|
|
description: Successful operation
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/HistoryCount'
|
|
default:
|
|
description: Unexpected error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '../generic/errors.yml#/components/schemas/ApiError'
|
|
getTotalResultsForUserSearch:
|
|
get:
|
|
tags:
|
|
- history
|
|
summary: Gets total results for search query
|
|
description: Retrieves the total count of punishments for the search query
|
|
operationId: getTotalResultsForUserSearch
|
|
parameters:
|
|
- $ref: '#/components/parameters/UserType'
|
|
- $ref: '#/components/parameters/HistoryType'
|
|
- $ref: '#/components/parameters/User'
|
|
responses:
|
|
'200':
|
|
description: Successful operation
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/SearchResults'
|
|
default:
|
|
description: Unexpected error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '../generic/errors.yml#/components/schemas/ApiError'
|
|
getTotalResultsForUuidSearch:
|
|
get:
|
|
tags:
|
|
- history
|
|
summary: Gets total results for search query
|
|
description: Retrieves the total count of punishments for the search query
|
|
operationId: getTotalResultsForUuidSearch
|
|
parameters:
|
|
- $ref: '#/components/parameters/UserType'
|
|
- $ref: '#/components/parameters/HistoryType'
|
|
- $ref: '../generic/parameters.yml#/components/parameters/Uuid'
|
|
responses:
|
|
'200':
|
|
description: Successful operation
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/SearchResults'
|
|
default:
|
|
description: Unexpected error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '../generic/errors.yml#/components/schemas/ApiError'
|
|
getHistoryById:
|
|
get:
|
|
tags:
|
|
- history
|
|
summary: Gets history for specified id
|
|
description: Retrieves a specific history record
|
|
operationId: getHistoryById
|
|
parameters:
|
|
- $ref: '#/components/parameters/HistoryType'
|
|
- $ref: '#/components/parameters/Id'
|
|
responses:
|
|
'200':
|
|
description: Successful operation
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/PunishmentHistory'
|
|
default:
|
|
description: Unexpected error
|
|
content:
|
|
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:
|
|
name: type
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
enum: [ all, ban, mute, kick, warn ]
|
|
description: The type of history to retrieve
|
|
User:
|
|
name: user
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
description: The (partial) username to search for
|
|
UserType:
|
|
name: userType
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: string
|
|
enum: [ player, staff ]
|
|
description: Indicates if this is a staff history or a player history look up
|
|
Page:
|
|
name: page
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: integer
|
|
description: The page that should be retrieved
|
|
Id:
|
|
name: id
|
|
in: path
|
|
required: true
|
|
schema:
|
|
type: integer
|
|
description: The id of the punishment that should be retrieved
|
|
schemas:
|
|
SearchResults:
|
|
type: integer
|
|
description: A number representing the total count of results for the search query
|
|
PunishmentHistoryList:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/PunishmentHistory'
|
|
PunishmentHistory:
|
|
type: object
|
|
required:
|
|
- username
|
|
- uuid
|
|
- reason
|
|
- type
|
|
- punishmentTime
|
|
- expiryTime
|
|
- punishedBy
|
|
- punishedByUuid
|
|
- id
|
|
properties:
|
|
username:
|
|
type: string
|
|
description: The username of the user
|
|
uuid:
|
|
type: string
|
|
description: The UUID of the user
|
|
reason:
|
|
type: string
|
|
description: The reason for the punishment
|
|
type:
|
|
type: string
|
|
description: The type of punishment
|
|
enum: [ ban, mute, kick, warn ]
|
|
punishmentTime:
|
|
type: integer
|
|
format: int64
|
|
description: The time when the punishment was given
|
|
expiryTime:
|
|
type: integer
|
|
format: int64
|
|
description: The time when the punishment expires
|
|
punishedBy:
|
|
type: string
|
|
description: The username of the punishment issuer
|
|
punishedByUuid:
|
|
type: string
|
|
description: The UUID of the punishment issuer
|
|
removedBy:
|
|
type: string
|
|
description: The name of the staff member who removed the punishment
|
|
removedReason:
|
|
type: string
|
|
description: The reason why the punishment was removed
|
|
id:
|
|
type: integer
|
|
description: Id of the punishment
|
|
Player:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
description: The name of the player
|
|
example: a_name
|
|
uuid:
|
|
type: string
|
|
example: 0c35e520-927e-4c6a-87ad-ff0739c22e9d
|
|
description: The uuid of the team player
|
|
required:
|
|
- name
|
|
- uuid
|
|
HistoryCount:
|
|
type: object
|
|
required:
|
|
- bans
|
|
- mutes
|
|
- warnings
|
|
- kicks
|
|
properties:
|
|
bans:
|
|
type: integer
|
|
description: The total amounts of bans
|
|
example: 10528
|
|
mutes:
|
|
type: integer
|
|
description: The total amounts of mutes
|
|
example: 2350
|
|
warnings:
|
|
type: integer
|
|
description: The total amounts of warnings
|
|
example: 3881
|
|
kicks:
|
|
type: integer
|
|
description: The total amounts of kicks
|
|
example: 1769
|