@rebornteam/reborn-api 3.2.1 → 4.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/.openapi-generator/FILES +70 -4
  2. package/README.md +103 -8
  3. package/api.ts +4362 -455
  4. package/base.ts +1 -1
  5. package/common.ts +1 -1
  6. package/configuration.ts +1 -1
  7. package/dist/api.d.ts +2735 -394
  8. package/dist/api.js +3171 -444
  9. package/dist/base.d.ts +1 -1
  10. package/dist/base.js +1 -1
  11. package/dist/common.d.ts +1 -1
  12. package/dist/common.js +1 -1
  13. package/dist/configuration.d.ts +1 -1
  14. package/dist/configuration.js +1 -1
  15. package/dist/esm/api.d.ts +2735 -394
  16. package/dist/esm/api.js +3146 -439
  17. package/dist/esm/base.d.ts +1 -1
  18. package/dist/esm/base.js +1 -1
  19. package/dist/esm/common.d.ts +1 -1
  20. package/dist/esm/common.js +1 -1
  21. package/dist/esm/configuration.d.ts +1 -1
  22. package/dist/esm/configuration.js +1 -1
  23. package/dist/esm/index.d.ts +1 -1
  24. package/dist/esm/index.js +1 -1
  25. package/dist/index.d.ts +1 -1
  26. package/dist/index.js +1 -1
  27. package/docs/AdminAltAccount.md +27 -0
  28. package/docs/AdminAltExemption.md +31 -0
  29. package/docs/AdminAltGraph.md +27 -0
  30. package/docs/AdminAltGraphEdge.md +25 -0
  31. package/docs/AdminAltGraphNode.md +29 -0
  32. package/docs/AdminApplyPunishmentResult.md +4 -4
  33. package/docs/AdminAsyncJob.md +49 -0
  34. package/docs/AdminAsyncJobArtifactMeta.md +23 -0
  35. package/docs/AdminAsyncJobStartResponse.md +21 -0
  36. package/docs/AdminAuditLogApi.md +141 -0
  37. package/docs/AdminAuditLogEntry.md +33 -0
  38. package/docs/AdminBulkRevokeRequest.md +25 -0
  39. package/docs/AdminBulkRevokeResponse.md +21 -0
  40. package/docs/AdminConnectionCheckResult.md +4 -0
  41. package/docs/AdminConnectionsApi.md +154 -39
  42. package/docs/AdminCreateAltExemptionRequest.md +23 -0
  43. package/docs/AdminCreatePlayerNoteRequest.md +21 -0
  44. package/docs/AdminDashboardConnectionResponse.md +4 -2
  45. package/docs/AdminJobsApi.md +230 -0
  46. package/docs/AdminPlayerDetailResponse.md +4 -4
  47. package/docs/AdminPlayerNote.md +31 -0
  48. package/docs/AdminPlayerPunishmentResponse.md +51 -0
  49. package/docs/AdminPlayerReport.md +39 -0
  50. package/docs/AdminPlayerSession.md +31 -0
  51. package/docs/AdminPlayerSessionStats.md +29 -0
  52. package/docs/AdminPlayerSummary.md +2 -4
  53. package/docs/AdminPlayersApi.md +1043 -19
  54. package/docs/AdminPunishmentEvaluation.md +4 -8
  55. package/docs/AdminPunishmentTargets.md +23 -0
  56. package/docs/AdminPunishmentsApi.md +179 -21
  57. package/docs/AdminReportTarget.md +23 -0
  58. package/docs/AdminReportsApi.md +123 -0
  59. package/docs/AdminResolveReportRequest.md +21 -0
  60. package/docs/AdminSetAggressiveModeImmunityRequest.md +21 -0
  61. package/docs/AdminTrustFactorBreakdown.md +61 -0
  62. package/docs/AdminTrustFactorHistoryEntry.md +23 -0
  63. package/docs/AdminTrustFactorImpact.md +23 -0
  64. package/docs/AdminUpdatePunishmentRequest.md +35 -0
  65. package/docs/ChatApi.md +4 -4
  66. package/docs/ConnectionApi.md +4 -4
  67. package/docs/ConnectionGetConnectionDetailsResponse.md +5 -1
  68. package/docs/ConnectionResult.md +1 -1
  69. package/docs/CreateReportRequest.md +27 -0
  70. package/docs/CreateReportResponse.md +23 -0
  71. package/docs/CursoredPageAdminAuditLogEntry.md +38 -0
  72. package/docs/CursoredPageable.md +30 -0
  73. package/docs/JobStatus.md +17 -0
  74. package/docs/PageAdminAltAccount.md +36 -0
  75. package/docs/PageAdminAltExemption.md +36 -0
  76. package/docs/PageAdminAsyncJob.md +36 -0
  77. package/docs/PageAdminAuditLogEntry.md +36 -0
  78. package/docs/PageAdminDashboardConnectionResponse.md +36 -0
  79. package/docs/PageAdminPlayerNote.md +36 -0
  80. package/docs/PageAdminPlayerPunishmentResponse.md +36 -0
  81. package/docs/PageAdminPlayerReport.md +36 -0
  82. package/docs/PageAdminPlayerSession.md +36 -0
  83. package/docs/PageAdminPlayerSummary.md +36 -0
  84. package/docs/PageAdminPunishmentListItem.md +36 -0
  85. package/docs/PagePunishmentGetPunishmentResponse.md +36 -0
  86. package/docs/Pageable.md +28 -0
  87. package/docs/PageableMode.md +12 -0
  88. package/docs/PlayerGetPlayerInformation.md +5 -3
  89. package/docs/PlayerSessionEndRequest.md +23 -0
  90. package/docs/PlayerSessionStartRequest.md +27 -0
  91. package/docs/PlayerSessionStartResponse.md +51 -0
  92. package/docs/PlayerSessionsApi.md +116 -0
  93. package/docs/PunishmentApi.md +22 -24
  94. package/docs/PunishmentSource.md +11 -0
  95. package/docs/PunishmentType.md +1 -0
  96. package/docs/ReportApi.md +64 -0
  97. package/docs/ReportCategory.md +17 -0
  98. package/docs/SliceAdminAltAccount.md +32 -0
  99. package/docs/SliceAdminAltExemption.md +32 -0
  100. package/docs/SliceAdminAsyncJob.md +32 -0
  101. package/docs/SliceAdminAuditLogEntry.md +32 -0
  102. package/docs/SliceAdminDashboardConnectionResponse.md +32 -0
  103. package/docs/SliceAdminPlayerNote.md +32 -0
  104. package/docs/SliceAdminPlayerPunishmentResponse.md +32 -0
  105. package/docs/SliceAdminPlayerReport.md +32 -0
  106. package/docs/SliceAdminPlayerSession.md +32 -0
  107. package/docs/SliceAdminPlayerSummary.md +32 -0
  108. package/docs/SliceAdminPunishmentListItem.md +32 -0
  109. package/docs/SlicePunishmentGetPunishmentResponse.md +32 -0
  110. package/docs/Sort.md +20 -0
  111. package/docs/SortOrder.md +26 -0
  112. package/docs/SortOrderDirection.md +10 -0
  113. package/index.ts +1 -1
  114. package/package.json +1 -1
  115. package/docs/AdminBackfillLocationResponse.md +0 -25
  116. package/docs/AdminPagedConnectionResponse.md +0 -29
  117. package/docs/AdminPagedPlayerResponse.md +0 -29
  118. package/docs/AdminPagedPunishmentResponse.md +0 -29
@@ -0,0 +1,28 @@
1
+ # Pageable
2
+
3
+
4
+ ## Properties
5
+
6
+ Name | Type | Description | Notes
7
+ ------------ | ------------- | ------------- | -------------
8
+ **orderBy** | [**Array<SortOrder>**](SortOrder.md) | | [default to undefined]
9
+ **number** | **number** | | [default to undefined]
10
+ **size** | **number** | | [default to undefined]
11
+ **mode** | [**PageableMode**](PageableMode.md) | | [default to undefined]
12
+ **sort** | [**Sort**](Sort.md) | | [default to undefined]
13
+
14
+ ## Example
15
+
16
+ ```typescript
17
+ import { Pageable } from '@rebornteam/reborn-api';
18
+
19
+ const instance: Pageable = {
20
+ orderBy,
21
+ number,
22
+ size,
23
+ mode,
24
+ sort,
25
+ };
26
+ ```
27
+
28
+ [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
@@ -0,0 +1,12 @@
1
+ # PageableMode
2
+
3
+
4
+ ## Enum
5
+
6
+ * `CursorNext` (value: `'CURSOR_NEXT'`)
7
+
8
+ * `CursorPrevious` (value: `'CURSOR_PREVIOUS'`)
9
+
10
+ * `Offset` (value: `'OFFSET'`)
11
+
12
+ [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
@@ -1,6 +1,6 @@
1
1
  # PlayerGetPlayerInformation
2
2
 
3
- Player information including join history, tracking data, and punishment scoring
3
+ Player information including join history, tracking data, and trust factor
4
4
 
5
5
  ## Properties
6
6
 
@@ -8,8 +8,9 @@ Name | Type | Description | Notes
8
8
  ------------ | ------------- | ------------- | -------------
9
9
  **firstJoin** | **boolean** | Indicates whether this is the player\'s first time joining the server. | [default to undefined]
10
10
  **firstLogin** | **string** | Timestamp of when the player first connected to the server (ISO-8601 format). | [default to undefined]
11
- **punishmentPointsRaw** | **number** | Raw punishment score calculated as: SUM((base_weight × severity/10)). Used for tracking overall punishment severity. | [default to undefined]
12
- **punishmentPointsPercent** | **number** | Punishment score as a percentage (0-100). When >100% before applying a new punishment, the new punishment should be made permanent. | [default to undefined]
11
+ **trustFactor** | **number** | Trust factor (0-100, higher = more trusted). Composite signal from account age, punishment history, alts, connections, propagation, and admin affirmations. Informational only — does NOT auto-escalate punishments. | [default to undefined]
12
+ **punishmentPointsRaw** | **number** | **DEPRECATED.** The punishment-score formula was removed in 3.7.0 when trust factor replaced it. This field always serializes as 0.0 and is retained only for clients pinned to ≤ 3.6.0. Use {@link #trustFactor} instead. | [default to undefined]
13
+ **punishmentPointsPercent** | **number** | **DEPRECATED.** See {@link #punishmentPointsRaw}. Always 0.0 — use trustFactor. | [default to undefined]
13
14
 
14
15
  ## Example
15
16
 
@@ -19,6 +20,7 @@ import { PlayerGetPlayerInformation } from '@rebornteam/reborn-api';
19
20
  const instance: PlayerGetPlayerInformation = {
20
21
  firstJoin,
21
22
  firstLogin,
23
+ trustFactor,
22
24
  punishmentPointsRaw,
23
25
  punishmentPointsPercent,
24
26
  };
@@ -0,0 +1,23 @@
1
+ # PlayerSessionEndRequest
2
+
3
+ Close the active player session for a (playerUuid, serverSessionId) pair. No-op if no active session is found.
4
+
5
+ ## Properties
6
+
7
+ Name | Type | Description | Notes
8
+ ------------ | ------------- | ------------- | -------------
9
+ **playerUuid** | **string** | Player Minecraft UUID | [default to undefined]
10
+ **serverSessionId** | **string** | Server session id the player was on | [default to undefined]
11
+
12
+ ## Example
13
+
14
+ ```typescript
15
+ import { PlayerSessionEndRequest } from '@rebornteam/reborn-api';
16
+
17
+ const instance: PlayerSessionEndRequest = {
18
+ playerUuid,
19
+ serverSessionId,
20
+ };
21
+ ```
22
+
23
+ [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
@@ -0,0 +1,27 @@
1
+ # PlayerSessionStartRequest
2
+
3
+ Unified player-join request. Runs the full authorization check (VPN, bypass, punishments) and conditionally opens a player_session for the allowed players.
4
+
5
+ ## Properties
6
+
7
+ Name | Type | Description | Notes
8
+ ------------ | ------------- | ------------- | -------------
9
+ **playerUuid** | **string** | Player Minecraft UUID | [default to undefined]
10
+ **serverSessionId** | **string** | Server session id this player is on (from /v1/servers register) | [default to undefined]
11
+ **ip** | **string** | IPv4 address the player is connecting from | [default to undefined]
12
+ **forceRecheck** | **boolean** | When true, bypass any cached VPN-check result and re-run all detection services. Useful when debugging a specific connection. Defaults to false. | [optional] [default to undefined]
13
+
14
+ ## Example
15
+
16
+ ```typescript
17
+ import { PlayerSessionStartRequest } from '@rebornteam/reborn-api';
18
+
19
+ const instance: PlayerSessionStartRequest = {
20
+ playerUuid,
21
+ serverSessionId,
22
+ ip,
23
+ forceRecheck,
24
+ };
25
+ ```
26
+
27
+ [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
@@ -0,0 +1,51 @@
1
+ # PlayerSessionStartResponse
2
+
3
+ Result of POST /v1/player-session/start. Always populated; session fields are null when the player was not allowed in.
4
+
5
+ ## Properties
6
+
7
+ Name | Type | Description | Notes
8
+ ------------ | ------------- | ------------- | -------------
9
+ **sessionId** | **string** | Session row id. Null when the join was not allowed. | [optional] [default to undefined]
10
+ **startedAt** | **string** | When the session was opened (ISO-8601). For re-attached sessions this is the original start time, not now. Null when the join was not allowed. | [optional] [default to undefined]
11
+ **playerUuid** | **string** | Player Minecraft UUID | [default to undefined]
12
+ **serverSessionId** | **string** | Server session id the join applies to | [default to undefined]
13
+ **connectionResult** | [**ConnectionResult**](ConnectionResult.md) | Final allow/deny verdict plus formatted kick message if denied. | [default to undefined]
14
+ **ipAddress** | **string** | Player\'s connecting IP, echoed from the request | [default to undefined]
15
+ **city** | **string** | City reported by the first VPN provider that returned one. Null when no provider has city data (private IPs, localhost, sparse providers). | [optional] [default to undefined]
16
+ **country** | **string** | Country code reported by the first VPN provider that returned one (ISO 3166-1 alpha-2 or alpha-3 depending on provider). | [optional] [default to undefined]
17
+ **percentPositive** | **number** | Confidence score (0.0–100.0) representing what fraction of VPN detection services flagged this IP as suspicious. | [default to undefined]
18
+ **numberOfChecks** | **number** | Total VPN detection services successfully queried on this IP | [default to undefined]
19
+ **isBypassed** | **boolean** | Whether this IP has an active administrative VPN bypass | [default to undefined]
20
+ **bypassedUntil** | **string** | Bypass expiration timestamp; null if not bypassed or bypass is permanent. | [optional] [default to undefined]
21
+ **checkResults** | [**Array<AdminConnectionCheckResult>**](AdminConnectionCheckResult.md) | Per-provider VPN check results, useful for the admin UI / debugging. | [optional] [default to undefined]
22
+ **playerInformation** | [**PlayerGetPlayerInformation**](PlayerGetPlayerInformation.md) | Player info (first-join flag, first login, punishment score). Null only in edge cases where the player record could not be loaded. | [optional] [default to undefined]
23
+ **activePunishments** | [**Array<PunishmentGetPunishmentResponse>**](PunishmentGetPunishmentResponse.md) | Active (non-expired, non-revoked) punishments on this player, including any that were just propagated by the join check. | [default to undefined]
24
+ **sessionStats** | [**AdminPlayerSessionStats**](AdminPlayerSessionStats.md) | Aggregate session stats. Useful for game-server-side welcome messages (\"Welcome back — you\'ve played 250 hours\") or for the chat plugin to know if the player is a returning user. | [default to undefined]
25
+
26
+ ## Example
27
+
28
+ ```typescript
29
+ import { PlayerSessionStartResponse } from '@rebornteam/reborn-api';
30
+
31
+ const instance: PlayerSessionStartResponse = {
32
+ sessionId,
33
+ startedAt,
34
+ playerUuid,
35
+ serverSessionId,
36
+ connectionResult,
37
+ ipAddress,
38
+ city,
39
+ country,
40
+ percentPositive,
41
+ numberOfChecks,
42
+ isBypassed,
43
+ bypassedUntil,
44
+ checkResults,
45
+ playerInformation,
46
+ activePunishments,
47
+ sessionStats,
48
+ };
49
+ ```
50
+
51
+ [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
@@ -0,0 +1,116 @@
1
+ # PlayerSessionsApi
2
+
3
+ All URIs are relative to *https://api.smsh.sh*
4
+
5
+ |Method | HTTP request | Description|
6
+ |------------- | ------------- | -------------|
7
+ |[**end**](#end) | **POST** /v1/player-session/end | Close the active player session|
8
+ |[**start**](#start) | **POST** /v1/player-session/start | Player join — unified authorization + session-open|
9
+
10
+ # **end**
11
+ > end(playerSessionEndRequest)
12
+
13
+ Closes the active session for a (playerUuid, serverSessionId) pair. No-op if no active session is found, so duplicate end events from a retry don\'t error.
14
+
15
+ ### Example
16
+
17
+ ```typescript
18
+ import {
19
+ PlayerSessionsApi,
20
+ Configuration,
21
+ PlayerSessionEndRequest
22
+ } from '@rebornteam/reborn-api';
23
+
24
+ const configuration = new Configuration();
25
+ const apiInstance = new PlayerSessionsApi(configuration);
26
+
27
+ let playerSessionEndRequest: PlayerSessionEndRequest; //
28
+
29
+ const { status, data } = await apiInstance.end(
30
+ playerSessionEndRequest
31
+ );
32
+ ```
33
+
34
+ ### Parameters
35
+
36
+ |Name | Type | Description | Notes|
37
+ |------------- | ------------- | ------------- | -------------|
38
+ | **playerSessionEndRequest** | **PlayerSessionEndRequest**| | |
39
+
40
+
41
+ ### Return type
42
+
43
+ void (empty response body)
44
+
45
+ ### Authorization
46
+
47
+ [DiscordAuth](../README.md#DiscordAuth)
48
+
49
+ ### HTTP request headers
50
+
51
+ - **Content-Type**: application/json
52
+ - **Accept**: Not defined
53
+
54
+
55
+ ### HTTP response details
56
+ | Status code | Description | Response headers |
57
+ |-------------|-------------|------------------|
58
+ |**204** | Session closed (or no-op if no active session) | - |
59
+ |**401** | Unauthorized | - |
60
+
61
+ [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
62
+
63
+ # **start**
64
+ > PlayerSessionStartResponse start(playerSessionStartRequest)
65
+
66
+ Single round-trip the game server / proxy makes when a player joins. Runs the full authorization check (VPN detection, bypass tiers, punishment propagation, active-ban evaluation) and — only if allowed — opens (or re-attaches to) a player_session row. Replaces the older two-call flow (`GET /v1/connection/details` followed by a session-open POST). `/v1/connection/details` remains available for admin / debugging use but is deprecated for player-join purposes. Idempotent at the session-open step: a duplicate join request returns the existing active session\'s id instead of creating a duplicate row. Response shape: - `connectionResult` — always populated; carries ALLOWED / BANNED / VPN_DETECTED etc. plus a formatted kick message when denied. - `sessionId` / `startedAt` — populated only when the join was allowed. - Connection context (IP, location, VPN%, bypass) for display + logging. - `playerInformation`, `activePunishments` — full player history at join time. - `sessionStats` — total seconds played / days active / currently-online, useful for game-server-side welcome messages.
67
+
68
+ ### Example
69
+
70
+ ```typescript
71
+ import {
72
+ PlayerSessionsApi,
73
+ Configuration,
74
+ PlayerSessionStartRequest
75
+ } from '@rebornteam/reborn-api';
76
+
77
+ const configuration = new Configuration();
78
+ const apiInstance = new PlayerSessionsApi(configuration);
79
+
80
+ let playerSessionStartRequest: PlayerSessionStartRequest; //
81
+
82
+ const { status, data } = await apiInstance.start(
83
+ playerSessionStartRequest
84
+ );
85
+ ```
86
+
87
+ ### Parameters
88
+
89
+ |Name | Type | Description | Notes|
90
+ |------------- | ------------- | ------------- | -------------|
91
+ | **playerSessionStartRequest** | **PlayerSessionStartRequest**| | |
92
+
93
+
94
+ ### Return type
95
+
96
+ **PlayerSessionStartResponse**
97
+
98
+ ### Authorization
99
+
100
+ [DiscordAuth](../README.md#DiscordAuth)
101
+
102
+ ### HTTP request headers
103
+
104
+ - **Content-Type**: application/json
105
+ - **Accept**: application/json
106
+
107
+
108
+ ### HTTP response details
109
+ | Status code | Description | Response headers |
110
+ |-------------|-------------|------------------|
111
+ |**201** | Join handled. Inspect `connectionResult.allowed` to decide whether to admit the player. | - |
112
+ |**400** | Invalid request (missing fields, malformed IP, etc.) | - |
113
+ |**401** | Unauthorized | - |
114
+
115
+ [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
116
+
@@ -165,7 +165,7 @@ const { status, data } = await apiInstance.getPunishmentsByIp(
165
165
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
166
166
 
167
167
  # **getRecentPunishments**
168
- > Array<PunishmentGetPunishmentResponse> getRecentPunishments()
168
+ > PagePunishmentGetPunishmentResponse getRecentPunishments()
169
169
 
170
170
  Returns a paginated list of recent punishments with optional filtering by issue date, expiration date, and type
171
171
 
@@ -174,25 +174,24 @@ Returns a paginated list of recent punishments with optional filtering by issue
174
174
  ```typescript
175
175
  import {
176
176
  PunishmentApi,
177
- Configuration
177
+ Configuration,
178
+ Pageable
178
179
  } from '@rebornteam/reborn-api';
179
180
 
180
181
  const configuration = new Configuration();
181
182
  const apiInstance = new PunishmentApi(configuration);
182
183
 
183
- let limit: number; //Maximum number of records to return (default to 100)
184
- let page: number; //Page number for pagination (default to 1)
185
- let issuedAfter: number; //Filter punishments issued after this epoch timestamp (milliseconds) (optional) (default to undefined)
186
- let issuedBefore: number; //Filter punishments issued before this epoch timestamp (milliseconds) (optional) (default to undefined)
187
- let expiresAfter: number; //Filter punishments expiring after this epoch timestamp (milliseconds) (optional) (default to undefined)
188
- let expiresBefore: number; //Filter punishments expiring before this epoch timestamp (milliseconds) (optional) (default to undefined)
189
- let type: Array<PunishmentType>; //Filter by punishment types (optional) (default to undefined)
190
- let uuid: string; //Filter by player UUID (optional) (default to undefined)
191
- let ipAddress: string; //Filter by IP address (optional) (default to undefined)
184
+ let pageable: Pageable; // (default to undefined)
185
+ let issuedAfter: number; // (optional) (default to undefined)
186
+ let issuedBefore: number; // (optional) (default to undefined)
187
+ let expiresAfter: number; // (optional) (default to undefined)
188
+ let expiresBefore: number; // (optional) (default to undefined)
189
+ let type: Array<PunishmentType>; // (optional) (default to undefined)
190
+ let uuid: string; // (optional) (default to undefined)
191
+ let ipAddress: string; // (optional) (default to undefined)
192
192
 
193
193
  const { status, data } = await apiInstance.getRecentPunishments(
194
- limit,
195
- page,
194
+ pageable,
196
195
  issuedAfter,
197
196
  issuedBefore,
198
197
  expiresAfter,
@@ -207,20 +206,19 @@ const { status, data } = await apiInstance.getRecentPunishments(
207
206
 
208
207
  |Name | Type | Description | Notes|
209
208
  |------------- | ------------- | ------------- | -------------|
210
- | **limit** | [**number**] | Maximum number of records to return | defaults to 100|
211
- | **page** | [**number**] | Page number for pagination | defaults to 1|
212
- | **issuedAfter** | [**number**] | Filter punishments issued after this epoch timestamp (milliseconds) | (optional) defaults to undefined|
213
- | **issuedBefore** | [**number**] | Filter punishments issued before this epoch timestamp (milliseconds) | (optional) defaults to undefined|
214
- | **expiresAfter** | [**number**] | Filter punishments expiring after this epoch timestamp (milliseconds) | (optional) defaults to undefined|
215
- | **expiresBefore** | [**number**] | Filter punishments expiring before this epoch timestamp (milliseconds) | (optional) defaults to undefined|
216
- | **type** | **Array&lt;PunishmentType&gt;** | Filter by punishment types | (optional) defaults to undefined|
217
- | **uuid** | [**string**] | Filter by player UUID | (optional) defaults to undefined|
218
- | **ipAddress** | [**string**] | Filter by IP address | (optional) defaults to undefined|
209
+ | **pageable** | **Pageable** | | defaults to undefined|
210
+ | **issuedAfter** | [**number**] | | (optional) defaults to undefined|
211
+ | **issuedBefore** | [**number**] | | (optional) defaults to undefined|
212
+ | **expiresAfter** | [**number**] | | (optional) defaults to undefined|
213
+ | **expiresBefore** | [**number**] | | (optional) defaults to undefined|
214
+ | **type** | **Array&lt;PunishmentType&gt;** | | (optional) defaults to undefined|
215
+ | **uuid** | [**string**] | | (optional) defaults to undefined|
216
+ | **ipAddress** | [**string**] | | (optional) defaults to undefined|
219
217
 
220
218
 
221
219
  ### Return type
222
220
 
223
- **Array<PunishmentGetPunishmentResponse>**
221
+ **PagePunishmentGetPunishmentResponse**
224
222
 
225
223
  ### Authorization
226
224
 
@@ -235,7 +233,7 @@ const { status, data } = await apiInstance.getRecentPunishments(
235
233
  ### HTTP response details
236
234
  | Status code | Description | Response headers |
237
235
  |-------------|-------------|------------------|
238
- |**200** | List of recent punishments | - |
236
+ |**200** | Paged list of recent punishments | - |
239
237
 
240
238
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
241
239
 
@@ -0,0 +1,11 @@
1
+ # PunishmentSource
2
+
3
+ How this link came to exist. DIRECT links are immutable from the link side (remove via the punishment-level delete); PROPAGATED links are revocable individually.
4
+
5
+ ## Enum
6
+
7
+ * `Direct` (value: `'DIRECT'`)
8
+
9
+ * `Propagated` (value: `'PROPAGATED'`)
10
+
11
+ [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
@@ -1,5 +1,6 @@
1
1
  # PunishmentType
2
2
 
3
+ Type of punishment
3
4
 
4
5
  ## Enum
5
6
 
@@ -0,0 +1,64 @@
1
+ # ReportApi
2
+
3
+ All URIs are relative to *https://api.smsh.sh*
4
+
5
+ |Method | HTTP request | Description|
6
+ |------------- | ------------- | -------------|
7
+ |[**submit**](#submit) | **POST** /v1/report | Submit a peer report|
8
+
9
+ # **submit**
10
+ > CreateReportResponse submit(createReportRequest)
11
+
12
+ Records that {reporterUuid} flagged one OR MORE players for misconduct in a single incident. Idempotent per (reporter, exact target set) while the prior report is unresolved — repeat submissions with the same target set overwrite reason / category in place and the response\'s {@code deduplicated} flag is true. A different target set (even overlapping) creates a new report. Resolved reports do not block fresh submissions. **Active-report cap**: each reporter may hold at most 3 unresolved reports at a time. A 4th submission with a NEW target set returns 429 until staff resolve one of the existing reports. Dedupe updates (same target set) never count against the cap.
13
+
14
+ ### Example
15
+
16
+ ```typescript
17
+ import {
18
+ ReportApi,
19
+ Configuration,
20
+ CreateReportRequest
21
+ } from '@rebornteam/reborn-api';
22
+
23
+ const configuration = new Configuration();
24
+ const apiInstance = new ReportApi(configuration);
25
+
26
+ let createReportRequest: CreateReportRequest; //
27
+
28
+ const { status, data } = await apiInstance.submit(
29
+ createReportRequest
30
+ );
31
+ ```
32
+
33
+ ### Parameters
34
+
35
+ |Name | Type | Description | Notes|
36
+ |------------- | ------------- | ------------- | -------------|
37
+ | **createReportRequest** | **CreateReportRequest**| | |
38
+
39
+
40
+ ### Return type
41
+
42
+ **CreateReportResponse**
43
+
44
+ ### Authorization
45
+
46
+ [DiscordAuth](../README.md#DiscordAuth)
47
+
48
+ ### HTTP request headers
49
+
50
+ - **Content-Type**: application/json
51
+ - **Accept**: application/json
52
+
53
+
54
+ ### HTTP response details
55
+ | Status code | Description | Response headers |
56
+ |-------------|-------------|------------------|
57
+ |**201** | Report accepted | - |
58
+ |**400** | Validation error (UUID malformed, reason out of range, empty target list, or reporter listed as one of their own targets) | - |
59
+ |**404** | Reporter or any reported UUID has no player record | - |
60
+ |**429** | Reporter is at the active-report cap. Wait for staff to resolve an existing report. | - |
61
+ |**401** | Unauthorized | - |
62
+
63
+ [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
64
+
@@ -0,0 +1,17 @@
1
+ # ReportCategory
2
+
3
+ Category of misconduct. Coarse on purpose — staff refine in triage.
4
+
5
+ ## Enum
6
+
7
+ * `Cheating` (value: `'CHEATING'`)
8
+
9
+ * `Harassment` (value: `'HARASSMENT'`)
10
+
11
+ * `ChatAbuse` (value: `'CHAT_ABUSE'`)
12
+
13
+ * `Griefing` (value: `'GRIEFING'`)
14
+
15
+ * `Other` (value: `'OTHER'`)
16
+
17
+ [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
@@ -0,0 +1,32 @@
1
+ # SliceAdminAltAccount
2
+
3
+
4
+ ## Properties
5
+
6
+ Name | Type | Description | Notes
7
+ ------------ | ------------- | ------------- | -------------
8
+ **content** | [**Array&lt;AdminAltAccount&gt;**](AdminAltAccount.md) | | [default to undefined]
9
+ **pageable** | [**Pageable**](Pageable.md) | | [default to undefined]
10
+ **pageNumber** | **number** | | [default to undefined]
11
+ **offset** | **number** | | [default to undefined]
12
+ **size** | **number** | | [default to undefined]
13
+ **empty** | **boolean** | | [default to undefined]
14
+ **numberOfElements** | **number** | | [default to undefined]
15
+
16
+ ## Example
17
+
18
+ ```typescript
19
+ import { SliceAdminAltAccount } from '@rebornteam/reborn-api';
20
+
21
+ const instance: SliceAdminAltAccount = {
22
+ content,
23
+ pageable,
24
+ pageNumber,
25
+ offset,
26
+ size,
27
+ empty,
28
+ numberOfElements,
29
+ };
30
+ ```
31
+
32
+ [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
@@ -0,0 +1,32 @@
1
+ # SliceAdminAltExemption
2
+
3
+
4
+ ## Properties
5
+
6
+ Name | Type | Description | Notes
7
+ ------------ | ------------- | ------------- | -------------
8
+ **content** | [**Array&lt;AdminAltExemption&gt;**](AdminAltExemption.md) | | [default to undefined]
9
+ **pageable** | [**Pageable**](Pageable.md) | | [default to undefined]
10
+ **pageNumber** | **number** | | [default to undefined]
11
+ **offset** | **number** | | [default to undefined]
12
+ **size** | **number** | | [default to undefined]
13
+ **empty** | **boolean** | | [default to undefined]
14
+ **numberOfElements** | **number** | | [default to undefined]
15
+
16
+ ## Example
17
+
18
+ ```typescript
19
+ import { SliceAdminAltExemption } from '@rebornteam/reborn-api';
20
+
21
+ const instance: SliceAdminAltExemption = {
22
+ content,
23
+ pageable,
24
+ pageNumber,
25
+ offset,
26
+ size,
27
+ empty,
28
+ numberOfElements,
29
+ };
30
+ ```
31
+
32
+ [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
@@ -0,0 +1,32 @@
1
+ # SliceAdminAsyncJob
2
+
3
+
4
+ ## Properties
5
+
6
+ Name | Type | Description | Notes
7
+ ------------ | ------------- | ------------- | -------------
8
+ **content** | [**Array&lt;AdminAsyncJob&gt;**](AdminAsyncJob.md) | | [default to undefined]
9
+ **pageable** | [**Pageable**](Pageable.md) | | [default to undefined]
10
+ **pageNumber** | **number** | | [default to undefined]
11
+ **offset** | **number** | | [default to undefined]
12
+ **size** | **number** | | [default to undefined]
13
+ **empty** | **boolean** | | [default to undefined]
14
+ **numberOfElements** | **number** | | [default to undefined]
15
+
16
+ ## Example
17
+
18
+ ```typescript
19
+ import { SliceAdminAsyncJob } from '@rebornteam/reborn-api';
20
+
21
+ const instance: SliceAdminAsyncJob = {
22
+ content,
23
+ pageable,
24
+ pageNumber,
25
+ offset,
26
+ size,
27
+ empty,
28
+ numberOfElements,
29
+ };
30
+ ```
31
+
32
+ [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
@@ -0,0 +1,32 @@
1
+ # SliceAdminAuditLogEntry
2
+
3
+
4
+ ## Properties
5
+
6
+ Name | Type | Description | Notes
7
+ ------------ | ------------- | ------------- | -------------
8
+ **content** | [**Array&lt;AdminAuditLogEntry&gt;**](AdminAuditLogEntry.md) | | [default to undefined]
9
+ **pageable** | [**Pageable**](Pageable.md) | | [default to undefined]
10
+ **pageNumber** | **number** | | [default to undefined]
11
+ **offset** | **number** | | [default to undefined]
12
+ **size** | **number** | | [default to undefined]
13
+ **empty** | **boolean** | | [default to undefined]
14
+ **numberOfElements** | **number** | | [default to undefined]
15
+
16
+ ## Example
17
+
18
+ ```typescript
19
+ import { SliceAdminAuditLogEntry } from '@rebornteam/reborn-api';
20
+
21
+ const instance: SliceAdminAuditLogEntry = {
22
+ content,
23
+ pageable,
24
+ pageNumber,
25
+ offset,
26
+ size,
27
+ empty,
28
+ numberOfElements,
29
+ };
30
+ ```
31
+
32
+ [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
@@ -0,0 +1,32 @@
1
+ # SliceAdminDashboardConnectionResponse
2
+
3
+
4
+ ## Properties
5
+
6
+ Name | Type | Description | Notes
7
+ ------------ | ------------- | ------------- | -------------
8
+ **content** | [**Array&lt;AdminDashboardConnectionResponse&gt;**](AdminDashboardConnectionResponse.md) | | [default to undefined]
9
+ **pageable** | [**Pageable**](Pageable.md) | | [default to undefined]
10
+ **pageNumber** | **number** | | [default to undefined]
11
+ **offset** | **number** | | [default to undefined]
12
+ **size** | **number** | | [default to undefined]
13
+ **empty** | **boolean** | | [default to undefined]
14
+ **numberOfElements** | **number** | | [default to undefined]
15
+
16
+ ## Example
17
+
18
+ ```typescript
19
+ import { SliceAdminDashboardConnectionResponse } from '@rebornteam/reborn-api';
20
+
21
+ const instance: SliceAdminDashboardConnectionResponse = {
22
+ content,
23
+ pageable,
24
+ pageNumber,
25
+ offset,
26
+ size,
27
+ empty,
28
+ numberOfElements,
29
+ };
30
+ ```
31
+
32
+ [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)