Add appeal endpoints and schema definitions
Introduce new API endpoints for handling Minecraft and Discord appeals, as well as updating appeal email addresses. Define detailed schemas for request and response payloads, supporting streamlined appeal processing across all platforms.
This commit is contained in:
parent
3a2a54050f
commit
21b87fbf68
|
|
@ -24,3 +24,9 @@ paths:
|
|||
$ref: './schemas/bans/bans.yml#/getHistoryForUuid'
|
||||
/history/total:
|
||||
$ref: './schemas/bans/bans.yml#/getTotalPunishments'
|
||||
/appeal/update-mail:
|
||||
$ref: './schemas/forms/appeal/appeal.yml#/UpdateMail'
|
||||
/appeal/minecraft-appeal:
|
||||
$ref: './schemas/forms/appeal/appeal.yml#/MinecraftAppeal'
|
||||
/appeal/discord-appeal:
|
||||
$ref: './schemas/forms/appeal/appeal.yml#/DiscordAppeal'
|
||||
|
|
|
|||
162
open_api/src/main/resources/schemas/forms/appeal/appeal.yml
Normal file
162
open_api/src/main/resources/schemas/forms/appeal/appeal.yml
Normal file
|
|
@ -0,0 +1,162 @@
|
|||
# TODO save appeal
|
||||
# TODO load appeal into page for viewing
|
||||
# TODO give option to reload appeal if user didnt finish it (or verify it) based on cookies
|
||||
# TODO on validation send mail to us
|
||||
# TODO if they dont validate their email add a button to change it, this should change the mail in the appeal as well
|
||||
|
||||
UpdateMail:
|
||||
post:
|
||||
tags:
|
||||
- appeals
|
||||
summary: Update a mail for an appeal
|
||||
description: Update a mail for an appeal that was made earlier
|
||||
operationId: updateMail
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/UpdateMail'
|
||||
responses:
|
||||
'200':
|
||||
description: Email updated
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/AppealResponse'
|
||||
default:
|
||||
description: Unexpected error
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../generic/errors.yml#/components/schemas/ApiError'
|
||||
MinecraftAppeal:
|
||||
post:
|
||||
tags:
|
||||
- appeals
|
||||
summary: Submit a Minecraft appeal
|
||||
description: Submit an appeal for a Minecraft punishment
|
||||
operationId: submitMinecraftAppeal
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/MinecraftAppeal'
|
||||
responses:
|
||||
'201':
|
||||
description: Appeal created please verify email
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/AppealResponse'
|
||||
default:
|
||||
description: Unexpected error
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../generic/errors.yml#/components/schemas/ApiError'
|
||||
DiscordAppeal:
|
||||
post:
|
||||
tags:
|
||||
- appeals
|
||||
summary: Submit a Discord appeal
|
||||
description: Submit an appeal for a Discord punishment
|
||||
operationId: submitDiscordAppeal
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/DiscordAppeal'
|
||||
responses:
|
||||
'201':
|
||||
description: Appeal created please verify email
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/MinecraftAppeal'
|
||||
default:
|
||||
description: Unexpected error
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '../../generic/errors.yml#/components/schemas/ApiError'
|
||||
|
||||
components:
|
||||
schemas:
|
||||
MinecraftAppeal:
|
||||
type: object
|
||||
description: Schema for Minecraft ban/punishment appeals
|
||||
required:
|
||||
- username
|
||||
- email
|
||||
- punishmentId
|
||||
- appeal
|
||||
properties:
|
||||
username:
|
||||
type: string
|
||||
description: Minecraft username of the appealing player
|
||||
uuid:
|
||||
type: string
|
||||
format: uuid
|
||||
description: Minecraft player's unique identifier
|
||||
email:
|
||||
type: string
|
||||
description: Contact email address of the appealing player
|
||||
punishmentId:
|
||||
type: integer
|
||||
description: Unique identifier of the punishment being appealed
|
||||
appeal:
|
||||
type: string
|
||||
description: Appeal text explaining why the punishment should be reconsidered
|
||||
DiscordAppeal:
|
||||
type: object
|
||||
description: Schema for Discord ban/punishment appeals
|
||||
required:
|
||||
- username
|
||||
- userId
|
||||
- email
|
||||
- punishmentId
|
||||
- appeal
|
||||
properties:
|
||||
username:
|
||||
type: string
|
||||
description: Discord username of the appealing user
|
||||
userId:
|
||||
type: integer
|
||||
format: int64
|
||||
description: Discord user ID of the appealing user
|
||||
email:
|
||||
type: string
|
||||
description: Contact email address of the appealing user
|
||||
punishmentId:
|
||||
type: integer
|
||||
description: Unique identifier of the punishment being appealed
|
||||
appeal:
|
||||
type: string
|
||||
description: Appeal text explaining why the punishment should be reconsidered
|
||||
AppealResponse:
|
||||
type: object
|
||||
required:
|
||||
- id
|
||||
- message
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
description: Unique identifier for the submitted appeal for referring to it later
|
||||
message:
|
||||
type: string
|
||||
description: Confirmation message
|
||||
UpdateMail:
|
||||
type: object
|
||||
required:
|
||||
- id
|
||||
- mail
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
description: Unique identifier of the appeal you wish to update
|
||||
mail:
|
||||
type: string
|
||||
description: The new mail address to use
|
||||
Loading…
Reference in New Issue
Block a user