@rebornteam/reborn-api 4.5.0 → 4.7.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/dist/api.js CHANGED
@@ -5,7 +5,7 @@
5
5
  * Reborn API
6
6
  * 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
7
7
  *
8
- * The version of the OpenAPI document: 4.5.0
8
+ * The version of the OpenAPI document: 4.7.0
9
9
  *
10
10
  *
11
11
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -4940,7 +4940,7 @@ exports.PlayerApi = PlayerApi;
4940
4940
  const PlayerSessionsApiAxiosParamCreator = function (configuration) {
4941
4941
  return {
4942
4942
  /**
4943
- * 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.
4943
+ * Closes the active session for a (playerUuid, serverSessionId) pair and returns an acknowledgment: whether a session was actually closed, that session\'s start / end / duration, and the player\'s aggregate session stats recomputed after the close. No-op if no active session is found — `sessionClosed` is false and the per-session fields are null (stats are still returned) — so duplicate end events from a retry don\'t error.
4944
4944
  * @summary Close the active player session
4945
4945
  * @param {PlayerSessionEndRequest} playerSessionEndRequest
4946
4946
  * @param {*} [options] Override http request option.
@@ -4963,6 +4963,7 @@ const PlayerSessionsApiAxiosParamCreator = function (configuration) {
4963
4963
  // http bearer authentication required
4964
4964
  yield (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
4965
4965
  localVarHeaderParameter['Content-Type'] = 'application/json';
4966
+ localVarHeaderParameter['Accept'] = 'application/json';
4966
4967
  (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
4967
4968
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
4968
4969
  localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
@@ -5016,7 +5017,7 @@ const PlayerSessionsApiFp = function (configuration) {
5016
5017
  const localVarAxiosParamCreator = (0, exports.PlayerSessionsApiAxiosParamCreator)(configuration);
5017
5018
  return {
5018
5019
  /**
5019
- * 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.
5020
+ * Closes the active session for a (playerUuid, serverSessionId) pair and returns an acknowledgment: whether a session was actually closed, that session\'s start / end / duration, and the player\'s aggregate session stats recomputed after the close. No-op if no active session is found — `sessionClosed` is false and the per-session fields are null (stats are still returned) — so duplicate end events from a retry don\'t error.
5020
5021
  * @summary Close the active player session
5021
5022
  * @param {PlayerSessionEndRequest} playerSessionEndRequest
5022
5023
  * @param {*} [options] Override http request option.
@@ -5057,7 +5058,7 @@ const PlayerSessionsApiFactory = function (configuration, basePath, axios) {
5057
5058
  const localVarFp = (0, exports.PlayerSessionsApiFp)(configuration);
5058
5059
  return {
5059
5060
  /**
5060
- * 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.
5061
+ * Closes the active session for a (playerUuid, serverSessionId) pair and returns an acknowledgment: whether a session was actually closed, that session\'s start / end / duration, and the player\'s aggregate session stats recomputed after the close. No-op if no active session is found — `sessionClosed` is false and the per-session fields are null (stats are still returned) — so duplicate end events from a retry don\'t error.
5061
5062
  * @summary Close the active player session
5062
5063
  * @param {PlayerSessionEndRequest} playerSessionEndRequest
5063
5064
  * @param {*} [options] Override http request option.
@@ -5084,7 +5085,7 @@ exports.PlayerSessionsApiFactory = PlayerSessionsApiFactory;
5084
5085
  */
5085
5086
  class PlayerSessionsApi extends base_1.BaseAPI {
5086
5087
  /**
5087
- * 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.
5088
+ * Closes the active session for a (playerUuid, serverSessionId) pair and returns an acknowledgment: whether a session was actually closed, that session\'s start / end / duration, and the player\'s aggregate session stats recomputed after the close. No-op if no active session is found — `sessionClosed` is false and the per-session fields are null (stats are still returned) — so duplicate end events from a retry don\'t error.
5088
5089
  * @summary Close the active player session
5089
5090
  * @param {PlayerSessionEndRequest} playerSessionEndRequest
5090
5091
  * @param {*} [options] Override http request option.
@@ -5588,13 +5589,14 @@ exports.ReportApi = ReportApi;
5588
5589
  const ServerSessionsApiAxiosParamCreator = function (configuration) {
5589
5590
  return {
5590
5591
  /**
5591
- * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server.
5592
+ * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server. Optionally include an `activePlayers` list (the UUIDs currently on this server). When present, the API reconciles player sessions for this server: any open session whose player is absent from the list is closed, and linked to the player\'s new session if they transferred to another server. Omit the body for a plain liveness heartbeat.
5592
5593
  * @summary Send a heartbeat
5593
5594
  * @param {string} id Session UUID returned from the registration call
5595
+ * @param {ServerHeartbeatRequest} [serverHeartbeatRequest]
5594
5596
  * @param {*} [options] Override http request option.
5595
5597
  * @throws {RequiredError}
5596
5598
  */
5597
- heartbeat: (id_1, ...args_1) => __awaiter(this, [id_1, ...args_1], void 0, function* (id, options = {}) {
5599
+ heartbeat: (id_1, serverHeartbeatRequest_1, ...args_1) => __awaiter(this, [id_1, serverHeartbeatRequest_1, ...args_1], void 0, function* (id, serverHeartbeatRequest, options = {}) {
5598
5600
  // verify required parameter 'id' is not null or undefined
5599
5601
  (0, common_1.assertParamExists)('heartbeat', 'id', id);
5600
5602
  const localVarPath = `/v1/servers/{id}/heartbeat`
@@ -5611,9 +5613,11 @@ const ServerSessionsApiAxiosParamCreator = function (configuration) {
5611
5613
  // authentication DiscordAuth required
5612
5614
  // http bearer authentication required
5613
5615
  yield (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
5616
+ localVarHeaderParameter['Content-Type'] = 'application/json';
5614
5617
  (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
5615
5618
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
5616
5619
  localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
5620
+ localVarRequestOptions.data = (0, common_1.serializeDataIfNeeded)(serverHeartbeatRequest, localVarRequestOptions, configuration);
5617
5621
  return {
5618
5622
  url: (0, common_1.toPathString)(localVarUrlObj),
5619
5623
  options: localVarRequestOptions,
@@ -5753,16 +5757,17 @@ const ServerSessionsApiFp = function (configuration) {
5753
5757
  const localVarAxiosParamCreator = (0, exports.ServerSessionsApiAxiosParamCreator)(configuration);
5754
5758
  return {
5755
5759
  /**
5756
- * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server.
5760
+ * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server. Optionally include an `activePlayers` list (the UUIDs currently on this server). When present, the API reconciles player sessions for this server: any open session whose player is absent from the list is closed, and linked to the player\'s new session if they transferred to another server. Omit the body for a plain liveness heartbeat.
5757
5761
  * @summary Send a heartbeat
5758
5762
  * @param {string} id Session UUID returned from the registration call
5763
+ * @param {ServerHeartbeatRequest} [serverHeartbeatRequest]
5759
5764
  * @param {*} [options] Override http request option.
5760
5765
  * @throws {RequiredError}
5761
5766
  */
5762
- heartbeat(id, options) {
5767
+ heartbeat(id, serverHeartbeatRequest, options) {
5763
5768
  return __awaiter(this, void 0, void 0, function* () {
5764
5769
  var _a, _b, _c;
5765
- const localVarAxiosArgs = yield localVarAxiosParamCreator.heartbeat(id, options);
5770
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.heartbeat(id, serverHeartbeatRequest, options);
5766
5771
  const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
5767
5772
  const localVarOperationServerBasePath = (_c = (_b = base_1.operationServerMap['ServerSessionsApi.heartbeat']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
5768
5773
  return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -5840,14 +5845,15 @@ const ServerSessionsApiFactory = function (configuration, basePath, axios) {
5840
5845
  const localVarFp = (0, exports.ServerSessionsApiFp)(configuration);
5841
5846
  return {
5842
5847
  /**
5843
- * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server.
5848
+ * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server. Optionally include an `activePlayers` list (the UUIDs currently on this server). When present, the API reconciles player sessions for this server: any open session whose player is absent from the list is closed, and linked to the player\'s new session if they transferred to another server. Omit the body for a plain liveness heartbeat.
5844
5849
  * @summary Send a heartbeat
5845
5850
  * @param {string} id Session UUID returned from the registration call
5851
+ * @param {ServerHeartbeatRequest} [serverHeartbeatRequest]
5846
5852
  * @param {*} [options] Override http request option.
5847
5853
  * @throws {RequiredError}
5848
5854
  */
5849
- heartbeat(id, options) {
5850
- return localVarFp.heartbeat(id, options).then((request) => request(axios, basePath));
5855
+ heartbeat(id, serverHeartbeatRequest, options) {
5856
+ return localVarFp.heartbeat(id, serverHeartbeatRequest, options).then((request) => request(axios, basePath));
5851
5857
  },
5852
5858
  /**
5853
5859
  * Returns all server sessions — both online and historical — ordered by start time descending. Used by the web UI to populate the session filter dropdown.
@@ -5895,14 +5901,15 @@ exports.ServerSessionsApiFactory = ServerSessionsApiFactory;
5895
5901
  */
5896
5902
  class ServerSessionsApi extends base_1.BaseAPI {
5897
5903
  /**
5898
- * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server.
5904
+ * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server. Optionally include an `activePlayers` list (the UUIDs currently on this server). When present, the API reconciles player sessions for this server: any open session whose player is absent from the list is closed, and linked to the player\'s new session if they transferred to another server. Omit the body for a plain liveness heartbeat.
5899
5905
  * @summary Send a heartbeat
5900
5906
  * @param {string} id Session UUID returned from the registration call
5907
+ * @param {ServerHeartbeatRequest} [serverHeartbeatRequest]
5901
5908
  * @param {*} [options] Override http request option.
5902
5909
  * @throws {RequiredError}
5903
5910
  */
5904
- heartbeat(id, options) {
5905
- return (0, exports.ServerSessionsApiFp)(this.configuration).heartbeat(id, options).then((request) => request(this.axios, this.basePath));
5911
+ heartbeat(id, serverHeartbeatRequest, options) {
5912
+ return (0, exports.ServerSessionsApiFp)(this.configuration).heartbeat(id, serverHeartbeatRequest, options).then((request) => request(this.axios, this.basePath));
5906
5913
  }
5907
5914
  /**
5908
5915
  * Returns all server sessions — both online and historical — ordered by start time descending. Used by the web UI to populate the session filter dropdown.
package/dist/base.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: 4.5.0
5
+ * The version of the OpenAPI document: 4.7.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
package/dist/base.js CHANGED
@@ -5,7 +5,7 @@
5
5
  * Reborn API
6
6
  * 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
7
7
  *
8
- * The version of the OpenAPI document: 4.5.0
8
+ * The version of the OpenAPI document: 4.7.0
9
9
  *
10
10
  *
11
11
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
package/dist/common.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: 4.5.0
5
+ * The version of the OpenAPI document: 4.7.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
package/dist/common.js CHANGED
@@ -5,7 +5,7 @@
5
5
  * Reborn API
6
6
  * 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
7
7
  *
8
- * The version of the OpenAPI document: 4.5.0
8
+ * The version of the OpenAPI document: 4.7.0
9
9
  *
10
10
  *
11
11
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -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: 4.5.0
5
+ * The version of the OpenAPI document: 4.7.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -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.5.0
7
+ * The version of the OpenAPI document: 4.7.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
package/dist/esm/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: 4.5.0
5
+ * The version of the OpenAPI document: 4.7.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -755,6 +755,10 @@ export interface AdminPlayerSession {
755
755
  * Closed session duration in seconds (ended_at − started_at). Null while active.
756
756
  */
757
757
  'durationSeconds'?: number | null;
758
+ /**
759
+ * When the player transferred to another server, the id of the session they moved to. Null for a normal disconnect or an active session.
760
+ */
761
+ 'transferredTo'?: string | null;
758
762
  }
759
763
  /**
760
764
  * Aggregate session statistics for one player. Computed on demand from player_session.
@@ -1485,6 +1489,43 @@ export interface PlayerSessionEndRequest {
1485
1489
  */
1486
1490
  'serverSessionId': string;
1487
1491
  }
1492
+ /**
1493
+ * Result of POST /v1/player-session/end. Confirms whether a session was closed and returns that session\'s lifetime plus the player\'s refreshed aggregate stats.
1494
+ */
1495
+ export interface PlayerSessionEndResponse {
1496
+ /**
1497
+ * Player Minecraft UUID, echoed from the request
1498
+ */
1499
+ 'playerUuid': string;
1500
+ /**
1501
+ * Server session id the player was on, echoed from the request
1502
+ */
1503
+ 'serverSessionId': string;
1504
+ /**
1505
+ * True when an active session was found and closed by this call; false on a no-op (no active session existed, e.g. a duplicate/retried end event).
1506
+ */
1507
+ 'sessionClosed': boolean;
1508
+ /**
1509
+ * Id of the session that was closed. Null on a no-op.
1510
+ */
1511
+ 'sessionId'?: string | null;
1512
+ /**
1513
+ * When the closed session was opened (ISO-8601). Null on a no-op.
1514
+ */
1515
+ 'startedAt'?: string | null;
1516
+ /**
1517
+ * When the session was closed (ISO-8601), i.e. now. Null on a no-op.
1518
+ */
1519
+ 'endedAt'?: string | null;
1520
+ /**
1521
+ * Length of the closed session in seconds (endedAt - startedAt). Null on a no-op.
1522
+ */
1523
+ 'durationSeconds'?: number | null;
1524
+ /**
1525
+ * Player\'s aggregate session stats, recomputed after this session was closed (so the just-ended session is included in the totals).
1526
+ */
1527
+ 'sessionStats': AdminPlayerSessionStats;
1528
+ }
1488
1529
  /**
1489
1530
  * Unified player-join request. Runs the full authorization check (VPN, bypass, punishments) and conditionally opens a player_session for the allowed players.
1490
1531
  */
@@ -1700,6 +1741,15 @@ export declare const SearchKind: {
1700
1741
  readonly Ip: "IP";
1701
1742
  };
1702
1743
  export type SearchKind = typeof SearchKind[keyof typeof SearchKind];
1744
+ /**
1745
+ * Optional heartbeat payload carrying the players currently on this server session.
1746
+ */
1747
+ export interface ServerHeartbeatRequest {
1748
+ /**
1749
+ * UUIDs of players currently on this server session. Open sessions for this server whose player is absent from this list are auto-closed. Omit to heartbeat without reconciling player sessions.
1750
+ */
1751
+ 'activePlayers'?: Array<string> | null;
1752
+ }
1703
1753
  export interface ServerRegisterRequest {
1704
1754
  'region': Region;
1705
1755
  'gameType': GameType;
@@ -4189,7 +4239,7 @@ export declare class PlayerApi extends BaseAPI {
4189
4239
  */
4190
4240
  export declare const PlayerSessionsApiAxiosParamCreator: (configuration?: Configuration) => {
4191
4241
  /**
4192
- * 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.
4242
+ * Closes the active session for a (playerUuid, serverSessionId) pair and returns an acknowledgment: whether a session was actually closed, that session\'s start / end / duration, and the player\'s aggregate session stats recomputed after the close. No-op if no active session is found — `sessionClosed` is false and the per-session fields are null (stats are still returned) — so duplicate end events from a retry don\'t error.
4193
4243
  * @summary Close the active player session
4194
4244
  * @param {PlayerSessionEndRequest} playerSessionEndRequest
4195
4245
  * @param {*} [options] Override http request option.
@@ -4210,13 +4260,13 @@ export declare const PlayerSessionsApiAxiosParamCreator: (configuration?: Config
4210
4260
  */
4211
4261
  export declare const PlayerSessionsApiFp: (configuration?: Configuration) => {
4212
4262
  /**
4213
- * 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.
4263
+ * Closes the active session for a (playerUuid, serverSessionId) pair and returns an acknowledgment: whether a session was actually closed, that session\'s start / end / duration, and the player\'s aggregate session stats recomputed after the close. No-op if no active session is found — `sessionClosed` is false and the per-session fields are null (stats are still returned) — so duplicate end events from a retry don\'t error.
4214
4264
  * @summary Close the active player session
4215
4265
  * @param {PlayerSessionEndRequest} playerSessionEndRequest
4216
4266
  * @param {*} [options] Override http request option.
4217
4267
  * @throws {RequiredError}
4218
4268
  */
4219
- end(playerSessionEndRequest: PlayerSessionEndRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
4269
+ end(playerSessionEndRequest: PlayerSessionEndRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PlayerSessionEndResponse>>;
4220
4270
  /**
4221
4271
  * 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.
4222
4272
  * @summary Player join — unified authorization + session-open
@@ -4231,13 +4281,13 @@ export declare const PlayerSessionsApiFp: (configuration?: Configuration) => {
4231
4281
  */
4232
4282
  export declare const PlayerSessionsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
4233
4283
  /**
4234
- * 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.
4284
+ * Closes the active session for a (playerUuid, serverSessionId) pair and returns an acknowledgment: whether a session was actually closed, that session\'s start / end / duration, and the player\'s aggregate session stats recomputed after the close. No-op if no active session is found — `sessionClosed` is false and the per-session fields are null (stats are still returned) — so duplicate end events from a retry don\'t error.
4235
4285
  * @summary Close the active player session
4236
4286
  * @param {PlayerSessionEndRequest} playerSessionEndRequest
4237
4287
  * @param {*} [options] Override http request option.
4238
4288
  * @throws {RequiredError}
4239
4289
  */
4240
- end(playerSessionEndRequest: PlayerSessionEndRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
4290
+ end(playerSessionEndRequest: PlayerSessionEndRequest, options?: RawAxiosRequestConfig): AxiosPromise<PlayerSessionEndResponse>;
4241
4291
  /**
4242
4292
  * 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.
4243
4293
  * @summary Player join — unified authorization + session-open
@@ -4252,13 +4302,13 @@ export declare const PlayerSessionsApiFactory: (configuration?: Configuration, b
4252
4302
  */
4253
4303
  export declare class PlayerSessionsApi extends BaseAPI {
4254
4304
  /**
4255
- * 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.
4305
+ * Closes the active session for a (playerUuid, serverSessionId) pair and returns an acknowledgment: whether a session was actually closed, that session\'s start / end / duration, and the player\'s aggregate session stats recomputed after the close. No-op if no active session is found — `sessionClosed` is false and the per-session fields are null (stats are still returned) — so duplicate end events from a retry don\'t error.
4256
4306
  * @summary Close the active player session
4257
4307
  * @param {PlayerSessionEndRequest} playerSessionEndRequest
4258
4308
  * @param {*} [options] Override http request option.
4259
4309
  * @throws {RequiredError}
4260
4310
  */
4261
- end(playerSessionEndRequest: PlayerSessionEndRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
4311
+ end(playerSessionEndRequest: PlayerSessionEndRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<PlayerSessionEndResponse, any, {}>>;
4262
4312
  /**
4263
4313
  * 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.
4264
4314
  * @summary Player join — unified authorization + session-open
@@ -4509,13 +4559,14 @@ export declare class ReportApi extends BaseAPI {
4509
4559
  */
4510
4560
  export declare const ServerSessionsApiAxiosParamCreator: (configuration?: Configuration) => {
4511
4561
  /**
4512
- * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server.
4562
+ * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server. Optionally include an `activePlayers` list (the UUIDs currently on this server). When present, the API reconciles player sessions for this server: any open session whose player is absent from the list is closed, and linked to the player\'s new session if they transferred to another server. Omit the body for a plain liveness heartbeat.
4513
4563
  * @summary Send a heartbeat
4514
4564
  * @param {string} id Session UUID returned from the registration call
4565
+ * @param {ServerHeartbeatRequest} [serverHeartbeatRequest]
4515
4566
  * @param {*} [options] Override http request option.
4516
4567
  * @throws {RequiredError}
4517
4568
  */
4518
- heartbeat: (id: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
4569
+ heartbeat: (id: string, serverHeartbeatRequest?: ServerHeartbeatRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
4519
4570
  /**
4520
4571
  * Returns all server sessions — both online and historical — ordered by start time descending. Used by the web UI to populate the session filter dropdown.
4521
4572
  * @summary List all server sessions
@@ -4552,13 +4603,14 @@ export declare const ServerSessionsApiAxiosParamCreator: (configuration?: Config
4552
4603
  */
4553
4604
  export declare const ServerSessionsApiFp: (configuration?: Configuration) => {
4554
4605
  /**
4555
- * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server.
4606
+ * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server. Optionally include an `activePlayers` list (the UUIDs currently on this server). When present, the API reconciles player sessions for this server: any open session whose player is absent from the list is closed, and linked to the player\'s new session if they transferred to another server. Omit the body for a plain liveness heartbeat.
4556
4607
  * @summary Send a heartbeat
4557
4608
  * @param {string} id Session UUID returned from the registration call
4609
+ * @param {ServerHeartbeatRequest} [serverHeartbeatRequest]
4558
4610
  * @param {*} [options] Override http request option.
4559
4611
  * @throws {RequiredError}
4560
4612
  */
4561
- heartbeat(id: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
4613
+ heartbeat(id: string, serverHeartbeatRequest?: ServerHeartbeatRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
4562
4614
  /**
4563
4615
  * Returns all server sessions — both online and historical — ordered by start time descending. Used by the web UI to populate the session filter dropdown.
4564
4616
  * @summary List all server sessions
@@ -4595,13 +4647,14 @@ export declare const ServerSessionsApiFp: (configuration?: Configuration) => {
4595
4647
  */
4596
4648
  export declare const ServerSessionsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
4597
4649
  /**
4598
- * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server.
4650
+ * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server. Optionally include an `activePlayers` list (the UUIDs currently on this server). When present, the API reconciles player sessions for this server: any open session whose player is absent from the list is closed, and linked to the player\'s new session if they transferred to another server. Omit the body for a plain liveness heartbeat.
4599
4651
  * @summary Send a heartbeat
4600
4652
  * @param {string} id Session UUID returned from the registration call
4653
+ * @param {ServerHeartbeatRequest} [serverHeartbeatRequest]
4601
4654
  * @param {*} [options] Override http request option.
4602
4655
  * @throws {RequiredError}
4603
4656
  */
4604
- heartbeat(id: string, options?: RawAxiosRequestConfig): AxiosPromise<void>;
4657
+ heartbeat(id: string, serverHeartbeatRequest?: ServerHeartbeatRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
4605
4658
  /**
4606
4659
  * Returns all server sessions — both online and historical — ordered by start time descending. Used by the web UI to populate the session filter dropdown.
4607
4660
  * @summary List all server sessions
@@ -4638,13 +4691,14 @@ export declare const ServerSessionsApiFactory: (configuration?: Configuration, b
4638
4691
  */
4639
4692
  export declare class ServerSessionsApi extends BaseAPI {
4640
4693
  /**
4641
- * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server.
4694
+ * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server. Optionally include an `activePlayers` list (the UUIDs currently on this server). When present, the API reconciles player sessions for this server: any open session whose player is absent from the list is closed, and linked to the player\'s new session if they transferred to another server. Omit the body for a plain liveness heartbeat.
4642
4695
  * @summary Send a heartbeat
4643
4696
  * @param {string} id Session UUID returned from the registration call
4697
+ * @param {ServerHeartbeatRequest} [serverHeartbeatRequest]
4644
4698
  * @param {*} [options] Override http request option.
4645
4699
  * @throws {RequiredError}
4646
4700
  */
4647
- heartbeat(id: string, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
4701
+ heartbeat(id: string, serverHeartbeatRequest?: ServerHeartbeatRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
4648
4702
  /**
4649
4703
  * Returns all server sessions — both online and historical — ordered by start time descending. Used by the web UI to populate the session filter dropdown.
4650
4704
  * @summary List all server sessions
package/dist/esm/api.js 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.5.0
7
+ * The version of the OpenAPI document: 4.7.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -4888,7 +4888,7 @@ export class PlayerApi extends BaseAPI {
4888
4888
  export const PlayerSessionsApiAxiosParamCreator = function (configuration) {
4889
4889
  return {
4890
4890
  /**
4891
- * 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.
4891
+ * Closes the active session for a (playerUuid, serverSessionId) pair and returns an acknowledgment: whether a session was actually closed, that session\'s start / end / duration, and the player\'s aggregate session stats recomputed after the close. No-op if no active session is found — `sessionClosed` is false and the per-session fields are null (stats are still returned) — so duplicate end events from a retry don\'t error.
4892
4892
  * @summary Close the active player session
4893
4893
  * @param {PlayerSessionEndRequest} playerSessionEndRequest
4894
4894
  * @param {*} [options] Override http request option.
@@ -4911,6 +4911,7 @@ export const PlayerSessionsApiAxiosParamCreator = function (configuration) {
4911
4911
  // http bearer authentication required
4912
4912
  yield setBearerAuthToObject(localVarHeaderParameter, configuration);
4913
4913
  localVarHeaderParameter['Content-Type'] = 'application/json';
4914
+ localVarHeaderParameter['Accept'] = 'application/json';
4914
4915
  setSearchParams(localVarUrlObj, localVarQueryParameter);
4915
4916
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
4916
4917
  localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
@@ -4963,7 +4964,7 @@ export const PlayerSessionsApiFp = function (configuration) {
4963
4964
  const localVarAxiosParamCreator = PlayerSessionsApiAxiosParamCreator(configuration);
4964
4965
  return {
4965
4966
  /**
4966
- * 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.
4967
+ * Closes the active session for a (playerUuid, serverSessionId) pair and returns an acknowledgment: whether a session was actually closed, that session\'s start / end / duration, and the player\'s aggregate session stats recomputed after the close. No-op if no active session is found — `sessionClosed` is false and the per-session fields are null (stats are still returned) — so duplicate end events from a retry don\'t error.
4967
4968
  * @summary Close the active player session
4968
4969
  * @param {PlayerSessionEndRequest} playerSessionEndRequest
4969
4970
  * @param {*} [options] Override http request option.
@@ -5003,7 +5004,7 @@ export const PlayerSessionsApiFactory = function (configuration, basePath, axios
5003
5004
  const localVarFp = PlayerSessionsApiFp(configuration);
5004
5005
  return {
5005
5006
  /**
5006
- * 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.
5007
+ * Closes the active session for a (playerUuid, serverSessionId) pair and returns an acknowledgment: whether a session was actually closed, that session\'s start / end / duration, and the player\'s aggregate session stats recomputed after the close. No-op if no active session is found — `sessionClosed` is false and the per-session fields are null (stats are still returned) — so duplicate end events from a retry don\'t error.
5007
5008
  * @summary Close the active player session
5008
5009
  * @param {PlayerSessionEndRequest} playerSessionEndRequest
5009
5010
  * @param {*} [options] Override http request option.
@@ -5029,7 +5030,7 @@ export const PlayerSessionsApiFactory = function (configuration, basePath, axios
5029
5030
  */
5030
5031
  export class PlayerSessionsApi extends BaseAPI {
5031
5032
  /**
5032
- * 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.
5033
+ * Closes the active session for a (playerUuid, serverSessionId) pair and returns an acknowledgment: whether a session was actually closed, that session\'s start / end / duration, and the player\'s aggregate session stats recomputed after the close. No-op if no active session is found — `sessionClosed` is false and the per-session fields are null (stats are still returned) — so duplicate end events from a retry don\'t error.
5033
5034
  * @summary Close the active player session
5034
5035
  * @param {PlayerSessionEndRequest} playerSessionEndRequest
5035
5036
  * @param {*} [options] Override http request option.
@@ -5524,13 +5525,14 @@ export class ReportApi extends BaseAPI {
5524
5525
  export const ServerSessionsApiAxiosParamCreator = function (configuration) {
5525
5526
  return {
5526
5527
  /**
5527
- * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server.
5528
+ * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server. Optionally include an `activePlayers` list (the UUIDs currently on this server). When present, the API reconciles player sessions for this server: any open session whose player is absent from the list is closed, and linked to the player\'s new session if they transferred to another server. Omit the body for a plain liveness heartbeat.
5528
5529
  * @summary Send a heartbeat
5529
5530
  * @param {string} id Session UUID returned from the registration call
5531
+ * @param {ServerHeartbeatRequest} [serverHeartbeatRequest]
5530
5532
  * @param {*} [options] Override http request option.
5531
5533
  * @throws {RequiredError}
5532
5534
  */
5533
- heartbeat: (id_1, ...args_1) => __awaiter(this, [id_1, ...args_1], void 0, function* (id, options = {}) {
5535
+ heartbeat: (id_1, serverHeartbeatRequest_1, ...args_1) => __awaiter(this, [id_1, serverHeartbeatRequest_1, ...args_1], void 0, function* (id, serverHeartbeatRequest, options = {}) {
5534
5536
  // verify required parameter 'id' is not null or undefined
5535
5537
  assertParamExists('heartbeat', 'id', id);
5536
5538
  const localVarPath = `/v1/servers/{id}/heartbeat`
@@ -5547,9 +5549,11 @@ export const ServerSessionsApiAxiosParamCreator = function (configuration) {
5547
5549
  // authentication DiscordAuth required
5548
5550
  // http bearer authentication required
5549
5551
  yield setBearerAuthToObject(localVarHeaderParameter, configuration);
5552
+ localVarHeaderParameter['Content-Type'] = 'application/json';
5550
5553
  setSearchParams(localVarUrlObj, localVarQueryParameter);
5551
5554
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
5552
5555
  localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
5556
+ localVarRequestOptions.data = serializeDataIfNeeded(serverHeartbeatRequest, localVarRequestOptions, configuration);
5553
5557
  return {
5554
5558
  url: toPathString(localVarUrlObj),
5555
5559
  options: localVarRequestOptions,
@@ -5688,16 +5692,17 @@ export const ServerSessionsApiFp = function (configuration) {
5688
5692
  const localVarAxiosParamCreator = ServerSessionsApiAxiosParamCreator(configuration);
5689
5693
  return {
5690
5694
  /**
5691
- * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server.
5695
+ * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server. Optionally include an `activePlayers` list (the UUIDs currently on this server). When present, the API reconciles player sessions for this server: any open session whose player is absent from the list is closed, and linked to the player\'s new session if they transferred to another server. Omit the body for a plain liveness heartbeat.
5692
5696
  * @summary Send a heartbeat
5693
5697
  * @param {string} id Session UUID returned from the registration call
5698
+ * @param {ServerHeartbeatRequest} [serverHeartbeatRequest]
5694
5699
  * @param {*} [options] Override http request option.
5695
5700
  * @throws {RequiredError}
5696
5701
  */
5697
- heartbeat(id, options) {
5702
+ heartbeat(id, serverHeartbeatRequest, options) {
5698
5703
  return __awaiter(this, void 0, void 0, function* () {
5699
5704
  var _a, _b, _c;
5700
- const localVarAxiosArgs = yield localVarAxiosParamCreator.heartbeat(id, options);
5705
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.heartbeat(id, serverHeartbeatRequest, options);
5701
5706
  const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
5702
5707
  const localVarOperationServerBasePath = (_c = (_b = operationServerMap['ServerSessionsApi.heartbeat']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
5703
5708
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -5774,14 +5779,15 @@ export const ServerSessionsApiFactory = function (configuration, basePath, axios
5774
5779
  const localVarFp = ServerSessionsApiFp(configuration);
5775
5780
  return {
5776
5781
  /**
5777
- * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server.
5782
+ * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server. Optionally include an `activePlayers` list (the UUIDs currently on this server). When present, the API reconciles player sessions for this server: any open session whose player is absent from the list is closed, and linked to the player\'s new session if they transferred to another server. Omit the body for a plain liveness heartbeat.
5778
5783
  * @summary Send a heartbeat
5779
5784
  * @param {string} id Session UUID returned from the registration call
5785
+ * @param {ServerHeartbeatRequest} [serverHeartbeatRequest]
5780
5786
  * @param {*} [options] Override http request option.
5781
5787
  * @throws {RequiredError}
5782
5788
  */
5783
- heartbeat(id, options) {
5784
- return localVarFp.heartbeat(id, options).then((request) => request(axios, basePath));
5789
+ heartbeat(id, serverHeartbeatRequest, options) {
5790
+ return localVarFp.heartbeat(id, serverHeartbeatRequest, options).then((request) => request(axios, basePath));
5785
5791
  },
5786
5792
  /**
5787
5793
  * Returns all server sessions — both online and historical — ordered by start time descending. Used by the web UI to populate the session filter dropdown.
@@ -5828,14 +5834,15 @@ export const ServerSessionsApiFactory = function (configuration, basePath, axios
5828
5834
  */
5829
5835
  export class ServerSessionsApi extends BaseAPI {
5830
5836
  /**
5831
- * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server.
5837
+ * Updates the `last_heartbeat` timestamp for the given session, keeping it marked as online. Sessions that miss heartbeats for more than 2 minutes are automatically tombstoned by the scheduler. Call this every 30 seconds from the game server. Optionally include an `activePlayers` list (the UUIDs currently on this server). When present, the API reconciles player sessions for this server: any open session whose player is absent from the list is closed, and linked to the player\'s new session if they transferred to another server. Omit the body for a plain liveness heartbeat.
5832
5838
  * @summary Send a heartbeat
5833
5839
  * @param {string} id Session UUID returned from the registration call
5840
+ * @param {ServerHeartbeatRequest} [serverHeartbeatRequest]
5834
5841
  * @param {*} [options] Override http request option.
5835
5842
  * @throws {RequiredError}
5836
5843
  */
5837
- heartbeat(id, options) {
5838
- return ServerSessionsApiFp(this.configuration).heartbeat(id, options).then((request) => request(this.axios, this.basePath));
5844
+ heartbeat(id, serverHeartbeatRequest, options) {
5845
+ return ServerSessionsApiFp(this.configuration).heartbeat(id, serverHeartbeatRequest, options).then((request) => request(this.axios, this.basePath));
5839
5846
  }
5840
5847
  /**
5841
5848
  * Returns all server sessions — both online and historical — ordered by start time descending. Used by the web UI to populate the session filter dropdown.
@@ -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: 4.5.0
5
+ * The version of the OpenAPI document: 4.7.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
package/dist/esm/base.js 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.5.0
7
+ * The version of the OpenAPI document: 4.7.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -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: 4.5.0
5
+ * The version of the OpenAPI document: 4.7.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -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.5.0
7
+ * The version of the OpenAPI document: 4.7.0
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -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: 4.5.0
5
+ * The version of the OpenAPI document: 4.7.0
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).