@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.
- package/.openapi-generator/FILES +70 -4
- package/README.md +103 -8
- package/api.ts +4362 -455
- package/base.ts +1 -1
- package/common.ts +1 -1
- package/configuration.ts +1 -1
- package/dist/api.d.ts +2735 -394
- package/dist/api.js +3171 -444
- package/dist/base.d.ts +1 -1
- package/dist/base.js +1 -1
- package/dist/common.d.ts +1 -1
- package/dist/common.js +1 -1
- package/dist/configuration.d.ts +1 -1
- package/dist/configuration.js +1 -1
- package/dist/esm/api.d.ts +2735 -394
- package/dist/esm/api.js +3146 -439
- package/dist/esm/base.d.ts +1 -1
- package/dist/esm/base.js +1 -1
- package/dist/esm/common.d.ts +1 -1
- package/dist/esm/common.js +1 -1
- package/dist/esm/configuration.d.ts +1 -1
- package/dist/esm/configuration.js +1 -1
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/docs/AdminAltAccount.md +27 -0
- package/docs/AdminAltExemption.md +31 -0
- package/docs/AdminAltGraph.md +27 -0
- package/docs/AdminAltGraphEdge.md +25 -0
- package/docs/AdminAltGraphNode.md +29 -0
- package/docs/AdminApplyPunishmentResult.md +4 -4
- package/docs/AdminAsyncJob.md +49 -0
- package/docs/AdminAsyncJobArtifactMeta.md +23 -0
- package/docs/AdminAsyncJobStartResponse.md +21 -0
- package/docs/AdminAuditLogApi.md +141 -0
- package/docs/AdminAuditLogEntry.md +33 -0
- package/docs/AdminBulkRevokeRequest.md +25 -0
- package/docs/AdminBulkRevokeResponse.md +21 -0
- package/docs/AdminConnectionCheckResult.md +4 -0
- package/docs/AdminConnectionsApi.md +154 -39
- package/docs/AdminCreateAltExemptionRequest.md +23 -0
- package/docs/AdminCreatePlayerNoteRequest.md +21 -0
- package/docs/AdminDashboardConnectionResponse.md +4 -2
- package/docs/AdminJobsApi.md +230 -0
- package/docs/AdminPlayerDetailResponse.md +4 -4
- package/docs/AdminPlayerNote.md +31 -0
- package/docs/AdminPlayerPunishmentResponse.md +51 -0
- package/docs/AdminPlayerReport.md +39 -0
- package/docs/AdminPlayerSession.md +31 -0
- package/docs/AdminPlayerSessionStats.md +29 -0
- package/docs/AdminPlayerSummary.md +2 -4
- package/docs/AdminPlayersApi.md +1043 -19
- package/docs/AdminPunishmentEvaluation.md +4 -8
- package/docs/AdminPunishmentTargets.md +23 -0
- package/docs/AdminPunishmentsApi.md +179 -21
- package/docs/AdminReportTarget.md +23 -0
- package/docs/AdminReportsApi.md +123 -0
- package/docs/AdminResolveReportRequest.md +21 -0
- package/docs/AdminSetAggressiveModeImmunityRequest.md +21 -0
- package/docs/AdminTrustFactorBreakdown.md +61 -0
- package/docs/AdminTrustFactorHistoryEntry.md +23 -0
- package/docs/AdminTrustFactorImpact.md +23 -0
- package/docs/AdminUpdatePunishmentRequest.md +35 -0
- package/docs/ChatApi.md +4 -4
- package/docs/ConnectionApi.md +4 -4
- package/docs/ConnectionGetConnectionDetailsResponse.md +5 -1
- package/docs/ConnectionResult.md +1 -1
- package/docs/CreateReportRequest.md +27 -0
- package/docs/CreateReportResponse.md +23 -0
- package/docs/CursoredPageAdminAuditLogEntry.md +38 -0
- package/docs/CursoredPageable.md +30 -0
- package/docs/JobStatus.md +17 -0
- package/docs/PageAdminAltAccount.md +36 -0
- package/docs/PageAdminAltExemption.md +36 -0
- package/docs/PageAdminAsyncJob.md +36 -0
- package/docs/PageAdminAuditLogEntry.md +36 -0
- package/docs/PageAdminDashboardConnectionResponse.md +36 -0
- package/docs/PageAdminPlayerNote.md +36 -0
- package/docs/PageAdminPlayerPunishmentResponse.md +36 -0
- package/docs/PageAdminPlayerReport.md +36 -0
- package/docs/PageAdminPlayerSession.md +36 -0
- package/docs/PageAdminPlayerSummary.md +36 -0
- package/docs/PageAdminPunishmentListItem.md +36 -0
- package/docs/PagePunishmentGetPunishmentResponse.md +36 -0
- package/docs/Pageable.md +28 -0
- package/docs/PageableMode.md +12 -0
- package/docs/PlayerGetPlayerInformation.md +5 -3
- package/docs/PlayerSessionEndRequest.md +23 -0
- package/docs/PlayerSessionStartRequest.md +27 -0
- package/docs/PlayerSessionStartResponse.md +51 -0
- package/docs/PlayerSessionsApi.md +116 -0
- package/docs/PunishmentApi.md +22 -24
- package/docs/PunishmentSource.md +11 -0
- package/docs/PunishmentType.md +1 -0
- package/docs/ReportApi.md +64 -0
- package/docs/ReportCategory.md +17 -0
- package/docs/SliceAdminAltAccount.md +32 -0
- package/docs/SliceAdminAltExemption.md +32 -0
- package/docs/SliceAdminAsyncJob.md +32 -0
- package/docs/SliceAdminAuditLogEntry.md +32 -0
- package/docs/SliceAdminDashboardConnectionResponse.md +32 -0
- package/docs/SliceAdminPlayerNote.md +32 -0
- package/docs/SliceAdminPlayerPunishmentResponse.md +32 -0
- package/docs/SliceAdminPlayerReport.md +32 -0
- package/docs/SliceAdminPlayerSession.md +32 -0
- package/docs/SliceAdminPlayerSummary.md +32 -0
- package/docs/SliceAdminPunishmentListItem.md +32 -0
- package/docs/SlicePunishmentGetPunishmentResponse.md +32 -0
- package/docs/Sort.md +20 -0
- package/docs/SortOrder.md +26 -0
- package/docs/SortOrderDirection.md +10 -0
- package/index.ts +1 -1
- package/package.json +1 -1
- package/docs/AdminBackfillLocationResponse.md +0 -25
- package/docs/AdminPagedConnectionResponse.md +0 -29
- package/docs/AdminPagedPlayerResponse.md +0 -29
- package/docs/AdminPagedPunishmentResponse.md +0 -29
|
@@ -8,14 +8,12 @@ Name | Type | Description | Notes
|
|
|
8
8
|
------------ | ------------- | ------------- | -------------
|
|
9
9
|
**target** | [**AdminPunishmentTarget**](AdminPunishmentTarget.md) | The target this evaluation applies to | [default to undefined]
|
|
10
10
|
**affectedPlayers** | [**Array<AdminPlayerSearchResult>**](AdminPlayerSearchResult.md) | Players affected — one player for UUID targets, all players on the IP for connection targets | [default to undefined]
|
|
11
|
-
**
|
|
12
|
-
**
|
|
13
|
-
**newScore** | **number** | Projected score after applying this punishment | [default to undefined]
|
|
14
|
-
**willBePermanent** | **boolean** | Whether this punishment would be permanent based on the current score threshold | [default to undefined]
|
|
11
|
+
**trustFactorImpact** | [**AdminTrustFactorImpact**](AdminTrustFactorImpact.md) | Trust factor preview for the targeted player. Present only when the target is a player; absent for any other target shape. | [optional] [default to undefined]
|
|
12
|
+
**willBePermanent** | **boolean** | Whether this punishment will be permanent. Mirrors the request\'s forcePermanent flag — auto-escalation has been removed. | [default to undefined]
|
|
15
13
|
**durationSeconds** | **number** | Resolved duration in seconds — null if permanent or a WARNING | [optional] [default to undefined]
|
|
16
14
|
**previousPunishmentCount** | **number** | Number of existing punishments on this target | [default to undefined]
|
|
17
15
|
**isConnectionTarget** | **boolean** | True when the target is an IP address (connection punishment) rather than a player UUID | [default to undefined]
|
|
18
|
-
**effectiveType** | [**PunishmentType**](PunishmentType.md) | The
|
|
16
|
+
**effectiveType** | [**PunishmentType**](PunishmentType.md) | The punishment type that will be applied. Equal to the requested type — auto-escalation has been removed. | [default to undefined]
|
|
19
17
|
|
|
20
18
|
## Example
|
|
21
19
|
|
|
@@ -25,9 +23,7 @@ import { AdminPunishmentEvaluation } from '@rebornteam/reborn-api';
|
|
|
25
23
|
const instance: AdminPunishmentEvaluation = {
|
|
26
24
|
target,
|
|
27
25
|
affectedPlayers,
|
|
28
|
-
|
|
29
|
-
pointsToAdd,
|
|
30
|
-
newScore,
|
|
26
|
+
trustFactorImpact,
|
|
31
27
|
willBePermanent,
|
|
32
28
|
durationSeconds,
|
|
33
29
|
previousPunishmentCount,
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# AdminPunishmentTargets
|
|
2
|
+
|
|
3
|
+
Active DIRECT participants currently attached to a punishment.
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
Name | Type | Description | Notes
|
|
8
|
+
------------ | ------------- | ------------- | -------------
|
|
9
|
+
**playerUuids** | **Array<string>** | UUIDs of players with an active DIRECT player_punishment link to this punishment. | [default to undefined]
|
|
10
|
+
**ipAddresses** | **Array<string>** | IPs of connections with a live connection_punishment row for this punishment. | [default to undefined]
|
|
11
|
+
|
|
12
|
+
## Example
|
|
13
|
+
|
|
14
|
+
```typescript
|
|
15
|
+
import { AdminPunishmentTargets } from '@rebornteam/reborn-api';
|
|
16
|
+
|
|
17
|
+
const instance: AdminPunishmentTargets = {
|
|
18
|
+
playerUuids,
|
|
19
|
+
ipAddresses,
|
|
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)
|
|
@@ -6,7 +6,10 @@ All URIs are relative to *https://api.smsh.sh*
|
|
|
6
6
|
|------------- | ------------- | -------------|
|
|
7
7
|
|[**applyPunishment**](#applypunishment) | **POST** /admin/punishment/apply | Apply punishment|
|
|
8
8
|
|[**createDraft**](#createdraft) | **POST** /admin/punishment/draft | Evaluate punishment impact|
|
|
9
|
+
|[**editPunishment**](#editpunishment) | **PATCH** /admin/punishment/{id} | Edit a punishment|
|
|
10
|
+
|[**getPunishmentTargets**](#getpunishmenttargets) | **GET** /admin/punishment/{id}/targets | List a punishment\'s current participants|
|
|
9
11
|
|[**getPunishments**](#getpunishments) | **GET** /admin/punishment | List punishments|
|
|
12
|
+
|[**propagationSweep**](#propagationsweep) | **POST** /admin/punishment/propagation-sweep | Start an alt-propagation sweep job|
|
|
10
13
|
|[**searchTargets**](#searchtargets) | **GET** /admin/punishment/search | Search punishment targets|
|
|
11
14
|
|
|
12
15
|
# **applyPunishment**
|
|
@@ -119,8 +122,119 @@ const { status, data } = await apiInstance.createDraft(
|
|
|
119
122
|
|
|
120
123
|
[[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)
|
|
121
124
|
|
|
125
|
+
# **editPunishment**
|
|
126
|
+
> editPunishment(adminUpdatePunishmentRequest)
|
|
127
|
+
|
|
128
|
+
Partial update of a punishment record. Reason / notes / expiresAt are mutable; severity is intentionally immutable to keep the punishment score deterministic. To make a punishment permanent, set forcePermanent=true. The endpoint returns 404 if the id doesn\'t exist, 200 with the updated entity otherwise. Every edit is recorded in admin_audit_log with the before/after payload.
|
|
129
|
+
|
|
130
|
+
### Example
|
|
131
|
+
|
|
132
|
+
```typescript
|
|
133
|
+
import {
|
|
134
|
+
AdminPunishmentsApi,
|
|
135
|
+
Configuration,
|
|
136
|
+
AdminUpdatePunishmentRequest
|
|
137
|
+
} from '@rebornteam/reborn-api';
|
|
138
|
+
|
|
139
|
+
const configuration = new Configuration();
|
|
140
|
+
const apiInstance = new AdminPunishmentsApi(configuration);
|
|
141
|
+
|
|
142
|
+
let id: number; //Punishment id (default to undefined)
|
|
143
|
+
let adminUpdatePunishmentRequest: AdminUpdatePunishmentRequest; //
|
|
144
|
+
|
|
145
|
+
const { status, data } = await apiInstance.editPunishment(
|
|
146
|
+
id,
|
|
147
|
+
adminUpdatePunishmentRequest
|
|
148
|
+
);
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
### Parameters
|
|
152
|
+
|
|
153
|
+
|Name | Type | Description | Notes|
|
|
154
|
+
|------------- | ------------- | ------------- | -------------|
|
|
155
|
+
| **adminUpdatePunishmentRequest** | **AdminUpdatePunishmentRequest**| | |
|
|
156
|
+
| **id** | [**number**] | Punishment id | defaults to undefined|
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
### Return type
|
|
160
|
+
|
|
161
|
+
void (empty response body)
|
|
162
|
+
|
|
163
|
+
### Authorization
|
|
164
|
+
|
|
165
|
+
[DiscordAuth](../README.md#DiscordAuth)
|
|
166
|
+
|
|
167
|
+
### HTTP request headers
|
|
168
|
+
|
|
169
|
+
- **Content-Type**: application/json
|
|
170
|
+
- **Accept**: Not defined
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
### HTTP response details
|
|
174
|
+
| Status code | Description | Response headers |
|
|
175
|
+
|-------------|-------------|------------------|
|
|
176
|
+
|**204** | Punishment updated | - |
|
|
177
|
+
|**404** | Punishment not found | - |
|
|
178
|
+
|**401** | Unauthorized | - |
|
|
179
|
+
|**403** | Forbidden - Moderator role required | - |
|
|
180
|
+
|
|
181
|
+
[[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)
|
|
182
|
+
|
|
183
|
+
# **getPunishmentTargets**
|
|
184
|
+
> AdminPunishmentTargets getPunishmentTargets()
|
|
185
|
+
|
|
186
|
+
Returns the active DIRECT player_punishment UUIDs and the live connection_punishment IPs for a punishment. Used by the admin edit dialog to render the editable participant list. PROPAGATED links are excluded — they\'re an enforcement detail, not part of \'who the admin attached to this punishment\'.
|
|
187
|
+
|
|
188
|
+
### Example
|
|
189
|
+
|
|
190
|
+
```typescript
|
|
191
|
+
import {
|
|
192
|
+
AdminPunishmentsApi,
|
|
193
|
+
Configuration
|
|
194
|
+
} from '@rebornteam/reborn-api';
|
|
195
|
+
|
|
196
|
+
const configuration = new Configuration();
|
|
197
|
+
const apiInstance = new AdminPunishmentsApi(configuration);
|
|
198
|
+
|
|
199
|
+
let id: number; //Punishment id (default to undefined)
|
|
200
|
+
|
|
201
|
+
const { status, data } = await apiInstance.getPunishmentTargets(
|
|
202
|
+
id
|
|
203
|
+
);
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
### Parameters
|
|
207
|
+
|
|
208
|
+
|Name | Type | Description | Notes|
|
|
209
|
+
|------------- | ------------- | ------------- | -------------|
|
|
210
|
+
| **id** | [**number**] | Punishment id | defaults to undefined|
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
### Return type
|
|
214
|
+
|
|
215
|
+
**AdminPunishmentTargets**
|
|
216
|
+
|
|
217
|
+
### Authorization
|
|
218
|
+
|
|
219
|
+
[DiscordAuth](../README.md#DiscordAuth)
|
|
220
|
+
|
|
221
|
+
### HTTP request headers
|
|
222
|
+
|
|
223
|
+
- **Content-Type**: Not defined
|
|
224
|
+
- **Accept**: application/json
|
|
225
|
+
|
|
226
|
+
|
|
227
|
+
### HTTP response details
|
|
228
|
+
| Status code | Description | Response headers |
|
|
229
|
+
|-------------|-------------|------------------|
|
|
230
|
+
|**200** | Participants retrieved | - |
|
|
231
|
+
|**401** | Unauthorized | - |
|
|
232
|
+
|**403** | Forbidden - Moderator role required | - |
|
|
233
|
+
|
|
234
|
+
[[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)
|
|
235
|
+
|
|
122
236
|
# **getPunishments**
|
|
123
|
-
>
|
|
237
|
+
> PageAdminPunishmentListItem getPunishments()
|
|
124
238
|
|
|
125
239
|
Returns a paginated list of punishments with optional filtering by player UUID, username, IP address, type, and date range.
|
|
126
240
|
|
|
@@ -129,24 +243,23 @@ Returns a paginated list of punishments with optional filtering by player UUID,
|
|
|
129
243
|
```typescript
|
|
130
244
|
import {
|
|
131
245
|
AdminPunishmentsApi,
|
|
132
|
-
Configuration
|
|
246
|
+
Configuration,
|
|
247
|
+
Pageable
|
|
133
248
|
} from '@rebornteam/reborn-api';
|
|
134
249
|
|
|
135
250
|
const configuration = new Configuration();
|
|
136
251
|
const apiInstance = new AdminPunishmentsApi(configuration);
|
|
137
252
|
|
|
138
|
-
let
|
|
139
|
-
let
|
|
140
|
-
let
|
|
141
|
-
let
|
|
142
|
-
let
|
|
143
|
-
let
|
|
144
|
-
let
|
|
145
|
-
let issuedBefore: number; //Filter punishments issued before this epoch timestamp (ms) (optional) (default to undefined)
|
|
253
|
+
let pageable: Pageable; // (default to undefined)
|
|
254
|
+
let uuid: string; // (optional) (default to undefined)
|
|
255
|
+
let username: string; // (optional) (default to undefined)
|
|
256
|
+
let ipAddress: string; // (optional) (default to undefined)
|
|
257
|
+
let type: Array<PunishmentType>; // (optional) (default to undefined)
|
|
258
|
+
let issuedAfter: number; // (optional) (default to undefined)
|
|
259
|
+
let issuedBefore: number; // (optional) (default to undefined)
|
|
146
260
|
|
|
147
261
|
const { status, data } = await apiInstance.getPunishments(
|
|
148
|
-
|
|
149
|
-
limit,
|
|
262
|
+
pageable,
|
|
150
263
|
uuid,
|
|
151
264
|
username,
|
|
152
265
|
ipAddress,
|
|
@@ -160,19 +273,18 @@ const { status, data } = await apiInstance.getPunishments(
|
|
|
160
273
|
|
|
161
274
|
|Name | Type | Description | Notes|
|
|
162
275
|
|------------- | ------------- | ------------- | -------------|
|
|
163
|
-
| **
|
|
164
|
-
| **
|
|
165
|
-
| **
|
|
166
|
-
| **
|
|
167
|
-
| **
|
|
168
|
-
| **
|
|
169
|
-
| **
|
|
170
|
-
| **issuedBefore** | [**number**] | Filter punishments issued before this epoch timestamp (ms) | (optional) defaults to undefined|
|
|
276
|
+
| **pageable** | **Pageable** | | defaults to undefined|
|
|
277
|
+
| **uuid** | [**string**] | | (optional) defaults to undefined|
|
|
278
|
+
| **username** | [**string**] | | (optional) defaults to undefined|
|
|
279
|
+
| **ipAddress** | [**string**] | | (optional) defaults to undefined|
|
|
280
|
+
| **type** | **Array<PunishmentType>** | | (optional) defaults to undefined|
|
|
281
|
+
| **issuedAfter** | [**number**] | | (optional) defaults to undefined|
|
|
282
|
+
| **issuedBefore** | [**number**] | | (optional) defaults to undefined|
|
|
171
283
|
|
|
172
284
|
|
|
173
285
|
### Return type
|
|
174
286
|
|
|
175
|
-
**
|
|
287
|
+
**PageAdminPunishmentListItem**
|
|
176
288
|
|
|
177
289
|
### Authorization
|
|
178
290
|
|
|
@@ -193,6 +305,52 @@ const { status, data } = await apiInstance.getPunishments(
|
|
|
193
305
|
|
|
194
306
|
[[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)
|
|
195
307
|
|
|
308
|
+
# **propagationSweep**
|
|
309
|
+
> AdminAsyncJobStartResponse propagationSweep()
|
|
310
|
+
|
|
311
|
+
Submits an async job that walks every player and re-runs the aggressive-mode propagation logic (tier-1 own-IP plus tier-2 alt-driven). Useful after toggling aggressive-mode on, or after a propagation-rule change, to backfill PROPAGATED player_punishment rows that would otherwise only appear on each player\'s next login. Idempotent — ON CONFLICT DO NOTHING. Returns immediately with a job id; poll GET /admin/job/{id} for progress and DELETE /admin/job/{id} to cancel.
|
|
312
|
+
|
|
313
|
+
### Example
|
|
314
|
+
|
|
315
|
+
```typescript
|
|
316
|
+
import {
|
|
317
|
+
AdminPunishmentsApi,
|
|
318
|
+
Configuration
|
|
319
|
+
} from '@rebornteam/reborn-api';
|
|
320
|
+
|
|
321
|
+
const configuration = new Configuration();
|
|
322
|
+
const apiInstance = new AdminPunishmentsApi(configuration);
|
|
323
|
+
|
|
324
|
+
const { status, data } = await apiInstance.propagationSweep();
|
|
325
|
+
```
|
|
326
|
+
|
|
327
|
+
### Parameters
|
|
328
|
+
This endpoint does not have any parameters.
|
|
329
|
+
|
|
330
|
+
|
|
331
|
+
### Return type
|
|
332
|
+
|
|
333
|
+
**AdminAsyncJobStartResponse**
|
|
334
|
+
|
|
335
|
+
### Authorization
|
|
336
|
+
|
|
337
|
+
[DiscordAuth](../README.md#DiscordAuth)
|
|
338
|
+
|
|
339
|
+
### HTTP request headers
|
|
340
|
+
|
|
341
|
+
- **Content-Type**: Not defined
|
|
342
|
+
- **Accept**: application/json
|
|
343
|
+
|
|
344
|
+
|
|
345
|
+
### HTTP response details
|
|
346
|
+
| Status code | Description | Response headers |
|
|
347
|
+
|-------------|-------------|------------------|
|
|
348
|
+
|**202** | Job accepted; poll /admin/job/{id} for progress | - |
|
|
349
|
+
|**401** | Unauthorized | - |
|
|
350
|
+
|**403** | Forbidden - Moderator role required | - |
|
|
351
|
+
|
|
352
|
+
[[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)
|
|
353
|
+
|
|
196
354
|
# **searchTargets**
|
|
197
355
|
> AdminPunishmentSearchResponse searchTargets()
|
|
198
356
|
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# AdminReportTarget
|
|
2
|
+
|
|
3
|
+
One reported player attached to a report.
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
Name | Type | Description | Notes
|
|
8
|
+
------------ | ------------- | ------------- | -------------
|
|
9
|
+
**uuid** | **string** | Target player\'s UUID | [default to undefined]
|
|
10
|
+
**username** | **string** | Target player\'s last-known username | [optional] [default to undefined]
|
|
11
|
+
|
|
12
|
+
## Example
|
|
13
|
+
|
|
14
|
+
```typescript
|
|
15
|
+
import { AdminReportTarget } from '@rebornteam/reborn-api';
|
|
16
|
+
|
|
17
|
+
const instance: AdminReportTarget = {
|
|
18
|
+
uuid,
|
|
19
|
+
username,
|
|
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,123 @@
|
|
|
1
|
+
# AdminReportsApi
|
|
2
|
+
|
|
3
|
+
All URIs are relative to *https://api.smsh.sh*
|
|
4
|
+
|
|
5
|
+
|Method | HTTP request | Description|
|
|
6
|
+
|------------- | ------------- | -------------|
|
|
7
|
+
|[**list1**](#list1) | **GET** /admin/report | List reports|
|
|
8
|
+
|[**resolve**](#resolve) | **POST** /admin/report/{id}/resolve | Resolve a report|
|
|
9
|
+
|
|
10
|
+
# **list1**
|
|
11
|
+
> PageAdminPlayerReport list1()
|
|
12
|
+
|
|
13
|
+
Paginated, newest first. Use openOnly=true to see the triage queue; reportedUuid filters to one player.
|
|
14
|
+
|
|
15
|
+
### Example
|
|
16
|
+
|
|
17
|
+
```typescript
|
|
18
|
+
import {
|
|
19
|
+
AdminReportsApi,
|
|
20
|
+
Configuration,
|
|
21
|
+
Pageable
|
|
22
|
+
} from '@rebornteam/reborn-api';
|
|
23
|
+
|
|
24
|
+
const configuration = new Configuration();
|
|
25
|
+
const apiInstance = new AdminReportsApi(configuration);
|
|
26
|
+
|
|
27
|
+
let pageable: Pageable; // (default to undefined)
|
|
28
|
+
let reportedUuid: string; //Filter to reports targeting this player UUID (optional) (default to undefined)
|
|
29
|
+
let openOnly: boolean; // (optional) (default to true)
|
|
30
|
+
|
|
31
|
+
const { status, data } = await apiInstance.list1(
|
|
32
|
+
pageable,
|
|
33
|
+
reportedUuid,
|
|
34
|
+
openOnly
|
|
35
|
+
);
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
### Parameters
|
|
39
|
+
|
|
40
|
+
|Name | Type | Description | Notes|
|
|
41
|
+
|------------- | ------------- | ------------- | -------------|
|
|
42
|
+
| **pageable** | **Pageable** | | defaults to undefined|
|
|
43
|
+
| **reportedUuid** | [**string**] | Filter to reports targeting this player UUID | (optional) defaults to undefined|
|
|
44
|
+
| **openOnly** | [**boolean**] | | (optional) defaults to true|
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
### Return type
|
|
48
|
+
|
|
49
|
+
**PageAdminPlayerReport**
|
|
50
|
+
|
|
51
|
+
### Authorization
|
|
52
|
+
|
|
53
|
+
[DiscordAuth](../README.md#DiscordAuth)
|
|
54
|
+
|
|
55
|
+
### HTTP request headers
|
|
56
|
+
|
|
57
|
+
- **Content-Type**: Not defined
|
|
58
|
+
- **Accept**: application/json
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
### HTTP response details
|
|
62
|
+
| Status code | Description | Response headers |
|
|
63
|
+
|-------------|-------------|------------------|
|
|
64
|
+
|**200** | Reports retrieved | - |
|
|
65
|
+
|
|
66
|
+
[[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)
|
|
67
|
+
|
|
68
|
+
# **resolve**
|
|
69
|
+
> resolve(adminResolveReportRequest)
|
|
70
|
+
|
|
71
|
+
Marks the report resolved with the staff member\'s note. 404 if already resolved or unknown id.
|
|
72
|
+
|
|
73
|
+
### Example
|
|
74
|
+
|
|
75
|
+
```typescript
|
|
76
|
+
import {
|
|
77
|
+
AdminReportsApi,
|
|
78
|
+
Configuration,
|
|
79
|
+
AdminResolveReportRequest
|
|
80
|
+
} from '@rebornteam/reborn-api';
|
|
81
|
+
|
|
82
|
+
const configuration = new Configuration();
|
|
83
|
+
const apiInstance = new AdminReportsApi(configuration);
|
|
84
|
+
|
|
85
|
+
let id: number; //Report id (default to undefined)
|
|
86
|
+
let adminResolveReportRequest: AdminResolveReportRequest; //
|
|
87
|
+
|
|
88
|
+
const { status, data } = await apiInstance.resolve(
|
|
89
|
+
id,
|
|
90
|
+
adminResolveReportRequest
|
|
91
|
+
);
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
### Parameters
|
|
95
|
+
|
|
96
|
+
|Name | Type | Description | Notes|
|
|
97
|
+
|------------- | ------------- | ------------- | -------------|
|
|
98
|
+
| **adminResolveReportRequest** | **AdminResolveReportRequest**| | |
|
|
99
|
+
| **id** | [**number**] | Report id | defaults to undefined|
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
### Return type
|
|
103
|
+
|
|
104
|
+
void (empty response body)
|
|
105
|
+
|
|
106
|
+
### Authorization
|
|
107
|
+
|
|
108
|
+
[DiscordAuth](../README.md#DiscordAuth)
|
|
109
|
+
|
|
110
|
+
### HTTP request headers
|
|
111
|
+
|
|
112
|
+
- **Content-Type**: application/json
|
|
113
|
+
- **Accept**: Not defined
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
### HTTP response details
|
|
117
|
+
| Status code | Description | Response headers |
|
|
118
|
+
|-------------|-------------|------------------|
|
|
119
|
+
|**204** | Report resolved | - |
|
|
120
|
+
|**404** | Report not found or already resolved | - |
|
|
121
|
+
|
|
122
|
+
[[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)
|
|
123
|
+
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# AdminResolveReportRequest
|
|
2
|
+
|
|
3
|
+
Resolve a player report. Sets resolved_at = NOW() and stores the staff note.
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
Name | Type | Description | Notes
|
|
8
|
+
------------ | ------------- | ------------- | -------------
|
|
9
|
+
**resolutionNote** | **string** | Free-form resolution note from staff (e.g. \"Watched 10 min footage, no cheating evident.\") | [optional] [default to undefined]
|
|
10
|
+
|
|
11
|
+
## Example
|
|
12
|
+
|
|
13
|
+
```typescript
|
|
14
|
+
import { AdminResolveReportRequest } from '@rebornteam/reborn-api';
|
|
15
|
+
|
|
16
|
+
const instance: AdminResolveReportRequest = {
|
|
17
|
+
resolutionNote,
|
|
18
|
+
};
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
[[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,21 @@
|
|
|
1
|
+
# AdminSetAggressiveModeImmunityRequest
|
|
2
|
+
|
|
3
|
+
Set whether a player is exempt from aggressive-mode punishment propagation. Toggling on also revokes all currently-active propagated links for the player.
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
Name | Type | Description | Notes
|
|
8
|
+
------------ | ------------- | ------------- | -------------
|
|
9
|
+
**immune** | **boolean** | True to mark the player immune (no future propagation; existing propagated links bulk-revoked). False to re-enable propagation. | [default to undefined]
|
|
10
|
+
|
|
11
|
+
## Example
|
|
12
|
+
|
|
13
|
+
```typescript
|
|
14
|
+
import { AdminSetAggressiveModeImmunityRequest } from '@rebornteam/reborn-api';
|
|
15
|
+
|
|
16
|
+
const instance: AdminSetAggressiveModeImmunityRequest = {
|
|
17
|
+
immune,
|
|
18
|
+
};
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
[[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,61 @@
|
|
|
1
|
+
# AdminTrustFactorBreakdown
|
|
2
|
+
|
|
3
|
+
Detailed breakdown of how a player\'s trust factor was computed. The final score is the same value returned by compute_trust_factor — this DTO carries the subtotals (bonuses, penalties) and the underlying signal counts that drove each subtotal. Powers the \"why is this score 65?\" admin tooltip. Informational only; trust factor does not auto-escalate punishments.
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
Name | Type | Description | Notes
|
|
8
|
+
------------ | ------------- | ------------- | -------------
|
|
9
|
+
**baseTrust** | **number** | Starting score before any signals applied. Constant 75. | [default to undefined]
|
|
10
|
+
**ageBonus** | **number** | Bonus from account age (+1 per 30 days, capped at +15) | [default to undefined]
|
|
11
|
+
**cleanHistoryBonus** | **number** | Bonus from clean history. +10 if no active punishments; otherwise +1 per 60 days since the most recent one. Capped at +10. | [default to undefined]
|
|
12
|
+
**stabilityBonus** | **number** | Bonus from connection stability. Stair-step on distinct-connection count: ≤1=+5, ≤3=+3, ≤8=+1, else 0. | [default to undefined]
|
|
13
|
+
**adminAffirmationBonus** | **number** | Bonus from admin affirmation. alt-exemptions × 2 + active player-bypass × 4, capped at +10. | [default to undefined]
|
|
14
|
+
**punishmentPenalty** | **number** | Penalty from active punishments. Type-weighted, severity-scaled, time-decayed (BAN half-life 730d, MUTE 180d, WARNING 60d). Capped at -40. | [default to undefined]
|
|
15
|
+
**altPenalty** | **number** | Penalty from alts. dirty-alts × 4 + clean-alts × 0.5, after promiscuity/alt caps, excluding alt-exempted players. Capped at -20. | [default to undefined]
|
|
16
|
+
**vpnPenalty** | **number** | Penalty from VPN exposure. Fraction of the player\'s connections flagged > 50% positive × 15. | [default to undefined]
|
|
17
|
+
**propagationPenalty** | **number** | Penalty from active PROPAGATED punishment links × 3. Capped at -15. | [default to undefined]
|
|
18
|
+
**rawSum** | **number** | Sum of base + bonuses - penalties BEFORE clamping to 0..100. Useful for debugging \"why is my -50 raw sum clamped to 0?\" cases. | [default to undefined]
|
|
19
|
+
**finalScore** | **number** | The clamped final trust factor (0–100). Identical to what compute_trust_factor() returns. | [default to undefined]
|
|
20
|
+
**accountAgeDays** | **number** | Days since the player\'s account was created. | [default to undefined]
|
|
21
|
+
**daysSinceLastPunishment** | **number** | Days since the most recent active punishment landed. Null when the player has none — the clean_history bonus is at its cap. | [optional] [default to undefined]
|
|
22
|
+
**numConnections** | **number** | Distinct connections this player has used. Drives the stability bonus. | [default to undefined]
|
|
23
|
+
**numAltExemptions** | **number** | Alt-exemption rows attributed to this player (admin-asserted legitimate associates). | [default to undefined]
|
|
24
|
+
**hasPlayerBypass** | **boolean** | Whether this player currently has an active player_bypass row. | [default to undefined]
|
|
25
|
+
**numActivePunishments** | **number** | Count of active (non-revoked, non-expired) player_punishment rows on this player. Includes both DIRECT and PROPAGATED. | [default to undefined]
|
|
26
|
+
**numDirtyAlts** | **number** | Alts with active punishments (drives the bigger per-alt penalty multiplier). | [default to undefined]
|
|
27
|
+
**numCleanAlts** | **number** | Alts WITHOUT active punishments (drives the smaller per-alt penalty multiplier). | [default to undefined]
|
|
28
|
+
**vpnConnectionRatio** | **number** | Fraction of this player\'s connections flagged > 50% VPN-positive. Range 0..1. | [default to undefined]
|
|
29
|
+
**numPropagatedLinks** | **number** | Active PROPAGATED player_punishment links on this player (i.e. aggressive-mode propagation). | [default to undefined]
|
|
30
|
+
|
|
31
|
+
## Example
|
|
32
|
+
|
|
33
|
+
```typescript
|
|
34
|
+
import { AdminTrustFactorBreakdown } from '@rebornteam/reborn-api';
|
|
35
|
+
|
|
36
|
+
const instance: AdminTrustFactorBreakdown = {
|
|
37
|
+
baseTrust,
|
|
38
|
+
ageBonus,
|
|
39
|
+
cleanHistoryBonus,
|
|
40
|
+
stabilityBonus,
|
|
41
|
+
adminAffirmationBonus,
|
|
42
|
+
punishmentPenalty,
|
|
43
|
+
altPenalty,
|
|
44
|
+
vpnPenalty,
|
|
45
|
+
propagationPenalty,
|
|
46
|
+
rawSum,
|
|
47
|
+
finalScore,
|
|
48
|
+
accountAgeDays,
|
|
49
|
+
daysSinceLastPunishment,
|
|
50
|
+
numConnections,
|
|
51
|
+
numAltExemptions,
|
|
52
|
+
hasPlayerBypass,
|
|
53
|
+
numActivePunishments,
|
|
54
|
+
numDirtyAlts,
|
|
55
|
+
numCleanAlts,
|
|
56
|
+
vpnConnectionRatio,
|
|
57
|
+
numPropagatedLinks,
|
|
58
|
+
};
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
[[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,23 @@
|
|
|
1
|
+
# AdminTrustFactorHistoryEntry
|
|
2
|
+
|
|
3
|
+
One trust factor snapshot for a player on a given day.
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
Name | Type | Description | Notes
|
|
8
|
+
------------ | ------------- | ------------- | -------------
|
|
9
|
+
**snapshotDate** | **string** | UTC date the snapshot was taken | [default to undefined]
|
|
10
|
+
**trustFactor** | **number** | Trust factor (0–100, higher = more trusted) on that day | [default to undefined]
|
|
11
|
+
|
|
12
|
+
## Example
|
|
13
|
+
|
|
14
|
+
```typescript
|
|
15
|
+
import { AdminTrustFactorHistoryEntry } from '@rebornteam/reborn-api';
|
|
16
|
+
|
|
17
|
+
const instance: AdminTrustFactorHistoryEntry = {
|
|
18
|
+
snapshotDate,
|
|
19
|
+
trustFactor,
|
|
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,23 @@
|
|
|
1
|
+
# AdminTrustFactorImpact
|
|
2
|
+
|
|
3
|
+
Trust factor impact preview for a player-targeted punishment.
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
Name | Type | Description | Notes
|
|
8
|
+
------------ | ------------- | ------------- | -------------
|
|
9
|
+
**currentTrustFactor** | **number** | Trust factor right now (0-100, higher = more trusted). Computed by compute_trust_factor in the database. | [default to undefined]
|
|
10
|
+
**projectedTrustFactor** | **number** | Approximate trust factor AFTER this punishment would land. Approximate because caps in the underlying signals can absorb part of the impact, so the actual post-apply value may be higher than this preview. | [default to undefined]
|
|
11
|
+
|
|
12
|
+
## Example
|
|
13
|
+
|
|
14
|
+
```typescript
|
|
15
|
+
import { AdminTrustFactorImpact } from '@rebornteam/reborn-api';
|
|
16
|
+
|
|
17
|
+
const instance: AdminTrustFactorImpact = {
|
|
18
|
+
currentTrustFactor,
|
|
19
|
+
projectedTrustFactor,
|
|
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,35 @@
|
|
|
1
|
+
# AdminUpdatePunishmentRequest
|
|
2
|
+
|
|
3
|
+
Partial update for a punishment. All fields are optional; omitted fields stay untouched.
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
Name | Type | Description | Notes
|
|
8
|
+
------------ | ------------- | ------------- | -------------
|
|
9
|
+
**reason** | **string** | Replace the visible reason. Min 3, max 500 characters. | [optional] [default to undefined]
|
|
10
|
+
**notes** | **string** | Replace the internal admin notes. Null leaves them untouched; empty string clears them. | [optional] [default to undefined]
|
|
11
|
+
**expiresAt** | **string** | Replace the expiry timestamp (ISO-8601). Send an explicit null in JSON to make permanent — but note: omitting the field leaves expiry untouched. Use \'forcePermanent\' if you want to clear. | [optional] [default to undefined]
|
|
12
|
+
**forcePermanent** | **boolean** | When true, clears expiresAt (makes the punishment permanent). Takes precedence over expiresAt. | [optional] [default to undefined]
|
|
13
|
+
**type** | [**PunishmentType**](PunishmentType.md) | Replace the punishment type (BAN/MUTE/KICK/WARNING). Affects trust factor retroactively. | [optional] [default to undefined]
|
|
14
|
+
**severity** | **number** | Replace the severity (1–4). Affects trust factor retroactively. | [optional] [default to undefined]
|
|
15
|
+
**addTargets** | [**Array<AdminPunishmentTarget>**](AdminPunishmentTarget.md) | Targets to ADD. Each entry has either a player UUID or an IP. UUID → new DIRECT player_punishment row. IP → new connection_punishment row. | [optional] [default to undefined]
|
|
16
|
+
**removeTargets** | [**Array<AdminPunishmentTarget>**](AdminPunishmentTarget.md) | Targets to REMOVE. UUID → soft-revoke the DIRECT player_punishment link. IP → delete the connection_punishment row outright. PROPAGATED links are not affected by this endpoint. | [optional] [default to undefined]
|
|
17
|
+
|
|
18
|
+
## Example
|
|
19
|
+
|
|
20
|
+
```typescript
|
|
21
|
+
import { AdminUpdatePunishmentRequest } from '@rebornteam/reborn-api';
|
|
22
|
+
|
|
23
|
+
const instance: AdminUpdatePunishmentRequest = {
|
|
24
|
+
reason,
|
|
25
|
+
notes,
|
|
26
|
+
expiresAt,
|
|
27
|
+
forcePermanent,
|
|
28
|
+
type,
|
|
29
|
+
severity,
|
|
30
|
+
addTargets,
|
|
31
|
+
removeTargets,
|
|
32
|
+
};
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
|
package/docs/ChatApi.md
CHANGED
|
@@ -23,14 +23,14 @@ import {
|
|
|
23
23
|
const configuration = new Configuration();
|
|
24
24
|
const apiInstance = new ChatApi(configuration);
|
|
25
25
|
|
|
26
|
-
let limit: number; //Maximum number of messages to return (1–100) (default to 50)
|
|
27
26
|
let sessionId: string; //Filter to a specific server session. Omit for global history. (optional) (default to undefined)
|
|
28
27
|
let before: string; //ISO-8601 timestamp cursor — return messages sent before this time. Omit to start from now. (optional) (default to undefined)
|
|
28
|
+
let limit: number; //Maximum number of messages to return (1–100) (optional) (default to 50)
|
|
29
29
|
|
|
30
30
|
const { status, data } = await apiInstance.history(
|
|
31
|
-
limit,
|
|
32
31
|
sessionId,
|
|
33
|
-
before
|
|
32
|
+
before,
|
|
33
|
+
limit
|
|
34
34
|
);
|
|
35
35
|
```
|
|
36
36
|
|
|
@@ -38,9 +38,9 @@ const { status, data } = await apiInstance.history(
|
|
|
38
38
|
|
|
39
39
|
|Name | Type | Description | Notes|
|
|
40
40
|
|------------- | ------------- | ------------- | -------------|
|
|
41
|
-
| **limit** | [**number**] | Maximum number of messages to return (1–100) | defaults to 50|
|
|
42
41
|
| **sessionId** | [**string**] | Filter to a specific server session. Omit for global history. | (optional) defaults to undefined|
|
|
43
42
|
| **before** | [**string**] | ISO-8601 timestamp cursor — return messages sent before this time. Omit to start from now. | (optional) defaults to undefined|
|
|
43
|
+
| **limit** | [**number**] | Maximum number of messages to return (1–100) | (optional) defaults to 50|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
### Return type
|