@rebornteam/reborn-api 4.0.0 → 4.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.openapi-generator/FILES +5 -0
- package/README.md +12 -2
- package/api.ts +467 -2
- package/base.ts +1 -1
- package/common.ts +1 -1
- package/configuration.ts +1 -1
- package/dist/api.d.ts +267 -2
- package/dist/api.js +339 -1
- 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 +267 -2
- package/dist/esm/api.js +339 -1
- 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/AdminAltGraph.md +27 -0
- package/docs/AdminAltGraphEdge.md +25 -0
- package/docs/AdminAltGraphNode.md +29 -0
- package/docs/AdminAsyncJob.md +2 -0
- package/docs/AdminAsyncJobArtifactMeta.md +23 -0
- package/docs/AdminJobsApi.md +55 -0
- package/docs/AdminPlayersApi.md +104 -0
- package/docs/AdminPunishmentTargets.md +23 -0
- package/docs/AdminPunishmentsApi.md +101 -0
- package/docs/AdminUpdatePunishmentRequest.md +9 -1
- package/index.ts +1 -1
- package/package.json +1 -1
package/api.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Reborn API
|
|
5
5
|
* 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
|
|
6
6
|
*
|
|
7
|
-
* The version of the OpenAPI document: 4.
|
|
7
|
+
* The version of the OpenAPI document: 4.5.0
|
|
8
8
|
*
|
|
9
9
|
*
|
|
10
10
|
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
@@ -73,6 +73,69 @@ export interface AdminAltExemption {
|
|
|
73
73
|
*/
|
|
74
74
|
'reason'?: string | null;
|
|
75
75
|
}
|
|
76
|
+
/**
|
|
77
|
+
* Alt-graph rooted at a player, walked out to the requested hop depth.
|
|
78
|
+
*/
|
|
79
|
+
export interface AdminAltGraph {
|
|
80
|
+
/**
|
|
81
|
+
* UUID of the focal player. Always appears in nodes at depth=0.
|
|
82
|
+
*/
|
|
83
|
+
'rootUuid': string;
|
|
84
|
+
/**
|
|
85
|
+
* Maximum hop depth walked. Capped server-side at MAX_PROPAGATION_DEPTH.
|
|
86
|
+
*/
|
|
87
|
+
'depth': number;
|
|
88
|
+
/**
|
|
89
|
+
* Every player reachable from the root within {@code depth} hops, including the root at depth=0.
|
|
90
|
+
*/
|
|
91
|
+
'nodes': Array<AdminAltGraphNode>;
|
|
92
|
+
/**
|
|
93
|
+
* Undirected edges between any two players in nodes that share at least one non-promiscuous connection.
|
|
94
|
+
*/
|
|
95
|
+
'edges': Array<AdminAltGraphEdge>;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Undirected edge in an alt-graph traversal.
|
|
99
|
+
*/
|
|
100
|
+
export interface AdminAltGraphEdge {
|
|
101
|
+
/**
|
|
102
|
+
* One endpoint of the edge
|
|
103
|
+
*/
|
|
104
|
+
'fromUuid': string;
|
|
105
|
+
/**
|
|
106
|
+
* Other endpoint of the edge. The pair is emitted only once — the SQL ensures fromUuid < toUuid lexicographically.
|
|
107
|
+
*/
|
|
108
|
+
'toUuid': string;
|
|
109
|
+
/**
|
|
110
|
+
* Number of distinct non-promiscuous connections these two players share. Drives edge thickness.
|
|
111
|
+
*/
|
|
112
|
+
'sharedConnectionCount': number;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* One player node in an alt-graph traversal.
|
|
116
|
+
*/
|
|
117
|
+
export interface AdminAltGraphNode {
|
|
118
|
+
/**
|
|
119
|
+
* Player Minecraft UUID
|
|
120
|
+
*/
|
|
121
|
+
'uuid': string;
|
|
122
|
+
/**
|
|
123
|
+
* Most recently seen username, null if never resolved
|
|
124
|
+
*/
|
|
125
|
+
'username'?: string | null;
|
|
126
|
+
/**
|
|
127
|
+
* Hop count from the focal player (0 = the focal player herself).
|
|
128
|
+
*/
|
|
129
|
+
'depth': number;
|
|
130
|
+
/**
|
|
131
|
+
* Trust factor (0-100). Drives the node colour in the graph.
|
|
132
|
+
*/
|
|
133
|
+
'trustFactor': number;
|
|
134
|
+
/**
|
|
135
|
+
* Whether this player currently has at least one active (non-revoked, non-expired) player_punishment row. Drives a red outline ring on the node.
|
|
136
|
+
*/
|
|
137
|
+
'hasActivePunishment': boolean;
|
|
138
|
+
}
|
|
76
139
|
/**
|
|
77
140
|
* Request to apply a punishment to one or more targets
|
|
78
141
|
*/
|
|
@@ -212,9 +275,26 @@ export interface AdminAsyncJob {
|
|
|
212
275
|
* 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.
|
|
213
276
|
*/
|
|
214
277
|
'hostInstance': string;
|
|
278
|
+
/**
|
|
279
|
+
* Pointer to a CSV artifact emitted by this job, when one exists. Present only after the job marks COMPLETED and the artifact has been persisted. Download the CSV bytes via GET /admin/job/{id}/artifact.csv.
|
|
280
|
+
*/
|
|
281
|
+
'artifact'?: AdminAsyncJobArtifactMeta | null;
|
|
215
282
|
}
|
|
216
283
|
|
|
217
284
|
|
|
285
|
+
/**
|
|
286
|
+
* Pointer to a job\'s CSV artifact. Present only when the job emitted one.
|
|
287
|
+
*/
|
|
288
|
+
export interface AdminAsyncJobArtifactMeta {
|
|
289
|
+
/**
|
|
290
|
+
* Number of data rows in the artifact (excluding the header).
|
|
291
|
+
*/
|
|
292
|
+
'rowCount': number;
|
|
293
|
+
/**
|
|
294
|
+
* When the artifact was finalized (typically a few seconds after the job marked COMPLETED).
|
|
295
|
+
*/
|
|
296
|
+
'createdAt': string;
|
|
297
|
+
}
|
|
218
298
|
/**
|
|
219
299
|
* 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.
|
|
220
300
|
*/
|
|
@@ -850,6 +930,19 @@ export interface AdminPunishmentTarget {
|
|
|
850
930
|
*/
|
|
851
931
|
'ipAddress'?: string | null;
|
|
852
932
|
}
|
|
933
|
+
/**
|
|
934
|
+
* Active DIRECT participants currently attached to a punishment.
|
|
935
|
+
*/
|
|
936
|
+
export interface AdminPunishmentTargets {
|
|
937
|
+
/**
|
|
938
|
+
* UUIDs of players with an active DIRECT player_punishment link to this punishment.
|
|
939
|
+
*/
|
|
940
|
+
'playerUuids': Array<string>;
|
|
941
|
+
/**
|
|
942
|
+
* IPs of connections with a live connection_punishment row for this punishment.
|
|
943
|
+
*/
|
|
944
|
+
'ipAddresses': Array<string>;
|
|
945
|
+
}
|
|
853
946
|
/**
|
|
854
947
|
* One reported player attached to a report.
|
|
855
948
|
*/
|
|
@@ -997,7 +1090,7 @@ export interface AdminTrustFactorImpact {
|
|
|
997
1090
|
'projectedTrustFactor': number;
|
|
998
1091
|
}
|
|
999
1092
|
/**
|
|
1000
|
-
* Partial update for a punishment.
|
|
1093
|
+
* Partial update for a punishment. All fields are optional; omitted fields stay untouched.
|
|
1001
1094
|
*/
|
|
1002
1095
|
export interface AdminUpdatePunishmentRequest {
|
|
1003
1096
|
/**
|
|
@@ -1016,7 +1109,25 @@ export interface AdminUpdatePunishmentRequest {
|
|
|
1016
1109
|
* When true, clears expiresAt (makes the punishment permanent). Takes precedence over expiresAt.
|
|
1017
1110
|
*/
|
|
1018
1111
|
'forcePermanent'?: boolean | null;
|
|
1112
|
+
/**
|
|
1113
|
+
* Replace the punishment type (BAN/MUTE/KICK/WARNING). Affects trust factor retroactively.
|
|
1114
|
+
*/
|
|
1115
|
+
'type'?: PunishmentType | null;
|
|
1116
|
+
/**
|
|
1117
|
+
* Replace the severity (1–4). Affects trust factor retroactively.
|
|
1118
|
+
*/
|
|
1119
|
+
'severity'?: number | null;
|
|
1120
|
+
/**
|
|
1121
|
+
* Targets to ADD. Each entry has either a player UUID or an IP. UUID → new DIRECT player_punishment row. IP → new connection_punishment row.
|
|
1122
|
+
*/
|
|
1123
|
+
'addTargets'?: Array<AdminPunishmentTarget> | null;
|
|
1124
|
+
/**
|
|
1125
|
+
* Targets to REMOVE. UUID → soft-revoke the DIRECT player_punishment link. IP → delete the connection_punishment row outright. PROPAGATED links are not affected by this endpoint.
|
|
1126
|
+
*/
|
|
1127
|
+
'removeTargets'?: Array<AdminPunishmentTarget> | null;
|
|
1019
1128
|
}
|
|
1129
|
+
|
|
1130
|
+
|
|
1020
1131
|
/**
|
|
1021
1132
|
* A single entry in a player\'s username history
|
|
1022
1133
|
*/
|
|
@@ -3398,6 +3509,44 @@ export const AdminJobsApiAxiosParamCreator = function (configuration?: Configura
|
|
|
3398
3509
|
await setBearerAuthToObject(localVarHeaderParameter, configuration)
|
|
3399
3510
|
|
|
3400
3511
|
|
|
3512
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
3513
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
3514
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
3515
|
+
|
|
3516
|
+
return {
|
|
3517
|
+
url: toPathString(localVarUrlObj),
|
|
3518
|
+
options: localVarRequestOptions,
|
|
3519
|
+
};
|
|
3520
|
+
},
|
|
3521
|
+
/**
|
|
3522
|
+
* Returns the CSV emitted by the job — typically one row per record the job touched. The first line is a header; subsequent lines are RFC-4180 escaped data rows. 404 when the job has no artifact (either it didn\'t emit one, or it hasn\'t finished yet).
|
|
3523
|
+
* @summary Download a job\'s CSV artifact
|
|
3524
|
+
* @param {string} id Job id
|
|
3525
|
+
* @param {*} [options] Override http request option.
|
|
3526
|
+
* @throws {RequiredError}
|
|
3527
|
+
*/
|
|
3528
|
+
downloadArtifact: async (id: string, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
3529
|
+
// verify required parameter 'id' is not null or undefined
|
|
3530
|
+
assertParamExists('downloadArtifact', 'id', id)
|
|
3531
|
+
const localVarPath = `/admin/job/{id}/artifact.csv`
|
|
3532
|
+
.replace(`{${"id"}}`, encodeURIComponent(String(id)));
|
|
3533
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
3534
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
3535
|
+
let baseOptions;
|
|
3536
|
+
if (configuration) {
|
|
3537
|
+
baseOptions = configuration.baseOptions;
|
|
3538
|
+
}
|
|
3539
|
+
|
|
3540
|
+
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
|
|
3541
|
+
const localVarHeaderParameter = {} as any;
|
|
3542
|
+
const localVarQueryParameter = {} as any;
|
|
3543
|
+
|
|
3544
|
+
// authentication DiscordAuth required
|
|
3545
|
+
// http bearer authentication required
|
|
3546
|
+
await setBearerAuthToObject(localVarHeaderParameter, configuration)
|
|
3547
|
+
|
|
3548
|
+
localVarHeaderParameter['Accept'] = 'text/csv';
|
|
3549
|
+
|
|
3401
3550
|
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
3402
3551
|
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
3403
3552
|
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
@@ -3513,6 +3662,19 @@ export const AdminJobsApiFp = function(configuration?: Configuration) {
|
|
|
3513
3662
|
const localVarOperationServerBasePath = operationServerMap['AdminJobsApi.cancel']?.[localVarOperationServerIndex]?.url;
|
|
3514
3663
|
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
|
|
3515
3664
|
},
|
|
3665
|
+
/**
|
|
3666
|
+
* Returns the CSV emitted by the job — typically one row per record the job touched. The first line is a header; subsequent lines are RFC-4180 escaped data rows. 404 when the job has no artifact (either it didn\'t emit one, or it hasn\'t finished yet).
|
|
3667
|
+
* @summary Download a job\'s CSV artifact
|
|
3668
|
+
* @param {string} id Job id
|
|
3669
|
+
* @param {*} [options] Override http request option.
|
|
3670
|
+
* @throws {RequiredError}
|
|
3671
|
+
*/
|
|
3672
|
+
async downloadArtifact(id: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<string>> {
|
|
3673
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.downloadArtifact(id, options);
|
|
3674
|
+
const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
|
|
3675
|
+
const localVarOperationServerBasePath = operationServerMap['AdminJobsApi.downloadArtifact']?.[localVarOperationServerIndex]?.url;
|
|
3676
|
+
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
|
|
3677
|
+
},
|
|
3516
3678
|
/**
|
|
3517
3679
|
* The polling target — the admin UI hits this every ~2 s while a job is running to update its progress bar.
|
|
3518
3680
|
* @summary Get one async job
|
|
@@ -3559,6 +3721,16 @@ export const AdminJobsApiFactory = function (configuration?: Configuration, base
|
|
|
3559
3721
|
cancel(id: string, options?: RawAxiosRequestConfig): AxiosPromise<void> {
|
|
3560
3722
|
return localVarFp.cancel(id, options).then((request) => request(axios, basePath));
|
|
3561
3723
|
},
|
|
3724
|
+
/**
|
|
3725
|
+
* Returns the CSV emitted by the job — typically one row per record the job touched. The first line is a header; subsequent lines are RFC-4180 escaped data rows. 404 when the job has no artifact (either it didn\'t emit one, or it hasn\'t finished yet).
|
|
3726
|
+
* @summary Download a job\'s CSV artifact
|
|
3727
|
+
* @param {string} id Job id
|
|
3728
|
+
* @param {*} [options] Override http request option.
|
|
3729
|
+
* @throws {RequiredError}
|
|
3730
|
+
*/
|
|
3731
|
+
downloadArtifact(id: string, options?: RawAxiosRequestConfig): AxiosPromise<string> {
|
|
3732
|
+
return localVarFp.downloadArtifact(id, options).then((request) => request(axios, basePath));
|
|
3733
|
+
},
|
|
3562
3734
|
/**
|
|
3563
3735
|
* The polling target — the admin UI hits this every ~2 s while a job is running to update its progress bar.
|
|
3564
3736
|
* @summary Get one async job
|
|
@@ -3598,6 +3770,17 @@ export class AdminJobsApi extends BaseAPI {
|
|
|
3598
3770
|
return AdminJobsApiFp(this.configuration).cancel(id, options).then((request) => request(this.axios, this.basePath));
|
|
3599
3771
|
}
|
|
3600
3772
|
|
|
3773
|
+
/**
|
|
3774
|
+
* Returns the CSV emitted by the job — typically one row per record the job touched. The first line is a header; subsequent lines are RFC-4180 escaped data rows. 404 when the job has no artifact (either it didn\'t emit one, or it hasn\'t finished yet).
|
|
3775
|
+
* @summary Download a job\'s CSV artifact
|
|
3776
|
+
* @param {string} id Job id
|
|
3777
|
+
* @param {*} [options] Override http request option.
|
|
3778
|
+
* @throws {RequiredError}
|
|
3779
|
+
*/
|
|
3780
|
+
public downloadArtifact(id: string, options?: RawAxiosRequestConfig) {
|
|
3781
|
+
return AdminJobsApiFp(this.configuration).downloadArtifact(id, options).then((request) => request(this.axios, this.basePath));
|
|
3782
|
+
}
|
|
3783
|
+
|
|
3601
3784
|
/**
|
|
3602
3785
|
* The polling target — the admin UI hits this every ~2 s while a job is running to update its progress bar.
|
|
3603
3786
|
* @summary Get one async job
|
|
@@ -3671,6 +3854,40 @@ export const AdminPlayersApiAxiosParamCreator = function (configuration?: Config
|
|
|
3671
3854
|
options: localVarRequestOptions,
|
|
3672
3855
|
};
|
|
3673
3856
|
},
|
|
3857
|
+
/**
|
|
3858
|
+
* Submits an async job that walks every player row whose username is NULL and calls the Mojang profile API to resolve it. The job upserts both the player.username column and a player_username_history row. Returns immediately with a job id — poll GET /admin/job/{id} for progress and DELETE /admin/job/{id} to cancel. The final Admin_BackfillUsernamesResponse (processed/succeeded/failed counts) lands in the job\'s result_payload on COMPLETED. Mojang rate-limits at ~1 req/sec; a backfill of many rows can run for a while — cancel is honoured between rows.
|
|
3859
|
+
* @summary Start a username backfill job
|
|
3860
|
+
* @param {*} [options] Override http request option.
|
|
3861
|
+
* @throws {RequiredError}
|
|
3862
|
+
*/
|
|
3863
|
+
backfillUsernames: async (options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
3864
|
+
const localVarPath = `/admin/player/backfill-usernames`;
|
|
3865
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
3866
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
3867
|
+
let baseOptions;
|
|
3868
|
+
if (configuration) {
|
|
3869
|
+
baseOptions = configuration.baseOptions;
|
|
3870
|
+
}
|
|
3871
|
+
|
|
3872
|
+
const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
|
|
3873
|
+
const localVarHeaderParameter = {} as any;
|
|
3874
|
+
const localVarQueryParameter = {} as any;
|
|
3875
|
+
|
|
3876
|
+
// authentication DiscordAuth required
|
|
3877
|
+
// http bearer authentication required
|
|
3878
|
+
await setBearerAuthToObject(localVarHeaderParameter, configuration)
|
|
3879
|
+
|
|
3880
|
+
localVarHeaderParameter['Accept'] = 'application/json';
|
|
3881
|
+
|
|
3882
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
3883
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
3884
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
3885
|
+
|
|
3886
|
+
return {
|
|
3887
|
+
url: toPathString(localVarUrlObj),
|
|
3888
|
+
options: localVarRequestOptions,
|
|
3889
|
+
};
|
|
3890
|
+
},
|
|
3674
3891
|
/**
|
|
3675
3892
|
* 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.
|
|
3676
3893
|
* @summary Bulk-revoke PROPAGATED links by source
|
|
@@ -3785,6 +4002,49 @@ export const AdminPlayersApiAxiosParamCreator = function (configuration?: Config
|
|
|
3785
4002
|
await setBearerAuthToObject(localVarHeaderParameter, configuration)
|
|
3786
4003
|
|
|
3787
4004
|
|
|
4005
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
4006
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
4007
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
4008
|
+
|
|
4009
|
+
return {
|
|
4010
|
+
url: toPathString(localVarUrlObj),
|
|
4011
|
+
options: localVarRequestOptions,
|
|
4012
|
+
};
|
|
4013
|
+
},
|
|
4014
|
+
/**
|
|
4015
|
+
* Returns the connection-shared player graph reachable from this player within {depth} hops. Mirrors the propagation walk used by ALT_PROPAGATION_SWEEP — promiscuous (likely shared-NAT) connections are pruned, alt-exemption rows cut the graph at exempted players. Depth is clamped server-side at 5. Used by the admin Graph tab to render an interactive explorer.
|
|
4016
|
+
* @summary Alt-graph traversal rooted at a player
|
|
4017
|
+
* @param {string} uuid Player Minecraft UUID
|
|
4018
|
+
* @param {number} [depth] Hop depth to walk. 1=direct alts only; 5=full sticky-trap radius. Default 2.
|
|
4019
|
+
* @param {*} [options] Override http request option.
|
|
4020
|
+
* @throws {RequiredError}
|
|
4021
|
+
*/
|
|
4022
|
+
getAltGraph: async (uuid: string, depth?: number, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
4023
|
+
// verify required parameter 'uuid' is not null or undefined
|
|
4024
|
+
assertParamExists('getAltGraph', 'uuid', uuid)
|
|
4025
|
+
const localVarPath = `/admin/player/{uuid}/alt-graph`
|
|
4026
|
+
.replace(`{${"uuid"}}`, encodeURIComponent(String(uuid)));
|
|
4027
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
4028
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
4029
|
+
let baseOptions;
|
|
4030
|
+
if (configuration) {
|
|
4031
|
+
baseOptions = configuration.baseOptions;
|
|
4032
|
+
}
|
|
4033
|
+
|
|
4034
|
+
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
|
|
4035
|
+
const localVarHeaderParameter = {} as any;
|
|
4036
|
+
const localVarQueryParameter = {} as any;
|
|
4037
|
+
|
|
4038
|
+
// authentication DiscordAuth required
|
|
4039
|
+
// http bearer authentication required
|
|
4040
|
+
await setBearerAuthToObject(localVarHeaderParameter, configuration)
|
|
4041
|
+
|
|
4042
|
+
if (depth !== undefined) {
|
|
4043
|
+
localVarQueryParameter['depth'] = depth;
|
|
4044
|
+
}
|
|
4045
|
+
|
|
4046
|
+
localVarHeaderParameter['Accept'] = 'application/json';
|
|
4047
|
+
|
|
3788
4048
|
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
3789
4049
|
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
3790
4050
|
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
@@ -4415,6 +4675,18 @@ export const AdminPlayersApiFp = function(configuration?: Configuration) {
|
|
|
4415
4675
|
const localVarOperationServerBasePath = operationServerMap['AdminPlayersApi.addAltExemption']?.[localVarOperationServerIndex]?.url;
|
|
4416
4676
|
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
|
|
4417
4677
|
},
|
|
4678
|
+
/**
|
|
4679
|
+
* Submits an async job that walks every player row whose username is NULL and calls the Mojang profile API to resolve it. The job upserts both the player.username column and a player_username_history row. Returns immediately with a job id — poll GET /admin/job/{id} for progress and DELETE /admin/job/{id} to cancel. The final Admin_BackfillUsernamesResponse (processed/succeeded/failed counts) lands in the job\'s result_payload on COMPLETED. Mojang rate-limits at ~1 req/sec; a backfill of many rows can run for a while — cancel is honoured between rows.
|
|
4680
|
+
* @summary Start a username backfill job
|
|
4681
|
+
* @param {*} [options] Override http request option.
|
|
4682
|
+
* @throws {RequiredError}
|
|
4683
|
+
*/
|
|
4684
|
+
async backfillUsernames(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminAsyncJobStartResponse>> {
|
|
4685
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.backfillUsernames(options);
|
|
4686
|
+
const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
|
|
4687
|
+
const localVarOperationServerBasePath = operationServerMap['AdminPlayersApi.backfillUsernames']?.[localVarOperationServerIndex]?.url;
|
|
4688
|
+
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
|
|
4689
|
+
},
|
|
4418
4690
|
/**
|
|
4419
4691
|
* 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.
|
|
4420
4692
|
* @summary Bulk-revoke PROPAGATED links by source
|
|
@@ -4456,6 +4728,20 @@ export const AdminPlayersApiFp = function(configuration?: Configuration) {
|
|
|
4456
4728
|
const localVarOperationServerBasePath = operationServerMap['AdminPlayersApi.deletePlayerNote']?.[localVarOperationServerIndex]?.url;
|
|
4457
4729
|
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
|
|
4458
4730
|
},
|
|
4731
|
+
/**
|
|
4732
|
+
* Returns the connection-shared player graph reachable from this player within {depth} hops. Mirrors the propagation walk used by ALT_PROPAGATION_SWEEP — promiscuous (likely shared-NAT) connections are pruned, alt-exemption rows cut the graph at exempted players. Depth is clamped server-side at 5. Used by the admin Graph tab to render an interactive explorer.
|
|
4733
|
+
* @summary Alt-graph traversal rooted at a player
|
|
4734
|
+
* @param {string} uuid Player Minecraft UUID
|
|
4735
|
+
* @param {number} [depth] Hop depth to walk. 1=direct alts only; 5=full sticky-trap radius. Default 2.
|
|
4736
|
+
* @param {*} [options] Override http request option.
|
|
4737
|
+
* @throws {RequiredError}
|
|
4738
|
+
*/
|
|
4739
|
+
async getAltGraph(uuid: string, depth?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminAltGraph>> {
|
|
4740
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.getAltGraph(uuid, depth, options);
|
|
4741
|
+
const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
|
|
4742
|
+
const localVarOperationServerBasePath = operationServerMap['AdminPlayersApi.getAltGraph']?.[localVarOperationServerIndex]?.url;
|
|
4743
|
+
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
|
|
4744
|
+
},
|
|
4459
4745
|
/**
|
|
4460
4746
|
* Returns full detail for a single player including all known usernames and punishment scoring.
|
|
4461
4747
|
* @summary Get player detail
|
|
@@ -4669,6 +4955,15 @@ export const AdminPlayersApiFactory = function (configuration?: Configuration, b
|
|
|
4669
4955
|
addAltExemption(uuid: string, adminCreateAltExemptionRequest: AdminCreateAltExemptionRequest, options?: RawAxiosRequestConfig): AxiosPromise<void> {
|
|
4670
4956
|
return localVarFp.addAltExemption(uuid, adminCreateAltExemptionRequest, options).then((request) => request(axios, basePath));
|
|
4671
4957
|
},
|
|
4958
|
+
/**
|
|
4959
|
+
* Submits an async job that walks every player row whose username is NULL and calls the Mojang profile API to resolve it. The job upserts both the player.username column and a player_username_history row. Returns immediately with a job id — poll GET /admin/job/{id} for progress and DELETE /admin/job/{id} to cancel. The final Admin_BackfillUsernamesResponse (processed/succeeded/failed counts) lands in the job\'s result_payload on COMPLETED. Mojang rate-limits at ~1 req/sec; a backfill of many rows can run for a while — cancel is honoured between rows.
|
|
4960
|
+
* @summary Start a username backfill job
|
|
4961
|
+
* @param {*} [options] Override http request option.
|
|
4962
|
+
* @throws {RequiredError}
|
|
4963
|
+
*/
|
|
4964
|
+
backfillUsernames(options?: RawAxiosRequestConfig): AxiosPromise<AdminAsyncJobStartResponse> {
|
|
4965
|
+
return localVarFp.backfillUsernames(options).then((request) => request(axios, basePath));
|
|
4966
|
+
},
|
|
4672
4967
|
/**
|
|
4673
4968
|
* 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.
|
|
4674
4969
|
* @summary Bulk-revoke PROPAGATED links by source
|
|
@@ -4701,6 +4996,17 @@ export const AdminPlayersApiFactory = function (configuration?: Configuration, b
|
|
|
4701
4996
|
deletePlayerNote(uuid: string, noteId: number, options?: RawAxiosRequestConfig): AxiosPromise<void> {
|
|
4702
4997
|
return localVarFp.deletePlayerNote(uuid, noteId, options).then((request) => request(axios, basePath));
|
|
4703
4998
|
},
|
|
4999
|
+
/**
|
|
5000
|
+
* Returns the connection-shared player graph reachable from this player within {depth} hops. Mirrors the propagation walk used by ALT_PROPAGATION_SWEEP — promiscuous (likely shared-NAT) connections are pruned, alt-exemption rows cut the graph at exempted players. Depth is clamped server-side at 5. Used by the admin Graph tab to render an interactive explorer.
|
|
5001
|
+
* @summary Alt-graph traversal rooted at a player
|
|
5002
|
+
* @param {string} uuid Player Minecraft UUID
|
|
5003
|
+
* @param {number} [depth] Hop depth to walk. 1=direct alts only; 5=full sticky-trap radius. Default 2.
|
|
5004
|
+
* @param {*} [options] Override http request option.
|
|
5005
|
+
* @throws {RequiredError}
|
|
5006
|
+
*/
|
|
5007
|
+
getAltGraph(uuid: string, depth?: number, options?: RawAxiosRequestConfig): AxiosPromise<AdminAltGraph> {
|
|
5008
|
+
return localVarFp.getAltGraph(uuid, depth, options).then((request) => request(axios, basePath));
|
|
5009
|
+
},
|
|
4704
5010
|
/**
|
|
4705
5011
|
* Returns full detail for a single player including all known usernames and punishment scoring.
|
|
4706
5012
|
* @summary Get player detail
|
|
@@ -4871,6 +5177,16 @@ export class AdminPlayersApi extends BaseAPI {
|
|
|
4871
5177
|
return AdminPlayersApiFp(this.configuration).addAltExemption(uuid, adminCreateAltExemptionRequest, options).then((request) => request(this.axios, this.basePath));
|
|
4872
5178
|
}
|
|
4873
5179
|
|
|
5180
|
+
/**
|
|
5181
|
+
* Submits an async job that walks every player row whose username is NULL and calls the Mojang profile API to resolve it. The job upserts both the player.username column and a player_username_history row. Returns immediately with a job id — poll GET /admin/job/{id} for progress and DELETE /admin/job/{id} to cancel. The final Admin_BackfillUsernamesResponse (processed/succeeded/failed counts) lands in the job\'s result_payload on COMPLETED. Mojang rate-limits at ~1 req/sec; a backfill of many rows can run for a while — cancel is honoured between rows.
|
|
5182
|
+
* @summary Start a username backfill job
|
|
5183
|
+
* @param {*} [options] Override http request option.
|
|
5184
|
+
* @throws {RequiredError}
|
|
5185
|
+
*/
|
|
5186
|
+
public backfillUsernames(options?: RawAxiosRequestConfig) {
|
|
5187
|
+
return AdminPlayersApiFp(this.configuration).backfillUsernames(options).then((request) => request(this.axios, this.basePath));
|
|
5188
|
+
}
|
|
5189
|
+
|
|
4874
5190
|
/**
|
|
4875
5191
|
* 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.
|
|
4876
5192
|
* @summary Bulk-revoke PROPAGATED links by source
|
|
@@ -4906,6 +5222,18 @@ export class AdminPlayersApi extends BaseAPI {
|
|
|
4906
5222
|
return AdminPlayersApiFp(this.configuration).deletePlayerNote(uuid, noteId, options).then((request) => request(this.axios, this.basePath));
|
|
4907
5223
|
}
|
|
4908
5224
|
|
|
5225
|
+
/**
|
|
5226
|
+
* Returns the connection-shared player graph reachable from this player within {depth} hops. Mirrors the propagation walk used by ALT_PROPAGATION_SWEEP — promiscuous (likely shared-NAT) connections are pruned, alt-exemption rows cut the graph at exempted players. Depth is clamped server-side at 5. Used by the admin Graph tab to render an interactive explorer.
|
|
5227
|
+
* @summary Alt-graph traversal rooted at a player
|
|
5228
|
+
* @param {string} uuid Player Minecraft UUID
|
|
5229
|
+
* @param {number} [depth] Hop depth to walk. 1=direct alts only; 5=full sticky-trap radius. Default 2.
|
|
5230
|
+
* @param {*} [options] Override http request option.
|
|
5231
|
+
* @throws {RequiredError}
|
|
5232
|
+
*/
|
|
5233
|
+
public getAltGraph(uuid: string, depth?: number, options?: RawAxiosRequestConfig) {
|
|
5234
|
+
return AdminPlayersApiFp(this.configuration).getAltGraph(uuid, depth, options).then((request) => request(this.axios, this.basePath));
|
|
5235
|
+
}
|
|
5236
|
+
|
|
4909
5237
|
/**
|
|
4910
5238
|
* Returns full detail for a single player including all known usernames and punishment scoring.
|
|
4911
5239
|
* @summary Get player detail
|
|
@@ -5199,6 +5527,44 @@ export const AdminPunishmentsApiAxiosParamCreator = function (configuration?: Co
|
|
|
5199
5527
|
options: localVarRequestOptions,
|
|
5200
5528
|
};
|
|
5201
5529
|
},
|
|
5530
|
+
/**
|
|
5531
|
+
* Returns the active DIRECT player_punishment UUIDs and the live connection_punishment IPs for a punishment. Used by the admin edit dialog to render the editable participant list. PROPAGATED links are excluded — they\'re an enforcement detail, not part of \'who the admin attached to this punishment\'.
|
|
5532
|
+
* @summary List a punishment\'s current participants
|
|
5533
|
+
* @param {number} id Punishment id
|
|
5534
|
+
* @param {*} [options] Override http request option.
|
|
5535
|
+
* @throws {RequiredError}
|
|
5536
|
+
*/
|
|
5537
|
+
getPunishmentTargets: async (id: number, options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
5538
|
+
// verify required parameter 'id' is not null or undefined
|
|
5539
|
+
assertParamExists('getPunishmentTargets', 'id', id)
|
|
5540
|
+
const localVarPath = `/admin/punishment/{id}/targets`
|
|
5541
|
+
.replace(`{${"id"}}`, encodeURIComponent(String(id)));
|
|
5542
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
5543
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
5544
|
+
let baseOptions;
|
|
5545
|
+
if (configuration) {
|
|
5546
|
+
baseOptions = configuration.baseOptions;
|
|
5547
|
+
}
|
|
5548
|
+
|
|
5549
|
+
const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
|
|
5550
|
+
const localVarHeaderParameter = {} as any;
|
|
5551
|
+
const localVarQueryParameter = {} as any;
|
|
5552
|
+
|
|
5553
|
+
// authentication DiscordAuth required
|
|
5554
|
+
// http bearer authentication required
|
|
5555
|
+
await setBearerAuthToObject(localVarHeaderParameter, configuration)
|
|
5556
|
+
|
|
5557
|
+
localVarHeaderParameter['Accept'] = 'application/json';
|
|
5558
|
+
|
|
5559
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
5560
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
5561
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
5562
|
+
|
|
5563
|
+
return {
|
|
5564
|
+
url: toPathString(localVarUrlObj),
|
|
5565
|
+
options: localVarRequestOptions,
|
|
5566
|
+
};
|
|
5567
|
+
},
|
|
5202
5568
|
/**
|
|
5203
5569
|
* Returns a paginated list of punishments with optional filtering by player UUID, username, IP address, type, and date range.
|
|
5204
5570
|
* @summary List punishments
|
|
@@ -5270,6 +5636,40 @@ export const AdminPunishmentsApiAxiosParamCreator = function (configuration?: Co
|
|
|
5270
5636
|
options: localVarRequestOptions,
|
|
5271
5637
|
};
|
|
5272
5638
|
},
|
|
5639
|
+
/**
|
|
5640
|
+
* Submits an async job that walks every player and re-runs the aggressive-mode propagation logic (tier-1 own-IP plus tier-2 alt-driven). Useful after toggling aggressive-mode on, or after a propagation-rule change, to backfill PROPAGATED player_punishment rows that would otherwise only appear on each player\'s next login. Idempotent — ON CONFLICT DO NOTHING. Returns immediately with a job id; poll GET /admin/job/{id} for progress and DELETE /admin/job/{id} to cancel.
|
|
5641
|
+
* @summary Start an alt-propagation sweep job
|
|
5642
|
+
* @param {*} [options] Override http request option.
|
|
5643
|
+
* @throws {RequiredError}
|
|
5644
|
+
*/
|
|
5645
|
+
propagationSweep: async (options: RawAxiosRequestConfig = {}): Promise<RequestArgs> => {
|
|
5646
|
+
const localVarPath = `/admin/punishment/propagation-sweep`;
|
|
5647
|
+
// use dummy base URL string because the URL constructor only accepts absolute URLs.
|
|
5648
|
+
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
|
|
5649
|
+
let baseOptions;
|
|
5650
|
+
if (configuration) {
|
|
5651
|
+
baseOptions = configuration.baseOptions;
|
|
5652
|
+
}
|
|
5653
|
+
|
|
5654
|
+
const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
|
|
5655
|
+
const localVarHeaderParameter = {} as any;
|
|
5656
|
+
const localVarQueryParameter = {} as any;
|
|
5657
|
+
|
|
5658
|
+
// authentication DiscordAuth required
|
|
5659
|
+
// http bearer authentication required
|
|
5660
|
+
await setBearerAuthToObject(localVarHeaderParameter, configuration)
|
|
5661
|
+
|
|
5662
|
+
localVarHeaderParameter['Accept'] = 'application/json';
|
|
5663
|
+
|
|
5664
|
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
|
|
5665
|
+
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
|
|
5666
|
+
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
|
|
5667
|
+
|
|
5668
|
+
return {
|
|
5669
|
+
url: toPathString(localVarUrlObj),
|
|
5670
|
+
options: localVarRequestOptions,
|
|
5671
|
+
};
|
|
5672
|
+
},
|
|
5273
5673
|
/**
|
|
5274
5674
|
* Search for players by UUID or username, or look up all players associated with an IP address.
|
|
5275
5675
|
* @summary Search punishment targets
|
|
@@ -5360,6 +5760,19 @@ export const AdminPunishmentsApiFp = function(configuration?: Configuration) {
|
|
|
5360
5760
|
const localVarOperationServerBasePath = operationServerMap['AdminPunishmentsApi.editPunishment']?.[localVarOperationServerIndex]?.url;
|
|
5361
5761
|
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
|
|
5362
5762
|
},
|
|
5763
|
+
/**
|
|
5764
|
+
* Returns the active DIRECT player_punishment UUIDs and the live connection_punishment IPs for a punishment. Used by the admin edit dialog to render the editable participant list. PROPAGATED links are excluded — they\'re an enforcement detail, not part of \'who the admin attached to this punishment\'.
|
|
5765
|
+
* @summary List a punishment\'s current participants
|
|
5766
|
+
* @param {number} id Punishment id
|
|
5767
|
+
* @param {*} [options] Override http request option.
|
|
5768
|
+
* @throws {RequiredError}
|
|
5769
|
+
*/
|
|
5770
|
+
async getPunishmentTargets(id: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminPunishmentTargets>> {
|
|
5771
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.getPunishmentTargets(id, options);
|
|
5772
|
+
const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
|
|
5773
|
+
const localVarOperationServerBasePath = operationServerMap['AdminPunishmentsApi.getPunishmentTargets']?.[localVarOperationServerIndex]?.url;
|
|
5774
|
+
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
|
|
5775
|
+
},
|
|
5363
5776
|
/**
|
|
5364
5777
|
* Returns a paginated list of punishments with optional filtering by player UUID, username, IP address, type, and date range.
|
|
5365
5778
|
* @summary List punishments
|
|
@@ -5379,6 +5792,18 @@ export const AdminPunishmentsApiFp = function(configuration?: Configuration) {
|
|
|
5379
5792
|
const localVarOperationServerBasePath = operationServerMap['AdminPunishmentsApi.getPunishments']?.[localVarOperationServerIndex]?.url;
|
|
5380
5793
|
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
|
|
5381
5794
|
},
|
|
5795
|
+
/**
|
|
5796
|
+
* Submits an async job that walks every player and re-runs the aggressive-mode propagation logic (tier-1 own-IP plus tier-2 alt-driven). Useful after toggling aggressive-mode on, or after a propagation-rule change, to backfill PROPAGATED player_punishment rows that would otherwise only appear on each player\'s next login. Idempotent — ON CONFLICT DO NOTHING. Returns immediately with a job id; poll GET /admin/job/{id} for progress and DELETE /admin/job/{id} to cancel.
|
|
5797
|
+
* @summary Start an alt-propagation sweep job
|
|
5798
|
+
* @param {*} [options] Override http request option.
|
|
5799
|
+
* @throws {RequiredError}
|
|
5800
|
+
*/
|
|
5801
|
+
async propagationSweep(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<AdminAsyncJobStartResponse>> {
|
|
5802
|
+
const localVarAxiosArgs = await localVarAxiosParamCreator.propagationSweep(options);
|
|
5803
|
+
const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
|
|
5804
|
+
const localVarOperationServerBasePath = operationServerMap['AdminPunishmentsApi.propagationSweep']?.[localVarOperationServerIndex]?.url;
|
|
5805
|
+
return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
|
|
5806
|
+
},
|
|
5382
5807
|
/**
|
|
5383
5808
|
* Search for players by UUID or username, or look up all players associated with an IP address.
|
|
5384
5809
|
* @summary Search punishment targets
|
|
@@ -5432,6 +5857,16 @@ export const AdminPunishmentsApiFactory = function (configuration?: Configuratio
|
|
|
5432
5857
|
editPunishment(id: number, adminUpdatePunishmentRequest: AdminUpdatePunishmentRequest, options?: RawAxiosRequestConfig): AxiosPromise<void> {
|
|
5433
5858
|
return localVarFp.editPunishment(id, adminUpdatePunishmentRequest, options).then((request) => request(axios, basePath));
|
|
5434
5859
|
},
|
|
5860
|
+
/**
|
|
5861
|
+
* Returns the active DIRECT player_punishment UUIDs and the live connection_punishment IPs for a punishment. Used by the admin edit dialog to render the editable participant list. PROPAGATED links are excluded — they\'re an enforcement detail, not part of \'who the admin attached to this punishment\'.
|
|
5862
|
+
* @summary List a punishment\'s current participants
|
|
5863
|
+
* @param {number} id Punishment id
|
|
5864
|
+
* @param {*} [options] Override http request option.
|
|
5865
|
+
* @throws {RequiredError}
|
|
5866
|
+
*/
|
|
5867
|
+
getPunishmentTargets(id: number, options?: RawAxiosRequestConfig): AxiosPromise<AdminPunishmentTargets> {
|
|
5868
|
+
return localVarFp.getPunishmentTargets(id, options).then((request) => request(axios, basePath));
|
|
5869
|
+
},
|
|
5435
5870
|
/**
|
|
5436
5871
|
* Returns a paginated list of punishments with optional filtering by player UUID, username, IP address, type, and date range.
|
|
5437
5872
|
* @summary List punishments
|
|
@@ -5448,6 +5883,15 @@ export const AdminPunishmentsApiFactory = function (configuration?: Configuratio
|
|
|
5448
5883
|
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> {
|
|
5449
5884
|
return localVarFp.getPunishments(pageable, uuid, username, ipAddress, type, issuedAfter, issuedBefore, options).then((request) => request(axios, basePath));
|
|
5450
5885
|
},
|
|
5886
|
+
/**
|
|
5887
|
+
* Submits an async job that walks every player and re-runs the aggressive-mode propagation logic (tier-1 own-IP plus tier-2 alt-driven). Useful after toggling aggressive-mode on, or after a propagation-rule change, to backfill PROPAGATED player_punishment rows that would otherwise only appear on each player\'s next login. Idempotent — ON CONFLICT DO NOTHING. Returns immediately with a job id; poll GET /admin/job/{id} for progress and DELETE /admin/job/{id} to cancel.
|
|
5888
|
+
* @summary Start an alt-propagation sweep job
|
|
5889
|
+
* @param {*} [options] Override http request option.
|
|
5890
|
+
* @throws {RequiredError}
|
|
5891
|
+
*/
|
|
5892
|
+
propagationSweep(options?: RawAxiosRequestConfig): AxiosPromise<AdminAsyncJobStartResponse> {
|
|
5893
|
+
return localVarFp.propagationSweep(options).then((request) => request(axios, basePath));
|
|
5894
|
+
},
|
|
5451
5895
|
/**
|
|
5452
5896
|
* Search for players by UUID or username, or look up all players associated with an IP address.
|
|
5453
5897
|
* @summary Search punishment targets
|
|
@@ -5499,6 +5943,17 @@ export class AdminPunishmentsApi extends BaseAPI {
|
|
|
5499
5943
|
return AdminPunishmentsApiFp(this.configuration).editPunishment(id, adminUpdatePunishmentRequest, options).then((request) => request(this.axios, this.basePath));
|
|
5500
5944
|
}
|
|
5501
5945
|
|
|
5946
|
+
/**
|
|
5947
|
+
* Returns the active DIRECT player_punishment UUIDs and the live connection_punishment IPs for a punishment. Used by the admin edit dialog to render the editable participant list. PROPAGATED links are excluded — they\'re an enforcement detail, not part of \'who the admin attached to this punishment\'.
|
|
5948
|
+
* @summary List a punishment\'s current participants
|
|
5949
|
+
* @param {number} id Punishment id
|
|
5950
|
+
* @param {*} [options] Override http request option.
|
|
5951
|
+
* @throws {RequiredError}
|
|
5952
|
+
*/
|
|
5953
|
+
public getPunishmentTargets(id: number, options?: RawAxiosRequestConfig) {
|
|
5954
|
+
return AdminPunishmentsApiFp(this.configuration).getPunishmentTargets(id, options).then((request) => request(this.axios, this.basePath));
|
|
5955
|
+
}
|
|
5956
|
+
|
|
5502
5957
|
/**
|
|
5503
5958
|
* Returns a paginated list of punishments with optional filtering by player UUID, username, IP address, type, and date range.
|
|
5504
5959
|
* @summary List punishments
|
|
@@ -5516,6 +5971,16 @@ export class AdminPunishmentsApi extends BaseAPI {
|
|
|
5516
5971
|
return AdminPunishmentsApiFp(this.configuration).getPunishments(pageable, uuid, username, ipAddress, type, issuedAfter, issuedBefore, options).then((request) => request(this.axios, this.basePath));
|
|
5517
5972
|
}
|
|
5518
5973
|
|
|
5974
|
+
/**
|
|
5975
|
+
* Submits an async job that walks every player and re-runs the aggressive-mode propagation logic (tier-1 own-IP plus tier-2 alt-driven). Useful after toggling aggressive-mode on, or after a propagation-rule change, to backfill PROPAGATED player_punishment rows that would otherwise only appear on each player\'s next login. Idempotent — ON CONFLICT DO NOTHING. Returns immediately with a job id; poll GET /admin/job/{id} for progress and DELETE /admin/job/{id} to cancel.
|
|
5976
|
+
* @summary Start an alt-propagation sweep job
|
|
5977
|
+
* @param {*} [options] Override http request option.
|
|
5978
|
+
* @throws {RequiredError}
|
|
5979
|
+
*/
|
|
5980
|
+
public propagationSweep(options?: RawAxiosRequestConfig) {
|
|
5981
|
+
return AdminPunishmentsApiFp(this.configuration).propagationSweep(options).then((request) => request(this.axios, this.basePath));
|
|
5982
|
+
}
|
|
5983
|
+
|
|
5519
5984
|
/**
|
|
5520
5985
|
* Search for players by UUID or username, or look up all players associated with an IP address.
|
|
5521
5986
|
* @summary Search punishment targets
|
package/base.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Reborn API
|
|
5
5
|
* 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
|
|
6
6
|
*
|
|
7
|
-
* The version of the OpenAPI document: 4.
|
|
7
|
+
* The version of the OpenAPI document: 4.5.0
|
|
8
8
|
*
|
|
9
9
|
*
|
|
10
10
|
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|