@rebornteam/reborn-api 3.2.0 → 4.0.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 +65 -3
- package/README.md +93 -6
- package/api.ts +3991 -467
- package/base.ts +1 -1
- package/common.ts +1 -1
- package/configuration.ts +1 -1
- package/dist/api.d.ts +2485 -364
- package/dist/api.js +2876 -425
- 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 +2485 -364
- package/dist/esm/api.js +2851 -420
- 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/AdminApplyPunishmentResult.md +4 -4
- package/docs/AdminAsyncJob.md +47 -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 +196 -34
- package/docs/AdminCreateAltExemptionRequest.md +23 -0
- package/docs/AdminCreatePlayerNoteRequest.md +21 -0
- package/docs/AdminDashboardConnectionResponse.md +4 -2
- package/docs/AdminJobsApi.md +175 -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 +936 -16
- package/docs/AdminPunishmentEvaluation.md +4 -8
- package/docs/AdminPunishmentsApi.md +78 -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 +27 -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/AdminPagedConnectionResponse.md +0 -29
- package/docs/AdminPagedPlayerResponse.md +0 -29
- package/docs/AdminPagedPunishmentResponse.md +0 -29
package/dist/api.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Reborn API
|
|
3
3
|
* The Reborn API serves as the central backend for the platform, orchestrating secure communication between game clients and data services. This API supports two authentication methods: - **OAuth 2.0 Client Credentials**: For programmatic API access - **Discord SSO Bearer Token**: For admin endpoints requiring Discord authentication
|
|
4
4
|
*
|
|
5
|
-
* The version of the OpenAPI document:
|
|
5
|
+
* The version of the OpenAPI document: 4.0.0
|
|
6
6
|
*
|
|
7
7
|
*
|
|
8
8
|
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
@@ -13,6 +13,56 @@ import type { Configuration } from './configuration';
|
|
|
13
13
|
import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios';
|
|
14
14
|
import type { RequestArgs } from './base';
|
|
15
15
|
import { BaseAPI } from './base';
|
|
16
|
+
/**
|
|
17
|
+
* Another player who has been seen on at least one of this player\'s historical connections — i.e. an alt account candidate.
|
|
18
|
+
*/
|
|
19
|
+
export interface AdminAltAccount {
|
|
20
|
+
/**
|
|
21
|
+
* Alt player\'s Minecraft UUID
|
|
22
|
+
*/
|
|
23
|
+
'uuid': string;
|
|
24
|
+
/**
|
|
25
|
+
* Most recently seen username for the alt, null if never recorded
|
|
26
|
+
*/
|
|
27
|
+
'username'?: string | null;
|
|
28
|
+
/**
|
|
29
|
+
* Timestamp of the alt\'s most recent connection (ISO-8601), null if never connected
|
|
30
|
+
*/
|
|
31
|
+
'lastUsedAt'?: string | null;
|
|
32
|
+
/**
|
|
33
|
+
* Number of distinct connections this alt shares with the source player
|
|
34
|
+
*/
|
|
35
|
+
'sharedConnectionCount': number;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Per-pair exemption from aggressive-mode alt propagation. When a row exists with (player_id=X, alt_player_id=Y), propagation for X will skip Y as an alt source.
|
|
39
|
+
*/
|
|
40
|
+
export interface AdminAltExemption {
|
|
41
|
+
/**
|
|
42
|
+
* Player this exemption applies to
|
|
43
|
+
*/
|
|
44
|
+
'playerUuid': string;
|
|
45
|
+
/**
|
|
46
|
+
* Player to be skipped as an alt source
|
|
47
|
+
*/
|
|
48
|
+
'altPlayerUuid': string;
|
|
49
|
+
/**
|
|
50
|
+
* Most recent username of the exempted alt
|
|
51
|
+
*/
|
|
52
|
+
'altPlayerUsername'?: string | null;
|
|
53
|
+
/**
|
|
54
|
+
* Staff member who created the exemption
|
|
55
|
+
*/
|
|
56
|
+
'createdBy': string;
|
|
57
|
+
/**
|
|
58
|
+
* When the exemption was created (ISO-8601)
|
|
59
|
+
*/
|
|
60
|
+
'createdAt': string;
|
|
61
|
+
/**
|
|
62
|
+
* Optional human-readable reason
|
|
63
|
+
*/
|
|
64
|
+
'reason'?: string | null;
|
|
65
|
+
}
|
|
16
66
|
/**
|
|
17
67
|
* Request to apply a punishment to one or more targets
|
|
18
68
|
*/
|
|
@@ -72,15 +122,15 @@ export interface AdminApplyPunishmentResult {
|
|
|
72
122
|
*/
|
|
73
123
|
'type': PunishmentType;
|
|
74
124
|
/**
|
|
75
|
-
* Severity level applied
|
|
125
|
+
* Severity level applied (1-4)
|
|
76
126
|
*/
|
|
77
127
|
'severity': number;
|
|
78
128
|
/**
|
|
79
|
-
*
|
|
129
|
+
* Trust factor (0-100) for the targeted player after the punishment landed. Present only when the target is a player; absent for any other target shape.
|
|
80
130
|
*/
|
|
81
|
-
'
|
|
131
|
+
'newTrustFactor'?: number | null;
|
|
82
132
|
/**
|
|
83
|
-
* Whether the punishment was made permanent
|
|
133
|
+
* Whether the punishment was made permanent. Mirrors the request\'s forcePermanent flag — auto-escalation has been removed.
|
|
84
134
|
*/
|
|
85
135
|
'isPermanent': boolean;
|
|
86
136
|
/**
|
|
@@ -88,6 +138,135 @@ export interface AdminApplyPunishmentResult {
|
|
|
88
138
|
*/
|
|
89
139
|
'expiresAt'?: string | null;
|
|
90
140
|
}
|
|
141
|
+
/**
|
|
142
|
+
* One row of admin_job — a long-running admin operation.
|
|
143
|
+
*/
|
|
144
|
+
export interface AdminAsyncJob {
|
|
145
|
+
/**
|
|
146
|
+
* Job id
|
|
147
|
+
*/
|
|
148
|
+
'id': string;
|
|
149
|
+
/**
|
|
150
|
+
* Stable identifier of what kind of work this is (e.g. LOCATION_BACKFILL)
|
|
151
|
+
*/
|
|
152
|
+
'jobType': string;
|
|
153
|
+
/**
|
|
154
|
+
* Current lifecycle state.
|
|
155
|
+
*/
|
|
156
|
+
'status': JobStatus;
|
|
157
|
+
/**
|
|
158
|
+
* Number of units processed so far
|
|
159
|
+
*/
|
|
160
|
+
'progressCurrent': number;
|
|
161
|
+
/**
|
|
162
|
+
* Total units, when known up front. Null when total is undetermined.
|
|
163
|
+
*/
|
|
164
|
+
'progressTotal'?: number | null;
|
|
165
|
+
/**
|
|
166
|
+
* Optional human-readable status line (e.g. \"Re-checking IpHub\").
|
|
167
|
+
*/
|
|
168
|
+
'progressMessage'?: string | null;
|
|
169
|
+
/**
|
|
170
|
+
* Error message when status = FAILED. Null otherwise.
|
|
171
|
+
*/
|
|
172
|
+
'errorMessage'?: string | null;
|
|
173
|
+
/**
|
|
174
|
+
* Type-specific JSON result, populated when status = COMPLETED. Schema varies by jobType — consult the docs for each type.
|
|
175
|
+
*/
|
|
176
|
+
'resultPayload'?: object | null;
|
|
177
|
+
/**
|
|
178
|
+
* Admin who submitted the job (Discord username for SSO admins).
|
|
179
|
+
*/
|
|
180
|
+
'startedBy': string;
|
|
181
|
+
/**
|
|
182
|
+
* When the job was submitted (ISO-8601).
|
|
183
|
+
*/
|
|
184
|
+
'startedAt': string;
|
|
185
|
+
/**
|
|
186
|
+
* Timestamp of the most recent progress update. The reaper marks jobs FAILED when this falls behind by 5 min.
|
|
187
|
+
*/
|
|
188
|
+
'lastProgressAt': string;
|
|
189
|
+
/**
|
|
190
|
+
* When the job entered a terminal state. Null while running.
|
|
191
|
+
*/
|
|
192
|
+
'finishedAt'?: string | null;
|
|
193
|
+
/**
|
|
194
|
+
* True if an admin has requested cancellation. The host instance picks this up at its next progress tick.
|
|
195
|
+
*/
|
|
196
|
+
'cancelRequested': boolean;
|
|
197
|
+
/**
|
|
198
|
+
* Identifier of the API instance that is running this job. Other instances can see state and request cancellation but cannot dispose the in-flight Reactor subscription directly.
|
|
199
|
+
*/
|
|
200
|
+
'hostInstance': string;
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Acknowledgement returned by endpoints that submit an async job. The id is the polling target — GET /admin/job/{id} for status, DELETE /admin/job/{id} to cancel.
|
|
204
|
+
*/
|
|
205
|
+
export interface AdminAsyncJobStartResponse {
|
|
206
|
+
/**
|
|
207
|
+
* Server-assigned job id
|
|
208
|
+
*/
|
|
209
|
+
'jobId': string;
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* Single admin audit-log entry. Captures who did what to which target with an action-specific JSON payload (e.g. before/after for edits, count for bulk ops).
|
|
213
|
+
*/
|
|
214
|
+
export interface AdminAuditLogEntry {
|
|
215
|
+
/**
|
|
216
|
+
* Sequential id (ordering matches createdAt)
|
|
217
|
+
*/
|
|
218
|
+
'id': number;
|
|
219
|
+
/**
|
|
220
|
+
* Discord username of the moderator who performed the action
|
|
221
|
+
*/
|
|
222
|
+
'actorUsername': string;
|
|
223
|
+
/**
|
|
224
|
+
* Action verb. Open-vocabulary; current values include APPLY_PUNISHMENT, EDIT_PUNISHMENT, REVOKE_PROPAGATED_LINK, BULK_REVOKE, SET_AGGRESSIVE_MODE_IMMUNITY, ADD_ALT_EXEMPTION, REMOVE_ALT_EXEMPTION.
|
|
225
|
+
*/
|
|
226
|
+
'action': string;
|
|
227
|
+
/**
|
|
228
|
+
* Type of entity acted upon (PLAYER, PUNISHMENT, PLAYER_PUNISHMENT, etc.)
|
|
229
|
+
*/
|
|
230
|
+
'targetType': string;
|
|
231
|
+
/**
|
|
232
|
+
* Identifier of the target (stringified id or UUID, depending on targetType)
|
|
233
|
+
*/
|
|
234
|
+
'targetId': string;
|
|
235
|
+
/**
|
|
236
|
+
* Action-specific JSON payload. Shape depends on the action.
|
|
237
|
+
*/
|
|
238
|
+
'payload'?: string | null;
|
|
239
|
+
/**
|
|
240
|
+
* When the action occurred (ISO-8601)
|
|
241
|
+
*/
|
|
242
|
+
'createdAt': string;
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Bulk-revoke every active PROPAGATED player_punishment row sourced from a single alt or connection. Used when staff identify a false-positive source (e.g. a shared NAT or legitimate roommate) and want to undo every link it caused.
|
|
246
|
+
*/
|
|
247
|
+
export interface AdminBulkRevokeRequest {
|
|
248
|
+
/**
|
|
249
|
+
* Revoke links whose source_player_id matches. Mutually exclusive with sourceConnectionId.
|
|
250
|
+
*/
|
|
251
|
+
'sourcePlayerId'?: number | null;
|
|
252
|
+
/**
|
|
253
|
+
* Revoke links whose source_connection_id matches. Mutually exclusive with sourcePlayerId.
|
|
254
|
+
*/
|
|
255
|
+
'sourceConnectionId'?: number | null;
|
|
256
|
+
/**
|
|
257
|
+
* Optional reason for the audit log
|
|
258
|
+
*/
|
|
259
|
+
'reason'?: string | null;
|
|
260
|
+
}
|
|
261
|
+
/**
|
|
262
|
+
* Result of a bulk-revoke operation
|
|
263
|
+
*/
|
|
264
|
+
export interface AdminBulkRevokeResponse {
|
|
265
|
+
/**
|
|
266
|
+
* Number of player_punishment rows soft-deleted by the operation
|
|
267
|
+
*/
|
|
268
|
+
'revoked': number;
|
|
269
|
+
}
|
|
91
270
|
/**
|
|
92
271
|
* Client credential response
|
|
93
272
|
*/
|
|
@@ -170,6 +349,36 @@ export interface AdminConnectionCheckResult {
|
|
|
170
349
|
* Country code reported by this service, if available
|
|
171
350
|
*/
|
|
172
351
|
'country'?: string | null;
|
|
352
|
+
/**
|
|
353
|
+
* Latitude reported by this service, if available
|
|
354
|
+
*/
|
|
355
|
+
'latitude'?: number | null;
|
|
356
|
+
/**
|
|
357
|
+
* Longitude reported by this service, if available
|
|
358
|
+
*/
|
|
359
|
+
'longitude'?: number | null;
|
|
360
|
+
}
|
|
361
|
+
/**
|
|
362
|
+
* Add an alt exemption: mark altPlayerUuid as a known-legitimate associate of the path player. Subsequent aggressive-mode propagation skips this pair as an alt source.
|
|
363
|
+
*/
|
|
364
|
+
export interface AdminCreateAltExemptionRequest {
|
|
365
|
+
/**
|
|
366
|
+
* UUID of the player to mark as a known-legitimate associate
|
|
367
|
+
*/
|
|
368
|
+
'altPlayerUuid': string;
|
|
369
|
+
/**
|
|
370
|
+
* Optional human-readable reason (e.g. \'roommates, verified via support ticket #1234\')
|
|
371
|
+
*/
|
|
372
|
+
'reason'?: string | null;
|
|
373
|
+
}
|
|
374
|
+
/**
|
|
375
|
+
* Create a staff note on a player
|
|
376
|
+
*/
|
|
377
|
+
export interface AdminCreatePlayerNoteRequest {
|
|
378
|
+
/**
|
|
379
|
+
* Note body (1–4000 chars)
|
|
380
|
+
*/
|
|
381
|
+
'body': string;
|
|
173
382
|
}
|
|
174
383
|
/**
|
|
175
384
|
* Request to evaluate the impact of a punishment across one or more targets before applying
|
|
@@ -203,7 +412,14 @@ export interface AdminCreatePunishmentDraftRequest {
|
|
|
203
412
|
export interface AdminDashboardConnectionResponse {
|
|
204
413
|
'id': number;
|
|
205
414
|
'ipAddress': string;
|
|
206
|
-
|
|
415
|
+
/**
|
|
416
|
+
* City reported by the first VPN provider that returned one for this IP.
|
|
417
|
+
*/
|
|
418
|
+
'city'?: string | null;
|
|
419
|
+
/**
|
|
420
|
+
* Country code (ISO 3166-1 alpha-2 or alpha-3 depending on provider) from the first provider that returned one.
|
|
421
|
+
*/
|
|
422
|
+
'country'?: string | null;
|
|
207
423
|
'isVpn': boolean;
|
|
208
424
|
'isBypassed': boolean;
|
|
209
425
|
'bypassExpiresAt'?: string | null;
|
|
@@ -235,120 +451,188 @@ export interface AdminIpSearchResult {
|
|
|
235
451
|
'players': Array<AdminPlayerSearchResult>;
|
|
236
452
|
}
|
|
237
453
|
/**
|
|
238
|
-
*
|
|
454
|
+
* Full player detail including punishment history and all known usernames
|
|
239
455
|
*/
|
|
240
|
-
export interface
|
|
456
|
+
export interface AdminPlayerDetailResponse {
|
|
457
|
+
/**
|
|
458
|
+
* Internal player ID
|
|
459
|
+
*/
|
|
460
|
+
'id': number;
|
|
461
|
+
/**
|
|
462
|
+
* Player Minecraft UUID
|
|
463
|
+
*/
|
|
464
|
+
'uuid': string;
|
|
241
465
|
/**
|
|
242
|
-
*
|
|
466
|
+
* Most recently seen username
|
|
243
467
|
*/
|
|
244
|
-
'
|
|
468
|
+
'username'?: string | null;
|
|
245
469
|
/**
|
|
246
|
-
*
|
|
470
|
+
* Whether this player still has first-join status
|
|
247
471
|
*/
|
|
248
|
-
'
|
|
472
|
+
'firstJoin': boolean;
|
|
249
473
|
/**
|
|
250
|
-
*
|
|
474
|
+
* Timestamp of first connection (ISO-8601)
|
|
251
475
|
*/
|
|
252
|
-
'
|
|
476
|
+
'firstLogin': string;
|
|
253
477
|
/**
|
|
254
|
-
*
|
|
478
|
+
* Timestamp of most recent connection (ISO-8601)
|
|
255
479
|
*/
|
|
256
|
-
'
|
|
480
|
+
'lastUsedAt'?: string | null;
|
|
257
481
|
/**
|
|
258
|
-
*
|
|
482
|
+
* Trust factor (0-100, higher = more trusted). Informational only — does NOT auto-escalate punishments. See compute_trust_factor in the database for the formula.
|
|
259
483
|
*/
|
|
260
|
-
'
|
|
484
|
+
'trustFactor': number;
|
|
485
|
+
/**
|
|
486
|
+
* All usernames this player has used, newest first
|
|
487
|
+
*/
|
|
488
|
+
'usernameHistory': Array<AdminUsernameHistoryEntry>;
|
|
489
|
+
/**
|
|
490
|
+
* True when this player is exempt from aggressive-mode propagation. Toggling on also bulk-revokes existing propagated links. Defaults to false.
|
|
491
|
+
*/
|
|
492
|
+
'aggressiveModeImmunity': boolean;
|
|
261
493
|
}
|
|
262
494
|
/**
|
|
263
|
-
*
|
|
495
|
+
* Free-form staff note about a player
|
|
264
496
|
*/
|
|
265
|
-
export interface
|
|
497
|
+
export interface AdminPlayerNote {
|
|
498
|
+
/**
|
|
499
|
+
* Note id
|
|
500
|
+
*/
|
|
501
|
+
'id': number;
|
|
266
502
|
/**
|
|
267
|
-
*
|
|
503
|
+
* Username (Discord username for SSO admins) of the staff member who wrote the note
|
|
268
504
|
*/
|
|
269
|
-
'
|
|
505
|
+
'author': string;
|
|
270
506
|
/**
|
|
271
|
-
*
|
|
507
|
+
* The note body (1–4000 characters)
|
|
272
508
|
*/
|
|
273
|
-
'
|
|
509
|
+
'body': string;
|
|
274
510
|
/**
|
|
275
|
-
*
|
|
511
|
+
* When the note was created (ISO-8601)
|
|
276
512
|
*/
|
|
277
|
-
'
|
|
513
|
+
'createdAt': string;
|
|
278
514
|
/**
|
|
279
|
-
*
|
|
515
|
+
* When the note was soft-deleted. Null on active notes. Deleted notes are still returned by default; the UI styles them as struck-through.
|
|
280
516
|
*/
|
|
281
|
-
'
|
|
517
|
+
'deletedAt'?: string | null;
|
|
282
518
|
/**
|
|
283
|
-
*
|
|
519
|
+
* Staff member who soft-deleted the note. Null on active notes.
|
|
284
520
|
*/
|
|
285
|
-
'
|
|
521
|
+
'deletedBy'?: string | null;
|
|
286
522
|
}
|
|
287
523
|
/**
|
|
288
|
-
*
|
|
524
|
+
* A single player_punishment link with full audit metadata. Used by admin UIs to render the player\'s punishment history with DIRECT vs PROPAGATED badges and per-link revoke controls.
|
|
289
525
|
*/
|
|
290
|
-
export interface
|
|
526
|
+
export interface AdminPlayerPunishmentResponse {
|
|
527
|
+
/**
|
|
528
|
+
* player_punishment row id (the link id, NOT the punishment id)
|
|
529
|
+
*/
|
|
530
|
+
'id': number;
|
|
531
|
+
/**
|
|
532
|
+
* Source punishment id this link points to
|
|
533
|
+
*/
|
|
534
|
+
'punishmentId': number;
|
|
291
535
|
/**
|
|
292
|
-
*
|
|
536
|
+
* UUID of the player this link is attached to
|
|
293
537
|
*/
|
|
294
|
-
'
|
|
538
|
+
'playerUuid': string;
|
|
295
539
|
/**
|
|
296
|
-
*
|
|
540
|
+
* Punishment type
|
|
297
541
|
*/
|
|
298
|
-
'
|
|
542
|
+
'type': PunishmentType;
|
|
299
543
|
/**
|
|
300
|
-
*
|
|
544
|
+
* Severity (1-4)
|
|
301
545
|
*/
|
|
302
|
-
'
|
|
546
|
+
'severity': number;
|
|
303
547
|
/**
|
|
304
|
-
*
|
|
548
|
+
* Reason from the source punishment record
|
|
305
549
|
*/
|
|
306
|
-
'
|
|
550
|
+
'reason': string;
|
|
307
551
|
/**
|
|
308
|
-
*
|
|
552
|
+
* Internal admin notes from the source punishment (may be null)
|
|
309
553
|
*/
|
|
310
|
-
'
|
|
554
|
+
'notes'?: string | null;
|
|
555
|
+
/**
|
|
556
|
+
* Original issuer of the punishment
|
|
557
|
+
*/
|
|
558
|
+
'createdBy': string;
|
|
559
|
+
/**
|
|
560
|
+
* When the source punishment was created (ISO-8601)
|
|
561
|
+
*/
|
|
562
|
+
'createdAt': string;
|
|
563
|
+
/**
|
|
564
|
+
* Source punishment expiration (null = permanent)
|
|
565
|
+
*/
|
|
566
|
+
'expiresAt'?: string | null;
|
|
567
|
+
/**
|
|
568
|
+
* 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.
|
|
569
|
+
*/
|
|
570
|
+
'source': PunishmentSource;
|
|
571
|
+
/**
|
|
572
|
+
* Human-readable origin for a PROPAGATED link, e.g. \'Propagated from alt Notch (player_id=42)\' or \'Propagated from connection 1.2.3.4\'. Null for DIRECT links.
|
|
573
|
+
*/
|
|
574
|
+
'transferNote'?: string | null;
|
|
575
|
+
/**
|
|
576
|
+
* player.id that triggered this PROPAGATED link (the alt account). Null for DIRECT links, for PROPAGATED links pre-dating the structured-source migration, and for connection-sourced PROPAGATED links.
|
|
577
|
+
*/
|
|
578
|
+
'sourcePlayerId'?: number | null;
|
|
579
|
+
/**
|
|
580
|
+
* connection.id that triggered this PROPAGATED link (the IP). Null for DIRECT links, for PROPAGATED links pre-dating the structured-source migration, and for player-sourced PROPAGATED links.
|
|
581
|
+
*/
|
|
582
|
+
'sourceConnectionId'?: number | null;
|
|
583
|
+
/**
|
|
584
|
+
* When this link was revoked by a staff member. Null while active.
|
|
585
|
+
*/
|
|
586
|
+
'revokedAt'?: string | null;
|
|
587
|
+
/**
|
|
588
|
+
* Staff member who revoked this link.
|
|
589
|
+
*/
|
|
590
|
+
'revokedBy'?: string | null;
|
|
311
591
|
}
|
|
312
592
|
/**
|
|
313
|
-
*
|
|
593
|
+
* One peer report. May target one or more players.
|
|
314
594
|
*/
|
|
315
|
-
export interface
|
|
595
|
+
export interface AdminPlayerReport {
|
|
316
596
|
/**
|
|
317
|
-
*
|
|
597
|
+
* Report id
|
|
318
598
|
*/
|
|
319
599
|
'id': number;
|
|
320
600
|
/**
|
|
321
|
-
*
|
|
601
|
+
* Reporter\'s UUID
|
|
322
602
|
*/
|
|
323
|
-
'
|
|
603
|
+
'reporterUuid': string;
|
|
324
604
|
/**
|
|
325
|
-
*
|
|
605
|
+
* Reporter\'s username at the time of the report (last-known if changed)
|
|
326
606
|
*/
|
|
327
|
-
'
|
|
607
|
+
'reporterUsername'?: string | null;
|
|
328
608
|
/**
|
|
329
|
-
*
|
|
609
|
+
* All players this report flags. At least one entry.
|
|
330
610
|
*/
|
|
331
|
-
'
|
|
611
|
+
'reportedTargets': Array<AdminReportTarget>;
|
|
332
612
|
/**
|
|
333
|
-
*
|
|
613
|
+
* Category
|
|
334
614
|
*/
|
|
335
|
-
'
|
|
615
|
+
'category': string;
|
|
336
616
|
/**
|
|
337
|
-
*
|
|
617
|
+
* Reason text
|
|
338
618
|
*/
|
|
339
|
-
'
|
|
619
|
+
'reason': string;
|
|
340
620
|
/**
|
|
341
|
-
*
|
|
621
|
+
* When created (ISO-8601)
|
|
342
622
|
*/
|
|
343
|
-
'
|
|
623
|
+
'createdAt': string;
|
|
344
624
|
/**
|
|
345
|
-
*
|
|
625
|
+
* When resolved by staff. Null = open.
|
|
346
626
|
*/
|
|
347
|
-
'
|
|
627
|
+
'resolvedAt'?: string | null;
|
|
348
628
|
/**
|
|
349
|
-
*
|
|
629
|
+
* Staff member who resolved it
|
|
350
630
|
*/
|
|
351
|
-
'
|
|
631
|
+
'resolvedBy'?: string | null;
|
|
632
|
+
/**
|
|
633
|
+
* Staff\'s resolution note
|
|
634
|
+
*/
|
|
635
|
+
'resolutionNote'?: string | null;
|
|
352
636
|
}
|
|
353
637
|
/**
|
|
354
638
|
* Lightweight player reference used in search results and punishment evaluations
|
|
@@ -363,6 +647,60 @@ export interface AdminPlayerSearchResult {
|
|
|
363
647
|
*/
|
|
364
648
|
'username'?: string | null;
|
|
365
649
|
}
|
|
650
|
+
/**
|
|
651
|
+
* A single player session — one visit by one player to one game server. Active sessions have null endedAt and durationSeconds; closed sessions have both populated.
|
|
652
|
+
*/
|
|
653
|
+
export interface AdminPlayerSession {
|
|
654
|
+
/**
|
|
655
|
+
* Session id (UUID)
|
|
656
|
+
*/
|
|
657
|
+
'id': string;
|
|
658
|
+
/**
|
|
659
|
+
* Player Minecraft UUID
|
|
660
|
+
*/
|
|
661
|
+
'playerUuid': string;
|
|
662
|
+
/**
|
|
663
|
+
* Game server session id this session is associated with. Nullable when the server record has been deleted.
|
|
664
|
+
*/
|
|
665
|
+
'serverSessionId'?: string | null;
|
|
666
|
+
/**
|
|
667
|
+
* When the player joined (ISO-8601)
|
|
668
|
+
*/
|
|
669
|
+
'startedAt': string;
|
|
670
|
+
/**
|
|
671
|
+
* When the player disconnected (ISO-8601). Null while the session is still active.
|
|
672
|
+
*/
|
|
673
|
+
'endedAt'?: string | null;
|
|
674
|
+
/**
|
|
675
|
+
* Closed session duration in seconds (ended_at − started_at). Null while active.
|
|
676
|
+
*/
|
|
677
|
+
'durationSeconds'?: number | null;
|
|
678
|
+
}
|
|
679
|
+
/**
|
|
680
|
+
* Aggregate session statistics for one player. Computed on demand from player_session.
|
|
681
|
+
*/
|
|
682
|
+
export interface AdminPlayerSessionStats {
|
|
683
|
+
/**
|
|
684
|
+
* Sum of duration_seconds across all closed sessions
|
|
685
|
+
*/
|
|
686
|
+
'totalSecondsPlayed': number;
|
|
687
|
+
/**
|
|
688
|
+
* Total number of session rows for this player (active + closed)
|
|
689
|
+
*/
|
|
690
|
+
'sessionCount': number;
|
|
691
|
+
/**
|
|
692
|
+
* Distinct calendar days (UTC) on which this player had at least one session
|
|
693
|
+
*/
|
|
694
|
+
'distinctDaysActive': number;
|
|
695
|
+
/**
|
|
696
|
+
* Most recent session start time (ISO-8601). Null if the player has never connected.
|
|
697
|
+
*/
|
|
698
|
+
'lastStartedAt'?: string | null;
|
|
699
|
+
/**
|
|
700
|
+
* True when the player has at least one currently-active (ended_at IS NULL) session.
|
|
701
|
+
*/
|
|
702
|
+
'currentlyOnline': boolean;
|
|
703
|
+
}
|
|
366
704
|
/**
|
|
367
705
|
* Summary of a player record, used in list views
|
|
368
706
|
*/
|
|
@@ -392,13 +730,9 @@ export interface AdminPlayerSummary {
|
|
|
392
730
|
*/
|
|
393
731
|
'lastUsedAt'?: string | null;
|
|
394
732
|
/**
|
|
395
|
-
*
|
|
733
|
+
* Trust factor (0-100, higher = more trusted). Informational only — does NOT auto-escalate punishments. See compute_trust_factor in the database for the formula.
|
|
396
734
|
*/
|
|
397
|
-
'
|
|
398
|
-
/**
|
|
399
|
-
* Punishment score as a percentage. Values above 100 indicate future punishments should be permanent.
|
|
400
|
-
*/
|
|
401
|
-
'punishmentPointsPercent': number;
|
|
735
|
+
'trustFactor': number;
|
|
402
736
|
}
|
|
403
737
|
/**
|
|
404
738
|
* Batch punishment draft — one evaluation per target
|
|
@@ -422,19 +756,11 @@ export interface AdminPunishmentEvaluation {
|
|
|
422
756
|
*/
|
|
423
757
|
'affectedPlayers': Array<AdminPlayerSearchResult>;
|
|
424
758
|
/**
|
|
425
|
-
*
|
|
759
|
+
* Trust factor preview for the targeted player. Present only when the target is a player; absent for any other target shape.
|
|
426
760
|
*/
|
|
427
|
-
'
|
|
761
|
+
'trustFactorImpact'?: AdminTrustFactorImpact | null;
|
|
428
762
|
/**
|
|
429
|
-
*
|
|
430
|
-
*/
|
|
431
|
-
'pointsToAdd': number;
|
|
432
|
-
/**
|
|
433
|
-
* Projected score after applying this punishment
|
|
434
|
-
*/
|
|
435
|
-
'newScore': number;
|
|
436
|
-
/**
|
|
437
|
-
* Whether this punishment would be permanent based on the current score threshold
|
|
763
|
+
* Whether this punishment will be permanent. Mirrors the request\'s forcePermanent flag — auto-escalation has been removed.
|
|
438
764
|
*/
|
|
439
765
|
'willBePermanent': boolean;
|
|
440
766
|
/**
|
|
@@ -450,7 +776,7 @@ export interface AdminPunishmentEvaluation {
|
|
|
450
776
|
*/
|
|
451
777
|
'isConnectionTarget': boolean;
|
|
452
778
|
/**
|
|
453
|
-
* The
|
|
779
|
+
* The punishment type that will be applied. Equal to the requested type — auto-escalation has been removed.
|
|
454
780
|
*/
|
|
455
781
|
'effectiveType': PunishmentType;
|
|
456
782
|
}
|
|
@@ -499,13 +825,180 @@ export interface AdminPunishmentTarget {
|
|
|
499
825
|
'ipAddress'?: string | null;
|
|
500
826
|
}
|
|
501
827
|
/**
|
|
502
|
-
*
|
|
828
|
+
* One reported player attached to a report.
|
|
503
829
|
*/
|
|
504
|
-
export interface
|
|
830
|
+
export interface AdminReportTarget {
|
|
505
831
|
/**
|
|
506
|
-
*
|
|
832
|
+
* Target player\'s UUID
|
|
507
833
|
*/
|
|
508
|
-
'
|
|
834
|
+
'uuid': string;
|
|
835
|
+
/**
|
|
836
|
+
* Target player\'s last-known username
|
|
837
|
+
*/
|
|
838
|
+
'username'?: string | null;
|
|
839
|
+
}
|
|
840
|
+
/**
|
|
841
|
+
* Resolve a player report. Sets resolved_at = NOW() and stores the staff note.
|
|
842
|
+
*/
|
|
843
|
+
export interface AdminResolveReportRequest {
|
|
844
|
+
/**
|
|
845
|
+
* Free-form resolution note from staff (e.g. \"Watched 10 min footage, no cheating evident.\")
|
|
846
|
+
*/
|
|
847
|
+
'resolutionNote'?: string | null;
|
|
848
|
+
}
|
|
849
|
+
/**
|
|
850
|
+
* Set whether a player is exempt from aggressive-mode punishment propagation. Toggling on also revokes all currently-active propagated links for the player.
|
|
851
|
+
*/
|
|
852
|
+
export interface AdminSetAggressiveModeImmunityRequest {
|
|
853
|
+
/**
|
|
854
|
+
* True to mark the player immune (no future propagation; existing propagated links bulk-revoked). False to re-enable propagation.
|
|
855
|
+
*/
|
|
856
|
+
'immune': boolean;
|
|
857
|
+
}
|
|
858
|
+
/**
|
|
859
|
+
* 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.
|
|
860
|
+
*/
|
|
861
|
+
export interface AdminTrustFactorBreakdown {
|
|
862
|
+
/**
|
|
863
|
+
* Starting score before any signals applied. Constant 75.
|
|
864
|
+
*/
|
|
865
|
+
'baseTrust': number;
|
|
866
|
+
/**
|
|
867
|
+
* Bonus from account age (+1 per 30 days, capped at +15)
|
|
868
|
+
*/
|
|
869
|
+
'ageBonus': number;
|
|
870
|
+
/**
|
|
871
|
+
* Bonus from clean history. +10 if no active punishments; otherwise +1 per 60 days since the most recent one. Capped at +10.
|
|
872
|
+
*/
|
|
873
|
+
'cleanHistoryBonus': number;
|
|
874
|
+
/**
|
|
875
|
+
* Bonus from connection stability. Stair-step on distinct-connection count: ≤1=+5, ≤3=+3, ≤8=+1, else 0.
|
|
876
|
+
*/
|
|
877
|
+
'stabilityBonus': number;
|
|
878
|
+
/**
|
|
879
|
+
* Bonus from admin affirmation. alt-exemptions × 2 + active player-bypass × 4, capped at +10.
|
|
880
|
+
*/
|
|
881
|
+
'adminAffirmationBonus': number;
|
|
882
|
+
/**
|
|
883
|
+
* Penalty from active punishments. Type-weighted, severity-scaled, time-decayed (BAN half-life 730d, MUTE 180d, WARNING 60d). Capped at -40.
|
|
884
|
+
*/
|
|
885
|
+
'punishmentPenalty': number;
|
|
886
|
+
/**
|
|
887
|
+
* Penalty from alts. dirty-alts × 4 + clean-alts × 0.5, after promiscuity/alt caps, excluding alt-exempted players. Capped at -20.
|
|
888
|
+
*/
|
|
889
|
+
'altPenalty': number;
|
|
890
|
+
/**
|
|
891
|
+
* Penalty from VPN exposure. Fraction of the player\'s connections flagged > 50% positive × 15.
|
|
892
|
+
*/
|
|
893
|
+
'vpnPenalty': number;
|
|
894
|
+
/**
|
|
895
|
+
* Penalty from active PROPAGATED punishment links × 3. Capped at -15.
|
|
896
|
+
*/
|
|
897
|
+
'propagationPenalty': number;
|
|
898
|
+
/**
|
|
899
|
+
* Sum of base + bonuses - penalties BEFORE clamping to 0..100. Useful for debugging \"why is my -50 raw sum clamped to 0?\" cases.
|
|
900
|
+
*/
|
|
901
|
+
'rawSum': number;
|
|
902
|
+
/**
|
|
903
|
+
* The clamped final trust factor (0–100). Identical to what compute_trust_factor() returns.
|
|
904
|
+
*/
|
|
905
|
+
'finalScore': number;
|
|
906
|
+
/**
|
|
907
|
+
* Days since the player\'s account was created.
|
|
908
|
+
*/
|
|
909
|
+
'accountAgeDays': number;
|
|
910
|
+
/**
|
|
911
|
+
* Days since the most recent active punishment landed. Null when the player has none — the clean_history bonus is at its cap.
|
|
912
|
+
*/
|
|
913
|
+
'daysSinceLastPunishment'?: number | null;
|
|
914
|
+
/**
|
|
915
|
+
* Distinct connections this player has used. Drives the stability bonus.
|
|
916
|
+
*/
|
|
917
|
+
'numConnections': number;
|
|
918
|
+
/**
|
|
919
|
+
* Alt-exemption rows attributed to this player (admin-asserted legitimate associates).
|
|
920
|
+
*/
|
|
921
|
+
'numAltExemptions': number;
|
|
922
|
+
/**
|
|
923
|
+
* Whether this player currently has an active player_bypass row.
|
|
924
|
+
*/
|
|
925
|
+
'hasPlayerBypass': boolean;
|
|
926
|
+
/**
|
|
927
|
+
* Count of active (non-revoked, non-expired) player_punishment rows on this player. Includes both DIRECT and PROPAGATED.
|
|
928
|
+
*/
|
|
929
|
+
'numActivePunishments': number;
|
|
930
|
+
/**
|
|
931
|
+
* Alts with active punishments (drives the bigger per-alt penalty multiplier).
|
|
932
|
+
*/
|
|
933
|
+
'numDirtyAlts': number;
|
|
934
|
+
/**
|
|
935
|
+
* Alts WITHOUT active punishments (drives the smaller per-alt penalty multiplier).
|
|
936
|
+
*/
|
|
937
|
+
'numCleanAlts': number;
|
|
938
|
+
/**
|
|
939
|
+
* Fraction of this player\'s connections flagged > 50% VPN-positive. Range 0..1.
|
|
940
|
+
*/
|
|
941
|
+
'vpnConnectionRatio': number;
|
|
942
|
+
/**
|
|
943
|
+
* Active PROPAGATED player_punishment links on this player (i.e. aggressive-mode propagation).
|
|
944
|
+
*/
|
|
945
|
+
'numPropagatedLinks': number;
|
|
946
|
+
}
|
|
947
|
+
/**
|
|
948
|
+
* One trust factor snapshot for a player on a given day.
|
|
949
|
+
*/
|
|
950
|
+
export interface AdminTrustFactorHistoryEntry {
|
|
951
|
+
/**
|
|
952
|
+
* UTC date the snapshot was taken
|
|
953
|
+
*/
|
|
954
|
+
'snapshotDate': string;
|
|
955
|
+
/**
|
|
956
|
+
* Trust factor (0–100, higher = more trusted) on that day
|
|
957
|
+
*/
|
|
958
|
+
'trustFactor': number;
|
|
959
|
+
}
|
|
960
|
+
/**
|
|
961
|
+
* Trust factor impact preview for a player-targeted punishment.
|
|
962
|
+
*/
|
|
963
|
+
export interface AdminTrustFactorImpact {
|
|
964
|
+
/**
|
|
965
|
+
* Trust factor right now (0-100, higher = more trusted). Computed by compute_trust_factor in the database.
|
|
966
|
+
*/
|
|
967
|
+
'currentTrustFactor': number;
|
|
968
|
+
/**
|
|
969
|
+
* 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.
|
|
970
|
+
*/
|
|
971
|
+
'projectedTrustFactor': number;
|
|
972
|
+
}
|
|
973
|
+
/**
|
|
974
|
+
* Partial update for a punishment. Only reason / notes / expiresAt may be edited — severity is intentionally immutable to keep the punishment score deterministic.
|
|
975
|
+
*/
|
|
976
|
+
export interface AdminUpdatePunishmentRequest {
|
|
977
|
+
/**
|
|
978
|
+
* Replace the visible reason. Min 3, max 500 characters.
|
|
979
|
+
*/
|
|
980
|
+
'reason'?: string | null;
|
|
981
|
+
/**
|
|
982
|
+
* Replace the internal admin notes. Null leaves them untouched; empty string clears them.
|
|
983
|
+
*/
|
|
984
|
+
'notes'?: string | null;
|
|
985
|
+
/**
|
|
986
|
+
* 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.
|
|
987
|
+
*/
|
|
988
|
+
'expiresAt'?: string | null;
|
|
989
|
+
/**
|
|
990
|
+
* When true, clears expiresAt (makes the punishment permanent). Takes precedence over expiresAt.
|
|
991
|
+
*/
|
|
992
|
+
'forcePermanent'?: boolean | null;
|
|
993
|
+
}
|
|
994
|
+
/**
|
|
995
|
+
* A single entry in a player\'s username history
|
|
996
|
+
*/
|
|
997
|
+
export interface AdminUsernameHistoryEntry {
|
|
998
|
+
/**
|
|
999
|
+
* The username at this point in time
|
|
1000
|
+
*/
|
|
1001
|
+
'username': string;
|
|
509
1002
|
/**
|
|
510
1003
|
* When this username was first observed (ISO-8601)
|
|
511
1004
|
*/
|
|
@@ -551,9 +1044,18 @@ export interface ConnectionGetConnectionDetailsResponse {
|
|
|
551
1044
|
*/
|
|
552
1045
|
'ipAddress': string;
|
|
553
1046
|
/**
|
|
554
|
-
*
|
|
1047
|
+
* City reported by the first VPN provider that returned one for this IP. Null for localhost / private IPs or when no provider returned a city.
|
|
1048
|
+
*/
|
|
1049
|
+
'city'?: string | null;
|
|
1050
|
+
/**
|
|
1051
|
+
* Country code reported by the first VPN provider that returned one (ISO 3166-1 alpha-2 or alpha-3 depending on provider).
|
|
1052
|
+
*/
|
|
1053
|
+
'country'?: string | null;
|
|
1054
|
+
/**
|
|
1055
|
+
* **DEPRECATED.** Combined city + country string retained for clients pinned to ≤ 3.6.0. Reads as \"City, COUNTRY\" when both are present, the available one when only one is, null when neither is. Use {@link #city} and {@link #country} directly.
|
|
1056
|
+
* @deprecated
|
|
555
1057
|
*/
|
|
556
|
-
'approximateLocation'
|
|
1058
|
+
'approximateLocation'?: string | null;
|
|
557
1059
|
/**
|
|
558
1060
|
* Confidence score representing the percentage of VPN detection services that flagged this IP as suspicious. Range: 0.0 (clean) to 100.0 (definitely VPN/proxy).
|
|
559
1061
|
*/
|
|
@@ -588,7 +1090,7 @@ export interface ConnectionGetConnectionDetailsResponse {
|
|
|
588
1090
|
'connectionResult'?: ConnectionResult | null;
|
|
589
1091
|
}
|
|
590
1092
|
/**
|
|
591
|
-
*
|
|
1093
|
+
* Final allow/deny verdict plus formatted kick message if denied.
|
|
592
1094
|
*/
|
|
593
1095
|
export interface ConnectionResult {
|
|
594
1096
|
'code': ConnectionResultResultCode;
|
|
@@ -618,6 +1120,60 @@ export interface CreateBypassRequest {
|
|
|
618
1120
|
*/
|
|
619
1121
|
'expiresAtEpoch': number;
|
|
620
1122
|
}
|
|
1123
|
+
/**
|
|
1124
|
+
* Game-server-issued peer report. Sent when a player runs /report in-game. A single report can target multiple players (\"these 3 were griefing together\"); the same reporter resubmitting the EXACT same target set while the prior report is unresolved updates it in place (response\'s deduplicated = true). Any different target set, even an overlapping one, creates a new report.
|
|
1125
|
+
*/
|
|
1126
|
+
export interface CreateReportRequest {
|
|
1127
|
+
/**
|
|
1128
|
+
* Reporter\'s UUID (the player who ran /report)
|
|
1129
|
+
*/
|
|
1130
|
+
'reporterUuid': string;
|
|
1131
|
+
/**
|
|
1132
|
+
* One or more reported player UUIDs. Duplicates within the list are de-duped server-side. The reporter MUST NOT appear in this list.
|
|
1133
|
+
*/
|
|
1134
|
+
'reportedUuids': Array<string>;
|
|
1135
|
+
/**
|
|
1136
|
+
* Category of misconduct. Coarse on purpose — staff refine in triage.
|
|
1137
|
+
*/
|
|
1138
|
+
'category': ReportCategory;
|
|
1139
|
+
/**
|
|
1140
|
+
* Free-form description from the reporter (1–500 chars)
|
|
1141
|
+
*/
|
|
1142
|
+
'reason': string;
|
|
1143
|
+
}
|
|
1144
|
+
/**
|
|
1145
|
+
* Acknowledgement that a peer report was accepted by the API.
|
|
1146
|
+
*/
|
|
1147
|
+
export interface CreateReportResponse {
|
|
1148
|
+
/**
|
|
1149
|
+
* Server-assigned report id
|
|
1150
|
+
*/
|
|
1151
|
+
'reportId': number;
|
|
1152
|
+
/**
|
|
1153
|
+
* True if an active report from this reporter against this target already existed; the row\'s reason/category were updated in place. False on first report.
|
|
1154
|
+
*/
|
|
1155
|
+
'deduplicated': boolean;
|
|
1156
|
+
}
|
|
1157
|
+
export interface CursoredPageAdminAuditLogEntry {
|
|
1158
|
+
'content': Array<AdminAuditLogEntry>;
|
|
1159
|
+
'pageable': Pageable;
|
|
1160
|
+
'pageNumber': number;
|
|
1161
|
+
'offset': number;
|
|
1162
|
+
'size': number;
|
|
1163
|
+
'empty': boolean;
|
|
1164
|
+
'numberOfElements': number;
|
|
1165
|
+
'totalSize': number;
|
|
1166
|
+
'totalPages': number;
|
|
1167
|
+
'cursors': Array<object>;
|
|
1168
|
+
}
|
|
1169
|
+
export interface CursoredPageable {
|
|
1170
|
+
'orderBy': Array<SortOrder>;
|
|
1171
|
+
'number': number;
|
|
1172
|
+
'size': number;
|
|
1173
|
+
'mode': PageableMode;
|
|
1174
|
+
'sort': Sort;
|
|
1175
|
+
'backward': boolean;
|
|
1176
|
+
}
|
|
621
1177
|
export declare const GameType: {
|
|
622
1178
|
readonly Rotj: "ROTJ";
|
|
623
1179
|
readonly Legacy: "LEGACY";
|
|
@@ -625,7 +1181,163 @@ export declare const GameType: {
|
|
|
625
1181
|
};
|
|
626
1182
|
export type GameType = typeof GameType[keyof typeof GameType];
|
|
627
1183
|
/**
|
|
628
|
-
*
|
|
1184
|
+
* Current lifecycle state.
|
|
1185
|
+
*/
|
|
1186
|
+
export declare const JobStatus: {
|
|
1187
|
+
readonly Queued: "QUEUED";
|
|
1188
|
+
readonly Running: "RUNNING";
|
|
1189
|
+
readonly Completed: "COMPLETED";
|
|
1190
|
+
readonly Failed: "FAILED";
|
|
1191
|
+
readonly Cancelled: "CANCELLED";
|
|
1192
|
+
};
|
|
1193
|
+
export type JobStatus = typeof JobStatus[keyof typeof JobStatus];
|
|
1194
|
+
export interface PageAdminAltAccount {
|
|
1195
|
+
'content': Array<AdminAltAccount>;
|
|
1196
|
+
'pageable': Pageable;
|
|
1197
|
+
'pageNumber': number;
|
|
1198
|
+
'offset': number;
|
|
1199
|
+
'size': number;
|
|
1200
|
+
'empty': boolean;
|
|
1201
|
+
'numberOfElements': number;
|
|
1202
|
+
'totalSize': number;
|
|
1203
|
+
'totalPages': number;
|
|
1204
|
+
}
|
|
1205
|
+
export interface PageAdminAltExemption {
|
|
1206
|
+
'content': Array<AdminAltExemption>;
|
|
1207
|
+
'pageable': Pageable;
|
|
1208
|
+
'pageNumber': number;
|
|
1209
|
+
'offset': number;
|
|
1210
|
+
'size': number;
|
|
1211
|
+
'empty': boolean;
|
|
1212
|
+
'numberOfElements': number;
|
|
1213
|
+
'totalSize': number;
|
|
1214
|
+
'totalPages': number;
|
|
1215
|
+
}
|
|
1216
|
+
export interface PageAdminAsyncJob {
|
|
1217
|
+
'content': Array<AdminAsyncJob>;
|
|
1218
|
+
'pageable': Pageable;
|
|
1219
|
+
'pageNumber': number;
|
|
1220
|
+
'offset': number;
|
|
1221
|
+
'size': number;
|
|
1222
|
+
'empty': boolean;
|
|
1223
|
+
'numberOfElements': number;
|
|
1224
|
+
'totalSize': number;
|
|
1225
|
+
'totalPages': number;
|
|
1226
|
+
}
|
|
1227
|
+
export interface PageAdminAuditLogEntry {
|
|
1228
|
+
'content': Array<AdminAuditLogEntry>;
|
|
1229
|
+
'pageable': Pageable;
|
|
1230
|
+
'pageNumber': number;
|
|
1231
|
+
'offset': number;
|
|
1232
|
+
'size': number;
|
|
1233
|
+
'empty': boolean;
|
|
1234
|
+
'numberOfElements': number;
|
|
1235
|
+
'totalSize': number;
|
|
1236
|
+
'totalPages': number;
|
|
1237
|
+
}
|
|
1238
|
+
export interface PageAdminDashboardConnectionResponse {
|
|
1239
|
+
'content': Array<AdminDashboardConnectionResponse>;
|
|
1240
|
+
'pageable': Pageable;
|
|
1241
|
+
'pageNumber': number;
|
|
1242
|
+
'offset': number;
|
|
1243
|
+
'size': number;
|
|
1244
|
+
'empty': boolean;
|
|
1245
|
+
'numberOfElements': number;
|
|
1246
|
+
'totalSize': number;
|
|
1247
|
+
'totalPages': number;
|
|
1248
|
+
}
|
|
1249
|
+
export interface PageAdminPlayerNote {
|
|
1250
|
+
'content': Array<AdminPlayerNote>;
|
|
1251
|
+
'pageable': Pageable;
|
|
1252
|
+
'pageNumber': number;
|
|
1253
|
+
'offset': number;
|
|
1254
|
+
'size': number;
|
|
1255
|
+
'empty': boolean;
|
|
1256
|
+
'numberOfElements': number;
|
|
1257
|
+
'totalSize': number;
|
|
1258
|
+
'totalPages': number;
|
|
1259
|
+
}
|
|
1260
|
+
export interface PageAdminPlayerPunishmentResponse {
|
|
1261
|
+
'content': Array<AdminPlayerPunishmentResponse>;
|
|
1262
|
+
'pageable': Pageable;
|
|
1263
|
+
'pageNumber': number;
|
|
1264
|
+
'offset': number;
|
|
1265
|
+
'size': number;
|
|
1266
|
+
'empty': boolean;
|
|
1267
|
+
'numberOfElements': number;
|
|
1268
|
+
'totalSize': number;
|
|
1269
|
+
'totalPages': number;
|
|
1270
|
+
}
|
|
1271
|
+
export interface PageAdminPlayerReport {
|
|
1272
|
+
'content': Array<AdminPlayerReport>;
|
|
1273
|
+
'pageable': Pageable;
|
|
1274
|
+
'pageNumber': number;
|
|
1275
|
+
'offset': number;
|
|
1276
|
+
'size': number;
|
|
1277
|
+
'empty': boolean;
|
|
1278
|
+
'numberOfElements': number;
|
|
1279
|
+
'totalSize': number;
|
|
1280
|
+
'totalPages': number;
|
|
1281
|
+
}
|
|
1282
|
+
export interface PageAdminPlayerSession {
|
|
1283
|
+
'content': Array<AdminPlayerSession>;
|
|
1284
|
+
'pageable': Pageable;
|
|
1285
|
+
'pageNumber': number;
|
|
1286
|
+
'offset': number;
|
|
1287
|
+
'size': number;
|
|
1288
|
+
'empty': boolean;
|
|
1289
|
+
'numberOfElements': number;
|
|
1290
|
+
'totalSize': number;
|
|
1291
|
+
'totalPages': number;
|
|
1292
|
+
}
|
|
1293
|
+
export interface PageAdminPlayerSummary {
|
|
1294
|
+
'content': Array<AdminPlayerSummary>;
|
|
1295
|
+
'pageable': Pageable;
|
|
1296
|
+
'pageNumber': number;
|
|
1297
|
+
'offset': number;
|
|
1298
|
+
'size': number;
|
|
1299
|
+
'empty': boolean;
|
|
1300
|
+
'numberOfElements': number;
|
|
1301
|
+
'totalSize': number;
|
|
1302
|
+
'totalPages': number;
|
|
1303
|
+
}
|
|
1304
|
+
export interface PageAdminPunishmentListItem {
|
|
1305
|
+
'content': Array<AdminPunishmentListItem>;
|
|
1306
|
+
'pageable': Pageable;
|
|
1307
|
+
'pageNumber': number;
|
|
1308
|
+
'offset': number;
|
|
1309
|
+
'size': number;
|
|
1310
|
+
'empty': boolean;
|
|
1311
|
+
'numberOfElements': number;
|
|
1312
|
+
'totalSize': number;
|
|
1313
|
+
'totalPages': number;
|
|
1314
|
+
}
|
|
1315
|
+
export interface PagePunishmentGetPunishmentResponse {
|
|
1316
|
+
'content': Array<PunishmentGetPunishmentResponse>;
|
|
1317
|
+
'pageable': Pageable;
|
|
1318
|
+
'pageNumber': number;
|
|
1319
|
+
'offset': number;
|
|
1320
|
+
'size': number;
|
|
1321
|
+
'empty': boolean;
|
|
1322
|
+
'numberOfElements': number;
|
|
1323
|
+
'totalSize': number;
|
|
1324
|
+
'totalPages': number;
|
|
1325
|
+
}
|
|
1326
|
+
export interface Pageable {
|
|
1327
|
+
'orderBy': Array<SortOrder>;
|
|
1328
|
+
'number': number;
|
|
1329
|
+
'size': number;
|
|
1330
|
+
'mode': PageableMode;
|
|
1331
|
+
'sort': Sort;
|
|
1332
|
+
}
|
|
1333
|
+
export declare const PageableMode: {
|
|
1334
|
+
readonly CursorNext: "CURSOR_NEXT";
|
|
1335
|
+
readonly CursorPrevious: "CURSOR_PREVIOUS";
|
|
1336
|
+
readonly Offset: "OFFSET";
|
|
1337
|
+
};
|
|
1338
|
+
export type PageableMode = typeof PageableMode[keyof typeof PageableMode];
|
|
1339
|
+
/**
|
|
1340
|
+
* Player information including join history, tracking data, and trust factor
|
|
629
1341
|
*/
|
|
630
1342
|
export interface PlayerGetPlayerInformation {
|
|
631
1343
|
/**
|
|
@@ -637,14 +1349,123 @@ export interface PlayerGetPlayerInformation {
|
|
|
637
1349
|
*/
|
|
638
1350
|
'firstLogin': string;
|
|
639
1351
|
/**
|
|
640
|
-
*
|
|
1352
|
+
* 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.
|
|
1353
|
+
*/
|
|
1354
|
+
'trustFactor': number;
|
|
1355
|
+
/**
|
|
1356
|
+
* **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.
|
|
1357
|
+
* @deprecated
|
|
641
1358
|
*/
|
|
642
1359
|
'punishmentPointsRaw': number;
|
|
643
1360
|
/**
|
|
644
|
-
*
|
|
1361
|
+
* **DEPRECATED.** See {@link #punishmentPointsRaw}. Always 0.0 — use trustFactor.
|
|
1362
|
+
* @deprecated
|
|
645
1363
|
*/
|
|
646
1364
|
'punishmentPointsPercent': number;
|
|
647
1365
|
}
|
|
1366
|
+
/**
|
|
1367
|
+
* Close the active player session for a (playerUuid, serverSessionId) pair. No-op if no active session is found.
|
|
1368
|
+
*/
|
|
1369
|
+
export interface PlayerSessionEndRequest {
|
|
1370
|
+
/**
|
|
1371
|
+
* Player Minecraft UUID
|
|
1372
|
+
*/
|
|
1373
|
+
'playerUuid': string;
|
|
1374
|
+
/**
|
|
1375
|
+
* Server session id the player was on
|
|
1376
|
+
*/
|
|
1377
|
+
'serverSessionId': string;
|
|
1378
|
+
}
|
|
1379
|
+
/**
|
|
1380
|
+
* Unified player-join request. Runs the full authorization check (VPN, bypass, punishments) and conditionally opens a player_session for the allowed players.
|
|
1381
|
+
*/
|
|
1382
|
+
export interface PlayerSessionStartRequest {
|
|
1383
|
+
/**
|
|
1384
|
+
* Player Minecraft UUID
|
|
1385
|
+
*/
|
|
1386
|
+
'playerUuid': string;
|
|
1387
|
+
/**
|
|
1388
|
+
* Server session id this player is on (from /v1/servers register)
|
|
1389
|
+
*/
|
|
1390
|
+
'serverSessionId': string;
|
|
1391
|
+
/**
|
|
1392
|
+
* IPv4 address the player is connecting from
|
|
1393
|
+
*/
|
|
1394
|
+
'ip': string;
|
|
1395
|
+
/**
|
|
1396
|
+
* When true, bypass any cached VPN-check result and re-run all detection services. Useful when debugging a specific connection. Defaults to false.
|
|
1397
|
+
*/
|
|
1398
|
+
'forceRecheck'?: boolean | null;
|
|
1399
|
+
}
|
|
1400
|
+
/**
|
|
1401
|
+
* Result of POST /v1/player-session/start. Always populated; session fields are null when the player was not allowed in.
|
|
1402
|
+
*/
|
|
1403
|
+
export interface PlayerSessionStartResponse {
|
|
1404
|
+
/**
|
|
1405
|
+
* Session row id. Null when the join was not allowed.
|
|
1406
|
+
*/
|
|
1407
|
+
'sessionId'?: string | null;
|
|
1408
|
+
/**
|
|
1409
|
+
* 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.
|
|
1410
|
+
*/
|
|
1411
|
+
'startedAt'?: string | null;
|
|
1412
|
+
/**
|
|
1413
|
+
* Player Minecraft UUID
|
|
1414
|
+
*/
|
|
1415
|
+
'playerUuid': string;
|
|
1416
|
+
/**
|
|
1417
|
+
* Server session id the join applies to
|
|
1418
|
+
*/
|
|
1419
|
+
'serverSessionId': string;
|
|
1420
|
+
/**
|
|
1421
|
+
* Final allow/deny verdict plus formatted kick message if denied.
|
|
1422
|
+
*/
|
|
1423
|
+
'connectionResult': ConnectionResult;
|
|
1424
|
+
/**
|
|
1425
|
+
* Player\'s connecting IP, echoed from the request
|
|
1426
|
+
*/
|
|
1427
|
+
'ipAddress': string;
|
|
1428
|
+
/**
|
|
1429
|
+
* City reported by the first VPN provider that returned one. Null when no provider has city data (private IPs, localhost, sparse providers).
|
|
1430
|
+
*/
|
|
1431
|
+
'city'?: string | null;
|
|
1432
|
+
/**
|
|
1433
|
+
* Country code reported by the first VPN provider that returned one (ISO 3166-1 alpha-2 or alpha-3 depending on provider).
|
|
1434
|
+
*/
|
|
1435
|
+
'country'?: string | null;
|
|
1436
|
+
/**
|
|
1437
|
+
* Confidence score (0.0–100.0) representing what fraction of VPN detection services flagged this IP as suspicious.
|
|
1438
|
+
*/
|
|
1439
|
+
'percentPositive': number;
|
|
1440
|
+
/**
|
|
1441
|
+
* Total VPN detection services successfully queried on this IP
|
|
1442
|
+
*/
|
|
1443
|
+
'numberOfChecks': number;
|
|
1444
|
+
/**
|
|
1445
|
+
* Whether this IP has an active administrative VPN bypass
|
|
1446
|
+
*/
|
|
1447
|
+
'isBypassed': boolean;
|
|
1448
|
+
/**
|
|
1449
|
+
* Bypass expiration timestamp; null if not bypassed or bypass is permanent.
|
|
1450
|
+
*/
|
|
1451
|
+
'bypassedUntil'?: string | null;
|
|
1452
|
+
/**
|
|
1453
|
+
* Per-provider VPN check results, useful for the admin UI / debugging.
|
|
1454
|
+
*/
|
|
1455
|
+
'checkResults'?: Array<AdminConnectionCheckResult>;
|
|
1456
|
+
/**
|
|
1457
|
+
* Player info (first-join flag, first login, punishment score). Null only in edge cases where the player record could not be loaded.
|
|
1458
|
+
*/
|
|
1459
|
+
'playerInformation'?: PlayerGetPlayerInformation | null;
|
|
1460
|
+
/**
|
|
1461
|
+
* Active (non-expired, non-revoked) punishments on this player, including any that were just propagated by the join check.
|
|
1462
|
+
*/
|
|
1463
|
+
'activePunishments': Array<PunishmentGetPunishmentResponse>;
|
|
1464
|
+
/**
|
|
1465
|
+
* 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.
|
|
1466
|
+
*/
|
|
1467
|
+
'sessionStats': AdminPlayerSessionStats;
|
|
1468
|
+
}
|
|
648
1469
|
/**
|
|
649
1470
|
* Punishment information including reason, type, creator, and expiration
|
|
650
1471
|
*/
|
|
@@ -717,11 +1538,22 @@ export interface PunishmentSeveritiesResponseSeverityInfo {
|
|
|
717
1538
|
*/
|
|
718
1539
|
'durationSeconds': number;
|
|
719
1540
|
}
|
|
1541
|
+
/**
|
|
1542
|
+
* 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.
|
|
1543
|
+
*/
|
|
1544
|
+
export declare const PunishmentSource: {
|
|
1545
|
+
readonly Direct: "DIRECT";
|
|
1546
|
+
readonly Propagated: "PROPAGATED";
|
|
1547
|
+
};
|
|
1548
|
+
export type PunishmentSource = typeof PunishmentSource[keyof typeof PunishmentSource];
|
|
720
1549
|
export declare const PunishmentTargetType: {
|
|
721
1550
|
readonly Player: "PLAYER";
|
|
722
1551
|
readonly Connection: "CONNECTION";
|
|
723
1552
|
};
|
|
724
1553
|
export type PunishmentTargetType = typeof PunishmentTargetType[keyof typeof PunishmentTargetType];
|
|
1554
|
+
/**
|
|
1555
|
+
* Type of punishment
|
|
1556
|
+
*/
|
|
725
1557
|
export declare const PunishmentType: {
|
|
726
1558
|
readonly Ban: "BAN";
|
|
727
1559
|
readonly Mute: "MUTE";
|
|
@@ -740,6 +1572,17 @@ export declare const Region: {
|
|
|
740
1572
|
readonly Au: "AU";
|
|
741
1573
|
};
|
|
742
1574
|
export type Region = typeof Region[keyof typeof Region];
|
|
1575
|
+
/**
|
|
1576
|
+
* Category of misconduct. Coarse on purpose — staff refine in triage.
|
|
1577
|
+
*/
|
|
1578
|
+
export declare const ReportCategory: {
|
|
1579
|
+
readonly Cheating: "CHEATING";
|
|
1580
|
+
readonly Harassment: "HARASSMENT";
|
|
1581
|
+
readonly ChatAbuse: "CHAT_ABUSE";
|
|
1582
|
+
readonly Griefing: "GRIEFING";
|
|
1583
|
+
readonly Other: "OTHER";
|
|
1584
|
+
};
|
|
1585
|
+
export type ReportCategory = typeof ReportCategory[keyof typeof ReportCategory];
|
|
743
1586
|
/**
|
|
744
1587
|
* Search kind — PLAYER for UUID/username searches, IP for IP address searches
|
|
745
1588
|
*/
|
|
@@ -764,6 +1607,128 @@ export interface ServerSessionDTO {
|
|
|
764
1607
|
'endedAt'?: string | null;
|
|
765
1608
|
'online': boolean;
|
|
766
1609
|
}
|
|
1610
|
+
export interface SliceAdminAltAccount {
|
|
1611
|
+
'content': Array<AdminAltAccount>;
|
|
1612
|
+
'pageable': Pageable;
|
|
1613
|
+
'pageNumber': number;
|
|
1614
|
+
'offset': number;
|
|
1615
|
+
'size': number;
|
|
1616
|
+
'empty': boolean;
|
|
1617
|
+
'numberOfElements': number;
|
|
1618
|
+
}
|
|
1619
|
+
export interface SliceAdminAltExemption {
|
|
1620
|
+
'content': Array<AdminAltExemption>;
|
|
1621
|
+
'pageable': Pageable;
|
|
1622
|
+
'pageNumber': number;
|
|
1623
|
+
'offset': number;
|
|
1624
|
+
'size': number;
|
|
1625
|
+
'empty': boolean;
|
|
1626
|
+
'numberOfElements': number;
|
|
1627
|
+
}
|
|
1628
|
+
export interface SliceAdminAsyncJob {
|
|
1629
|
+
'content': Array<AdminAsyncJob>;
|
|
1630
|
+
'pageable': Pageable;
|
|
1631
|
+
'pageNumber': number;
|
|
1632
|
+
'offset': number;
|
|
1633
|
+
'size': number;
|
|
1634
|
+
'empty': boolean;
|
|
1635
|
+
'numberOfElements': number;
|
|
1636
|
+
}
|
|
1637
|
+
export interface SliceAdminAuditLogEntry {
|
|
1638
|
+
'content': Array<AdminAuditLogEntry>;
|
|
1639
|
+
'pageable': Pageable;
|
|
1640
|
+
'pageNumber': number;
|
|
1641
|
+
'offset': number;
|
|
1642
|
+
'size': number;
|
|
1643
|
+
'empty': boolean;
|
|
1644
|
+
'numberOfElements': number;
|
|
1645
|
+
}
|
|
1646
|
+
export interface SliceAdminDashboardConnectionResponse {
|
|
1647
|
+
'content': Array<AdminDashboardConnectionResponse>;
|
|
1648
|
+
'pageable': Pageable;
|
|
1649
|
+
'pageNumber': number;
|
|
1650
|
+
'offset': number;
|
|
1651
|
+
'size': number;
|
|
1652
|
+
'empty': boolean;
|
|
1653
|
+
'numberOfElements': number;
|
|
1654
|
+
}
|
|
1655
|
+
export interface SliceAdminPlayerNote {
|
|
1656
|
+
'content': Array<AdminPlayerNote>;
|
|
1657
|
+
'pageable': Pageable;
|
|
1658
|
+
'pageNumber': number;
|
|
1659
|
+
'offset': number;
|
|
1660
|
+
'size': number;
|
|
1661
|
+
'empty': boolean;
|
|
1662
|
+
'numberOfElements': number;
|
|
1663
|
+
}
|
|
1664
|
+
export interface SliceAdminPlayerPunishmentResponse {
|
|
1665
|
+
'content': Array<AdminPlayerPunishmentResponse>;
|
|
1666
|
+
'pageable': Pageable;
|
|
1667
|
+
'pageNumber': number;
|
|
1668
|
+
'offset': number;
|
|
1669
|
+
'size': number;
|
|
1670
|
+
'empty': boolean;
|
|
1671
|
+
'numberOfElements': number;
|
|
1672
|
+
}
|
|
1673
|
+
export interface SliceAdminPlayerReport {
|
|
1674
|
+
'content': Array<AdminPlayerReport>;
|
|
1675
|
+
'pageable': Pageable;
|
|
1676
|
+
'pageNumber': number;
|
|
1677
|
+
'offset': number;
|
|
1678
|
+
'size': number;
|
|
1679
|
+
'empty': boolean;
|
|
1680
|
+
'numberOfElements': number;
|
|
1681
|
+
}
|
|
1682
|
+
export interface SliceAdminPlayerSession {
|
|
1683
|
+
'content': Array<AdminPlayerSession>;
|
|
1684
|
+
'pageable': Pageable;
|
|
1685
|
+
'pageNumber': number;
|
|
1686
|
+
'offset': number;
|
|
1687
|
+
'size': number;
|
|
1688
|
+
'empty': boolean;
|
|
1689
|
+
'numberOfElements': number;
|
|
1690
|
+
}
|
|
1691
|
+
export interface SliceAdminPlayerSummary {
|
|
1692
|
+
'content': Array<AdminPlayerSummary>;
|
|
1693
|
+
'pageable': Pageable;
|
|
1694
|
+
'pageNumber': number;
|
|
1695
|
+
'offset': number;
|
|
1696
|
+
'size': number;
|
|
1697
|
+
'empty': boolean;
|
|
1698
|
+
'numberOfElements': number;
|
|
1699
|
+
}
|
|
1700
|
+
export interface SliceAdminPunishmentListItem {
|
|
1701
|
+
'content': Array<AdminPunishmentListItem>;
|
|
1702
|
+
'pageable': Pageable;
|
|
1703
|
+
'pageNumber': number;
|
|
1704
|
+
'offset': number;
|
|
1705
|
+
'size': number;
|
|
1706
|
+
'empty': boolean;
|
|
1707
|
+
'numberOfElements': number;
|
|
1708
|
+
}
|
|
1709
|
+
export interface SlicePunishmentGetPunishmentResponse {
|
|
1710
|
+
'content': Array<PunishmentGetPunishmentResponse>;
|
|
1711
|
+
'pageable': Pageable;
|
|
1712
|
+
'pageNumber': number;
|
|
1713
|
+
'offset': number;
|
|
1714
|
+
'size': number;
|
|
1715
|
+
'empty': boolean;
|
|
1716
|
+
'numberOfElements': number;
|
|
1717
|
+
}
|
|
1718
|
+
export interface Sort {
|
|
1719
|
+
'orderBy': Array<SortOrder>;
|
|
1720
|
+
}
|
|
1721
|
+
export interface SortOrder {
|
|
1722
|
+
'ignoreCase': boolean;
|
|
1723
|
+
'direction': SortOrderDirection;
|
|
1724
|
+
'property': string;
|
|
1725
|
+
'ascending': boolean;
|
|
1726
|
+
}
|
|
1727
|
+
export declare const SortOrderDirection: {
|
|
1728
|
+
readonly Asc: "ASC";
|
|
1729
|
+
readonly Desc: "DESC";
|
|
1730
|
+
};
|
|
1731
|
+
export type SortOrderDirection = typeof SortOrderDirection[keyof typeof SortOrderDirection];
|
|
767
1732
|
export interface TokenRequest {
|
|
768
1733
|
'grant_type'?: string | null;
|
|
769
1734
|
'client_id'?: string | null;
|
|
@@ -791,27 +1756,143 @@ export interface UserProfileResponse {
|
|
|
791
1756
|
'discordRoles': Array<string>;
|
|
792
1757
|
}
|
|
793
1758
|
/**
|
|
794
|
-
*
|
|
1759
|
+
* AdminAuditLogApi - axios parameter creator
|
|
795
1760
|
*/
|
|
796
|
-
export declare const
|
|
1761
|
+
export declare const AdminAuditLogApiAxiosParamCreator: (configuration?: Configuration) => {
|
|
797
1762
|
/**
|
|
798
|
-
*
|
|
799
|
-
* @summary
|
|
800
|
-
* @param {
|
|
1763
|
+
* Paginated audit-log search. All filter parameters are optional; an empty filter set returns the most recent rows across the system. Sorted newest-first.
|
|
1764
|
+
* @summary Search the admin audit log
|
|
1765
|
+
* @param {Pageable} pageable
|
|
1766
|
+
* @param {string | null} [actor] Filter to actions performed by this Discord username (case-sensitive exact match)
|
|
1767
|
+
* @param {string | null} [action] Filter to a specific action verb (e.g. REVOKE_PROPAGATED_LINK, SET_AGGRESSIVE_MODE_IMMUNITY)
|
|
1768
|
+
* @param {string | null} [targetType] Filter to a specific target type (e.g. PLAYER, PUNISHMENT, PLAYER_PUNISHMENT)
|
|
1769
|
+
* @param {string | null} [targetId] Filter to a specific target id (paired with targetType for narrowing)
|
|
801
1770
|
* @param {*} [options] Override http request option.
|
|
802
1771
|
* @throws {RequiredError}
|
|
803
1772
|
*/
|
|
804
|
-
|
|
1773
|
+
search: (pageable: Pageable, actor?: string | null, action?: string | null, targetType?: string | null, targetId?: string | null, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
805
1774
|
/**
|
|
806
|
-
*
|
|
807
|
-
* @summary
|
|
808
|
-
* @param {
|
|
1775
|
+
* Cursor-based companion to GET /admin/audit-log. Preferred for the admin UI\'s infinite-scroll view of the audit log because the SQL plan stays flat as the table grows — offset pagination degrades linearly with depth, this does not. Pass the {@code cursor} returned in the previous response to get the next page; omit it for the first page.
|
|
1776
|
+
* @summary Cursor-paginated audit-log search (infinite scroll)
|
|
1777
|
+
* @param {CursoredPageable} pageable
|
|
1778
|
+
* @param {string | null} [actor]
|
|
1779
|
+
* @param {string | null} [action]
|
|
1780
|
+
* @param {string | null} [targetType]
|
|
1781
|
+
* @param {string | null} [targetId]
|
|
809
1782
|
* @param {*} [options] Override http request option.
|
|
810
1783
|
* @throws {RequiredError}
|
|
811
1784
|
*/
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
1785
|
+
searchCursor: (pageable: CursoredPageable, actor?: string | null, action?: string | null, targetType?: string | null, targetId?: string | null, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
1786
|
+
};
|
|
1787
|
+
/**
|
|
1788
|
+
* AdminAuditLogApi - functional programming interface
|
|
1789
|
+
*/
|
|
1790
|
+
export declare const AdminAuditLogApiFp: (configuration?: Configuration) => {
|
|
1791
|
+
/**
|
|
1792
|
+
* Paginated audit-log search. All filter parameters are optional; an empty filter set returns the most recent rows across the system. Sorted newest-first.
|
|
1793
|
+
* @summary Search the admin audit log
|
|
1794
|
+
* @param {Pageable} pageable
|
|
1795
|
+
* @param {string | null} [actor] Filter to actions performed by this Discord username (case-sensitive exact match)
|
|
1796
|
+
* @param {string | null} [action] Filter to a specific action verb (e.g. REVOKE_PROPAGATED_LINK, SET_AGGRESSIVE_MODE_IMMUNITY)
|
|
1797
|
+
* @param {string | null} [targetType] Filter to a specific target type (e.g. PLAYER, PUNISHMENT, PLAYER_PUNISHMENT)
|
|
1798
|
+
* @param {string | null} [targetId] Filter to a specific target id (paired with targetType for narrowing)
|
|
1799
|
+
* @param {*} [options] Override http request option.
|
|
1800
|
+
* @throws {RequiredError}
|
|
1801
|
+
*/
|
|
1802
|
+
search(pageable: Pageable, actor?: string | null, action?: string | null, targetType?: string | null, targetId?: string | null, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PageAdminAuditLogEntry>>;
|
|
1803
|
+
/**
|
|
1804
|
+
* Cursor-based companion to GET /admin/audit-log. Preferred for the admin UI\'s infinite-scroll view of the audit log because the SQL plan stays flat as the table grows — offset pagination degrades linearly with depth, this does not. Pass the {@code cursor} returned in the previous response to get the next page; omit it for the first page.
|
|
1805
|
+
* @summary Cursor-paginated audit-log search (infinite scroll)
|
|
1806
|
+
* @param {CursoredPageable} pageable
|
|
1807
|
+
* @param {string | null} [actor]
|
|
1808
|
+
* @param {string | null} [action]
|
|
1809
|
+
* @param {string | null} [targetType]
|
|
1810
|
+
* @param {string | null} [targetId]
|
|
1811
|
+
* @param {*} [options] Override http request option.
|
|
1812
|
+
* @throws {RequiredError}
|
|
1813
|
+
*/
|
|
1814
|
+
searchCursor(pageable: CursoredPageable, actor?: string | null, action?: string | null, targetType?: string | null, targetId?: string | null, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CursoredPageAdminAuditLogEntry>>;
|
|
1815
|
+
};
|
|
1816
|
+
/**
|
|
1817
|
+
* AdminAuditLogApi - factory interface
|
|
1818
|
+
*/
|
|
1819
|
+
export declare const AdminAuditLogApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
|
|
1820
|
+
/**
|
|
1821
|
+
* Paginated audit-log search. All filter parameters are optional; an empty filter set returns the most recent rows across the system. Sorted newest-first.
|
|
1822
|
+
* @summary Search the admin audit log
|
|
1823
|
+
* @param {Pageable} pageable
|
|
1824
|
+
* @param {string | null} [actor] Filter to actions performed by this Discord username (case-sensitive exact match)
|
|
1825
|
+
* @param {string | null} [action] Filter to a specific action verb (e.g. REVOKE_PROPAGATED_LINK, SET_AGGRESSIVE_MODE_IMMUNITY)
|
|
1826
|
+
* @param {string | null} [targetType] Filter to a specific target type (e.g. PLAYER, PUNISHMENT, PLAYER_PUNISHMENT)
|
|
1827
|
+
* @param {string | null} [targetId] Filter to a specific target id (paired with targetType for narrowing)
|
|
1828
|
+
* @param {*} [options] Override http request option.
|
|
1829
|
+
* @throws {RequiredError}
|
|
1830
|
+
*/
|
|
1831
|
+
search(pageable: Pageable, actor?: string | null, action?: string | null, targetType?: string | null, targetId?: string | null, options?: RawAxiosRequestConfig): AxiosPromise<PageAdminAuditLogEntry>;
|
|
1832
|
+
/**
|
|
1833
|
+
* Cursor-based companion to GET /admin/audit-log. Preferred for the admin UI\'s infinite-scroll view of the audit log because the SQL plan stays flat as the table grows — offset pagination degrades linearly with depth, this does not. Pass the {@code cursor} returned in the previous response to get the next page; omit it for the first page.
|
|
1834
|
+
* @summary Cursor-paginated audit-log search (infinite scroll)
|
|
1835
|
+
* @param {CursoredPageable} pageable
|
|
1836
|
+
* @param {string | null} [actor]
|
|
1837
|
+
* @param {string | null} [action]
|
|
1838
|
+
* @param {string | null} [targetType]
|
|
1839
|
+
* @param {string | null} [targetId]
|
|
1840
|
+
* @param {*} [options] Override http request option.
|
|
1841
|
+
* @throws {RequiredError}
|
|
1842
|
+
*/
|
|
1843
|
+
searchCursor(pageable: CursoredPageable, actor?: string | null, action?: string | null, targetType?: string | null, targetId?: string | null, options?: RawAxiosRequestConfig): AxiosPromise<CursoredPageAdminAuditLogEntry>;
|
|
1844
|
+
};
|
|
1845
|
+
/**
|
|
1846
|
+
* AdminAuditLogApi - object-oriented interface
|
|
1847
|
+
*/
|
|
1848
|
+
export declare class AdminAuditLogApi extends BaseAPI {
|
|
1849
|
+
/**
|
|
1850
|
+
* Paginated audit-log search. All filter parameters are optional; an empty filter set returns the most recent rows across the system. Sorted newest-first.
|
|
1851
|
+
* @summary Search the admin audit log
|
|
1852
|
+
* @param {Pageable} pageable
|
|
1853
|
+
* @param {string | null} [actor] Filter to actions performed by this Discord username (case-sensitive exact match)
|
|
1854
|
+
* @param {string | null} [action] Filter to a specific action verb (e.g. REVOKE_PROPAGATED_LINK, SET_AGGRESSIVE_MODE_IMMUNITY)
|
|
1855
|
+
* @param {string | null} [targetType] Filter to a specific target type (e.g. PLAYER, PUNISHMENT, PLAYER_PUNISHMENT)
|
|
1856
|
+
* @param {string | null} [targetId] Filter to a specific target id (paired with targetType for narrowing)
|
|
1857
|
+
* @param {*} [options] Override http request option.
|
|
1858
|
+
* @throws {RequiredError}
|
|
1859
|
+
*/
|
|
1860
|
+
search(pageable: Pageable, actor?: string | null, action?: string | null, targetType?: string | null, targetId?: string | null, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<PageAdminAuditLogEntry, any, {}>>;
|
|
1861
|
+
/**
|
|
1862
|
+
* Cursor-based companion to GET /admin/audit-log. Preferred for the admin UI\'s infinite-scroll view of the audit log because the SQL plan stays flat as the table grows — offset pagination degrades linearly with depth, this does not. Pass the {@code cursor} returned in the previous response to get the next page; omit it for the first page.
|
|
1863
|
+
* @summary Cursor-paginated audit-log search (infinite scroll)
|
|
1864
|
+
* @param {CursoredPageable} pageable
|
|
1865
|
+
* @param {string | null} [actor]
|
|
1866
|
+
* @param {string | null} [action]
|
|
1867
|
+
* @param {string | null} [targetType]
|
|
1868
|
+
* @param {string | null} [targetId]
|
|
1869
|
+
* @param {*} [options] Override http request option.
|
|
1870
|
+
* @throws {RequiredError}
|
|
1871
|
+
*/
|
|
1872
|
+
searchCursor(pageable: CursoredPageable, actor?: string | null, action?: string | null, targetType?: string | null, targetId?: string | null, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<CursoredPageAdminAuditLogEntry, any, {}>>;
|
|
1873
|
+
}
|
|
1874
|
+
/**
|
|
1875
|
+
* AdminClientCredentialsApi - axios parameter creator
|
|
1876
|
+
*/
|
|
1877
|
+
export declare const AdminClientCredentialsApiAxiosParamCreator: (configuration?: Configuration) => {
|
|
1878
|
+
/**
|
|
1879
|
+
* Temporarily disables a client credential, preventing authentication. Can be re-enabled later.
|
|
1880
|
+
* @summary Disable client credentials
|
|
1881
|
+
* @param {number} id Client credential ID
|
|
1882
|
+
* @param {*} [options] Override http request option.
|
|
1883
|
+
* @throws {RequiredError}
|
|
1884
|
+
*/
|
|
1885
|
+
disableClient: (id: number, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
1886
|
+
/**
|
|
1887
|
+
* Re-enables a previously disabled client credential, allowing authentication.
|
|
1888
|
+
* @summary Enable client credentials
|
|
1889
|
+
* @param {number} id Client credential ID
|
|
1890
|
+
* @param {*} [options] Override http request option.
|
|
1891
|
+
* @throws {RequiredError}
|
|
1892
|
+
*/
|
|
1893
|
+
enableClient: (id: number, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
1894
|
+
/**
|
|
1895
|
+
* Creates a new API client with credentials for authentication. Returns the client ID and secret (only shown once).
|
|
815
1896
|
* @summary Generate new client credentials
|
|
816
1897
|
* @param {ClientCredentialRequest} clientCredentialRequest
|
|
817
1898
|
* @param {*} [options] Override http request option.
|
|
@@ -1038,6 +2119,13 @@ export declare class AdminClientCredentialsApi extends BaseAPI {
|
|
|
1038
2119
|
* AdminConnectionsApi - axios parameter creator
|
|
1039
2120
|
*/
|
|
1040
2121
|
export declare const AdminConnectionsApiAxiosParamCreator: (configuration?: Configuration) => {
|
|
2122
|
+
/**
|
|
2123
|
+
* Submits an async job that iterates every connection_check row missing both city and country and re-runs its source VPN service to populate location data. Returns immediately with a job id — poll GET /admin/job/{id} for progress and DELETE /admin/job/{id} to cancel. The final {@code Admin_BackfillLocationResponse} (processed/succeeded/failed counts) lands in the job\'s {@code result_payload} on COMPLETED.
|
|
2124
|
+
* @summary Start a location backfill job
|
|
2125
|
+
* @param {*} [options] Override http request option.
|
|
2126
|
+
* @throws {RequiredError}
|
|
2127
|
+
*/
|
|
2128
|
+
backfillLocation: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
1041
2129
|
/**
|
|
1042
2130
|
* Creates a temporary bypass for an IP address, expiring at the specified epoch timestamp (milliseconds since Unix epoch).
|
|
1043
2131
|
* @summary Create connection bypass
|
|
@@ -1046,32 +2134,49 @@ export declare const AdminConnectionsApiAxiosParamCreator: (configuration?: Conf
|
|
|
1046
2134
|
* @throws {RequiredError}
|
|
1047
2135
|
*/
|
|
1048
2136
|
createBypass: (createBypassRequest: CreateBypassRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2137
|
+
/**
|
|
2138
|
+
* Single connection by id, enriched with VPN check results and bypass status — same shape as the dashboard list row.
|
|
2139
|
+
* @summary Get connection detail
|
|
2140
|
+
* @param {number} id
|
|
2141
|
+
* @param {*} [options] Override http request option.
|
|
2142
|
+
* @throws {RequiredError}
|
|
2143
|
+
*/
|
|
2144
|
+
getConnection: (id: number, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2145
|
+
/**
|
|
2146
|
+
* Paginated list of every player ever seen on this connection, with punishment scoring inline. Suitable for an infinite-scroll panel inside the connection detail modal.
|
|
2147
|
+
* @summary List players who have used this connection
|
|
2148
|
+
* @param {number} id
|
|
2149
|
+
* @param {Pageable} pageable
|
|
2150
|
+
* @param {*} [options] Override http request option.
|
|
2151
|
+
* @throws {RequiredError}
|
|
2152
|
+
*/
|
|
2153
|
+
getConnectionPlayers: (id: number, pageable: Pageable, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
1049
2154
|
/**
|
|
1050
2155
|
* Returns a paginated list of all connections with a total count. Supports filtering by IP address, UUID, and VPN status.
|
|
1051
2156
|
* @summary List all connections (paginated)
|
|
1052
|
-
* @param {
|
|
1053
|
-
* @param {
|
|
1054
|
-
* @param {
|
|
1055
|
-
* @param {
|
|
1056
|
-
* @param {
|
|
2157
|
+
* @param {Pageable} pageable
|
|
2158
|
+
* @param {number | null} [createdAfter]
|
|
2159
|
+
* @param {number | null} [createdBefore]
|
|
2160
|
+
* @param {string | null} [ipAddress]
|
|
2161
|
+
* @param {string | null} [uuid]
|
|
2162
|
+
* @param {boolean | null} [isVpn]
|
|
1057
2163
|
* @param {*} [options] Override http request option.
|
|
1058
2164
|
* @throws {RequiredError}
|
|
1059
2165
|
*/
|
|
1060
|
-
listAllConnections: (
|
|
2166
|
+
listAllConnections: (pageable: Pageable, createdAfter?: number | null, createdBefore?: number | null, ipAddress?: string | null, uuid?: string | null, isVpn?: boolean | null, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
1061
2167
|
/**
|
|
1062
2168
|
* Returns a list of recent connections with VPN detection status, bypass information, and associated player data. Optionally filter by epoch timestamp (seconds since Unix epoch).
|
|
1063
2169
|
* @summary List recent connections
|
|
1064
|
-
* @param {
|
|
1065
|
-
* @param {number | null} [
|
|
1066
|
-
* @param {
|
|
1067
|
-
* @param {string | null} [
|
|
1068
|
-
* @param {
|
|
1069
|
-
* @param {
|
|
1070
|
-
* @param {number | null} [limit] Maximum number of records to return
|
|
2170
|
+
* @param {Pageable} pageable
|
|
2171
|
+
* @param {number | null} [createdAfter]
|
|
2172
|
+
* @param {number | null} [createdBefore]
|
|
2173
|
+
* @param {string | null} [ipAddress]
|
|
2174
|
+
* @param {string | null} [uuid]
|
|
2175
|
+
* @param {boolean | null} [isVpn]
|
|
1071
2176
|
* @param {*} [options] Override http request option.
|
|
1072
2177
|
* @throws {RequiredError}
|
|
1073
2178
|
*/
|
|
1074
|
-
listConnections: (createdAfter?: number | null, createdBefore?: number | null, ipAddress?: string | null, uuid?: string | null, isVpn?: boolean | null,
|
|
2179
|
+
listConnections: (pageable: Pageable, createdAfter?: number | null, createdBefore?: number | null, ipAddress?: string | null, uuid?: string | null, isVpn?: boolean | null, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
1075
2180
|
/**
|
|
1076
2181
|
* Re-runs one named VPN detection service for a specific connection, persists the updated result, and recalculates the connection\'s overall `percentPositive` and `numberOfChecks` from all stored checks. Returns the refreshed check result including its new `checkedAt` timestamp.
|
|
1077
2182
|
* @summary Refresh a single VPN check
|
|
@@ -1086,6 +2191,13 @@ export declare const AdminConnectionsApiAxiosParamCreator: (configuration?: Conf
|
|
|
1086
2191
|
* AdminConnectionsApi - functional programming interface
|
|
1087
2192
|
*/
|
|
1088
2193
|
export declare const AdminConnectionsApiFp: (configuration?: Configuration) => {
|
|
2194
|
+
/**
|
|
2195
|
+
* Submits an async job that iterates every connection_check row missing both city and country and re-runs its source VPN service to populate location data. Returns immediately with a job id — poll GET /admin/job/{id} for progress and DELETE /admin/job/{id} to cancel. The final {@code Admin_BackfillLocationResponse} (processed/succeeded/failed counts) lands in the job\'s {@code result_payload} on COMPLETED.
|
|
2196
|
+
* @summary Start a location backfill job
|
|
2197
|
+
* @param {*} [options] Override http request option.
|
|
2198
|
+
* @throws {RequiredError}
|
|
2199
|
+
*/
|
|
2200
|
+
backfillLocation(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminAsyncJobStartResponse>>;
|
|
1089
2201
|
/**
|
|
1090
2202
|
* Creates a temporary bypass for an IP address, expiring at the specified epoch timestamp (milliseconds since Unix epoch).
|
|
1091
2203
|
* @summary Create connection bypass
|
|
@@ -1094,32 +2206,49 @@ export declare const AdminConnectionsApiFp: (configuration?: Configuration) => {
|
|
|
1094
2206
|
* @throws {RequiredError}
|
|
1095
2207
|
*/
|
|
1096
2208
|
createBypass(createBypassRequest: CreateBypassRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminConnectionBypassResponse>>;
|
|
2209
|
+
/**
|
|
2210
|
+
* Single connection by id, enriched with VPN check results and bypass status — same shape as the dashboard list row.
|
|
2211
|
+
* @summary Get connection detail
|
|
2212
|
+
* @param {number} id
|
|
2213
|
+
* @param {*} [options] Override http request option.
|
|
2214
|
+
* @throws {RequiredError}
|
|
2215
|
+
*/
|
|
2216
|
+
getConnection(id: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminDashboardConnectionResponse>>;
|
|
2217
|
+
/**
|
|
2218
|
+
* Paginated list of every player ever seen on this connection, with punishment scoring inline. Suitable for an infinite-scroll panel inside the connection detail modal.
|
|
2219
|
+
* @summary List players who have used this connection
|
|
2220
|
+
* @param {number} id
|
|
2221
|
+
* @param {Pageable} pageable
|
|
2222
|
+
* @param {*} [options] Override http request option.
|
|
2223
|
+
* @throws {RequiredError}
|
|
2224
|
+
*/
|
|
2225
|
+
getConnectionPlayers(id: number, pageable: Pageable, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PageAdminPlayerSummary>>;
|
|
1097
2226
|
/**
|
|
1098
2227
|
* Returns a paginated list of all connections with a total count. Supports filtering by IP address, UUID, and VPN status.
|
|
1099
2228
|
* @summary List all connections (paginated)
|
|
1100
|
-
* @param {
|
|
1101
|
-
* @param {
|
|
1102
|
-
* @param {
|
|
1103
|
-
* @param {
|
|
1104
|
-
* @param {
|
|
2229
|
+
* @param {Pageable} pageable
|
|
2230
|
+
* @param {number | null} [createdAfter]
|
|
2231
|
+
* @param {number | null} [createdBefore]
|
|
2232
|
+
* @param {string | null} [ipAddress]
|
|
2233
|
+
* @param {string | null} [uuid]
|
|
2234
|
+
* @param {boolean | null} [isVpn]
|
|
1105
2235
|
* @param {*} [options] Override http request option.
|
|
1106
2236
|
* @throws {RequiredError}
|
|
1107
2237
|
*/
|
|
1108
|
-
listAllConnections(
|
|
2238
|
+
listAllConnections(pageable: Pageable, createdAfter?: number | null, createdBefore?: number | null, ipAddress?: string | null, uuid?: string | null, isVpn?: boolean | null, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PageAdminDashboardConnectionResponse>>;
|
|
1109
2239
|
/**
|
|
1110
2240
|
* Returns a list of recent connections with VPN detection status, bypass information, and associated player data. Optionally filter by epoch timestamp (seconds since Unix epoch).
|
|
1111
2241
|
* @summary List recent connections
|
|
1112
|
-
* @param {
|
|
1113
|
-
* @param {number | null} [
|
|
1114
|
-
* @param {
|
|
1115
|
-
* @param {string | null} [
|
|
1116
|
-
* @param {
|
|
1117
|
-
* @param {
|
|
1118
|
-
* @param {number | null} [limit] Maximum number of records to return
|
|
2242
|
+
* @param {Pageable} pageable
|
|
2243
|
+
* @param {number | null} [createdAfter]
|
|
2244
|
+
* @param {number | null} [createdBefore]
|
|
2245
|
+
* @param {string | null} [ipAddress]
|
|
2246
|
+
* @param {string | null} [uuid]
|
|
2247
|
+
* @param {boolean | null} [isVpn]
|
|
1119
2248
|
* @param {*} [options] Override http request option.
|
|
1120
2249
|
* @throws {RequiredError}
|
|
1121
2250
|
*/
|
|
1122
|
-
listConnections(createdAfter?: number | null, createdBefore?: number | null, ipAddress?: string | null, uuid?: string | null, isVpn?: boolean | null,
|
|
2251
|
+
listConnections(pageable: Pageable, createdAfter?: number | null, createdBefore?: number | null, ipAddress?: string | null, uuid?: string | null, isVpn?: boolean | null, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Array<AdminDashboardConnectionResponse>>>;
|
|
1123
2252
|
/**
|
|
1124
2253
|
* Re-runs one named VPN detection service for a specific connection, persists the updated result, and recalculates the connection\'s overall `percentPositive` and `numberOfChecks` from all stored checks. Returns the refreshed check result including its new `checkedAt` timestamp.
|
|
1125
2254
|
* @summary Refresh a single VPN check
|
|
@@ -1134,6 +2263,13 @@ export declare const AdminConnectionsApiFp: (configuration?: Configuration) => {
|
|
|
1134
2263
|
* AdminConnectionsApi - factory interface
|
|
1135
2264
|
*/
|
|
1136
2265
|
export declare const AdminConnectionsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
|
|
2266
|
+
/**
|
|
2267
|
+
* Submits an async job that iterates every connection_check row missing both city and country and re-runs its source VPN service to populate location data. Returns immediately with a job id — poll GET /admin/job/{id} for progress and DELETE /admin/job/{id} to cancel. The final {@code Admin_BackfillLocationResponse} (processed/succeeded/failed counts) lands in the job\'s {@code result_payload} on COMPLETED.
|
|
2268
|
+
* @summary Start a location backfill job
|
|
2269
|
+
* @param {*} [options] Override http request option.
|
|
2270
|
+
* @throws {RequiredError}
|
|
2271
|
+
*/
|
|
2272
|
+
backfillLocation(options?: RawAxiosRequestConfig): AxiosPromise<AdminAsyncJobStartResponse>;
|
|
1137
2273
|
/**
|
|
1138
2274
|
* Creates a temporary bypass for an IP address, expiring at the specified epoch timestamp (milliseconds since Unix epoch).
|
|
1139
2275
|
* @summary Create connection bypass
|
|
@@ -1142,229 +2278,950 @@ export declare const AdminConnectionsApiFactory: (configuration?: Configuration,
|
|
|
1142
2278
|
* @throws {RequiredError}
|
|
1143
2279
|
*/
|
|
1144
2280
|
createBypass(createBypassRequest: CreateBypassRequest, options?: RawAxiosRequestConfig): AxiosPromise<AdminConnectionBypassResponse>;
|
|
2281
|
+
/**
|
|
2282
|
+
* Single connection by id, enriched with VPN check results and bypass status — same shape as the dashboard list row.
|
|
2283
|
+
* @summary Get connection detail
|
|
2284
|
+
* @param {number} id
|
|
2285
|
+
* @param {*} [options] Override http request option.
|
|
2286
|
+
* @throws {RequiredError}
|
|
2287
|
+
*/
|
|
2288
|
+
getConnection(id: number, options?: RawAxiosRequestConfig): AxiosPromise<AdminDashboardConnectionResponse>;
|
|
2289
|
+
/**
|
|
2290
|
+
* Paginated list of every player ever seen on this connection, with punishment scoring inline. Suitable for an infinite-scroll panel inside the connection detail modal.
|
|
2291
|
+
* @summary List players who have used this connection
|
|
2292
|
+
* @param {number} id
|
|
2293
|
+
* @param {Pageable} pageable
|
|
2294
|
+
* @param {*} [options] Override http request option.
|
|
2295
|
+
* @throws {RequiredError}
|
|
2296
|
+
*/
|
|
2297
|
+
getConnectionPlayers(id: number, pageable: Pageable, options?: RawAxiosRequestConfig): AxiosPromise<PageAdminPlayerSummary>;
|
|
2298
|
+
/**
|
|
2299
|
+
* Returns a paginated list of all connections with a total count. Supports filtering by IP address, UUID, and VPN status.
|
|
2300
|
+
* @summary List all connections (paginated)
|
|
2301
|
+
* @param {Pageable} pageable
|
|
2302
|
+
* @param {number | null} [createdAfter]
|
|
2303
|
+
* @param {number | null} [createdBefore]
|
|
2304
|
+
* @param {string | null} [ipAddress]
|
|
2305
|
+
* @param {string | null} [uuid]
|
|
2306
|
+
* @param {boolean | null} [isVpn]
|
|
2307
|
+
* @param {*} [options] Override http request option.
|
|
2308
|
+
* @throws {RequiredError}
|
|
2309
|
+
*/
|
|
2310
|
+
listAllConnections(pageable: Pageable, createdAfter?: number | null, createdBefore?: number | null, ipAddress?: string | null, uuid?: string | null, isVpn?: boolean | null, options?: RawAxiosRequestConfig): AxiosPromise<PageAdminDashboardConnectionResponse>;
|
|
2311
|
+
/**
|
|
2312
|
+
* Returns a list of recent connections with VPN detection status, bypass information, and associated player data. Optionally filter by epoch timestamp (seconds since Unix epoch).
|
|
2313
|
+
* @summary List recent connections
|
|
2314
|
+
* @param {Pageable} pageable
|
|
2315
|
+
* @param {number | null} [createdAfter]
|
|
2316
|
+
* @param {number | null} [createdBefore]
|
|
2317
|
+
* @param {string | null} [ipAddress]
|
|
2318
|
+
* @param {string | null} [uuid]
|
|
2319
|
+
* @param {boolean | null} [isVpn]
|
|
2320
|
+
* @param {*} [options] Override http request option.
|
|
2321
|
+
* @throws {RequiredError}
|
|
2322
|
+
*/
|
|
2323
|
+
listConnections(pageable: Pageable, createdAfter?: number | null, createdBefore?: number | null, ipAddress?: string | null, uuid?: string | null, isVpn?: boolean | null, options?: RawAxiosRequestConfig): AxiosPromise<Array<AdminDashboardConnectionResponse>>;
|
|
2324
|
+
/**
|
|
2325
|
+
* Re-runs one named VPN detection service for a specific connection, persists the updated result, and recalculates the connection\'s overall `percentPositive` and `numberOfChecks` from all stored checks. Returns the refreshed check result including its new `checkedAt` timestamp.
|
|
2326
|
+
* @summary Refresh a single VPN check
|
|
2327
|
+
* @param {number} connectionId
|
|
2328
|
+
* @param {string} service
|
|
2329
|
+
* @param {*} [options] Override http request option.
|
|
2330
|
+
* @throws {RequiredError}
|
|
2331
|
+
*/
|
|
2332
|
+
recheckService(connectionId: number, service: string, options?: RawAxiosRequestConfig): AxiosPromise<AdminConnectionCheckResult>;
|
|
2333
|
+
};
|
|
2334
|
+
/**
|
|
2335
|
+
* AdminConnectionsApi - object-oriented interface
|
|
2336
|
+
*/
|
|
2337
|
+
export declare class AdminConnectionsApi extends BaseAPI {
|
|
2338
|
+
/**
|
|
2339
|
+
* Submits an async job that iterates every connection_check row missing both city and country and re-runs its source VPN service to populate location data. Returns immediately with a job id — poll GET /admin/job/{id} for progress and DELETE /admin/job/{id} to cancel. The final {@code Admin_BackfillLocationResponse} (processed/succeeded/failed counts) lands in the job\'s {@code result_payload} on COMPLETED.
|
|
2340
|
+
* @summary Start a location backfill job
|
|
2341
|
+
* @param {*} [options] Override http request option.
|
|
2342
|
+
* @throws {RequiredError}
|
|
2343
|
+
*/
|
|
2344
|
+
backfillLocation(options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminAsyncJobStartResponse, any, {}>>;
|
|
2345
|
+
/**
|
|
2346
|
+
* Creates a temporary bypass for an IP address, expiring at the specified epoch timestamp (milliseconds since Unix epoch).
|
|
2347
|
+
* @summary Create connection bypass
|
|
2348
|
+
* @param {CreateBypassRequest} createBypassRequest
|
|
2349
|
+
* @param {*} [options] Override http request option.
|
|
2350
|
+
* @throws {RequiredError}
|
|
2351
|
+
*/
|
|
2352
|
+
createBypass(createBypassRequest: CreateBypassRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminConnectionBypassResponse, any, {}>>;
|
|
2353
|
+
/**
|
|
2354
|
+
* Single connection by id, enriched with VPN check results and bypass status — same shape as the dashboard list row.
|
|
2355
|
+
* @summary Get connection detail
|
|
2356
|
+
* @param {number} id
|
|
2357
|
+
* @param {*} [options] Override http request option.
|
|
2358
|
+
* @throws {RequiredError}
|
|
2359
|
+
*/
|
|
2360
|
+
getConnection(id: number, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminDashboardConnectionResponse, any, {}>>;
|
|
2361
|
+
/**
|
|
2362
|
+
* Paginated list of every player ever seen on this connection, with punishment scoring inline. Suitable for an infinite-scroll panel inside the connection detail modal.
|
|
2363
|
+
* @summary List players who have used this connection
|
|
2364
|
+
* @param {number} id
|
|
2365
|
+
* @param {Pageable} pageable
|
|
2366
|
+
* @param {*} [options] Override http request option.
|
|
2367
|
+
* @throws {RequiredError}
|
|
2368
|
+
*/
|
|
2369
|
+
getConnectionPlayers(id: number, pageable: Pageable, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<PageAdminPlayerSummary, any, {}>>;
|
|
1145
2370
|
/**
|
|
1146
2371
|
* Returns a paginated list of all connections with a total count. Supports filtering by IP address, UUID, and VPN status.
|
|
1147
2372
|
* @summary List all connections (paginated)
|
|
1148
|
-
* @param {
|
|
1149
|
-
* @param {
|
|
1150
|
-
* @param {
|
|
1151
|
-
* @param {
|
|
1152
|
-
* @param {
|
|
2373
|
+
* @param {Pageable} pageable
|
|
2374
|
+
* @param {number | null} [createdAfter]
|
|
2375
|
+
* @param {number | null} [createdBefore]
|
|
2376
|
+
* @param {string | null} [ipAddress]
|
|
2377
|
+
* @param {string | null} [uuid]
|
|
2378
|
+
* @param {boolean | null} [isVpn]
|
|
2379
|
+
* @param {*} [options] Override http request option.
|
|
2380
|
+
* @throws {RequiredError}
|
|
2381
|
+
*/
|
|
2382
|
+
listAllConnections(pageable: Pageable, createdAfter?: number | null, createdBefore?: number | null, ipAddress?: string | null, uuid?: string | null, isVpn?: boolean | null, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<PageAdminDashboardConnectionResponse, any, {}>>;
|
|
2383
|
+
/**
|
|
2384
|
+
* Returns a list of recent connections with VPN detection status, bypass information, and associated player data. Optionally filter by epoch timestamp (seconds since Unix epoch).
|
|
2385
|
+
* @summary List recent connections
|
|
2386
|
+
* @param {Pageable} pageable
|
|
2387
|
+
* @param {number | null} [createdAfter]
|
|
2388
|
+
* @param {number | null} [createdBefore]
|
|
2389
|
+
* @param {string | null} [ipAddress]
|
|
2390
|
+
* @param {string | null} [uuid]
|
|
2391
|
+
* @param {boolean | null} [isVpn]
|
|
2392
|
+
* @param {*} [options] Override http request option.
|
|
2393
|
+
* @throws {RequiredError}
|
|
2394
|
+
*/
|
|
2395
|
+
listConnections(pageable: Pageable, createdAfter?: number | null, createdBefore?: number | null, ipAddress?: string | null, uuid?: string | null, isVpn?: boolean | null, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminDashboardConnectionResponse[], any, {}>>;
|
|
2396
|
+
/**
|
|
2397
|
+
* Re-runs one named VPN detection service for a specific connection, persists the updated result, and recalculates the connection\'s overall `percentPositive` and `numberOfChecks` from all stored checks. Returns the refreshed check result including its new `checkedAt` timestamp.
|
|
2398
|
+
* @summary Refresh a single VPN check
|
|
2399
|
+
* @param {number} connectionId
|
|
2400
|
+
* @param {string} service
|
|
2401
|
+
* @param {*} [options] Override http request option.
|
|
2402
|
+
* @throws {RequiredError}
|
|
2403
|
+
*/
|
|
2404
|
+
recheckService(connectionId: number, service: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminConnectionCheckResult, any, {}>>;
|
|
2405
|
+
}
|
|
2406
|
+
/**
|
|
2407
|
+
* AdminDashboardApi - axios parameter creator
|
|
2408
|
+
*/
|
|
2409
|
+
export declare const AdminDashboardApiAxiosParamCreator: (configuration?: Configuration) => {
|
|
2410
|
+
/**
|
|
2411
|
+
* Returns aggregate counts for clients, connections, and players in the system.
|
|
2412
|
+
* @summary Get dashboard statistics
|
|
2413
|
+
* @param {*} [options] Override http request option.
|
|
2414
|
+
* @throws {RequiredError}
|
|
2415
|
+
*/
|
|
2416
|
+
dashboardStats: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2417
|
+
};
|
|
2418
|
+
/**
|
|
2419
|
+
* AdminDashboardApi - functional programming interface
|
|
2420
|
+
*/
|
|
2421
|
+
export declare const AdminDashboardApiFp: (configuration?: Configuration) => {
|
|
2422
|
+
/**
|
|
2423
|
+
* Returns aggregate counts for clients, connections, and players in the system.
|
|
2424
|
+
* @summary Get dashboard statistics
|
|
2425
|
+
* @param {*} [options] Override http request option.
|
|
2426
|
+
* @throws {RequiredError}
|
|
2427
|
+
*/
|
|
2428
|
+
dashboardStats(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminGetDashboardStats>>;
|
|
2429
|
+
};
|
|
2430
|
+
/**
|
|
2431
|
+
* AdminDashboardApi - factory interface
|
|
2432
|
+
*/
|
|
2433
|
+
export declare const AdminDashboardApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
|
|
2434
|
+
/**
|
|
2435
|
+
* Returns aggregate counts for clients, connections, and players in the system.
|
|
2436
|
+
* @summary Get dashboard statistics
|
|
2437
|
+
* @param {*} [options] Override http request option.
|
|
2438
|
+
* @throws {RequiredError}
|
|
2439
|
+
*/
|
|
2440
|
+
dashboardStats(options?: RawAxiosRequestConfig): AxiosPromise<AdminGetDashboardStats>;
|
|
2441
|
+
};
|
|
2442
|
+
/**
|
|
2443
|
+
* AdminDashboardApi - object-oriented interface
|
|
2444
|
+
*/
|
|
2445
|
+
export declare class AdminDashboardApi extends BaseAPI {
|
|
2446
|
+
/**
|
|
2447
|
+
* Returns aggregate counts for clients, connections, and players in the system.
|
|
2448
|
+
* @summary Get dashboard statistics
|
|
2449
|
+
* @param {*} [options] Override http request option.
|
|
2450
|
+
* @throws {RequiredError}
|
|
2451
|
+
*/
|
|
2452
|
+
dashboardStats(options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminGetDashboardStats, any, {}>>;
|
|
2453
|
+
}
|
|
2454
|
+
/**
|
|
2455
|
+
* AdminJobsApi - axios parameter creator
|
|
2456
|
+
*/
|
|
2457
|
+
export declare const AdminJobsApiAxiosParamCreator: (configuration?: Configuration) => {
|
|
2458
|
+
/**
|
|
2459
|
+
* Flips cancel_requested on the row. The host instance sees this at its next progress tick and bails out, transitioning the row to CANCELLED. Already-terminal jobs (COMPLETED/FAILED/CANCELLED) return 404.
|
|
2460
|
+
* @summary Request cancellation of an async job
|
|
2461
|
+
* @param {string} id Job id
|
|
2462
|
+
* @param {*} [options] Override http request option.
|
|
2463
|
+
* @throws {RequiredError}
|
|
2464
|
+
*/
|
|
2465
|
+
cancel: (id: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2466
|
+
/**
|
|
2467
|
+
* The polling target — the admin UI hits this every ~2 s while a job is running to update its progress bar.
|
|
2468
|
+
* @summary Get one async job
|
|
2469
|
+
* @param {string} id Job id
|
|
2470
|
+
* @param {*} [options] Override http request option.
|
|
2471
|
+
* @throws {RequiredError}
|
|
2472
|
+
*/
|
|
2473
|
+
get: (id: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2474
|
+
/**
|
|
2475
|
+
* Paginated, newest first. Filter by status to see only RUNNING jobs (the live queue) or COMPLETED / FAILED / CANCELLED history.
|
|
2476
|
+
* @summary List async jobs
|
|
2477
|
+
* @param {Pageable} pageable
|
|
2478
|
+
* @param {JobStatus | null} [status] Filter by status (omit for all states)
|
|
2479
|
+
* @param {*} [options] Override http request option.
|
|
2480
|
+
* @throws {RequiredError}
|
|
2481
|
+
*/
|
|
2482
|
+
list: (pageable: Pageable, status?: JobStatus | null, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2483
|
+
};
|
|
2484
|
+
/**
|
|
2485
|
+
* AdminJobsApi - functional programming interface
|
|
2486
|
+
*/
|
|
2487
|
+
export declare const AdminJobsApiFp: (configuration?: Configuration) => {
|
|
2488
|
+
/**
|
|
2489
|
+
* Flips cancel_requested on the row. The host instance sees this at its next progress tick and bails out, transitioning the row to CANCELLED. Already-terminal jobs (COMPLETED/FAILED/CANCELLED) return 404.
|
|
2490
|
+
* @summary Request cancellation of an async job
|
|
2491
|
+
* @param {string} id Job id
|
|
2492
|
+
* @param {*} [options] Override http request option.
|
|
2493
|
+
* @throws {RequiredError}
|
|
2494
|
+
*/
|
|
2495
|
+
cancel(id: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
|
|
2496
|
+
/**
|
|
2497
|
+
* The polling target — the admin UI hits this every ~2 s while a job is running to update its progress bar.
|
|
2498
|
+
* @summary Get one async job
|
|
2499
|
+
* @param {string} id Job id
|
|
2500
|
+
* @param {*} [options] Override http request option.
|
|
2501
|
+
* @throws {RequiredError}
|
|
2502
|
+
*/
|
|
2503
|
+
get(id: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminAsyncJob>>;
|
|
2504
|
+
/**
|
|
2505
|
+
* Paginated, newest first. Filter by status to see only RUNNING jobs (the live queue) or COMPLETED / FAILED / CANCELLED history.
|
|
2506
|
+
* @summary List async jobs
|
|
2507
|
+
* @param {Pageable} pageable
|
|
2508
|
+
* @param {JobStatus | null} [status] Filter by status (omit for all states)
|
|
2509
|
+
* @param {*} [options] Override http request option.
|
|
2510
|
+
* @throws {RequiredError}
|
|
2511
|
+
*/
|
|
2512
|
+
list(pageable: Pageable, status?: JobStatus | null, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PageAdminAsyncJob>>;
|
|
2513
|
+
};
|
|
2514
|
+
/**
|
|
2515
|
+
* AdminJobsApi - factory interface
|
|
2516
|
+
*/
|
|
2517
|
+
export declare const AdminJobsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
|
|
2518
|
+
/**
|
|
2519
|
+
* Flips cancel_requested on the row. The host instance sees this at its next progress tick and bails out, transitioning the row to CANCELLED. Already-terminal jobs (COMPLETED/FAILED/CANCELLED) return 404.
|
|
2520
|
+
* @summary Request cancellation of an async job
|
|
2521
|
+
* @param {string} id Job id
|
|
2522
|
+
* @param {*} [options] Override http request option.
|
|
2523
|
+
* @throws {RequiredError}
|
|
2524
|
+
*/
|
|
2525
|
+
cancel(id: string, options?: RawAxiosRequestConfig): AxiosPromise<void>;
|
|
2526
|
+
/**
|
|
2527
|
+
* The polling target — the admin UI hits this every ~2 s while a job is running to update its progress bar.
|
|
2528
|
+
* @summary Get one async job
|
|
2529
|
+
* @param {string} id Job id
|
|
2530
|
+
* @param {*} [options] Override http request option.
|
|
2531
|
+
* @throws {RequiredError}
|
|
2532
|
+
*/
|
|
2533
|
+
get(id: string, options?: RawAxiosRequestConfig): AxiosPromise<AdminAsyncJob>;
|
|
2534
|
+
/**
|
|
2535
|
+
* Paginated, newest first. Filter by status to see only RUNNING jobs (the live queue) or COMPLETED / FAILED / CANCELLED history.
|
|
2536
|
+
* @summary List async jobs
|
|
2537
|
+
* @param {Pageable} pageable
|
|
2538
|
+
* @param {JobStatus | null} [status] Filter by status (omit for all states)
|
|
2539
|
+
* @param {*} [options] Override http request option.
|
|
2540
|
+
* @throws {RequiredError}
|
|
2541
|
+
*/
|
|
2542
|
+
list(pageable: Pageable, status?: JobStatus | null, options?: RawAxiosRequestConfig): AxiosPromise<PageAdminAsyncJob>;
|
|
2543
|
+
};
|
|
2544
|
+
/**
|
|
2545
|
+
* AdminJobsApi - object-oriented interface
|
|
2546
|
+
*/
|
|
2547
|
+
export declare class AdminJobsApi extends BaseAPI {
|
|
2548
|
+
/**
|
|
2549
|
+
* Flips cancel_requested on the row. The host instance sees this at its next progress tick and bails out, transitioning the row to CANCELLED. Already-terminal jobs (COMPLETED/FAILED/CANCELLED) return 404.
|
|
2550
|
+
* @summary Request cancellation of an async job
|
|
2551
|
+
* @param {string} id Job id
|
|
2552
|
+
* @param {*} [options] Override http request option.
|
|
2553
|
+
* @throws {RequiredError}
|
|
2554
|
+
*/
|
|
2555
|
+
cancel(id: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
|
|
2556
|
+
/**
|
|
2557
|
+
* The polling target — the admin UI hits this every ~2 s while a job is running to update its progress bar.
|
|
2558
|
+
* @summary Get one async job
|
|
2559
|
+
* @param {string} id Job id
|
|
2560
|
+
* @param {*} [options] Override http request option.
|
|
2561
|
+
* @throws {RequiredError}
|
|
2562
|
+
*/
|
|
2563
|
+
get(id: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminAsyncJob, any, {}>>;
|
|
2564
|
+
/**
|
|
2565
|
+
* Paginated, newest first. Filter by status to see only RUNNING jobs (the live queue) or COMPLETED / FAILED / CANCELLED history.
|
|
2566
|
+
* @summary List async jobs
|
|
2567
|
+
* @param {Pageable} pageable
|
|
2568
|
+
* @param {JobStatus | null} [status] Filter by status (omit for all states)
|
|
2569
|
+
* @param {*} [options] Override http request option.
|
|
2570
|
+
* @throws {RequiredError}
|
|
2571
|
+
*/
|
|
2572
|
+
list(pageable: Pageable, status?: JobStatus | null, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<PageAdminAsyncJob, any, {}>>;
|
|
2573
|
+
}
|
|
2574
|
+
/**
|
|
2575
|
+
* AdminPlayersApi - axios parameter creator
|
|
2576
|
+
*/
|
|
2577
|
+
export declare const AdminPlayersApiAxiosParamCreator: (configuration?: Configuration) => {
|
|
2578
|
+
/**
|
|
2579
|
+
* Mark another player as a known-legitimate associate (e.g. roommate). The relationship is stored symmetrically: subsequent aggressive-mode propagation skips this pair as an alt source in either direction. Finer-grained than the per-player aggressive_mode_immunity flag.
|
|
2580
|
+
* @summary Add an alt exemption
|
|
2581
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2582
|
+
* @param {AdminCreateAltExemptionRequest} adminCreateAltExemptionRequest
|
|
2583
|
+
* @param {*} [options] Override http request option.
|
|
2584
|
+
* @throws {RequiredError}
|
|
2585
|
+
*/
|
|
2586
|
+
addAltExemption: (uuid: string, adminCreateAltExemptionRequest: AdminCreateAltExemptionRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2587
|
+
/**
|
|
2588
|
+
* Soft-revokes every currently active PROPAGATED player_punishment row whose source matches the supplied id. Exactly one of sourcePlayerId / sourceConnectionId must be set. Useful when staff identify a single source as a false positive (e.g. shared NAT, legitimate roommate) and want to undo every link it caused in one operation.
|
|
2589
|
+
* @summary Bulk-revoke PROPAGATED links by source
|
|
2590
|
+
* @param {AdminBulkRevokeRequest} adminBulkRevokeRequest
|
|
2591
|
+
* @param {*} [options] Override http request option.
|
|
2592
|
+
* @throws {RequiredError}
|
|
2593
|
+
*/
|
|
2594
|
+
bulkRevokePropagated: (adminBulkRevokeRequest: AdminBulkRevokeRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2595
|
+
/**
|
|
2596
|
+
* Appends a free-form note (1–4000 chars). Notes are not editable — to revise, post a new one and soft-delete the old.
|
|
2597
|
+
* @summary Create a staff note on a player
|
|
2598
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2599
|
+
* @param {AdminCreatePlayerNoteRequest} adminCreatePlayerNoteRequest
|
|
2600
|
+
* @param {*} [options] Override http request option.
|
|
2601
|
+
* @throws {RequiredError}
|
|
2602
|
+
*/
|
|
2603
|
+
createPlayerNote: (uuid: string, adminCreatePlayerNoteRequest: AdminCreatePlayerNoteRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2604
|
+
/**
|
|
2605
|
+
* Marks the note as deleted but keeps the row for audit. Idempotent — 404 if already deleted or unknown id.
|
|
2606
|
+
* @summary Soft-delete a staff note
|
|
2607
|
+
* @param {string} uuid Player Minecraft UUID (routing only)
|
|
2608
|
+
* @param {number} noteId Note id
|
|
2609
|
+
* @param {*} [options] Override http request option.
|
|
2610
|
+
* @throws {RequiredError}
|
|
2611
|
+
*/
|
|
2612
|
+
deletePlayerNote: (uuid: string, noteId: number, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2613
|
+
/**
|
|
2614
|
+
* Returns full detail for a single player including all known usernames and punishment scoring.
|
|
2615
|
+
* @summary Get player detail
|
|
2616
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2617
|
+
* @param {*} [options] Override http request option.
|
|
2618
|
+
* @throws {RequiredError}
|
|
2619
|
+
*/
|
|
2620
|
+
getPlayer: (uuid: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2621
|
+
/**
|
|
2622
|
+
* Other players who have been seen on at least one of this player\'s historical connections. Sorted by shared-connection count desc, then last seen desc.
|
|
2623
|
+
* @summary List a player\'s alt accounts
|
|
2624
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2625
|
+
* @param {Pageable} pageable
|
|
2626
|
+
* @param {*} [options] Override http request option.
|
|
2627
|
+
* @throws {RequiredError}
|
|
2628
|
+
*/
|
|
2629
|
+
getPlayerAlts: (uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2630
|
+
/**
|
|
2631
|
+
* Paginated list of every connection this player has used (latest first). Same shape as the dashboard connection list, suitable for an infinite-scroll panel inside the player detail modal.
|
|
2632
|
+
* @summary List a player\'s connection history
|
|
2633
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2634
|
+
* @param {Pageable} pageable
|
|
2635
|
+
* @param {*} [options] Override http request option.
|
|
2636
|
+
* @throws {RequiredError}
|
|
2637
|
+
*/
|
|
2638
|
+
getPlayerConnections: (uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2639
|
+
/**
|
|
2640
|
+
* Paginated list of every player_punishment row for this player — DIRECT and PROPAGATED, active and revoked. Includes the transfer_note explaining why each propagated link was inserted and the revocation audit trail. The admin UI uses this to render a punishment-history section inside the player detail modal.
|
|
2641
|
+
* @summary List a player\'s full punishment history
|
|
2642
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2643
|
+
* @param {Pageable} pageable
|
|
2644
|
+
* @param {*} [options] Override http request option.
|
|
2645
|
+
* @throws {RequiredError}
|
|
2646
|
+
*/
|
|
2647
|
+
getPlayerPunishments: (uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2648
|
+
/**
|
|
2649
|
+
* Single-row summary: total seconds played, session count, distinct days active, most recent session start, and whether the player is currently online. Computed on demand from player_session. Feeds the trust factor system.
|
|
2650
|
+
* @summary Get a player\'s aggregate session stats
|
|
2651
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2652
|
+
* @param {*} [options] Override http request option.
|
|
2653
|
+
* @throws {RequiredError}
|
|
2654
|
+
*/
|
|
2655
|
+
getSessionStats: (uuid: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2656
|
+
/**
|
|
2657
|
+
* Paginated list of the player\'s known-legitimate-associate exemptions. The list reflects rows where this player is the source side (player_id = this); since exemptions are stored symmetrically the reciprocal rows exist too.
|
|
2658
|
+
* @summary List a player\'s alt exemptions
|
|
2659
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2660
|
+
* @param {Pageable} pageable
|
|
2661
|
+
* @param {*} [options] Override http request option.
|
|
2662
|
+
* @throws {RequiredError}
|
|
2663
|
+
*/
|
|
2664
|
+
listAltExemptions: (uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2665
|
+
/**
|
|
2666
|
+
* Paginated, newest first. Soft-deleted notes are included; the UI styles them as struck-through.
|
|
2667
|
+
* @summary List staff notes on a player
|
|
2668
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2669
|
+
* @param {Pageable} pageable
|
|
2670
|
+
* @param {*} [options] Override http request option.
|
|
2671
|
+
* @throws {RequiredError}
|
|
2672
|
+
*/
|
|
2673
|
+
listPlayerNotes: (uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2674
|
+
/**
|
|
2675
|
+
* Returns up to 500 players ordered by most recently seen. Optionally filter by UUID or username substring.
|
|
2676
|
+
* @summary List players
|
|
2677
|
+
* @param {Pageable} pageable
|
|
2678
|
+
* @param {string | null} [search] Optional search string matched against UUID or username (case-insensitive substring)
|
|
2679
|
+
* @param {*} [options] Override http request option.
|
|
2680
|
+
* @throws {RequiredError}
|
|
2681
|
+
*/
|
|
2682
|
+
listPlayers: (pageable: Pageable, search?: string | null, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2683
|
+
/**
|
|
2684
|
+
* Paginated history of player_session rows (active + closed), newest first. Each row records one visit by this player to one game server. Used by the admin player detail view and as the underlying data for the session-stats aggregate.
|
|
2685
|
+
* @summary List a player\'s session history
|
|
2686
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2687
|
+
* @param {Pageable} pageable
|
|
2688
|
+
* @param {*} [options] Override http request option.
|
|
2689
|
+
* @throws {RequiredError}
|
|
2690
|
+
*/
|
|
2691
|
+
listSessions: (uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2692
|
+
/**
|
|
2693
|
+
* Delete the symmetric exemption pair between two players. Both directions are removed.
|
|
2694
|
+
* @summary Remove an alt exemption
|
|
2695
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2696
|
+
* @param {string} altPlayerUuid UUID of the alt to remove from exemption
|
|
2697
|
+
* @param {*} [options] Override http request option.
|
|
2698
|
+
* @throws {RequiredError}
|
|
2699
|
+
*/
|
|
2700
|
+
removeAltExemption: (uuid: string, altPlayerUuid: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2701
|
+
/**
|
|
2702
|
+
* Soft-deletes a single player_punishment row that was inserted by aggressive-mode propagation. The source punishment record is untouched — only the link between this player and that punishment is removed from enforcement. Rejected with 404 if the row is DIRECT (the original punishment record) or already revoked.
|
|
2703
|
+
* @summary Revoke a propagated punishment link
|
|
2704
|
+
* @param {string} uuid Player Minecraft UUID (for routing/audit context; the link id is the source of truth)
|
|
2705
|
+
* @param {number} playerPunishmentId player_punishment row id
|
|
2706
|
+
* @param {*} [options] Override http request option.
|
|
2707
|
+
* @throws {RequiredError}
|
|
2708
|
+
*/
|
|
2709
|
+
revokePropagatedLink: (uuid: string, playerPunishmentId: number, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2710
|
+
/**
|
|
2711
|
+
* Sets whether a player is exempt from aggressive-mode propagation. Flipping the flag ON also bulk-revokes every currently active PROPAGATED link for the player in the same transaction, so the player\'s enforcement state immediately reflects the cleared status. Flipping back to OFF re-enables propagation but does NOT un-revoke previously-revoked links.
|
|
2712
|
+
* @summary Toggle aggressive-mode immunity
|
|
2713
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2714
|
+
* @param {AdminSetAggressiveModeImmunityRequest} adminSetAggressiveModeImmunityRequest
|
|
2715
|
+
* @param {*} [options] Override http request option.
|
|
2716
|
+
* @throws {RequiredError}
|
|
2717
|
+
*/
|
|
2718
|
+
setAggressiveModeImmunity: (uuid: string, adminSetAggressiveModeImmunityRequest: AdminSetAggressiveModeImmunityRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2719
|
+
/**
|
|
2720
|
+
* Returns every subtotal (bonuses / penalties) and the underlying signal counts that fed compute_trust_factor for this player. The {@code finalScore} matches what GET /admin/player/{uuid} returns; this endpoint adds the per-component detail. Used by the admin UI \"why is this score what it is?\" tooltip. Informational only — trust factor never auto-escalates punishments.
|
|
2721
|
+
* @summary Trust factor breakdown for a player
|
|
2722
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2723
|
+
* @param {*} [options] Override http request option.
|
|
2724
|
+
* @throws {RequiredError}
|
|
2725
|
+
*/
|
|
2726
|
+
trustFactorBreakdown: (uuid: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2727
|
+
/**
|
|
2728
|
+
* Returns one snapshot per day (oldest first) over the requested window. Useful for trend visualization. The daily snapshot job runs at 03:00 UTC; days with no row indicate the snapshot job didn\'t run that day (e.g., outage).
|
|
2729
|
+
* @summary Trust factor history for a player
|
|
2730
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2731
|
+
* @param {number} [days] Window in days (default 30, max 365)
|
|
2732
|
+
* @param {*} [options] Override http request option.
|
|
2733
|
+
* @throws {RequiredError}
|
|
2734
|
+
*/
|
|
2735
|
+
trustFactorHistory: (uuid: string, days?: number, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
2736
|
+
};
|
|
2737
|
+
/**
|
|
2738
|
+
* AdminPlayersApi - functional programming interface
|
|
2739
|
+
*/
|
|
2740
|
+
export declare const AdminPlayersApiFp: (configuration?: Configuration) => {
|
|
2741
|
+
/**
|
|
2742
|
+
* Mark another player as a known-legitimate associate (e.g. roommate). The relationship is stored symmetrically: subsequent aggressive-mode propagation skips this pair as an alt source in either direction. Finer-grained than the per-player aggressive_mode_immunity flag.
|
|
2743
|
+
* @summary Add an alt exemption
|
|
2744
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2745
|
+
* @param {AdminCreateAltExemptionRequest} adminCreateAltExemptionRequest
|
|
2746
|
+
* @param {*} [options] Override http request option.
|
|
2747
|
+
* @throws {RequiredError}
|
|
2748
|
+
*/
|
|
2749
|
+
addAltExemption(uuid: string, adminCreateAltExemptionRequest: AdminCreateAltExemptionRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
|
|
2750
|
+
/**
|
|
2751
|
+
* Soft-revokes every currently active PROPAGATED player_punishment row whose source matches the supplied id. Exactly one of sourcePlayerId / sourceConnectionId must be set. Useful when staff identify a single source as a false positive (e.g. shared NAT, legitimate roommate) and want to undo every link it caused in one operation.
|
|
2752
|
+
* @summary Bulk-revoke PROPAGATED links by source
|
|
2753
|
+
* @param {AdminBulkRevokeRequest} adminBulkRevokeRequest
|
|
2754
|
+
* @param {*} [options] Override http request option.
|
|
2755
|
+
* @throws {RequiredError}
|
|
2756
|
+
*/
|
|
2757
|
+
bulkRevokePropagated(adminBulkRevokeRequest: AdminBulkRevokeRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminBulkRevokeResponse>>;
|
|
2758
|
+
/**
|
|
2759
|
+
* Appends a free-form note (1–4000 chars). Notes are not editable — to revise, post a new one and soft-delete the old.
|
|
2760
|
+
* @summary Create a staff note on a player
|
|
2761
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2762
|
+
* @param {AdminCreatePlayerNoteRequest} adminCreatePlayerNoteRequest
|
|
2763
|
+
* @param {*} [options] Override http request option.
|
|
2764
|
+
* @throws {RequiredError}
|
|
2765
|
+
*/
|
|
2766
|
+
createPlayerNote(uuid: string, adminCreatePlayerNoteRequest: AdminCreatePlayerNoteRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminPlayerNote>>;
|
|
2767
|
+
/**
|
|
2768
|
+
* Marks the note as deleted but keeps the row for audit. Idempotent — 404 if already deleted or unknown id.
|
|
2769
|
+
* @summary Soft-delete a staff note
|
|
2770
|
+
* @param {string} uuid Player Minecraft UUID (routing only)
|
|
2771
|
+
* @param {number} noteId Note id
|
|
2772
|
+
* @param {*} [options] Override http request option.
|
|
2773
|
+
* @throws {RequiredError}
|
|
2774
|
+
*/
|
|
2775
|
+
deletePlayerNote(uuid: string, noteId: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
|
|
2776
|
+
/**
|
|
2777
|
+
* Returns full detail for a single player including all known usernames and punishment scoring.
|
|
2778
|
+
* @summary Get player detail
|
|
2779
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2780
|
+
* @param {*} [options] Override http request option.
|
|
2781
|
+
* @throws {RequiredError}
|
|
2782
|
+
*/
|
|
2783
|
+
getPlayer(uuid: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminPlayerDetailResponse>>;
|
|
2784
|
+
/**
|
|
2785
|
+
* Other players who have been seen on at least one of this player\'s historical connections. Sorted by shared-connection count desc, then last seen desc.
|
|
2786
|
+
* @summary List a player\'s alt accounts
|
|
2787
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2788
|
+
* @param {Pageable} pageable
|
|
2789
|
+
* @param {*} [options] Override http request option.
|
|
2790
|
+
* @throws {RequiredError}
|
|
2791
|
+
*/
|
|
2792
|
+
getPlayerAlts(uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PageAdminAltAccount>>;
|
|
2793
|
+
/**
|
|
2794
|
+
* Paginated list of every connection this player has used (latest first). Same shape as the dashboard connection list, suitable for an infinite-scroll panel inside the player detail modal.
|
|
2795
|
+
* @summary List a player\'s connection history
|
|
2796
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2797
|
+
* @param {Pageable} pageable
|
|
2798
|
+
* @param {*} [options] Override http request option.
|
|
2799
|
+
* @throws {RequiredError}
|
|
2800
|
+
*/
|
|
2801
|
+
getPlayerConnections(uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PageAdminDashboardConnectionResponse>>;
|
|
2802
|
+
/**
|
|
2803
|
+
* Paginated list of every player_punishment row for this player — DIRECT and PROPAGATED, active and revoked. Includes the transfer_note explaining why each propagated link was inserted and the revocation audit trail. The admin UI uses this to render a punishment-history section inside the player detail modal.
|
|
2804
|
+
* @summary List a player\'s full punishment history
|
|
2805
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2806
|
+
* @param {Pageable} pageable
|
|
2807
|
+
* @param {*} [options] Override http request option.
|
|
2808
|
+
* @throws {RequiredError}
|
|
2809
|
+
*/
|
|
2810
|
+
getPlayerPunishments(uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PageAdminPlayerPunishmentResponse>>;
|
|
2811
|
+
/**
|
|
2812
|
+
* Single-row summary: total seconds played, session count, distinct days active, most recent session start, and whether the player is currently online. Computed on demand from player_session. Feeds the trust factor system.
|
|
2813
|
+
* @summary Get a player\'s aggregate session stats
|
|
2814
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2815
|
+
* @param {*} [options] Override http request option.
|
|
2816
|
+
* @throws {RequiredError}
|
|
2817
|
+
*/
|
|
2818
|
+
getSessionStats(uuid: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminPlayerSessionStats>>;
|
|
2819
|
+
/**
|
|
2820
|
+
* Paginated list of the player\'s known-legitimate-associate exemptions. The list reflects rows where this player is the source side (player_id = this); since exemptions are stored symmetrically the reciprocal rows exist too.
|
|
2821
|
+
* @summary List a player\'s alt exemptions
|
|
2822
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2823
|
+
* @param {Pageable} pageable
|
|
2824
|
+
* @param {*} [options] Override http request option.
|
|
2825
|
+
* @throws {RequiredError}
|
|
2826
|
+
*/
|
|
2827
|
+
listAltExemptions(uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PageAdminAltExemption>>;
|
|
2828
|
+
/**
|
|
2829
|
+
* Paginated, newest first. Soft-deleted notes are included; the UI styles them as struck-through.
|
|
2830
|
+
* @summary List staff notes on a player
|
|
2831
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2832
|
+
* @param {Pageable} pageable
|
|
2833
|
+
* @param {*} [options] Override http request option.
|
|
2834
|
+
* @throws {RequiredError}
|
|
2835
|
+
*/
|
|
2836
|
+
listPlayerNotes(uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PageAdminPlayerNote>>;
|
|
2837
|
+
/**
|
|
2838
|
+
* Returns up to 500 players ordered by most recently seen. Optionally filter by UUID or username substring.
|
|
2839
|
+
* @summary List players
|
|
2840
|
+
* @param {Pageable} pageable
|
|
2841
|
+
* @param {string | null} [search] Optional search string matched against UUID or username (case-insensitive substring)
|
|
2842
|
+
* @param {*} [options] Override http request option.
|
|
2843
|
+
* @throws {RequiredError}
|
|
2844
|
+
*/
|
|
2845
|
+
listPlayers(pageable: Pageable, search?: string | null, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PageAdminPlayerSummary>>;
|
|
2846
|
+
/**
|
|
2847
|
+
* Paginated history of player_session rows (active + closed), newest first. Each row records one visit by this player to one game server. Used by the admin player detail view and as the underlying data for the session-stats aggregate.
|
|
2848
|
+
* @summary List a player\'s session history
|
|
2849
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2850
|
+
* @param {Pageable} pageable
|
|
2851
|
+
* @param {*} [options] Override http request option.
|
|
2852
|
+
* @throws {RequiredError}
|
|
2853
|
+
*/
|
|
2854
|
+
listSessions(uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PageAdminPlayerSession>>;
|
|
2855
|
+
/**
|
|
2856
|
+
* Delete the symmetric exemption pair between two players. Both directions are removed.
|
|
2857
|
+
* @summary Remove an alt exemption
|
|
2858
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2859
|
+
* @param {string} altPlayerUuid UUID of the alt to remove from exemption
|
|
2860
|
+
* @param {*} [options] Override http request option.
|
|
2861
|
+
* @throws {RequiredError}
|
|
2862
|
+
*/
|
|
2863
|
+
removeAltExemption(uuid: string, altPlayerUuid: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
|
|
2864
|
+
/**
|
|
2865
|
+
* Soft-deletes a single player_punishment row that was inserted by aggressive-mode propagation. The source punishment record is untouched — only the link between this player and that punishment is removed from enforcement. Rejected with 404 if the row is DIRECT (the original punishment record) or already revoked.
|
|
2866
|
+
* @summary Revoke a propagated punishment link
|
|
2867
|
+
* @param {string} uuid Player Minecraft UUID (for routing/audit context; the link id is the source of truth)
|
|
2868
|
+
* @param {number} playerPunishmentId player_punishment row id
|
|
2869
|
+
* @param {*} [options] Override http request option.
|
|
2870
|
+
* @throws {RequiredError}
|
|
2871
|
+
*/
|
|
2872
|
+
revokePropagatedLink(uuid: string, playerPunishmentId: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
|
|
2873
|
+
/**
|
|
2874
|
+
* Sets whether a player is exempt from aggressive-mode propagation. Flipping the flag ON also bulk-revokes every currently active PROPAGATED link for the player in the same transaction, so the player\'s enforcement state immediately reflects the cleared status. Flipping back to OFF re-enables propagation but does NOT un-revoke previously-revoked links.
|
|
2875
|
+
* @summary Toggle aggressive-mode immunity
|
|
2876
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2877
|
+
* @param {AdminSetAggressiveModeImmunityRequest} adminSetAggressiveModeImmunityRequest
|
|
2878
|
+
* @param {*} [options] Override http request option.
|
|
2879
|
+
* @throws {RequiredError}
|
|
2880
|
+
*/
|
|
2881
|
+
setAggressiveModeImmunity(uuid: string, adminSetAggressiveModeImmunityRequest: AdminSetAggressiveModeImmunityRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminPlayerDetailResponse>>;
|
|
2882
|
+
/**
|
|
2883
|
+
* Returns every subtotal (bonuses / penalties) and the underlying signal counts that fed compute_trust_factor for this player. The {@code finalScore} matches what GET /admin/player/{uuid} returns; this endpoint adds the per-component detail. Used by the admin UI \"why is this score what it is?\" tooltip. Informational only — trust factor never auto-escalates punishments.
|
|
2884
|
+
* @summary Trust factor breakdown for a player
|
|
2885
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2886
|
+
* @param {*} [options] Override http request option.
|
|
2887
|
+
* @throws {RequiredError}
|
|
2888
|
+
*/
|
|
2889
|
+
trustFactorBreakdown(uuid: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminTrustFactorBreakdown>>;
|
|
2890
|
+
/**
|
|
2891
|
+
* Returns one snapshot per day (oldest first) over the requested window. Useful for trend visualization. The daily snapshot job runs at 03:00 UTC; days with no row indicate the snapshot job didn\'t run that day (e.g., outage).
|
|
2892
|
+
* @summary Trust factor history for a player
|
|
2893
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2894
|
+
* @param {number} [days] Window in days (default 30, max 365)
|
|
2895
|
+
* @param {*} [options] Override http request option.
|
|
2896
|
+
* @throws {RequiredError}
|
|
2897
|
+
*/
|
|
2898
|
+
trustFactorHistory(uuid: string, days?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminTrustFactorHistoryEntry>>;
|
|
2899
|
+
};
|
|
2900
|
+
/**
|
|
2901
|
+
* AdminPlayersApi - factory interface
|
|
2902
|
+
*/
|
|
2903
|
+
export declare const AdminPlayersApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
|
|
2904
|
+
/**
|
|
2905
|
+
* Mark another player as a known-legitimate associate (e.g. roommate). The relationship is stored symmetrically: subsequent aggressive-mode propagation skips this pair as an alt source in either direction. Finer-grained than the per-player aggressive_mode_immunity flag.
|
|
2906
|
+
* @summary Add an alt exemption
|
|
2907
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2908
|
+
* @param {AdminCreateAltExemptionRequest} adminCreateAltExemptionRequest
|
|
2909
|
+
* @param {*} [options] Override http request option.
|
|
2910
|
+
* @throws {RequiredError}
|
|
2911
|
+
*/
|
|
2912
|
+
addAltExemption(uuid: string, adminCreateAltExemptionRequest: AdminCreateAltExemptionRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
|
|
2913
|
+
/**
|
|
2914
|
+
* Soft-revokes every currently active PROPAGATED player_punishment row whose source matches the supplied id. Exactly one of sourcePlayerId / sourceConnectionId must be set. Useful when staff identify a single source as a false positive (e.g. shared NAT, legitimate roommate) and want to undo every link it caused in one operation.
|
|
2915
|
+
* @summary Bulk-revoke PROPAGATED links by source
|
|
2916
|
+
* @param {AdminBulkRevokeRequest} adminBulkRevokeRequest
|
|
2917
|
+
* @param {*} [options] Override http request option.
|
|
2918
|
+
* @throws {RequiredError}
|
|
2919
|
+
*/
|
|
2920
|
+
bulkRevokePropagated(adminBulkRevokeRequest: AdminBulkRevokeRequest, options?: RawAxiosRequestConfig): AxiosPromise<AdminBulkRevokeResponse>;
|
|
2921
|
+
/**
|
|
2922
|
+
* Appends a free-form note (1–4000 chars). Notes are not editable — to revise, post a new one and soft-delete the old.
|
|
2923
|
+
* @summary Create a staff note on a player
|
|
2924
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2925
|
+
* @param {AdminCreatePlayerNoteRequest} adminCreatePlayerNoteRequest
|
|
2926
|
+
* @param {*} [options] Override http request option.
|
|
2927
|
+
* @throws {RequiredError}
|
|
2928
|
+
*/
|
|
2929
|
+
createPlayerNote(uuid: string, adminCreatePlayerNoteRequest: AdminCreatePlayerNoteRequest, options?: RawAxiosRequestConfig): AxiosPromise<AdminPlayerNote>;
|
|
2930
|
+
/**
|
|
2931
|
+
* Marks the note as deleted but keeps the row for audit. Idempotent — 404 if already deleted or unknown id.
|
|
2932
|
+
* @summary Soft-delete a staff note
|
|
2933
|
+
* @param {string} uuid Player Minecraft UUID (routing only)
|
|
2934
|
+
* @param {number} noteId Note id
|
|
2935
|
+
* @param {*} [options] Override http request option.
|
|
2936
|
+
* @throws {RequiredError}
|
|
2937
|
+
*/
|
|
2938
|
+
deletePlayerNote(uuid: string, noteId: number, options?: RawAxiosRequestConfig): AxiosPromise<void>;
|
|
2939
|
+
/**
|
|
2940
|
+
* Returns full detail for a single player including all known usernames and punishment scoring.
|
|
2941
|
+
* @summary Get player detail
|
|
2942
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2943
|
+
* @param {*} [options] Override http request option.
|
|
2944
|
+
* @throws {RequiredError}
|
|
2945
|
+
*/
|
|
2946
|
+
getPlayer(uuid: string, options?: RawAxiosRequestConfig): AxiosPromise<AdminPlayerDetailResponse>;
|
|
2947
|
+
/**
|
|
2948
|
+
* Other players who have been seen on at least one of this player\'s historical connections. Sorted by shared-connection count desc, then last seen desc.
|
|
2949
|
+
* @summary List a player\'s alt accounts
|
|
2950
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2951
|
+
* @param {Pageable} pageable
|
|
2952
|
+
* @param {*} [options] Override http request option.
|
|
2953
|
+
* @throws {RequiredError}
|
|
2954
|
+
*/
|
|
2955
|
+
getPlayerAlts(uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig): AxiosPromise<PageAdminAltAccount>;
|
|
2956
|
+
/**
|
|
2957
|
+
* Paginated list of every connection this player has used (latest first). Same shape as the dashboard connection list, suitable for an infinite-scroll panel inside the player detail modal.
|
|
2958
|
+
* @summary List a player\'s connection history
|
|
2959
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2960
|
+
* @param {Pageable} pageable
|
|
2961
|
+
* @param {*} [options] Override http request option.
|
|
2962
|
+
* @throws {RequiredError}
|
|
2963
|
+
*/
|
|
2964
|
+
getPlayerConnections(uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig): AxiosPromise<PageAdminDashboardConnectionResponse>;
|
|
2965
|
+
/**
|
|
2966
|
+
* Paginated list of every player_punishment row for this player — DIRECT and PROPAGATED, active and revoked. Includes the transfer_note explaining why each propagated link was inserted and the revocation audit trail. The admin UI uses this to render a punishment-history section inside the player detail modal.
|
|
2967
|
+
* @summary List a player\'s full punishment history
|
|
2968
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2969
|
+
* @param {Pageable} pageable
|
|
2970
|
+
* @param {*} [options] Override http request option.
|
|
2971
|
+
* @throws {RequiredError}
|
|
2972
|
+
*/
|
|
2973
|
+
getPlayerPunishments(uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig): AxiosPromise<PageAdminPlayerPunishmentResponse>;
|
|
2974
|
+
/**
|
|
2975
|
+
* Single-row summary: total seconds played, session count, distinct days active, most recent session start, and whether the player is currently online. Computed on demand from player_session. Feeds the trust factor system.
|
|
2976
|
+
* @summary Get a player\'s aggregate session stats
|
|
2977
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2978
|
+
* @param {*} [options] Override http request option.
|
|
2979
|
+
* @throws {RequiredError}
|
|
2980
|
+
*/
|
|
2981
|
+
getSessionStats(uuid: string, options?: RawAxiosRequestConfig): AxiosPromise<AdminPlayerSessionStats>;
|
|
2982
|
+
/**
|
|
2983
|
+
* Paginated list of the player\'s known-legitimate-associate exemptions. The list reflects rows where this player is the source side (player_id = this); since exemptions are stored symmetrically the reciprocal rows exist too.
|
|
2984
|
+
* @summary List a player\'s alt exemptions
|
|
2985
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2986
|
+
* @param {Pageable} pageable
|
|
2987
|
+
* @param {*} [options] Override http request option.
|
|
2988
|
+
* @throws {RequiredError}
|
|
2989
|
+
*/
|
|
2990
|
+
listAltExemptions(uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig): AxiosPromise<PageAdminAltExemption>;
|
|
2991
|
+
/**
|
|
2992
|
+
* Paginated, newest first. Soft-deleted notes are included; the UI styles them as struck-through.
|
|
2993
|
+
* @summary List staff notes on a player
|
|
2994
|
+
* @param {string} uuid Player Minecraft UUID
|
|
2995
|
+
* @param {Pageable} pageable
|
|
2996
|
+
* @param {*} [options] Override http request option.
|
|
2997
|
+
* @throws {RequiredError}
|
|
2998
|
+
*/
|
|
2999
|
+
listPlayerNotes(uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig): AxiosPromise<PageAdminPlayerNote>;
|
|
3000
|
+
/**
|
|
3001
|
+
* Returns up to 500 players ordered by most recently seen. Optionally filter by UUID or username substring.
|
|
3002
|
+
* @summary List players
|
|
3003
|
+
* @param {Pageable} pageable
|
|
3004
|
+
* @param {string | null} [search] Optional search string matched against UUID or username (case-insensitive substring)
|
|
3005
|
+
* @param {*} [options] Override http request option.
|
|
3006
|
+
* @throws {RequiredError}
|
|
3007
|
+
*/
|
|
3008
|
+
listPlayers(pageable: Pageable, search?: string | null, options?: RawAxiosRequestConfig): AxiosPromise<PageAdminPlayerSummary>;
|
|
3009
|
+
/**
|
|
3010
|
+
* Paginated history of player_session rows (active + closed), newest first. Each row records one visit by this player to one game server. Used by the admin player detail view and as the underlying data for the session-stats aggregate.
|
|
3011
|
+
* @summary List a player\'s session history
|
|
3012
|
+
* @param {string} uuid Player Minecraft UUID
|
|
3013
|
+
* @param {Pageable} pageable
|
|
3014
|
+
* @param {*} [options] Override http request option.
|
|
3015
|
+
* @throws {RequiredError}
|
|
3016
|
+
*/
|
|
3017
|
+
listSessions(uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig): AxiosPromise<PageAdminPlayerSession>;
|
|
3018
|
+
/**
|
|
3019
|
+
* Delete the symmetric exemption pair between two players. Both directions are removed.
|
|
3020
|
+
* @summary Remove an alt exemption
|
|
3021
|
+
* @param {string} uuid Player Minecraft UUID
|
|
3022
|
+
* @param {string} altPlayerUuid UUID of the alt to remove from exemption
|
|
3023
|
+
* @param {*} [options] Override http request option.
|
|
3024
|
+
* @throws {RequiredError}
|
|
3025
|
+
*/
|
|
3026
|
+
removeAltExemption(uuid: string, altPlayerUuid: string, options?: RawAxiosRequestConfig): AxiosPromise<void>;
|
|
3027
|
+
/**
|
|
3028
|
+
* Soft-deletes a single player_punishment row that was inserted by aggressive-mode propagation. The source punishment record is untouched — only the link between this player and that punishment is removed from enforcement. Rejected with 404 if the row is DIRECT (the original punishment record) or already revoked.
|
|
3029
|
+
* @summary Revoke a propagated punishment link
|
|
3030
|
+
* @param {string} uuid Player Minecraft UUID (for routing/audit context; the link id is the source of truth)
|
|
3031
|
+
* @param {number} playerPunishmentId player_punishment row id
|
|
3032
|
+
* @param {*} [options] Override http request option.
|
|
3033
|
+
* @throws {RequiredError}
|
|
3034
|
+
*/
|
|
3035
|
+
revokePropagatedLink(uuid: string, playerPunishmentId: number, options?: RawAxiosRequestConfig): AxiosPromise<void>;
|
|
3036
|
+
/**
|
|
3037
|
+
* Sets whether a player is exempt from aggressive-mode propagation. Flipping the flag ON also bulk-revokes every currently active PROPAGATED link for the player in the same transaction, so the player\'s enforcement state immediately reflects the cleared status. Flipping back to OFF re-enables propagation but does NOT un-revoke previously-revoked links.
|
|
3038
|
+
* @summary Toggle aggressive-mode immunity
|
|
3039
|
+
* @param {string} uuid Player Minecraft UUID
|
|
3040
|
+
* @param {AdminSetAggressiveModeImmunityRequest} adminSetAggressiveModeImmunityRequest
|
|
1153
3041
|
* @param {*} [options] Override http request option.
|
|
1154
3042
|
* @throws {RequiredError}
|
|
1155
3043
|
*/
|
|
1156
|
-
|
|
3044
|
+
setAggressiveModeImmunity(uuid: string, adminSetAggressiveModeImmunityRequest: AdminSetAggressiveModeImmunityRequest, options?: RawAxiosRequestConfig): AxiosPromise<AdminPlayerDetailResponse>;
|
|
1157
3045
|
/**
|
|
1158
|
-
* Returns
|
|
1159
|
-
* @summary
|
|
1160
|
-
* @param {
|
|
1161
|
-
* @param {number | null} [createdBefore] Filter connections before this epoch timestamp in milliseconds
|
|
1162
|
-
* @param {string | null} [ipAddress] Filter by IP address
|
|
1163
|
-
* @param {string | null} [uuid] Filter by player UUID
|
|
1164
|
-
* @param {boolean | null} [isVpn] Filter by VPN status (true=VPN, false=not VPN)
|
|
1165
|
-
* @param {number | null} [page] Page number for pagination
|
|
1166
|
-
* @param {number | null} [limit] Maximum number of records to return
|
|
3046
|
+
* Returns every subtotal (bonuses / penalties) and the underlying signal counts that fed compute_trust_factor for this player. The {@code finalScore} matches what GET /admin/player/{uuid} returns; this endpoint adds the per-component detail. Used by the admin UI \"why is this score what it is?\" tooltip. Informational only — trust factor never auto-escalates punishments.
|
|
3047
|
+
* @summary Trust factor breakdown for a player
|
|
3048
|
+
* @param {string} uuid Player Minecraft UUID
|
|
1167
3049
|
* @param {*} [options] Override http request option.
|
|
1168
3050
|
* @throws {RequiredError}
|
|
1169
3051
|
*/
|
|
1170
|
-
|
|
3052
|
+
trustFactorBreakdown(uuid: string, options?: RawAxiosRequestConfig): AxiosPromise<AdminTrustFactorBreakdown>;
|
|
1171
3053
|
/**
|
|
1172
|
-
*
|
|
1173
|
-
* @summary
|
|
1174
|
-
* @param {
|
|
1175
|
-
* @param {
|
|
3054
|
+
* Returns one snapshot per day (oldest first) over the requested window. Useful for trend visualization. The daily snapshot job runs at 03:00 UTC; days with no row indicate the snapshot job didn\'t run that day (e.g., outage).
|
|
3055
|
+
* @summary Trust factor history for a player
|
|
3056
|
+
* @param {string} uuid Player Minecraft UUID
|
|
3057
|
+
* @param {number} [days] Window in days (default 30, max 365)
|
|
1176
3058
|
* @param {*} [options] Override http request option.
|
|
1177
3059
|
* @throws {RequiredError}
|
|
1178
3060
|
*/
|
|
1179
|
-
|
|
3061
|
+
trustFactorHistory(uuid: string, days?: number, options?: RawAxiosRequestConfig): AxiosPromise<AdminTrustFactorHistoryEntry>;
|
|
1180
3062
|
};
|
|
1181
3063
|
/**
|
|
1182
|
-
*
|
|
3064
|
+
* AdminPlayersApi - object-oriented interface
|
|
1183
3065
|
*/
|
|
1184
|
-
export declare class
|
|
3066
|
+
export declare class AdminPlayersApi extends BaseAPI {
|
|
1185
3067
|
/**
|
|
1186
|
-
*
|
|
1187
|
-
* @summary
|
|
1188
|
-
* @param {
|
|
3068
|
+
* Mark another player as a known-legitimate associate (e.g. roommate). The relationship is stored symmetrically: subsequent aggressive-mode propagation skips this pair as an alt source in either direction. Finer-grained than the per-player aggressive_mode_immunity flag.
|
|
3069
|
+
* @summary Add an alt exemption
|
|
3070
|
+
* @param {string} uuid Player Minecraft UUID
|
|
3071
|
+
* @param {AdminCreateAltExemptionRequest} adminCreateAltExemptionRequest
|
|
1189
3072
|
* @param {*} [options] Override http request option.
|
|
1190
3073
|
* @throws {RequiredError}
|
|
1191
3074
|
*/
|
|
1192
|
-
|
|
3075
|
+
addAltExemption(uuid: string, adminCreateAltExemptionRequest: AdminCreateAltExemptionRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
|
|
1193
3076
|
/**
|
|
1194
|
-
*
|
|
1195
|
-
* @summary
|
|
1196
|
-
* @param {
|
|
1197
|
-
* @param {string | null} [uuid] Filter by player UUID
|
|
1198
|
-
* @param {boolean | null} [isVpn] Filter by VPN status
|
|
1199
|
-
* @param {number | null} [page] Page number (1-indexed)
|
|
1200
|
-
* @param {number | null} [limit] Page size
|
|
3077
|
+
* Soft-revokes every currently active PROPAGATED player_punishment row whose source matches the supplied id. Exactly one of sourcePlayerId / sourceConnectionId must be set. Useful when staff identify a single source as a false positive (e.g. shared NAT, legitimate roommate) and want to undo every link it caused in one operation.
|
|
3078
|
+
* @summary Bulk-revoke PROPAGATED links by source
|
|
3079
|
+
* @param {AdminBulkRevokeRequest} adminBulkRevokeRequest
|
|
1201
3080
|
* @param {*} [options] Override http request option.
|
|
1202
3081
|
* @throws {RequiredError}
|
|
1203
3082
|
*/
|
|
1204
|
-
|
|
3083
|
+
bulkRevokePropagated(adminBulkRevokeRequest: AdminBulkRevokeRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminBulkRevokeResponse, any, {}>>;
|
|
1205
3084
|
/**
|
|
1206
|
-
*
|
|
1207
|
-
* @summary
|
|
1208
|
-
* @param {
|
|
1209
|
-
* @param {
|
|
1210
|
-
* @param {string | null} [ipAddress] Filter by IP address
|
|
1211
|
-
* @param {string | null} [uuid] Filter by player UUID
|
|
1212
|
-
* @param {boolean | null} [isVpn] Filter by VPN status (true=VPN, false=not VPN)
|
|
1213
|
-
* @param {number | null} [page] Page number for pagination
|
|
1214
|
-
* @param {number | null} [limit] Maximum number of records to return
|
|
3085
|
+
* Appends a free-form note (1–4000 chars). Notes are not editable — to revise, post a new one and soft-delete the old.
|
|
3086
|
+
* @summary Create a staff note on a player
|
|
3087
|
+
* @param {string} uuid Player Minecraft UUID
|
|
3088
|
+
* @param {AdminCreatePlayerNoteRequest} adminCreatePlayerNoteRequest
|
|
1215
3089
|
* @param {*} [options] Override http request option.
|
|
1216
3090
|
* @throws {RequiredError}
|
|
1217
3091
|
*/
|
|
1218
|
-
|
|
3092
|
+
createPlayerNote(uuid: string, adminCreatePlayerNoteRequest: AdminCreatePlayerNoteRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminPlayerNote, any, {}>>;
|
|
1219
3093
|
/**
|
|
1220
|
-
*
|
|
1221
|
-
* @summary
|
|
1222
|
-
* @param {
|
|
1223
|
-
* @param {
|
|
3094
|
+
* Marks the note as deleted but keeps the row for audit. Idempotent — 404 if already deleted or unknown id.
|
|
3095
|
+
* @summary Soft-delete a staff note
|
|
3096
|
+
* @param {string} uuid Player Minecraft UUID (routing only)
|
|
3097
|
+
* @param {number} noteId Note id
|
|
1224
3098
|
* @param {*} [options] Override http request option.
|
|
1225
3099
|
* @throws {RequiredError}
|
|
1226
3100
|
*/
|
|
1227
|
-
|
|
1228
|
-
}
|
|
1229
|
-
/**
|
|
1230
|
-
* AdminDashboardApi - axios parameter creator
|
|
1231
|
-
*/
|
|
1232
|
-
export declare const AdminDashboardApiAxiosParamCreator: (configuration?: Configuration) => {
|
|
3101
|
+
deletePlayerNote(uuid: string, noteId: number, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
|
|
1233
3102
|
/**
|
|
1234
|
-
* Returns
|
|
1235
|
-
* @summary Get
|
|
3103
|
+
* Returns full detail for a single player including all known usernames and punishment scoring.
|
|
3104
|
+
* @summary Get player detail
|
|
3105
|
+
* @param {string} uuid Player Minecraft UUID
|
|
1236
3106
|
* @param {*} [options] Override http request option.
|
|
1237
3107
|
* @throws {RequiredError}
|
|
1238
3108
|
*/
|
|
1239
|
-
|
|
1240
|
-
};
|
|
1241
|
-
/**
|
|
1242
|
-
* AdminDashboardApi - functional programming interface
|
|
1243
|
-
*/
|
|
1244
|
-
export declare const AdminDashboardApiFp: (configuration?: Configuration) => {
|
|
3109
|
+
getPlayer(uuid: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminPlayerDetailResponse, any, {}>>;
|
|
1245
3110
|
/**
|
|
1246
|
-
*
|
|
1247
|
-
* @summary
|
|
3111
|
+
* Other players who have been seen on at least one of this player\'s historical connections. Sorted by shared-connection count desc, then last seen desc.
|
|
3112
|
+
* @summary List a player\'s alt accounts
|
|
3113
|
+
* @param {string} uuid Player Minecraft UUID
|
|
3114
|
+
* @param {Pageable} pageable
|
|
1248
3115
|
* @param {*} [options] Override http request option.
|
|
1249
3116
|
* @throws {RequiredError}
|
|
1250
3117
|
*/
|
|
1251
|
-
|
|
1252
|
-
};
|
|
1253
|
-
/**
|
|
1254
|
-
* AdminDashboardApi - factory interface
|
|
1255
|
-
*/
|
|
1256
|
-
export declare const AdminDashboardApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
|
|
3118
|
+
getPlayerAlts(uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<PageAdminAltAccount, any, {}>>;
|
|
1257
3119
|
/**
|
|
1258
|
-
*
|
|
1259
|
-
* @summary
|
|
3120
|
+
* Paginated list of every connection this player has used (latest first). Same shape as the dashboard connection list, suitable for an infinite-scroll panel inside the player detail modal.
|
|
3121
|
+
* @summary List a player\'s connection history
|
|
3122
|
+
* @param {string} uuid Player Minecraft UUID
|
|
3123
|
+
* @param {Pageable} pageable
|
|
1260
3124
|
* @param {*} [options] Override http request option.
|
|
1261
3125
|
* @throws {RequiredError}
|
|
1262
3126
|
*/
|
|
1263
|
-
|
|
1264
|
-
};
|
|
1265
|
-
/**
|
|
1266
|
-
* AdminDashboardApi - object-oriented interface
|
|
1267
|
-
*/
|
|
1268
|
-
export declare class AdminDashboardApi extends BaseAPI {
|
|
3127
|
+
getPlayerConnections(uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<PageAdminDashboardConnectionResponse, any, {}>>;
|
|
1269
3128
|
/**
|
|
1270
|
-
*
|
|
1271
|
-
* @summary
|
|
3129
|
+
* Paginated list of every player_punishment row for this player — DIRECT and PROPAGATED, active and revoked. Includes the transfer_note explaining why each propagated link was inserted and the revocation audit trail. The admin UI uses this to render a punishment-history section inside the player detail modal.
|
|
3130
|
+
* @summary List a player\'s full punishment history
|
|
3131
|
+
* @param {string} uuid Player Minecraft UUID
|
|
3132
|
+
* @param {Pageable} pageable
|
|
1272
3133
|
* @param {*} [options] Override http request option.
|
|
1273
3134
|
* @throws {RequiredError}
|
|
1274
3135
|
*/
|
|
1275
|
-
|
|
1276
|
-
}
|
|
1277
|
-
/**
|
|
1278
|
-
* AdminPlayersApi - axios parameter creator
|
|
1279
|
-
*/
|
|
1280
|
-
export declare const AdminPlayersApiAxiosParamCreator: (configuration?: Configuration) => {
|
|
3136
|
+
getPlayerPunishments(uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<PageAdminPlayerPunishmentResponse, any, {}>>;
|
|
1281
3137
|
/**
|
|
1282
|
-
*
|
|
1283
|
-
* @summary Get player
|
|
3138
|
+
* Single-row summary: total seconds played, session count, distinct days active, most recent session start, and whether the player is currently online. Computed on demand from player_session. Feeds the trust factor system.
|
|
3139
|
+
* @summary Get a player\'s aggregate session stats
|
|
1284
3140
|
* @param {string} uuid Player Minecraft UUID
|
|
1285
3141
|
* @param {*} [options] Override http request option.
|
|
1286
3142
|
* @throws {RequiredError}
|
|
1287
3143
|
*/
|
|
1288
|
-
|
|
3144
|
+
getSessionStats(uuid: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminPlayerSessionStats, any, {}>>;
|
|
1289
3145
|
/**
|
|
1290
|
-
*
|
|
1291
|
-
* @summary List
|
|
1292
|
-
* @param {
|
|
1293
|
-
* @param {
|
|
1294
|
-
* @param {string | null} [search] Optional search string matched against UUID or username (case-insensitive substring)
|
|
3146
|
+
* Paginated list of the player\'s known-legitimate-associate exemptions. The list reflects rows where this player is the source side (player_id = this); since exemptions are stored symmetrically the reciprocal rows exist too.
|
|
3147
|
+
* @summary List a player\'s alt exemptions
|
|
3148
|
+
* @param {string} uuid Player Minecraft UUID
|
|
3149
|
+
* @param {Pageable} pageable
|
|
1295
3150
|
* @param {*} [options] Override http request option.
|
|
1296
3151
|
* @throws {RequiredError}
|
|
1297
3152
|
*/
|
|
1298
|
-
|
|
1299
|
-
};
|
|
1300
|
-
/**
|
|
1301
|
-
* AdminPlayersApi - functional programming interface
|
|
1302
|
-
*/
|
|
1303
|
-
export declare const AdminPlayersApiFp: (configuration?: Configuration) => {
|
|
3153
|
+
listAltExemptions(uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<PageAdminAltExemption, any, {}>>;
|
|
1304
3154
|
/**
|
|
1305
|
-
*
|
|
1306
|
-
* @summary
|
|
3155
|
+
* Paginated, newest first. Soft-deleted notes are included; the UI styles them as struck-through.
|
|
3156
|
+
* @summary List staff notes on a player
|
|
1307
3157
|
* @param {string} uuid Player Minecraft UUID
|
|
3158
|
+
* @param {Pageable} pageable
|
|
1308
3159
|
* @param {*} [options] Override http request option.
|
|
1309
3160
|
* @throws {RequiredError}
|
|
1310
3161
|
*/
|
|
1311
|
-
|
|
3162
|
+
listPlayerNotes(uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<PageAdminPlayerNote, any, {}>>;
|
|
1312
3163
|
/**
|
|
1313
3164
|
* Returns up to 500 players ordered by most recently seen. Optionally filter by UUID or username substring.
|
|
1314
3165
|
* @summary List players
|
|
1315
|
-
* @param {
|
|
1316
|
-
* @param {number} limit Page size
|
|
3166
|
+
* @param {Pageable} pageable
|
|
1317
3167
|
* @param {string | null} [search] Optional search string matched against UUID or username (case-insensitive substring)
|
|
1318
3168
|
* @param {*} [options] Override http request option.
|
|
1319
3169
|
* @throws {RequiredError}
|
|
1320
3170
|
*/
|
|
1321
|
-
listPlayers(
|
|
1322
|
-
};
|
|
1323
|
-
/**
|
|
1324
|
-
* AdminPlayersApi - factory interface
|
|
1325
|
-
*/
|
|
1326
|
-
export declare const AdminPlayersApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
|
|
3171
|
+
listPlayers(pageable: Pageable, search?: string | null, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<PageAdminPlayerSummary, any, {}>>;
|
|
1327
3172
|
/**
|
|
1328
|
-
*
|
|
1329
|
-
* @summary
|
|
3173
|
+
* Paginated history of player_session rows (active + closed), newest first. Each row records one visit by this player to one game server. Used by the admin player detail view and as the underlying data for the session-stats aggregate.
|
|
3174
|
+
* @summary List a player\'s session history
|
|
1330
3175
|
* @param {string} uuid Player Minecraft UUID
|
|
3176
|
+
* @param {Pageable} pageable
|
|
1331
3177
|
* @param {*} [options] Override http request option.
|
|
1332
3178
|
* @throws {RequiredError}
|
|
1333
3179
|
*/
|
|
1334
|
-
|
|
3180
|
+
listSessions(uuid: string, pageable: Pageable, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<PageAdminPlayerSession, any, {}>>;
|
|
1335
3181
|
/**
|
|
1336
|
-
*
|
|
1337
|
-
* @summary
|
|
1338
|
-
* @param {
|
|
1339
|
-
* @param {
|
|
1340
|
-
* @param {string | null} [search] Optional search string matched against UUID or username (case-insensitive substring)
|
|
3182
|
+
* Delete the symmetric exemption pair between two players. Both directions are removed.
|
|
3183
|
+
* @summary Remove an alt exemption
|
|
3184
|
+
* @param {string} uuid Player Minecraft UUID
|
|
3185
|
+
* @param {string} altPlayerUuid UUID of the alt to remove from exemption
|
|
1341
3186
|
* @param {*} [options] Override http request option.
|
|
1342
3187
|
* @throws {RequiredError}
|
|
1343
3188
|
*/
|
|
1344
|
-
|
|
1345
|
-
};
|
|
1346
|
-
/**
|
|
1347
|
-
* AdminPlayersApi - object-oriented interface
|
|
1348
|
-
*/
|
|
1349
|
-
export declare class AdminPlayersApi extends BaseAPI {
|
|
3189
|
+
removeAltExemption(uuid: string, altPlayerUuid: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
|
|
1350
3190
|
/**
|
|
1351
|
-
*
|
|
1352
|
-
* @summary
|
|
3191
|
+
* Soft-deletes a single player_punishment row that was inserted by aggressive-mode propagation. The source punishment record is untouched — only the link between this player and that punishment is removed from enforcement. Rejected with 404 if the row is DIRECT (the original punishment record) or already revoked.
|
|
3192
|
+
* @summary Revoke a propagated punishment link
|
|
3193
|
+
* @param {string} uuid Player Minecraft UUID (for routing/audit context; the link id is the source of truth)
|
|
3194
|
+
* @param {number} playerPunishmentId player_punishment row id
|
|
3195
|
+
* @param {*} [options] Override http request option.
|
|
3196
|
+
* @throws {RequiredError}
|
|
3197
|
+
*/
|
|
3198
|
+
revokePropagatedLink(uuid: string, playerPunishmentId: number, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
|
|
3199
|
+
/**
|
|
3200
|
+
* Sets whether a player is exempt from aggressive-mode propagation. Flipping the flag ON also bulk-revokes every currently active PROPAGATED link for the player in the same transaction, so the player\'s enforcement state immediately reflects the cleared status. Flipping back to OFF re-enables propagation but does NOT un-revoke previously-revoked links.
|
|
3201
|
+
* @summary Toggle aggressive-mode immunity
|
|
1353
3202
|
* @param {string} uuid Player Minecraft UUID
|
|
3203
|
+
* @param {AdminSetAggressiveModeImmunityRequest} adminSetAggressiveModeImmunityRequest
|
|
1354
3204
|
* @param {*} [options] Override http request option.
|
|
1355
3205
|
* @throws {RequiredError}
|
|
1356
3206
|
*/
|
|
1357
|
-
|
|
3207
|
+
setAggressiveModeImmunity(uuid: string, adminSetAggressiveModeImmunityRequest: AdminSetAggressiveModeImmunityRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminPlayerDetailResponse, any, {}>>;
|
|
1358
3208
|
/**
|
|
1359
|
-
* Returns
|
|
1360
|
-
* @summary
|
|
1361
|
-
* @param {
|
|
1362
|
-
* @param {
|
|
1363
|
-
* @
|
|
3209
|
+
* Returns every subtotal (bonuses / penalties) and the underlying signal counts that fed compute_trust_factor for this player. The {@code finalScore} matches what GET /admin/player/{uuid} returns; this endpoint adds the per-component detail. Used by the admin UI \"why is this score what it is?\" tooltip. Informational only — trust factor never auto-escalates punishments.
|
|
3210
|
+
* @summary Trust factor breakdown for a player
|
|
3211
|
+
* @param {string} uuid Player Minecraft UUID
|
|
3212
|
+
* @param {*} [options] Override http request option.
|
|
3213
|
+
* @throws {RequiredError}
|
|
3214
|
+
*/
|
|
3215
|
+
trustFactorBreakdown(uuid: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminTrustFactorBreakdown, any, {}>>;
|
|
3216
|
+
/**
|
|
3217
|
+
* Returns one snapshot per day (oldest first) over the requested window. Useful for trend visualization. The daily snapshot job runs at 03:00 UTC; days with no row indicate the snapshot job didn\'t run that day (e.g., outage).
|
|
3218
|
+
* @summary Trust factor history for a player
|
|
3219
|
+
* @param {string} uuid Player Minecraft UUID
|
|
3220
|
+
* @param {number} [days] Window in days (default 30, max 365)
|
|
1364
3221
|
* @param {*} [options] Override http request option.
|
|
1365
3222
|
* @throws {RequiredError}
|
|
1366
3223
|
*/
|
|
1367
|
-
|
|
3224
|
+
trustFactorHistory(uuid: string, days?: number, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminTrustFactorHistoryEntry, any, {}>>;
|
|
1368
3225
|
}
|
|
1369
3226
|
/**
|
|
1370
3227
|
* AdminPunishmentsApi - axios parameter creator
|
|
@@ -1386,21 +3243,29 @@ export declare const AdminPunishmentsApiAxiosParamCreator: (configuration?: Conf
|
|
|
1386
3243
|
* @throws {RequiredError}
|
|
1387
3244
|
*/
|
|
1388
3245
|
createDraft: (adminCreatePunishmentDraftRequest: AdminCreatePunishmentDraftRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
3246
|
+
/**
|
|
3247
|
+
* 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.
|
|
3248
|
+
* @summary Edit a punishment
|
|
3249
|
+
* @param {number} id Punishment id
|
|
3250
|
+
* @param {AdminUpdatePunishmentRequest} adminUpdatePunishmentRequest
|
|
3251
|
+
* @param {*} [options] Override http request option.
|
|
3252
|
+
* @throws {RequiredError}
|
|
3253
|
+
*/
|
|
3254
|
+
editPunishment: (id: number, adminUpdatePunishmentRequest: AdminUpdatePunishmentRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
1389
3255
|
/**
|
|
1390
3256
|
* Returns a paginated list of punishments with optional filtering by player UUID, username, IP address, type, and date range.
|
|
1391
3257
|
* @summary List punishments
|
|
1392
|
-
* @param {
|
|
1393
|
-
* @param {
|
|
1394
|
-
* @param {string | null} [
|
|
1395
|
-
* @param {string | null} [
|
|
1396
|
-
* @param {
|
|
1397
|
-
* @param {
|
|
1398
|
-
* @param {number | null} [
|
|
1399
|
-
* @param {number | null} [issuedBefore] Filter punishments issued before this epoch timestamp (ms)
|
|
3258
|
+
* @param {Pageable} pageable
|
|
3259
|
+
* @param {string | null} [uuid]
|
|
3260
|
+
* @param {string | null} [username]
|
|
3261
|
+
* @param {string | null} [ipAddress]
|
|
3262
|
+
* @param {Array<PunishmentType> | null} [type]
|
|
3263
|
+
* @param {number | null} [issuedAfter]
|
|
3264
|
+
* @param {number | null} [issuedBefore]
|
|
1400
3265
|
* @param {*} [options] Override http request option.
|
|
1401
3266
|
* @throws {RequiredError}
|
|
1402
3267
|
*/
|
|
1403
|
-
getPunishments: (
|
|
3268
|
+
getPunishments: (pageable: Pageable, uuid?: string | null, username?: string | null, ipAddress?: string | null, type?: Array<PunishmentType> | null, issuedAfter?: number | null, issuedBefore?: number | null, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
1404
3269
|
/**
|
|
1405
3270
|
* Search for players by UUID or username, or look up all players associated with an IP address.
|
|
1406
3271
|
* @summary Search punishment targets
|
|
@@ -1430,21 +3295,29 @@ export declare const AdminPunishmentsApiFp: (configuration?: Configuration) => {
|
|
|
1430
3295
|
* @throws {RequiredError}
|
|
1431
3296
|
*/
|
|
1432
3297
|
createDraft(adminCreatePunishmentDraftRequest: AdminCreatePunishmentDraftRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminPunishmentDraftResponse>>;
|
|
3298
|
+
/**
|
|
3299
|
+
* 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.
|
|
3300
|
+
* @summary Edit a punishment
|
|
3301
|
+
* @param {number} id Punishment id
|
|
3302
|
+
* @param {AdminUpdatePunishmentRequest} adminUpdatePunishmentRequest
|
|
3303
|
+
* @param {*} [options] Override http request option.
|
|
3304
|
+
* @throws {RequiredError}
|
|
3305
|
+
*/
|
|
3306
|
+
editPunishment(id: number, adminUpdatePunishmentRequest: AdminUpdatePunishmentRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
|
|
1433
3307
|
/**
|
|
1434
3308
|
* Returns a paginated list of punishments with optional filtering by player UUID, username, IP address, type, and date range.
|
|
1435
3309
|
* @summary List punishments
|
|
1436
|
-
* @param {
|
|
1437
|
-
* @param {
|
|
1438
|
-
* @param {string | null} [
|
|
1439
|
-
* @param {string | null} [
|
|
1440
|
-
* @param {
|
|
1441
|
-
* @param {
|
|
1442
|
-
* @param {number | null} [
|
|
1443
|
-
* @param {number | null} [issuedBefore] Filter punishments issued before this epoch timestamp (ms)
|
|
3310
|
+
* @param {Pageable} pageable
|
|
3311
|
+
* @param {string | null} [uuid]
|
|
3312
|
+
* @param {string | null} [username]
|
|
3313
|
+
* @param {string | null} [ipAddress]
|
|
3314
|
+
* @param {Array<PunishmentType> | null} [type]
|
|
3315
|
+
* @param {number | null} [issuedAfter]
|
|
3316
|
+
* @param {number | null} [issuedBefore]
|
|
1444
3317
|
* @param {*} [options] Override http request option.
|
|
1445
3318
|
* @throws {RequiredError}
|
|
1446
3319
|
*/
|
|
1447
|
-
getPunishments(
|
|
3320
|
+
getPunishments(pageable: Pageable, uuid?: string | null, username?: string | null, ipAddress?: string | null, type?: Array<PunishmentType> | null, issuedAfter?: number | null, issuedBefore?: number | null, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PageAdminPunishmentListItem>>;
|
|
1448
3321
|
/**
|
|
1449
3322
|
* Search for players by UUID or username, or look up all players associated with an IP address.
|
|
1450
3323
|
* @summary Search punishment targets
|
|
@@ -1474,21 +3347,29 @@ export declare const AdminPunishmentsApiFactory: (configuration?: Configuration,
|
|
|
1474
3347
|
* @throws {RequiredError}
|
|
1475
3348
|
*/
|
|
1476
3349
|
createDraft(adminCreatePunishmentDraftRequest: AdminCreatePunishmentDraftRequest, options?: RawAxiosRequestConfig): AxiosPromise<AdminPunishmentDraftResponse>;
|
|
3350
|
+
/**
|
|
3351
|
+
* 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.
|
|
3352
|
+
* @summary Edit a punishment
|
|
3353
|
+
* @param {number} id Punishment id
|
|
3354
|
+
* @param {AdminUpdatePunishmentRequest} adminUpdatePunishmentRequest
|
|
3355
|
+
* @param {*} [options] Override http request option.
|
|
3356
|
+
* @throws {RequiredError}
|
|
3357
|
+
*/
|
|
3358
|
+
editPunishment(id: number, adminUpdatePunishmentRequest: AdminUpdatePunishmentRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
|
|
1477
3359
|
/**
|
|
1478
3360
|
* Returns a paginated list of punishments with optional filtering by player UUID, username, IP address, type, and date range.
|
|
1479
3361
|
* @summary List punishments
|
|
1480
|
-
* @param {
|
|
1481
|
-
* @param {
|
|
1482
|
-
* @param {string | null} [
|
|
1483
|
-
* @param {string | null} [
|
|
1484
|
-
* @param {
|
|
1485
|
-
* @param {
|
|
1486
|
-
* @param {number | null} [
|
|
1487
|
-
* @param {number | null} [issuedBefore] Filter punishments issued before this epoch timestamp (ms)
|
|
3362
|
+
* @param {Pageable} pageable
|
|
3363
|
+
* @param {string | null} [uuid]
|
|
3364
|
+
* @param {string | null} [username]
|
|
3365
|
+
* @param {string | null} [ipAddress]
|
|
3366
|
+
* @param {Array<PunishmentType> | null} [type]
|
|
3367
|
+
* @param {number | null} [issuedAfter]
|
|
3368
|
+
* @param {number | null} [issuedBefore]
|
|
1488
3369
|
* @param {*} [options] Override http request option.
|
|
1489
3370
|
* @throws {RequiredError}
|
|
1490
3371
|
*/
|
|
1491
|
-
getPunishments(
|
|
3372
|
+
getPunishments(pageable: Pageable, uuid?: string | null, username?: string | null, ipAddress?: string | null, type?: Array<PunishmentType> | null, issuedAfter?: number | null, issuedBefore?: number | null, options?: RawAxiosRequestConfig): AxiosPromise<PageAdminPunishmentListItem>;
|
|
1492
3373
|
/**
|
|
1493
3374
|
* Search for players by UUID or username, or look up all players associated with an IP address.
|
|
1494
3375
|
* @summary Search punishment targets
|
|
@@ -1518,21 +3399,29 @@ export declare class AdminPunishmentsApi extends BaseAPI {
|
|
|
1518
3399
|
* @throws {RequiredError}
|
|
1519
3400
|
*/
|
|
1520
3401
|
createDraft(adminCreatePunishmentDraftRequest: AdminCreatePunishmentDraftRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminPunishmentDraftResponse, any, {}>>;
|
|
3402
|
+
/**
|
|
3403
|
+
* 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.
|
|
3404
|
+
* @summary Edit a punishment
|
|
3405
|
+
* @param {number} id Punishment id
|
|
3406
|
+
* @param {AdminUpdatePunishmentRequest} adminUpdatePunishmentRequest
|
|
3407
|
+
* @param {*} [options] Override http request option.
|
|
3408
|
+
* @throws {RequiredError}
|
|
3409
|
+
*/
|
|
3410
|
+
editPunishment(id: number, adminUpdatePunishmentRequest: AdminUpdatePunishmentRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
|
|
1521
3411
|
/**
|
|
1522
3412
|
* Returns a paginated list of punishments with optional filtering by player UUID, username, IP address, type, and date range.
|
|
1523
3413
|
* @summary List punishments
|
|
1524
|
-
* @param {
|
|
1525
|
-
* @param {
|
|
1526
|
-
* @param {string | null} [
|
|
1527
|
-
* @param {string | null} [
|
|
1528
|
-
* @param {
|
|
1529
|
-
* @param {
|
|
1530
|
-
* @param {number | null} [
|
|
1531
|
-
* @param {number | null} [issuedBefore] Filter punishments issued before this epoch timestamp (ms)
|
|
3414
|
+
* @param {Pageable} pageable
|
|
3415
|
+
* @param {string | null} [uuid]
|
|
3416
|
+
* @param {string | null} [username]
|
|
3417
|
+
* @param {string | null} [ipAddress]
|
|
3418
|
+
* @param {Array<PunishmentType> | null} [type]
|
|
3419
|
+
* @param {number | null} [issuedAfter]
|
|
3420
|
+
* @param {number | null} [issuedBefore]
|
|
1532
3421
|
* @param {*} [options] Override http request option.
|
|
1533
3422
|
* @throws {RequiredError}
|
|
1534
3423
|
*/
|
|
1535
|
-
getPunishments(
|
|
3424
|
+
getPunishments(pageable: Pageable, uuid?: string | null, username?: string | null, ipAddress?: string | null, type?: Array<PunishmentType> | null, issuedAfter?: number | null, issuedBefore?: number | null, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<PageAdminPunishmentListItem, any, {}>>;
|
|
1536
3425
|
/**
|
|
1537
3426
|
* Search for players by UUID or username, or look up all players associated with an IP address.
|
|
1538
3427
|
* @summary Search punishment targets
|
|
@@ -1542,6 +3431,102 @@ export declare class AdminPunishmentsApi extends BaseAPI {
|
|
|
1542
3431
|
*/
|
|
1543
3432
|
searchTargets(q: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminPunishmentSearchResponse, any, {}>>;
|
|
1544
3433
|
}
|
|
3434
|
+
/**
|
|
3435
|
+
* AdminReportsApi - axios parameter creator
|
|
3436
|
+
*/
|
|
3437
|
+
export declare const AdminReportsApiAxiosParamCreator: (configuration?: Configuration) => {
|
|
3438
|
+
/**
|
|
3439
|
+
* Paginated, newest first. Use openOnly=true to see the triage queue; reportedUuid filters to one player.
|
|
3440
|
+
* @summary List reports
|
|
3441
|
+
* @param {Pageable} pageable
|
|
3442
|
+
* @param {string | null} [reportedUuid] Filter to reports targeting this player UUID
|
|
3443
|
+
* @param {boolean} [openOnly]
|
|
3444
|
+
* @param {*} [options] Override http request option.
|
|
3445
|
+
* @throws {RequiredError}
|
|
3446
|
+
*/
|
|
3447
|
+
list1: (pageable: Pageable, reportedUuid?: string | null, openOnly?: boolean, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
3448
|
+
/**
|
|
3449
|
+
* Marks the report resolved with the staff member\'s note. 404 if already resolved or unknown id.
|
|
3450
|
+
* @summary Resolve a report
|
|
3451
|
+
* @param {number} id Report id
|
|
3452
|
+
* @param {AdminResolveReportRequest} adminResolveReportRequest
|
|
3453
|
+
* @param {*} [options] Override http request option.
|
|
3454
|
+
* @throws {RequiredError}
|
|
3455
|
+
*/
|
|
3456
|
+
resolve: (id: number, adminResolveReportRequest: AdminResolveReportRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
3457
|
+
};
|
|
3458
|
+
/**
|
|
3459
|
+
* AdminReportsApi - functional programming interface
|
|
3460
|
+
*/
|
|
3461
|
+
export declare const AdminReportsApiFp: (configuration?: Configuration) => {
|
|
3462
|
+
/**
|
|
3463
|
+
* Paginated, newest first. Use openOnly=true to see the triage queue; reportedUuid filters to one player.
|
|
3464
|
+
* @summary List reports
|
|
3465
|
+
* @param {Pageable} pageable
|
|
3466
|
+
* @param {string | null} [reportedUuid] Filter to reports targeting this player UUID
|
|
3467
|
+
* @param {boolean} [openOnly]
|
|
3468
|
+
* @param {*} [options] Override http request option.
|
|
3469
|
+
* @throws {RequiredError}
|
|
3470
|
+
*/
|
|
3471
|
+
list1(pageable: Pageable, reportedUuid?: string | null, openOnly?: boolean, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PageAdminPlayerReport>>;
|
|
3472
|
+
/**
|
|
3473
|
+
* Marks the report resolved with the staff member\'s note. 404 if already resolved or unknown id.
|
|
3474
|
+
* @summary Resolve a report
|
|
3475
|
+
* @param {number} id Report id
|
|
3476
|
+
* @param {AdminResolveReportRequest} adminResolveReportRequest
|
|
3477
|
+
* @param {*} [options] Override http request option.
|
|
3478
|
+
* @throws {RequiredError}
|
|
3479
|
+
*/
|
|
3480
|
+
resolve(id: number, adminResolveReportRequest: AdminResolveReportRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
|
|
3481
|
+
};
|
|
3482
|
+
/**
|
|
3483
|
+
* AdminReportsApi - factory interface
|
|
3484
|
+
*/
|
|
3485
|
+
export declare const AdminReportsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
|
|
3486
|
+
/**
|
|
3487
|
+
* Paginated, newest first. Use openOnly=true to see the triage queue; reportedUuid filters to one player.
|
|
3488
|
+
* @summary List reports
|
|
3489
|
+
* @param {Pageable} pageable
|
|
3490
|
+
* @param {string | null} [reportedUuid] Filter to reports targeting this player UUID
|
|
3491
|
+
* @param {boolean} [openOnly]
|
|
3492
|
+
* @param {*} [options] Override http request option.
|
|
3493
|
+
* @throws {RequiredError}
|
|
3494
|
+
*/
|
|
3495
|
+
list1(pageable: Pageable, reportedUuid?: string | null, openOnly?: boolean, options?: RawAxiosRequestConfig): AxiosPromise<PageAdminPlayerReport>;
|
|
3496
|
+
/**
|
|
3497
|
+
* Marks the report resolved with the staff member\'s note. 404 if already resolved or unknown id.
|
|
3498
|
+
* @summary Resolve a report
|
|
3499
|
+
* @param {number} id Report id
|
|
3500
|
+
* @param {AdminResolveReportRequest} adminResolveReportRequest
|
|
3501
|
+
* @param {*} [options] Override http request option.
|
|
3502
|
+
* @throws {RequiredError}
|
|
3503
|
+
*/
|
|
3504
|
+
resolve(id: number, adminResolveReportRequest: AdminResolveReportRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
|
|
3505
|
+
};
|
|
3506
|
+
/**
|
|
3507
|
+
* AdminReportsApi - object-oriented interface
|
|
3508
|
+
*/
|
|
3509
|
+
export declare class AdminReportsApi extends BaseAPI {
|
|
3510
|
+
/**
|
|
3511
|
+
* Paginated, newest first. Use openOnly=true to see the triage queue; reportedUuid filters to one player.
|
|
3512
|
+
* @summary List reports
|
|
3513
|
+
* @param {Pageable} pageable
|
|
3514
|
+
* @param {string | null} [reportedUuid] Filter to reports targeting this player UUID
|
|
3515
|
+
* @param {boolean} [openOnly]
|
|
3516
|
+
* @param {*} [options] Override http request option.
|
|
3517
|
+
* @throws {RequiredError}
|
|
3518
|
+
*/
|
|
3519
|
+
list1(pageable: Pageable, reportedUuid?: string | null, openOnly?: boolean, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<PageAdminPlayerReport, any, {}>>;
|
|
3520
|
+
/**
|
|
3521
|
+
* Marks the report resolved with the staff member\'s note. 404 if already resolved or unknown id.
|
|
3522
|
+
* @summary Resolve a report
|
|
3523
|
+
* @param {number} id Report id
|
|
3524
|
+
* @param {AdminResolveReportRequest} adminResolveReportRequest
|
|
3525
|
+
* @param {*} [options] Override http request option.
|
|
3526
|
+
* @throws {RequiredError}
|
|
3527
|
+
*/
|
|
3528
|
+
resolve(id: number, adminResolveReportRequest: AdminResolveReportRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
|
|
3529
|
+
}
|
|
1545
3530
|
/**
|
|
1546
3531
|
* AuthenticationApi - axios parameter creator
|
|
1547
3532
|
*/
|
|
@@ -1701,13 +3686,13 @@ export declare const ChatApiAxiosParamCreator: (configuration?: Configuration) =
|
|
|
1701
3686
|
/**
|
|
1702
3687
|
* Returns up to `limit` chat messages before the given `before` timestamp (keyset pagination). Results are returned in ascending chronological order. Omit `before` to start from the current time. Scroll back through history by passing the `sentAt` of the oldest message received as the next `before` value.
|
|
1703
3688
|
* @summary Get chat history
|
|
1704
|
-
* @param {number} limit Maximum number of messages to return (1–100)
|
|
1705
3689
|
* @param {string | null} [sessionId] Filter to a specific server session. Omit for global history.
|
|
1706
3690
|
* @param {string | null} [before] ISO-8601 timestamp cursor — return messages sent before this time. Omit to start from now.
|
|
3691
|
+
* @param {number} [limit] Maximum number of messages to return (1–100)
|
|
1707
3692
|
* @param {*} [options] Override http request option.
|
|
1708
3693
|
* @throws {RequiredError}
|
|
1709
3694
|
*/
|
|
1710
|
-
history: (
|
|
3695
|
+
history: (sessionId?: string | null, before?: string | null, limit?: number, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
1711
3696
|
/**
|
|
1712
3697
|
* Stores a chat message from a game server and fans it out to all connected WebSocket clients via PostgreSQL LISTEN/NOTIFY. The session must be currently online. Only the player UUID is stored — usernames are resolved on the web UI from the player database cache.
|
|
1713
3698
|
* @summary Ingest a chat message
|
|
@@ -1724,13 +3709,13 @@ export declare const ChatApiFp: (configuration?: Configuration) => {
|
|
|
1724
3709
|
/**
|
|
1725
3710
|
* Returns up to `limit` chat messages before the given `before` timestamp (keyset pagination). Results are returned in ascending chronological order. Omit `before` to start from the current time. Scroll back through history by passing the `sentAt` of the oldest message received as the next `before` value.
|
|
1726
3711
|
* @summary Get chat history
|
|
1727
|
-
* @param {number} limit Maximum number of messages to return (1–100)
|
|
1728
3712
|
* @param {string | null} [sessionId] Filter to a specific server session. Omit for global history.
|
|
1729
3713
|
* @param {string | null} [before] ISO-8601 timestamp cursor — return messages sent before this time. Omit to start from now.
|
|
3714
|
+
* @param {number} [limit] Maximum number of messages to return (1–100)
|
|
1730
3715
|
* @param {*} [options] Override http request option.
|
|
1731
3716
|
* @throws {RequiredError}
|
|
1732
3717
|
*/
|
|
1733
|
-
history(
|
|
3718
|
+
history(sessionId?: string | null, before?: string | null, limit?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Array<ChatMessageDTO>>>;
|
|
1734
3719
|
/**
|
|
1735
3720
|
* Stores a chat message from a game server and fans it out to all connected WebSocket clients via PostgreSQL LISTEN/NOTIFY. The session must be currently online. Only the player UUID is stored — usernames are resolved on the web UI from the player database cache.
|
|
1736
3721
|
* @summary Ingest a chat message
|
|
@@ -1747,13 +3732,13 @@ export declare const ChatApiFactory: (configuration?: Configuration, basePath?:
|
|
|
1747
3732
|
/**
|
|
1748
3733
|
* Returns up to `limit` chat messages before the given `before` timestamp (keyset pagination). Results are returned in ascending chronological order. Omit `before` to start from the current time. Scroll back through history by passing the `sentAt` of the oldest message received as the next `before` value.
|
|
1749
3734
|
* @summary Get chat history
|
|
1750
|
-
* @param {number} limit Maximum number of messages to return (1–100)
|
|
1751
3735
|
* @param {string | null} [sessionId] Filter to a specific server session. Omit for global history.
|
|
1752
3736
|
* @param {string | null} [before] ISO-8601 timestamp cursor — return messages sent before this time. Omit to start from now.
|
|
3737
|
+
* @param {number} [limit] Maximum number of messages to return (1–100)
|
|
1753
3738
|
* @param {*} [options] Override http request option.
|
|
1754
3739
|
* @throws {RequiredError}
|
|
1755
3740
|
*/
|
|
1756
|
-
history(
|
|
3741
|
+
history(sessionId?: string | null, before?: string | null, limit?: number, options?: RawAxiosRequestConfig): AxiosPromise<Array<ChatMessageDTO>>;
|
|
1757
3742
|
/**
|
|
1758
3743
|
* Stores a chat message from a game server and fans it out to all connected WebSocket clients via PostgreSQL LISTEN/NOTIFY. The session must be currently online. Only the player UUID is stored — usernames are resolved on the web UI from the player database cache.
|
|
1759
3744
|
* @summary Ingest a chat message
|
|
@@ -1770,13 +3755,13 @@ export declare class ChatApi extends BaseAPI {
|
|
|
1770
3755
|
/**
|
|
1771
3756
|
* Returns up to `limit` chat messages before the given `before` timestamp (keyset pagination). Results are returned in ascending chronological order. Omit `before` to start from the current time. Scroll back through history by passing the `sentAt` of the oldest message received as the next `before` value.
|
|
1772
3757
|
* @summary Get chat history
|
|
1773
|
-
* @param {number} limit Maximum number of messages to return (1–100)
|
|
1774
3758
|
* @param {string | null} [sessionId] Filter to a specific server session. Omit for global history.
|
|
1775
3759
|
* @param {string | null} [before] ISO-8601 timestamp cursor — return messages sent before this time. Omit to start from now.
|
|
3760
|
+
* @param {number} [limit] Maximum number of messages to return (1–100)
|
|
1776
3761
|
* @param {*} [options] Override http request option.
|
|
1777
3762
|
* @throws {RequiredError}
|
|
1778
3763
|
*/
|
|
1779
|
-
history(
|
|
3764
|
+
history(sessionId?: string | null, before?: string | null, limit?: number, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<ChatMessageDTO[], any, {}>>;
|
|
1780
3765
|
/**
|
|
1781
3766
|
* Stores a chat message from a game server and fans it out to all connected WebSocket clients via PostgreSQL LISTEN/NOTIFY. The session must be currently online. Only the player UUID is stored — usernames are resolved on the web UI from the player database cache.
|
|
1782
3767
|
* @summary Ingest a chat message
|
|
@@ -1791,60 +3776,64 @@ export declare class ChatApi extends BaseAPI {
|
|
|
1791
3776
|
*/
|
|
1792
3777
|
export declare const ConnectionApiAxiosParamCreator: (configuration?: Configuration) => {
|
|
1793
3778
|
/**
|
|
1794
|
-
* Performs comprehensive analysis of an IPv4 address to detect VPN, proxy, or suspicious connections. **Features:** - Multi-provider VPN/proxy detection with aggregated confidence scoring - Approximate geolocation lookup (city and country) - Connection bypass status and expiration tracking - Optional player UUID association for connection history **Use Cases:** - Prevent VPN/proxy usage during player authentication - Track player connection history across sessions - Implement temporary bypass systems for false positives - Monitor suspicious connection patterns **Query Parameters:** - `force_recheck`: Bypass cache and re-run all detection services - `associate_uuid`: Link this IP to a player UUID and return player info **Caching:** Results are cached unless `force_recheck=true` is specified, reducing API costs and improving response times.
|
|
1795
|
-
* @summary Check Connection and Detect VPN/Proxy
|
|
3779
|
+
* **DEPRECATED for game-server player-join flows.** Use `POST /v1/player-session/start` instead — it runs the same authorization check AND opens the player_session row in a single round-trip, returning the same connection / player / punishment context plus aggregate session stats. This endpoint remains available for admin and debugging scenarios where you want to inspect a connection\'s state without opening a session (e.g. one-off lookups, batch sweeps, support troubleshooting). Performs comprehensive analysis of an IPv4 address to detect VPN, proxy, or suspicious connections. **Features:** - Multi-provider VPN/proxy detection with aggregated confidence scoring - Approximate geolocation lookup (city and country) - Connection bypass status and expiration tracking - Optional player UUID association for connection history **Use Cases:** - Prevent VPN/proxy usage during player authentication - Track player connection history across sessions - Implement temporary bypass systems for false positives - Monitor suspicious connection patterns **Query Parameters:** - `force_recheck`: Bypass cache and re-run all detection services - `associate_uuid`: Link this IP to a player UUID and return player info **Caching:** Results are cached unless `force_recheck=true` is specified, reducing API costs and improving response times.
|
|
3780
|
+
* @summary Check Connection and Detect VPN/Proxy (DEPRECATED for player-join use)
|
|
1796
3781
|
* @param {string} ip IPv4 address to analyze for VPN/proxy detection and geolocation
|
|
1797
|
-
* @param {boolean} forceRecheck When true, bypasses cached results and re-runs all VPN detection services. Use this when you need the most up-to-date analysis or suspect cached data may be stale. Default: false
|
|
3782
|
+
* @param {boolean} [forceRecheck] When true, bypasses cached results and re-runs all VPN detection services. Use this when you need the most up-to-date analysis or suspect cached data may be stale. Default: false
|
|
1798
3783
|
* @param {string | null} [associateUuid] Minecraft player UUID to associate with this IP address. When provided, the API will: - Link this connection to the player\'s history - Update the player\'s username from Mojang API - Return player information (first join status, first login time) in the response - Track connection history for fraud detection This operation is asynchronous and won\'t block the response.
|
|
1799
3784
|
* @param {*} [options] Override http request option.
|
|
3785
|
+
* @deprecated
|
|
1800
3786
|
* @throws {RequiredError}
|
|
1801
3787
|
*/
|
|
1802
|
-
getConnectionDetails: (ip: string, forceRecheck
|
|
3788
|
+
getConnectionDetails: (ip: string, forceRecheck?: boolean, associateUuid?: string | null, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
1803
3789
|
};
|
|
1804
3790
|
/**
|
|
1805
3791
|
* ConnectionApi - functional programming interface
|
|
1806
3792
|
*/
|
|
1807
3793
|
export declare const ConnectionApiFp: (configuration?: Configuration) => {
|
|
1808
3794
|
/**
|
|
1809
|
-
* Performs comprehensive analysis of an IPv4 address to detect VPN, proxy, or suspicious connections. **Features:** - Multi-provider VPN/proxy detection with aggregated confidence scoring - Approximate geolocation lookup (city and country) - Connection bypass status and expiration tracking - Optional player UUID association for connection history **Use Cases:** - Prevent VPN/proxy usage during player authentication - Track player connection history across sessions - Implement temporary bypass systems for false positives - Monitor suspicious connection patterns **Query Parameters:** - `force_recheck`: Bypass cache and re-run all detection services - `associate_uuid`: Link this IP to a player UUID and return player info **Caching:** Results are cached unless `force_recheck=true` is specified, reducing API costs and improving response times.
|
|
1810
|
-
* @summary Check Connection and Detect VPN/Proxy
|
|
3795
|
+
* **DEPRECATED for game-server player-join flows.** Use `POST /v1/player-session/start` instead — it runs the same authorization check AND opens the player_session row in a single round-trip, returning the same connection / player / punishment context plus aggregate session stats. This endpoint remains available for admin and debugging scenarios where you want to inspect a connection\'s state without opening a session (e.g. one-off lookups, batch sweeps, support troubleshooting). Performs comprehensive analysis of an IPv4 address to detect VPN, proxy, or suspicious connections. **Features:** - Multi-provider VPN/proxy detection with aggregated confidence scoring - Approximate geolocation lookup (city and country) - Connection bypass status and expiration tracking - Optional player UUID association for connection history **Use Cases:** - Prevent VPN/proxy usage during player authentication - Track player connection history across sessions - Implement temporary bypass systems for false positives - Monitor suspicious connection patterns **Query Parameters:** - `force_recheck`: Bypass cache and re-run all detection services - `associate_uuid`: Link this IP to a player UUID and return player info **Caching:** Results are cached unless `force_recheck=true` is specified, reducing API costs and improving response times.
|
|
3796
|
+
* @summary Check Connection and Detect VPN/Proxy (DEPRECATED for player-join use)
|
|
1811
3797
|
* @param {string} ip IPv4 address to analyze for VPN/proxy detection and geolocation
|
|
1812
|
-
* @param {boolean} forceRecheck When true, bypasses cached results and re-runs all VPN detection services. Use this when you need the most up-to-date analysis or suspect cached data may be stale. Default: false
|
|
3798
|
+
* @param {boolean} [forceRecheck] When true, bypasses cached results and re-runs all VPN detection services. Use this when you need the most up-to-date analysis or suspect cached data may be stale. Default: false
|
|
1813
3799
|
* @param {string | null} [associateUuid] Minecraft player UUID to associate with this IP address. When provided, the API will: - Link this connection to the player\'s history - Update the player\'s username from Mojang API - Return player information (first join status, first login time) in the response - Track connection history for fraud detection This operation is asynchronous and won\'t block the response.
|
|
1814
3800
|
* @param {*} [options] Override http request option.
|
|
3801
|
+
* @deprecated
|
|
1815
3802
|
* @throws {RequiredError}
|
|
1816
3803
|
*/
|
|
1817
|
-
getConnectionDetails(ip: string, forceRecheck
|
|
3804
|
+
getConnectionDetails(ip: string, forceRecheck?: boolean, associateUuid?: string | null, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ConnectionGetConnectionDetailsResponse>>;
|
|
1818
3805
|
};
|
|
1819
3806
|
/**
|
|
1820
3807
|
* ConnectionApi - factory interface
|
|
1821
3808
|
*/
|
|
1822
3809
|
export declare const ConnectionApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
|
|
1823
3810
|
/**
|
|
1824
|
-
* Performs comprehensive analysis of an IPv4 address to detect VPN, proxy, or suspicious connections. **Features:** - Multi-provider VPN/proxy detection with aggregated confidence scoring - Approximate geolocation lookup (city and country) - Connection bypass status and expiration tracking - Optional player UUID association for connection history **Use Cases:** - Prevent VPN/proxy usage during player authentication - Track player connection history across sessions - Implement temporary bypass systems for false positives - Monitor suspicious connection patterns **Query Parameters:** - `force_recheck`: Bypass cache and re-run all detection services - `associate_uuid`: Link this IP to a player UUID and return player info **Caching:** Results are cached unless `force_recheck=true` is specified, reducing API costs and improving response times.
|
|
1825
|
-
* @summary Check Connection and Detect VPN/Proxy
|
|
3811
|
+
* **DEPRECATED for game-server player-join flows.** Use `POST /v1/player-session/start` instead — it runs the same authorization check AND opens the player_session row in a single round-trip, returning the same connection / player / punishment context plus aggregate session stats. This endpoint remains available for admin and debugging scenarios where you want to inspect a connection\'s state without opening a session (e.g. one-off lookups, batch sweeps, support troubleshooting). Performs comprehensive analysis of an IPv4 address to detect VPN, proxy, or suspicious connections. **Features:** - Multi-provider VPN/proxy detection with aggregated confidence scoring - Approximate geolocation lookup (city and country) - Connection bypass status and expiration tracking - Optional player UUID association for connection history **Use Cases:** - Prevent VPN/proxy usage during player authentication - Track player connection history across sessions - Implement temporary bypass systems for false positives - Monitor suspicious connection patterns **Query Parameters:** - `force_recheck`: Bypass cache and re-run all detection services - `associate_uuid`: Link this IP to a player UUID and return player info **Caching:** Results are cached unless `force_recheck=true` is specified, reducing API costs and improving response times.
|
|
3812
|
+
* @summary Check Connection and Detect VPN/Proxy (DEPRECATED for player-join use)
|
|
1826
3813
|
* @param {string} ip IPv4 address to analyze for VPN/proxy detection and geolocation
|
|
1827
|
-
* @param {boolean} forceRecheck When true, bypasses cached results and re-runs all VPN detection services. Use this when you need the most up-to-date analysis or suspect cached data may be stale. Default: false
|
|
3814
|
+
* @param {boolean} [forceRecheck] When true, bypasses cached results and re-runs all VPN detection services. Use this when you need the most up-to-date analysis or suspect cached data may be stale. Default: false
|
|
1828
3815
|
* @param {string | null} [associateUuid] Minecraft player UUID to associate with this IP address. When provided, the API will: - Link this connection to the player\'s history - Update the player\'s username from Mojang API - Return player information (first join status, first login time) in the response - Track connection history for fraud detection This operation is asynchronous and won\'t block the response.
|
|
1829
3816
|
* @param {*} [options] Override http request option.
|
|
3817
|
+
* @deprecated
|
|
1830
3818
|
* @throws {RequiredError}
|
|
1831
3819
|
*/
|
|
1832
|
-
getConnectionDetails(ip: string, forceRecheck
|
|
3820
|
+
getConnectionDetails(ip: string, forceRecheck?: boolean, associateUuid?: string | null, options?: RawAxiosRequestConfig): AxiosPromise<ConnectionGetConnectionDetailsResponse>;
|
|
1833
3821
|
};
|
|
1834
3822
|
/**
|
|
1835
3823
|
* ConnectionApi - object-oriented interface
|
|
1836
3824
|
*/
|
|
1837
3825
|
export declare class ConnectionApi extends BaseAPI {
|
|
1838
3826
|
/**
|
|
1839
|
-
* Performs comprehensive analysis of an IPv4 address to detect VPN, proxy, or suspicious connections. **Features:** - Multi-provider VPN/proxy detection with aggregated confidence scoring - Approximate geolocation lookup (city and country) - Connection bypass status and expiration tracking - Optional player UUID association for connection history **Use Cases:** - Prevent VPN/proxy usage during player authentication - Track player connection history across sessions - Implement temporary bypass systems for false positives - Monitor suspicious connection patterns **Query Parameters:** - `force_recheck`: Bypass cache and re-run all detection services - `associate_uuid`: Link this IP to a player UUID and return player info **Caching:** Results are cached unless `force_recheck=true` is specified, reducing API costs and improving response times.
|
|
1840
|
-
* @summary Check Connection and Detect VPN/Proxy
|
|
3827
|
+
* **DEPRECATED for game-server player-join flows.** Use `POST /v1/player-session/start` instead — it runs the same authorization check AND opens the player_session row in a single round-trip, returning the same connection / player / punishment context plus aggregate session stats. This endpoint remains available for admin and debugging scenarios where you want to inspect a connection\'s state without opening a session (e.g. one-off lookups, batch sweeps, support troubleshooting). Performs comprehensive analysis of an IPv4 address to detect VPN, proxy, or suspicious connections. **Features:** - Multi-provider VPN/proxy detection with aggregated confidence scoring - Approximate geolocation lookup (city and country) - Connection bypass status and expiration tracking - Optional player UUID association for connection history **Use Cases:** - Prevent VPN/proxy usage during player authentication - Track player connection history across sessions - Implement temporary bypass systems for false positives - Monitor suspicious connection patterns **Query Parameters:** - `force_recheck`: Bypass cache and re-run all detection services - `associate_uuid`: Link this IP to a player UUID and return player info **Caching:** Results are cached unless `force_recheck=true` is specified, reducing API costs and improving response times.
|
|
3828
|
+
* @summary Check Connection and Detect VPN/Proxy (DEPRECATED for player-join use)
|
|
1841
3829
|
* @param {string} ip IPv4 address to analyze for VPN/proxy detection and geolocation
|
|
1842
|
-
* @param {boolean} forceRecheck When true, bypasses cached results and re-runs all VPN detection services. Use this when you need the most up-to-date analysis or suspect cached data may be stale. Default: false
|
|
3830
|
+
* @param {boolean} [forceRecheck] When true, bypasses cached results and re-runs all VPN detection services. Use this when you need the most up-to-date analysis or suspect cached data may be stale. Default: false
|
|
1843
3831
|
* @param {string | null} [associateUuid] Minecraft player UUID to associate with this IP address. When provided, the API will: - Link this connection to the player\'s history - Update the player\'s username from Mojang API - Return player information (first join status, first login time) in the response - Track connection history for fraud detection This operation is asynchronous and won\'t block the response.
|
|
1844
3832
|
* @param {*} [options] Override http request option.
|
|
3833
|
+
* @deprecated
|
|
1845
3834
|
* @throws {RequiredError}
|
|
1846
3835
|
*/
|
|
1847
|
-
getConnectionDetails(ip: string, forceRecheck
|
|
3836
|
+
getConnectionDetails(ip: string, forceRecheck?: boolean, associateUuid?: string | null, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<ConnectionGetConnectionDetailsResponse, any, {}>>;
|
|
1848
3837
|
}
|
|
1849
3838
|
/**
|
|
1850
3839
|
* PlayerApi - axios parameter creator
|
|
@@ -1930,6 +3919,90 @@ export declare class PlayerApi extends BaseAPI {
|
|
|
1930
3919
|
*/
|
|
1931
3920
|
getUsernames(uuids: Array<string>, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
|
|
1932
3921
|
}
|
|
3922
|
+
/**
|
|
3923
|
+
* PlayerSessionsApi - axios parameter creator
|
|
3924
|
+
*/
|
|
3925
|
+
export declare const PlayerSessionsApiAxiosParamCreator: (configuration?: Configuration) => {
|
|
3926
|
+
/**
|
|
3927
|
+
* 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.
|
|
3928
|
+
* @summary Close the active player session
|
|
3929
|
+
* @param {PlayerSessionEndRequest} playerSessionEndRequest
|
|
3930
|
+
* @param {*} [options] Override http request option.
|
|
3931
|
+
* @throws {RequiredError}
|
|
3932
|
+
*/
|
|
3933
|
+
end: (playerSessionEndRequest: PlayerSessionEndRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
3934
|
+
/**
|
|
3935
|
+
* 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.
|
|
3936
|
+
* @summary Player join — unified authorization + session-open
|
|
3937
|
+
* @param {PlayerSessionStartRequest} playerSessionStartRequest
|
|
3938
|
+
* @param {*} [options] Override http request option.
|
|
3939
|
+
* @throws {RequiredError}
|
|
3940
|
+
*/
|
|
3941
|
+
start: (playerSessionStartRequest: PlayerSessionStartRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
3942
|
+
};
|
|
3943
|
+
/**
|
|
3944
|
+
* PlayerSessionsApi - functional programming interface
|
|
3945
|
+
*/
|
|
3946
|
+
export declare const PlayerSessionsApiFp: (configuration?: Configuration) => {
|
|
3947
|
+
/**
|
|
3948
|
+
* 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.
|
|
3949
|
+
* @summary Close the active player session
|
|
3950
|
+
* @param {PlayerSessionEndRequest} playerSessionEndRequest
|
|
3951
|
+
* @param {*} [options] Override http request option.
|
|
3952
|
+
* @throws {RequiredError}
|
|
3953
|
+
*/
|
|
3954
|
+
end(playerSessionEndRequest: PlayerSessionEndRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
|
|
3955
|
+
/**
|
|
3956
|
+
* 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.
|
|
3957
|
+
* @summary Player join — unified authorization + session-open
|
|
3958
|
+
* @param {PlayerSessionStartRequest} playerSessionStartRequest
|
|
3959
|
+
* @param {*} [options] Override http request option.
|
|
3960
|
+
* @throws {RequiredError}
|
|
3961
|
+
*/
|
|
3962
|
+
start(playerSessionStartRequest: PlayerSessionStartRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PlayerSessionStartResponse>>;
|
|
3963
|
+
};
|
|
3964
|
+
/**
|
|
3965
|
+
* PlayerSessionsApi - factory interface
|
|
3966
|
+
*/
|
|
3967
|
+
export declare const PlayerSessionsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
|
|
3968
|
+
/**
|
|
3969
|
+
* 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.
|
|
3970
|
+
* @summary Close the active player session
|
|
3971
|
+
* @param {PlayerSessionEndRequest} playerSessionEndRequest
|
|
3972
|
+
* @param {*} [options] Override http request option.
|
|
3973
|
+
* @throws {RequiredError}
|
|
3974
|
+
*/
|
|
3975
|
+
end(playerSessionEndRequest: PlayerSessionEndRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
|
|
3976
|
+
/**
|
|
3977
|
+
* 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.
|
|
3978
|
+
* @summary Player join — unified authorization + session-open
|
|
3979
|
+
* @param {PlayerSessionStartRequest} playerSessionStartRequest
|
|
3980
|
+
* @param {*} [options] Override http request option.
|
|
3981
|
+
* @throws {RequiredError}
|
|
3982
|
+
*/
|
|
3983
|
+
start(playerSessionStartRequest: PlayerSessionStartRequest, options?: RawAxiosRequestConfig): AxiosPromise<PlayerSessionStartResponse>;
|
|
3984
|
+
};
|
|
3985
|
+
/**
|
|
3986
|
+
* PlayerSessionsApi - object-oriented interface
|
|
3987
|
+
*/
|
|
3988
|
+
export declare class PlayerSessionsApi extends BaseAPI {
|
|
3989
|
+
/**
|
|
3990
|
+
* 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.
|
|
3991
|
+
* @summary Close the active player session
|
|
3992
|
+
* @param {PlayerSessionEndRequest} playerSessionEndRequest
|
|
3993
|
+
* @param {*} [options] Override http request option.
|
|
3994
|
+
* @throws {RequiredError}
|
|
3995
|
+
*/
|
|
3996
|
+
end(playerSessionEndRequest: PlayerSessionEndRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
|
|
3997
|
+
/**
|
|
3998
|
+
* 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.
|
|
3999
|
+
* @summary Player join — unified authorization + session-open
|
|
4000
|
+
* @param {PlayerSessionStartRequest} playerSessionStartRequest
|
|
4001
|
+
* @param {*} [options] Override http request option.
|
|
4002
|
+
* @throws {RequiredError}
|
|
4003
|
+
*/
|
|
4004
|
+
start(playerSessionStartRequest: PlayerSessionStartRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<PlayerSessionStartResponse, any, {}>>;
|
|
4005
|
+
}
|
|
1933
4006
|
/**
|
|
1934
4007
|
* PunishmentApi - axios parameter creator
|
|
1935
4008
|
*/
|
|
@@ -1963,19 +4036,18 @@ export declare const PunishmentApiAxiosParamCreator: (configuration?: Configurat
|
|
|
1963
4036
|
/**
|
|
1964
4037
|
* Returns a paginated list of recent punishments with optional filtering by issue date, expiration date, and type
|
|
1965
4038
|
* @summary List recent punishments
|
|
1966
|
-
* @param {
|
|
1967
|
-
* @param {number
|
|
1968
|
-
* @param {number | null} [
|
|
1969
|
-
* @param {number | null} [
|
|
1970
|
-
* @param {number | null} [
|
|
1971
|
-
* @param {
|
|
1972
|
-
* @param {
|
|
1973
|
-
* @param {string | null} [
|
|
1974
|
-
* @param {string | null} [ipAddress] Filter by IP address
|
|
4039
|
+
* @param {Pageable} pageable
|
|
4040
|
+
* @param {number | null} [issuedAfter]
|
|
4041
|
+
* @param {number | null} [issuedBefore]
|
|
4042
|
+
* @param {number | null} [expiresAfter]
|
|
4043
|
+
* @param {number | null} [expiresBefore]
|
|
4044
|
+
* @param {Array<PunishmentType> | null} [type]
|
|
4045
|
+
* @param {string | null} [uuid]
|
|
4046
|
+
* @param {string | null} [ipAddress]
|
|
1975
4047
|
* @param {*} [options] Override http request option.
|
|
1976
4048
|
* @throws {RequiredError}
|
|
1977
4049
|
*/
|
|
1978
|
-
getRecentPunishments: (
|
|
4050
|
+
getRecentPunishments: (pageable: Pageable, issuedAfter?: number | null, issuedBefore?: number | null, expiresAfter?: number | null, expiresBefore?: number | null, type?: Array<PunishmentType> | null, uuid?: string | null, ipAddress?: string | null, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
1979
4051
|
};
|
|
1980
4052
|
/**
|
|
1981
4053
|
* PunishmentApi - functional programming interface
|
|
@@ -2010,19 +4082,18 @@ export declare const PunishmentApiFp: (configuration?: Configuration) => {
|
|
|
2010
4082
|
/**
|
|
2011
4083
|
* Returns a paginated list of recent punishments with optional filtering by issue date, expiration date, and type
|
|
2012
4084
|
* @summary List recent punishments
|
|
2013
|
-
* @param {
|
|
2014
|
-
* @param {number
|
|
2015
|
-
* @param {number | null} [
|
|
2016
|
-
* @param {number | null} [
|
|
2017
|
-
* @param {number | null} [
|
|
2018
|
-
* @param {
|
|
2019
|
-
* @param {
|
|
2020
|
-
* @param {string | null} [
|
|
2021
|
-
* @param {string | null} [ipAddress] Filter by IP address
|
|
4085
|
+
* @param {Pageable} pageable
|
|
4086
|
+
* @param {number | null} [issuedAfter]
|
|
4087
|
+
* @param {number | null} [issuedBefore]
|
|
4088
|
+
* @param {number | null} [expiresAfter]
|
|
4089
|
+
* @param {number | null} [expiresBefore]
|
|
4090
|
+
* @param {Array<PunishmentType> | null} [type]
|
|
4091
|
+
* @param {string | null} [uuid]
|
|
4092
|
+
* @param {string | null} [ipAddress]
|
|
2022
4093
|
* @param {*} [options] Override http request option.
|
|
2023
4094
|
* @throws {RequiredError}
|
|
2024
4095
|
*/
|
|
2025
|
-
getRecentPunishments(
|
|
4096
|
+
getRecentPunishments(pageable: Pageable, issuedAfter?: number | null, issuedBefore?: number | null, expiresAfter?: number | null, expiresBefore?: number | null, type?: Array<PunishmentType> | null, uuid?: string | null, ipAddress?: string | null, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PagePunishmentGetPunishmentResponse>>;
|
|
2026
4097
|
};
|
|
2027
4098
|
/**
|
|
2028
4099
|
* PunishmentApi - factory interface
|
|
@@ -2057,19 +4128,18 @@ export declare const PunishmentApiFactory: (configuration?: Configuration, baseP
|
|
|
2057
4128
|
/**
|
|
2058
4129
|
* Returns a paginated list of recent punishments with optional filtering by issue date, expiration date, and type
|
|
2059
4130
|
* @summary List recent punishments
|
|
2060
|
-
* @param {
|
|
2061
|
-
* @param {number
|
|
2062
|
-
* @param {number | null} [
|
|
2063
|
-
* @param {number | null} [
|
|
2064
|
-
* @param {number | null} [
|
|
2065
|
-
* @param {
|
|
2066
|
-
* @param {
|
|
2067
|
-
* @param {string | null} [
|
|
2068
|
-
* @param {string | null} [ipAddress] Filter by IP address
|
|
4131
|
+
* @param {Pageable} pageable
|
|
4132
|
+
* @param {number | null} [issuedAfter]
|
|
4133
|
+
* @param {number | null} [issuedBefore]
|
|
4134
|
+
* @param {number | null} [expiresAfter]
|
|
4135
|
+
* @param {number | null} [expiresBefore]
|
|
4136
|
+
* @param {Array<PunishmentType> | null} [type]
|
|
4137
|
+
* @param {string | null} [uuid]
|
|
4138
|
+
* @param {string | null} [ipAddress]
|
|
2069
4139
|
* @param {*} [options] Override http request option.
|
|
2070
4140
|
* @throws {RequiredError}
|
|
2071
4141
|
*/
|
|
2072
|
-
getRecentPunishments(
|
|
4142
|
+
getRecentPunishments(pageable: Pageable, issuedAfter?: number | null, issuedBefore?: number | null, expiresAfter?: number | null, expiresBefore?: number | null, type?: Array<PunishmentType> | null, uuid?: string | null, ipAddress?: string | null, options?: RawAxiosRequestConfig): AxiosPromise<PagePunishmentGetPunishmentResponse>;
|
|
2073
4143
|
};
|
|
2074
4144
|
/**
|
|
2075
4145
|
* PunishmentApi - object-oriented interface
|
|
@@ -2104,19 +4174,70 @@ export declare class PunishmentApi extends BaseAPI {
|
|
|
2104
4174
|
/**
|
|
2105
4175
|
* Returns a paginated list of recent punishments with optional filtering by issue date, expiration date, and type
|
|
2106
4176
|
* @summary List recent punishments
|
|
2107
|
-
* @param {
|
|
2108
|
-
* @param {number
|
|
2109
|
-
* @param {number | null} [
|
|
2110
|
-
* @param {number | null} [
|
|
2111
|
-
* @param {number | null} [
|
|
2112
|
-
* @param {
|
|
2113
|
-
* @param {
|
|
2114
|
-
* @param {string | null} [
|
|
2115
|
-
* @param {
|
|
4177
|
+
* @param {Pageable} pageable
|
|
4178
|
+
* @param {number | null} [issuedAfter]
|
|
4179
|
+
* @param {number | null} [issuedBefore]
|
|
4180
|
+
* @param {number | null} [expiresAfter]
|
|
4181
|
+
* @param {number | null} [expiresBefore]
|
|
4182
|
+
* @param {Array<PunishmentType> | null} [type]
|
|
4183
|
+
* @param {string | null} [uuid]
|
|
4184
|
+
* @param {string | null} [ipAddress]
|
|
4185
|
+
* @param {*} [options] Override http request option.
|
|
4186
|
+
* @throws {RequiredError}
|
|
4187
|
+
*/
|
|
4188
|
+
getRecentPunishments(pageable: Pageable, issuedAfter?: number | null, issuedBefore?: number | null, expiresAfter?: number | null, expiresBefore?: number | null, type?: Array<PunishmentType> | null, uuid?: string | null, ipAddress?: string | null, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<PagePunishmentGetPunishmentResponse, any, {}>>;
|
|
4189
|
+
}
|
|
4190
|
+
/**
|
|
4191
|
+
* ReportApi - axios parameter creator
|
|
4192
|
+
*/
|
|
4193
|
+
export declare const ReportApiAxiosParamCreator: (configuration?: Configuration) => {
|
|
4194
|
+
/**
|
|
4195
|
+
* 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.
|
|
4196
|
+
* @summary Submit a peer report
|
|
4197
|
+
* @param {CreateReportRequest} createReportRequest
|
|
4198
|
+
* @param {*} [options] Override http request option.
|
|
4199
|
+
* @throws {RequiredError}
|
|
4200
|
+
*/
|
|
4201
|
+
submit: (createReportRequest: CreateReportRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
|
|
4202
|
+
};
|
|
4203
|
+
/**
|
|
4204
|
+
* ReportApi - functional programming interface
|
|
4205
|
+
*/
|
|
4206
|
+
export declare const ReportApiFp: (configuration?: Configuration) => {
|
|
4207
|
+
/**
|
|
4208
|
+
* 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.
|
|
4209
|
+
* @summary Submit a peer report
|
|
4210
|
+
* @param {CreateReportRequest} createReportRequest
|
|
4211
|
+
* @param {*} [options] Override http request option.
|
|
4212
|
+
* @throws {RequiredError}
|
|
4213
|
+
*/
|
|
4214
|
+
submit(createReportRequest: CreateReportRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CreateReportResponse>>;
|
|
4215
|
+
};
|
|
4216
|
+
/**
|
|
4217
|
+
* ReportApi - factory interface
|
|
4218
|
+
*/
|
|
4219
|
+
export declare const ReportApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
|
|
4220
|
+
/**
|
|
4221
|
+
* 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.
|
|
4222
|
+
* @summary Submit a peer report
|
|
4223
|
+
* @param {CreateReportRequest} createReportRequest
|
|
4224
|
+
* @param {*} [options] Override http request option.
|
|
4225
|
+
* @throws {RequiredError}
|
|
4226
|
+
*/
|
|
4227
|
+
submit(createReportRequest: CreateReportRequest, options?: RawAxiosRequestConfig): AxiosPromise<CreateReportResponse>;
|
|
4228
|
+
};
|
|
4229
|
+
/**
|
|
4230
|
+
* ReportApi - object-oriented interface
|
|
4231
|
+
*/
|
|
4232
|
+
export declare class ReportApi extends BaseAPI {
|
|
4233
|
+
/**
|
|
4234
|
+
* 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.
|
|
4235
|
+
* @summary Submit a peer report
|
|
4236
|
+
* @param {CreateReportRequest} createReportRequest
|
|
2116
4237
|
* @param {*} [options] Override http request option.
|
|
2117
4238
|
* @throws {RequiredError}
|
|
2118
4239
|
*/
|
|
2119
|
-
|
|
4240
|
+
submit(createReportRequest: CreateReportRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<CreateReportResponse, any, {}>>;
|
|
2120
4241
|
}
|
|
2121
4242
|
/**
|
|
2122
4243
|
* ServerSessionsApi - axios parameter creator
|