rework api endpoints
All checks were successful
deploy / build-and-deploy (push) Successful in 19s

This commit is contained in:
2025-10-17 20:15:06 +02:00
parent a27cf5f35b
commit 964ccfacbf
10 changed files with 266 additions and 189 deletions

View File

@@ -42,7 +42,7 @@
</details>
<details>
<summary><code>POST</code> <code>/api/report</code> (Erstellt einen Report)</summary>
<summary><code>POST</code> <code>/api/reports</code> (Erstellt einen Report)</summary>
##### Request Body
@@ -78,7 +78,7 @@
</details>
<details>
<summary><code>PUT</code> <code>/api/report</code> (Erstellt einen Abgeschlossenen Report)</summary>
<summary><code>PUT</code> <code>/api/reports</code> (Erstellt einen Abgeschlossenen Report)</summary>
##### Request Body
@@ -117,16 +117,13 @@
</details>
<details>
<summary><code>POST</code> <code>/api/player</code> (Status eines Spielers)</summary>
<summary><code>GET</code> <code>/api/users/{uuid}</code> (Status eines Spielers)</summary>
##### Request Body
#### Path Parameters
```
{
// UUID eines Spielers
"uuid": string
}
```
| parameter | beschreibung |
| --------- | ------------------- |
| `uuid` | UUID eines Spielers |
##### Response Codes
@@ -161,6 +158,59 @@
</details>
<details>
<summary><code>GET</code> <code>/api/users/{uuid}/reports</code> (Reports eines Spielers)</summary>
#### Path Parameters
| parameter | beschreibung |
| --------- | ------------------- |
| `uuid` | UUID eines Spielers |
##### Response Codes
| http code | beschreibung |
| --------- | ------------------------------------------ |
| 200 | / |
| 400 | Der Request Body ist falsch |
| 401 | Es wurde ein falsches API Secret angegeben |
| 404 | Der Spieler existiert nicht |
##### Response Body
```
{
// Alle Reports, die der Spieler selber erstellt hat
"from_self": {
// Die UUID des reporteten Spielers oder null falls ein unbekannter Spieler reportet wurde
"reported": string | null,
// Grund des Reports
"reason": string,
// Wann der Report abgeschickt wurde als UTC Millisekunden oder null falls der Report noch nicht abgeschickt wurde (=> kann noch bearbeitet werden)
"created": number | null,
// Status des Reports, "open" wenn er gerade bearbeitet wird, "closed" falls er bearbeitet wurde, null wenn nichts von beidem
"status": "open" | "closed" | null,
// Url zum Report auf der Website
"url": string
}[],
// Alle Reports, die gegen den Spieler erstellt wurden
"to_self": {
// Die UUID des Spielers, der den Report erstellt hat oder null falls der Report vom System kommt
"reporter": string | null,
// Grund des Reports
"reason": string,
// Wann der Report abgeschickt wurde als UTC Millisekunden oder null falls der Report noch nicht abgeschickt wurde (=> kann noch bearbeitet werden)
"created": number | null,
// Status des Reports, "open" wenn er gerade bearbeitet wird, "closed" falls er bearbeitet wurde, null wenn nichts von beidem
"status": "open" | "closed" | null,
// Url zum Report auf der Website
"url": string
}[]
}
```
</details>
## Webhook
> Die env variable `WEBHOOK_ENDPOINT` muss gesetzt und eine valide HTTP URL sein.