/* tslint:disable */ /* eslint-disable */ /** * Tribufu API * REST API to access Tribufu services. * * The version of the OpenAPI document: 1.1.0 * Contact: contact@tribufu.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import * as runtime from '../runtime'; import type { Account, AuthorizeRequest, CryptoViewModel, Game, GameServer, GameServerCluster, Group, GroupGame, GroupMember, HashViewModel, IntrospectRequest, IpAddress, LeaderboardItem, LeaderboardOrder, LoginRequest, LoginResponse, Package, Profile, ProfileGame, ProfileGroup, RefreshRequest, RegisterRequest, RevokeRequest, SearchRequest, ServerMetrics, Subscription, TokenRequest, TokenResponse, UpdateProfile, UserInfo, } from '../models/index'; import { AccountFromJSON, AccountToJSON, AuthorizeRequestFromJSON, AuthorizeRequestToJSON, CryptoViewModelFromJSON, CryptoViewModelToJSON, GameFromJSON, GameToJSON, GameServerFromJSON, GameServerToJSON, GameServerClusterFromJSON, GameServerClusterToJSON, GroupFromJSON, GroupToJSON, GroupGameFromJSON, GroupGameToJSON, GroupMemberFromJSON, GroupMemberToJSON, HashViewModelFromJSON, HashViewModelToJSON, IntrospectRequestFromJSON, IntrospectRequestToJSON, IpAddressFromJSON, IpAddressToJSON, LeaderboardItemFromJSON, LeaderboardItemToJSON, LeaderboardOrderFromJSON, LeaderboardOrderToJSON, LoginRequestFromJSON, LoginRequestToJSON, LoginResponseFromJSON, LoginResponseToJSON, PackageFromJSON, PackageToJSON, ProfileFromJSON, ProfileToJSON, ProfileGameFromJSON, ProfileGameToJSON, ProfileGroupFromJSON, ProfileGroupToJSON, RefreshRequestFromJSON, RefreshRequestToJSON, RegisterRequestFromJSON, RegisterRequestToJSON, RevokeRequestFromJSON, RevokeRequestToJSON, SearchRequestFromJSON, SearchRequestToJSON, ServerMetricsFromJSON, ServerMetricsToJSON, SubscriptionFromJSON, SubscriptionToJSON, TokenRequestFromJSON, TokenRequestToJSON, TokenResponseFromJSON, TokenResponseToJSON, UpdateProfileFromJSON, UpdateProfileToJSON, UserInfoFromJSON, UserInfoToJSON, } from '../models/index'; export interface AuthorizeOperationRequest { authorizeRequest?: AuthorizeRequest; } export interface ChangeEmailRequest { id: string; body?: any | null; } export interface ChangePasswordRequest { id: string; body?: any | null; } export interface ClaimGameServerRequest { id: string; body?: any | null; } export interface ConvertBase64Request { cryptoViewModel?: CryptoViewModel; } export interface CreateGameServerRequest { body?: any | null; } export interface CreateGameServerClusterRequest { body?: any | null; } export interface CreateGroupRequest { body?: any | null; } export interface CreateTokenRequest { tokenRequest?: TokenRequest; } export interface DeleteGameServerRequest { id: string; } export interface DeleteGameServerClusterRequest { id: string; } export interface DeleteGroupRequest { id: string; } export interface GenerateFlakeIdRequest { amount?: number; } export interface GenerateFlakeIdFromTimestampRequest { timestamp: string; amount?: number; } export interface GeneratePasswordRequest { length?: number; symbols?: boolean; } export interface GenerateUuidRequest { version?: number; amount?: number; } export interface GetGameByIdRequest { id: string; } export interface GetGameClustersByGameIdRequest { id: string; page?: number; limit?: number; } export interface GetGameItemsRequest { id: string; page?: number; limit?: number; } export interface GetGameServerByAddressAndQueryPortRequest { address: string; port: number; } export interface GetGameServerByIdRequest { id: string; } export interface GetGameServerClusterByIdRequest { id: string; } export interface GetGameServerClustersRequest { page?: number; limit?: number; } export interface GetGameServersRequest { page?: number; limit?: number; } export interface GetGameServersByCountryRequest { country: string; page?: number; limit?: number; } export interface GetGameServersByGameIdRequest { id: string; page?: number; limit?: number; } export interface GetGroupByIdRequest { id: string; } export interface GetGroupByTagRequest { tag: string; } export interface GetGroupByUuidRequest { uuid: string; } export interface GetGroupGamesRequest { id: string; } export interface GetGroupMembersRequest { id: string; } export interface GetGroupsRequest { page?: number; limit?: number; } export interface GetIpAddressRequest { address: string; } export interface GetIpAddressesRequest { page?: number; limit?: number; } export interface GetLeaderboardRequest { order?: LeaderboardOrder; } export interface GetPackageByIdRequest { id: string; } export interface GetPackagesRequest { page?: number; limit?: number; } export interface GetSubscriptionByIdRequest { id: string; } export interface GetSubscriptionsRequest { page?: number; limit?: number; } export interface GetUserAccountsRequest { id: string; } export interface GetUserByIdRequest { id: string; } export interface GetUserByNameRequest { name: string; } export interface GetUserByUuidRequest { uuid: string; } export interface GetUserFriendsRequest { id: string; } export interface GetUserGamesRequest { id: string; } export interface GetUserGroupsRequest { id: string; } export interface GetUserPunishmentsRequest { id: string; } export interface GetUserServersRequest { id: string; page?: number; limit?: number; } export interface GetUsersRequest { page?: number; limit?: number; } export interface HashArgon2Request { hashViewModel?: HashViewModel; } export interface HashBcryptRequest { hashViewModel?: HashViewModel; } export interface HashMd5Request { hashViewModel?: HashViewModel; } export interface HashSha256Request { hashViewModel?: HashViewModel; } export interface IntrospectTokenRequest { introspectRequest?: IntrospectRequest; } export interface LoginOperationRequest { loginRequest?: LoginRequest; } export interface RefreshOperationRequest { refreshRequest?: RefreshRequest; } export interface RegisterOperationRequest { registerRequest?: RegisterRequest; } export interface RevokeTokenRequest { revokeRequest?: RevokeRequest; } export interface SearchOperationRequest { searchRequest?: SearchRequest; } export interface UpdateGameServerRequest { id: string; body?: any | null; } export interface UpdateGameServerClusterRequest { id: string; body?: any | null; } export interface UpdateGroupRequest { id: string; body?: any | null; } export interface UpdateUserProfileRequest { id: string; updateProfile?: UpdateProfile; } /** * */ export class TribufuGeneratedApi extends runtime.BaseAPI { /** * 🔒 Required permissions: tribufu.identity.oauth2.authorize * Authorize the client to access the user information. */ async authorizeRaw(requestParameters: AuthorizeOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/oauth2/authorize`, method: 'POST', headers: headerParameters, query: queryParameters, body: AuthorizeRequestToJSON(requestParameters['authorizeRequest']), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * 🔒 Required permissions: tribufu.identity.oauth2.authorize * Authorize the client to access the user information. */ async authorize(authorizeRequest?: AuthorizeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.authorizeRaw({ authorizeRequest: authorizeRequest }, initOverrides); } /** * This endpoint is not available with an api key, only with a bearer token.

🔒 Required permissions: tribufu.identity.user.email.update * Change the email of a user. */ async changeEmailRaw(requestParameters: ChangeEmailRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling changeEmail().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/users/{id}/email`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'PUT', headers: headerParameters, query: queryParameters, body: requestParameters['body'] as any, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * This endpoint is not available with an api key, only with a bearer token.

🔒 Required permissions: tribufu.identity.user.email.update * Change the email of a user. */ async changeEmail(id: string, body?: any | null, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.changeEmailRaw({ id: id, body: body }, initOverrides); } /** * This endpoint is not available with an api key, only with a bearer token.

🔒 Required permissions: tribufu.identity.user.password.update * Change the password of a user. */ async changePasswordRaw(requestParameters: ChangePasswordRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling changePassword().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/users/{id}/password`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'PUT', headers: headerParameters, query: queryParameters, body: requestParameters['body'] as any, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * This endpoint is not available with an api key, only with a bearer token.

🔒 Required permissions: tribufu.identity.user.password.update * Change the password of a user. */ async changePassword(id: string, body?: any | null, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.changePasswordRaw({ id: id, body: body }, initOverrides); } /** * This endpoint is not available with an api key, only with a bearer token.

🔒 Required permissions: tribufu.community.game.server.claim * Claim a game server. */ async claimGameServerRaw(requestParameters: ClaimGameServerRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling claimGameServer().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/servers/{id}/claim`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'PUT', headers: headerParameters, query: queryParameters, body: requestParameters['body'] as any, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * This endpoint is not available with an api key, only with a bearer token.

🔒 Required permissions: tribufu.community.game.server.claim * Claim a game server. */ async claimGameServer(id: string, body?: any | null, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.claimGameServerRaw({ id: id, body: body }, initOverrides); } /** * 🔒 Required permissions: tribufu.utils.convert.base64 * Convert a string to base64 or vice versa. */ async convertBase64Raw(requestParameters: ConvertBase64Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/utils/base64`, method: 'POST', headers: headerParameters, query: queryParameters, body: CryptoViewModelToJSON(requestParameters['cryptoViewModel']), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => CryptoViewModelFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.utils.convert.base64 * Convert a string to base64 or vice versa. */ async convertBase64(cryptoViewModel?: CryptoViewModel, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.convertBase64Raw({ cryptoViewModel: cryptoViewModel }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.game.server.create * Create a new game server. */ async createGameServerRaw(requestParameters: CreateGameServerRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/servers`, method: 'POST', headers: headerParameters, query: queryParameters, body: requestParameters['body'] as any, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * 🔒 Required permissions: tribufu.community.game.server.create * Create a new game server. */ async createGameServer(body?: any | null, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.createGameServerRaw({ body: body }, initOverrides); } /** * 🔒 Required permissions: tribufu.community.game.server.cluster.create * Create a new game server cluster. */ async createGameServerClusterRaw(requestParameters: CreateGameServerClusterRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/clusters`, method: 'POST', headers: headerParameters, query: queryParameters, body: requestParameters['body'] as any, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * 🔒 Required permissions: tribufu.community.game.server.cluster.create * Create a new game server cluster. */ async createGameServerCluster(body?: any | null, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.createGameServerClusterRaw({ body: body }, initOverrides); } /** * 🔒 Required permissions: tribufu.community.group.create * Create a new group. */ async createGroupRaw(requestParameters: CreateGroupRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/groups`, method: 'POST', headers: headerParameters, query: queryParameters, body: requestParameters['body'] as any, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * 🔒 Required permissions: tribufu.community.group.create * Create a new group. */ async createGroup(body?: any | null, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.createGroupRaw({ body: body }, initOverrides); } /** * Create a new token with grant type. */ async createTokenRaw(requestParameters: CreateTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/oauth2/token`, method: 'POST', headers: headerParameters, query: queryParameters, body: TokenRequestToJSON(requestParameters['tokenRequest']), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => TokenResponseFromJSON(jsonValue)); } /** * Create a new token with grant type. */ async createToken(tokenRequest?: TokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.createTokenRaw({ tokenRequest: tokenRequest }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.game.server.delete * Delete a game server. */ async deleteGameServerRaw(requestParameters: DeleteGameServerRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling deleteGameServer().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/servers/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'DELETE', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * 🔒 Required permissions: tribufu.community.game.server.delete * Delete a game server. */ async deleteGameServer(id: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.deleteGameServerRaw({ id: id }, initOverrides); } /** * 🔒 Required permissions: tribufu.community.game.server.cluster.delete * Delete a game server cluster. */ async deleteGameServerClusterRaw(requestParameters: DeleteGameServerClusterRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling deleteGameServerCluster().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/clusters/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'DELETE', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * 🔒 Required permissions: tribufu.community.game.server.cluster.delete * Delete a game server cluster. */ async deleteGameServerCluster(id: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.deleteGameServerClusterRaw({ id: id }, initOverrides); } /** * 🔒 Required permissions: tribufu.community.group.delete * Delete a group. */ async deleteGroupRaw(requestParameters: DeleteGroupRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling deleteGroup().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/groups/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'DELETE', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * 🔒 Required permissions: tribufu.community.group.delete * Delete a group. */ async deleteGroup(id: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.deleteGroupRaw({ id: id }, initOverrides); } /** * 🔒 Required permissions: tribufu.utils.generate.flake * Generate one or more flake ids. */ async generateFlakeIdRaw(requestParameters: GenerateFlakeIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; if (requestParameters['amount'] != null) { queryParameters['amount'] = requestParameters['amount']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/utils/flake`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response); } /** * 🔒 Required permissions: tribufu.utils.generate.flake * Generate one or more flake ids. */ async generateFlakeId(amount?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.generateFlakeIdRaw({ amount: amount }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.utils.generate.flake.timestamp * Generate one or more flake ids from a timestamp. */ async generateFlakeIdFromTimestampRaw(requestParameters: GenerateFlakeIdFromTimestampRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { if (requestParameters['timestamp'] == null) { throw new runtime.RequiredError( 'timestamp', 'Required parameter "timestamp" was null or undefined when calling generateFlakeIdFromTimestamp().' ); } const queryParameters: any = {}; if (requestParameters['amount'] != null) { queryParameters['amount'] = requestParameters['amount']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/utils/flake/{timestamp}`.replace(`{${"timestamp"}}`, encodeURIComponent(String(requestParameters['timestamp']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response); } /** * 🔒 Required permissions: tribufu.utils.generate.flake.timestamp * Generate one or more flake ids from a timestamp. */ async generateFlakeIdFromTimestamp(timestamp: string, amount?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.generateFlakeIdFromTimestampRaw({ timestamp: timestamp, amount: amount }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.utils.generate.password * Generate a random password. */ async generatePasswordRaw(requestParameters: GeneratePasswordRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; if (requestParameters['length'] != null) { queryParameters['length'] = requestParameters['length']; } if (requestParameters['symbols'] != null) { queryParameters['symbols'] = requestParameters['symbols']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/utils/password`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => HashViewModelFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.utils.generate.password * Generate a random password. */ async generatePassword(length?: number, symbols?: boolean, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.generatePasswordRaw({ length: length, symbols: symbols }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.utils.generate.uuid * Generate one or more uuids with a specific version. */ async generateUuidRaw(requestParameters: GenerateUuidRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; if (requestParameters['version'] != null) { queryParameters['version'] = requestParameters['version']; } if (requestParameters['amount'] != null) { queryParameters['amount'] = requestParameters['amount']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/utils/uuid`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response); } /** * 🔒 Required permissions: tribufu.utils.generate.uuid * Generate one or more uuids with a specific version. */ async generateUuid(version?: number, amount?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.generateUuidRaw({ version: version, amount: amount }, initOverrides); return await response.value(); } /** * Get current client information. */ async getClientInfoRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/oauth2/clientinfo`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Get current client information. */ async getClientInfo(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.getClientInfoRaw(initOverrides); } /** * 🔒 Required permissions: tribufu.geoip.current * Get current ip address location. */ async getCurrentIpAddressRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/geoip`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(IpAddressFromJSON)); } /** * 🔒 Required permissions: tribufu.geoip.current * Get current ip address location. */ async getCurrentIpAddress(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getCurrentIpAddressRaw(initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.game.get * Get a game by id. */ async getGameByIdRaw(requestParameters: GetGameByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling getGameById().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/games/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => GameFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.community.game.get * Get a game by id. */ async getGameById(id: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getGameByIdRaw({ id: id }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.game.server.cluster.list * Get a list of game server clusters of a game. */ async getGameClustersByGameIdRaw(requestParameters: GetGameClustersByGameIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling getGameClustersByGameId().' ); } const queryParameters: any = {}; if (requestParameters['page'] != null) { queryParameters['page'] = requestParameters['page']; } if (requestParameters['limit'] != null) { queryParameters['limit'] = requestParameters['limit']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/games/{id}/clusters`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(GameServerClusterFromJSON)); } /** * 🔒 Required permissions: tribufu.community.game.server.cluster.list * Get a list of game server clusters of a game. */ async getGameClustersByGameId(id: string, page?: number, limit?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getGameClustersByGameIdRaw({ id: id, page: page, limit: limit }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.game.item.list * Get a list of game items. */ async getGameItemsRaw(requestParameters: GetGameItemsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling getGameItems().' ); } const queryParameters: any = {}; if (requestParameters['page'] != null) { queryParameters['page'] = requestParameters['page']; } if (requestParameters['limit'] != null) { queryParameters['limit'] = requestParameters['limit']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/games/{id}/items`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response); } /** * 🔒 Required permissions: tribufu.community.game.item.list * Get a list of game items. */ async getGameItems(id: string, page?: number, limit?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getGameItemsRaw({ id: id, page: page, limit: limit }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.game.server.get.address * Get a game server by address and query port. */ async getGameServerByAddressAndQueryPortRaw(requestParameters: GetGameServerByAddressAndQueryPortRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['address'] == null) { throw new runtime.RequiredError( 'address', 'Required parameter "address" was null or undefined when calling getGameServerByAddressAndQueryPort().' ); } if (requestParameters['port'] == null) { throw new runtime.RequiredError( 'port', 'Required parameter "port" was null or undefined when calling getGameServerByAddressAndQueryPort().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/servers/address/{address}:{port}`.replace(`{${"address"}}`, encodeURIComponent(String(requestParameters['address']))).replace(`{${"port"}}`, encodeURIComponent(String(requestParameters['port']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => GameServerFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.community.game.server.get.address * Get a game server by address and query port. */ async getGameServerByAddressAndQueryPort(address: string, port: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getGameServerByAddressAndQueryPortRaw({ address: address, port: port }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.game.server.get * Get a game server by id. */ async getGameServerByIdRaw(requestParameters: GetGameServerByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling getGameServerById().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/servers/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => GameServerFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.community.game.server.get * Get a game server by id. */ async getGameServerById(id: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getGameServerByIdRaw({ id: id }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.game.server.cluster.get * Get a game server cluster by id. */ async getGameServerClusterByIdRaw(requestParameters: GetGameServerClusterByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling getGameServerClusterById().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/clusters/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => GameServerClusterFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.community.game.server.cluster.get * Get a game server cluster by id. */ async getGameServerClusterById(id: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getGameServerClusterByIdRaw({ id: id }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.game.server.cluster.list * Get a list of game server clusters. */ async getGameServerClustersRaw(requestParameters: GetGameServerClustersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; if (requestParameters['page'] != null) { queryParameters['page'] = requestParameters['page']; } if (requestParameters['limit'] != null) { queryParameters['limit'] = requestParameters['limit']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/clusters`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(GameServerClusterFromJSON)); } /** * 🔒 Required permissions: tribufu.community.game.server.cluster.list * Get a list of game server clusters. */ async getGameServerClusters(page?: number, limit?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getGameServerClustersRaw({ page: page, limit: limit }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.game.server.list * Get a list of game servers. */ async getGameServersRaw(requestParameters: GetGameServersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; if (requestParameters['page'] != null) { queryParameters['page'] = requestParameters['page']; } if (requestParameters['limit'] != null) { queryParameters['limit'] = requestParameters['limit']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/servers`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(GameServerFromJSON)); } /** * 🔒 Required permissions: tribufu.community.game.server.list * Get a list of game servers. */ async getGameServers(page?: number, limit?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getGameServersRaw({ page: page, limit: limit }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.game.server.list.country * Get a list of game servers from a country. */ async getGameServersByCountryRaw(requestParameters: GetGameServersByCountryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { if (requestParameters['country'] == null) { throw new runtime.RequiredError( 'country', 'Required parameter "country" was null or undefined when calling getGameServersByCountry().' ); } const queryParameters: any = {}; if (requestParameters['page'] != null) { queryParameters['page'] = requestParameters['page']; } if (requestParameters['limit'] != null) { queryParameters['limit'] = requestParameters['limit']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/servers/country/{country}`.replace(`{${"country"}}`, encodeURIComponent(String(requestParameters['country']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(GameServerFromJSON)); } /** * 🔒 Required permissions: tribufu.community.game.server.list.country * Get a list of game servers from a country. */ async getGameServersByCountry(country: string, page?: number, limit?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getGameServersByCountryRaw({ country: country, page: page, limit: limit }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.game.server.list * Get a list of game servers of a game. */ async getGameServersByGameIdRaw(requestParameters: GetGameServersByGameIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling getGameServersByGameId().' ); } const queryParameters: any = {}; if (requestParameters['page'] != null) { queryParameters['page'] = requestParameters['page']; } if (requestParameters['limit'] != null) { queryParameters['limit'] = requestParameters['limit']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/games/{id}/servers`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(GameServerFromJSON)); } /** * 🔒 Required permissions: tribufu.community.game.server.list * Get a list of game servers of a game. */ async getGameServersByGameId(id: string, page?: number, limit?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getGameServersByGameIdRaw({ id: id, page: page, limit: limit }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.game.server.country.list * Get a list of countries with the number of game servers. */ async getGameServersCountriesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/servers/countries`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response); } /** * 🔒 Required permissions: tribufu.community.game.server.country.list * Get a list of countries with the number of game servers. */ async getGameServersCountries(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<{ [key: string]: number; }> { const response = await this.getGameServersCountriesRaw(initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.game.server.metric.get * Get metrics about the tracked game servers. */ async getGameServersMetricsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/servers/metrics`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => ServerMetricsFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.community.game.server.metric.get * Get metrics about the tracked game servers. */ async getGameServersMetrics(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getGameServersMetricsRaw(initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.game.list * Get a list of games. */ async getGamesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/games`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(GameFromJSON)); } /** * 🔒 Required permissions: tribufu.community.game.list * Get a list of games. */ async getGames(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getGamesRaw(initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.group.get * Get a group by id. */ async getGroupByIdRaw(requestParameters: GetGroupByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling getGroupById().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/groups/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => GroupFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.community.group.get * Get a group by id. */ async getGroupById(id: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getGroupByIdRaw({ id: id }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.group.get.tag * Get a group by tag. */ async getGroupByTagRaw(requestParameters: GetGroupByTagRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['tag'] == null) { throw new runtime.RequiredError( 'tag', 'Required parameter "tag" was null or undefined when calling getGroupByTag().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/groups/tag/{tag}`.replace(`{${"tag"}}`, encodeURIComponent(String(requestParameters['tag']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => GroupFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.community.group.get.tag * Get a group by tag. */ async getGroupByTag(tag: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getGroupByTagRaw({ tag: tag }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.group.get.uuid * Get a group by uuid. */ async getGroupByUuidRaw(requestParameters: GetGroupByUuidRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['uuid'] == null) { throw new runtime.RequiredError( 'uuid', 'Required parameter "uuid" was null or undefined when calling getGroupByUuid().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/groups/uuid/{uuid}`.replace(`{${"uuid"}}`, encodeURIComponent(String(requestParameters['uuid']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => GroupFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.community.group.get.uuid * Get a group by uuid. */ async getGroupByUuid(uuid: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getGroupByUuidRaw({ uuid: uuid }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.group.game.list * Get a list of games of a group. */ async getGroupGamesRaw(requestParameters: GetGroupGamesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling getGroupGames().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/groups/{id}/games`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(GroupGameFromJSON)); } /** * 🔒 Required permissions: tribufu.community.group.game.list * Get a list of games of a group. */ async getGroupGames(id: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getGroupGamesRaw({ id: id }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.group.member.list * Get a list of members in a group. */ async getGroupMembersRaw(requestParameters: GetGroupMembersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling getGroupMembers().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/groups/{id}/members`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(GroupMemberFromJSON)); } /** * 🔒 Required permissions: tribufu.community.group.member.list * Get a list of members in a group. */ async getGroupMembers(id: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getGroupMembersRaw({ id: id }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.group.list * Get a list of groups. */ async getGroupsRaw(requestParameters: GetGroupsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; if (requestParameters['page'] != null) { queryParameters['page'] = requestParameters['page']; } if (requestParameters['limit'] != null) { queryParameters['limit'] = requestParameters['limit']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/groups`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(GroupFromJSON)); } /** * 🔒 Required permissions: tribufu.community.group.list * Get a list of groups. */ async getGroups(page?: number, limit?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getGroupsRaw({ page: page, limit: limit }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.geoip.address.get * Get a ip address location. */ async getIpAddressRaw(requestParameters: GetIpAddressRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['address'] == null) { throw new runtime.RequiredError( 'address', 'Required parameter "address" was null or undefined when calling getIpAddress().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/geoip/addresses/{address}`.replace(`{${"address"}}`, encodeURIComponent(String(requestParameters['address']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => IpAddressFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.geoip.address.get * Get a ip address location. */ async getIpAddress(address: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getIpAddressRaw({ address: address }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.geoip.address.list * Get a list of ip addresses. */ async getIpAddressesRaw(requestParameters: GetIpAddressesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; if (requestParameters['page'] != null) { queryParameters['page'] = requestParameters['page']; } if (requestParameters['limit'] != null) { queryParameters['limit'] = requestParameters['limit']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/geoip/addresses`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(IpAddressFromJSON)); } /** * 🔒 Required permissions: tribufu.geoip.address.list * Get a list of ip addresses. */ async getIpAddresses(page?: number, limit?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getIpAddressesRaw({ page: page, limit: limit }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.leaderboard.get * Get the top 20 leaderboard users. */ async getLeaderboardRaw(requestParameters: GetLeaderboardRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; if (requestParameters['order'] != null) { queryParameters['Order'] = requestParameters['order']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/leaderboard`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(LeaderboardItemFromJSON)); } /** * 🔒 Required permissions: tribufu.community.leaderboard.get * Get the top 20 leaderboard users. */ async getLeaderboard(order?: LeaderboardOrder, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getLeaderboardRaw({ order: order }, initOverrides); return await response.value(); } /** * Get current user information. * @deprecated */ async getMeRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/me`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => UserInfoFromJSON(jsonValue)); } /** * Get current user information. * @deprecated */ async getMe(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getMeRaw(initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.package.get * Get a package by id. */ async getPackageByIdRaw(requestParameters: GetPackageByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling getPackageById().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/packages/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => PackageFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.community.package.get * Get a package by id. */ async getPackageById(id: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getPackageByIdRaw({ id: id }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.package.list * Get a list of packages. */ async getPackagesRaw(requestParameters: GetPackagesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; if (requestParameters['page'] != null) { queryParameters['page'] = requestParameters['page']; } if (requestParameters['limit'] != null) { queryParameters['limit'] = requestParameters['limit']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/packages`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(PackageFromJSON)); } /** * 🔒 Required permissions: tribufu.community.package.list * Get a list of packages. */ async getPackages(page?: number, limit?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getPackagesRaw({ page: page, limit: limit }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.identity.oauth2.client.keys * Get the public keys for the client. */ async getPublicKeysRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/oauth2/jwks`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * 🔒 Required permissions: tribufu.identity.oauth2.client.keys * Get the public keys for the client. */ async getPublicKeys(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.getPublicKeysRaw(initOverrides); } /** * 🔒 Required permissions: tribufu.store.subscription.get * Get a subscription by id. */ async getSubscriptionByIdRaw(requestParameters: GetSubscriptionByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling getSubscriptionById().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/subscriptions/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => SubscriptionFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.store.subscription.get * Get a subscription by id. */ async getSubscriptionById(id: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getSubscriptionByIdRaw({ id: id }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.store.subscription.list * Get a list of subscriptions. */ async getSubscriptionsRaw(requestParameters: GetSubscriptionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; if (requestParameters['page'] != null) { queryParameters['page'] = requestParameters['page']; } if (requestParameters['limit'] != null) { queryParameters['limit'] = requestParameters['limit']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/subscriptions`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(SubscriptionFromJSON)); } /** * 🔒 Required permissions: tribufu.store.subscription.list * Get a list of subscriptions. */ async getSubscriptions(page?: number, limit?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getSubscriptionsRaw({ page: page, limit: limit }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.identity.user.account.list * Get a list of connected accounts of the user. */ async getUserAccountsRaw(requestParameters: GetUserAccountsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling getUserAccounts().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/users/{id}/accounts`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(AccountFromJSON)); } /** * 🔒 Required permissions: tribufu.identity.user.account.list * Get a list of connected accounts of the user. */ async getUserAccounts(id: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getUserAccountsRaw({ id: id }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.profile.get * Get a user profile by id. */ async getUserByIdRaw(requestParameters: GetUserByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling getUserById().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/users/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => ProfileFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.community.profile.get * Get a user profile by id. */ async getUserById(id: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getUserByIdRaw({ id: id }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.profile.get.name * Get a user profile by name. */ async getUserByNameRaw(requestParameters: GetUserByNameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['name'] == null) { throw new runtime.RequiredError( 'name', 'Required parameter "name" was null or undefined when calling getUserByName().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/users/name/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters['name']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => ProfileFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.community.profile.get.name * Get a user profile by name. */ async getUserByName(name: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getUserByNameRaw({ name: name }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.profile.get.uuid * Get a user profile by uuid. */ async getUserByUuidRaw(requestParameters: GetUserByUuidRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['uuid'] == null) { throw new runtime.RequiredError( 'uuid', 'Required parameter "uuid" was null or undefined when calling getUserByUuid().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/users/uuid/{uuid}`.replace(`{${"uuid"}}`, encodeURIComponent(String(requestParameters['uuid']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => ProfileFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.community.profile.get.uuid * Get a user profile by uuid. */ async getUserByUuid(uuid: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getUserByUuidRaw({ uuid: uuid }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.profile.friend.list * Get a list of friends of the user. */ async getUserFriendsRaw(requestParameters: GetUserFriendsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling getUserFriends().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/users/{id}/friends`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response); } /** * 🔒 Required permissions: tribufu.community.profile.friend.list * Get a list of friends of the user. */ async getUserFriends(id: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getUserFriendsRaw({ id: id }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.profile.game.list * Get a list of games the user has played. */ async getUserGamesRaw(requestParameters: GetUserGamesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling getUserGames().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/users/{id}/games`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ProfileGameFromJSON)); } /** * 🔒 Required permissions: tribufu.community.profile.game.list * Get a list of games the user has played. */ async getUserGames(id: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getUserGamesRaw({ id: id }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.profile.group.list * Get a list of groups the user is a member of. */ async getUserGroupsRaw(requestParameters: GetUserGroupsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling getUserGroups().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/users/{id}/groups`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ProfileGroupFromJSON)); } /** * 🔒 Required permissions: tribufu.community.profile.group.list * Get a list of groups the user is a member of. */ async getUserGroups(id: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getUserGroupsRaw({ id: id }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.identity.oauth2.user.info * Get current user information. */ async getUserInfoRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/oauth2/userinfo`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => UserInfoFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.identity.oauth2.user.info * Get current user information. */ async getUserInfo(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getUserInfoRaw(initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.profile.punishment.list * Get a list of punishments the user has received. */ async getUserPunishmentsRaw(requestParameters: GetUserPunishmentsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling getUserPunishments().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/users/{id}/punishments`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response); } /** * 🔒 Required permissions: tribufu.community.profile.punishment.list * Get a list of punishments the user has received. */ async getUserPunishments(id: string, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getUserPunishmentsRaw({ id: id }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.profile.game.server.list * Get a list of servers the user is owner of. */ async getUserServersRaw(requestParameters: GetUserServersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling getUserServers().' ); } const queryParameters: any = {}; if (requestParameters['page'] != null) { queryParameters['page'] = requestParameters['page']; } if (requestParameters['limit'] != null) { queryParameters['limit'] = requestParameters['limit']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/users/{id}/servers`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(GameServerFromJSON)); } /** * 🔒 Required permissions: tribufu.community.profile.game.server.list * Get a list of servers the user is owner of. */ async getUserServers(id: string, page?: number, limit?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getUserServersRaw({ id: id, page: page, limit: limit }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.profile.list * Get a list of user profiles. */ async getUsersRaw(requestParameters: GetUsersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; if (requestParameters['page'] != null) { queryParameters['page'] = requestParameters['page']; } if (requestParameters['limit'] != null) { queryParameters['limit'] = requestParameters['limit']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/users`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ProfileFromJSON)); } /** * 🔒 Required permissions: tribufu.community.profile.list * Get a list of user profiles. */ async getUsers(page?: number, limit?: number, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getUsersRaw({ page: page, limit: limit }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.utils.hash.argon2 * Hash a string using argon2. */ async hashArgon2Raw(requestParameters: HashArgon2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/utils/argon2`, method: 'POST', headers: headerParameters, query: queryParameters, body: HashViewModelToJSON(requestParameters['hashViewModel']), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => HashViewModelFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.utils.hash.argon2 * Hash a string using argon2. */ async hashArgon2(hashViewModel?: HashViewModel, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.hashArgon2Raw({ hashViewModel: hashViewModel }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.utils.hash.bcrypt * Hash a string using bcrypt. */ async hashBcryptRaw(requestParameters: HashBcryptRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/utils/bcrypt`, method: 'POST', headers: headerParameters, query: queryParameters, body: HashViewModelToJSON(requestParameters['hashViewModel']), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => HashViewModelFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.utils.hash.bcrypt * Hash a string using bcrypt. */ async hashBcrypt(hashViewModel?: HashViewModel, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.hashBcryptRaw({ hashViewModel: hashViewModel }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.utils.hash.md5 * Hash a string using md5. */ async hashMd5Raw(requestParameters: HashMd5Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/utils/md5`, method: 'POST', headers: headerParameters, query: queryParameters, body: HashViewModelToJSON(requestParameters['hashViewModel']), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => HashViewModelFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.utils.hash.md5 * Hash a string using md5. */ async hashMd5(hashViewModel?: HashViewModel, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.hashMd5Raw({ hashViewModel: hashViewModel }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.utils.hash.sha256 * Hash a string using sha256. */ async hashSha256Raw(requestParameters: HashSha256Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/utils/sha256`, method: 'POST', headers: headerParameters, query: queryParameters, body: HashViewModelToJSON(requestParameters['hashViewModel']), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => HashViewModelFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.utils.hash.sha256 * Hash a string using sha256. */ async hashSha256(hashViewModel?: HashViewModel, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.hashSha256Raw({ hashViewModel: hashViewModel }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.identity.oauth2.token.introspect * Introspect a token. */ async introspectTokenRaw(requestParameters: IntrospectTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/oauth2/introspect`, method: 'POST', headers: headerParameters, query: queryParameters, body: IntrospectRequestToJSON(requestParameters['introspectRequest']), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * 🔒 Required permissions: tribufu.identity.oauth2.token.introspect * Introspect a token. */ async introspectToken(introspectRequest?: IntrospectRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.introspectTokenRaw({ introspectRequest: introspectRequest }, initOverrides); } /** * 🔒 Required permissions: tribufu.identity.token.create * Login with name or email and password. * @deprecated */ async loginRaw(requestParameters: LoginOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/login`, method: 'POST', headers: headerParameters, query: queryParameters, body: LoginRequestToJSON(requestParameters['loginRequest']), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => LoginResponseFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.identity.token.create * Login with name or email and password. * @deprecated */ async login(loginRequest?: LoginRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.loginRaw({ loginRequest: loginRequest }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.identity.token.revoke * Invalidate credentials. * @deprecated */ async logoutRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/logout`, method: 'POST', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * 🔒 Required permissions: tribufu.identity.token.revoke * Invalidate credentials. * @deprecated */ async logout(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.logoutRaw(initOverrides); } /** * 🔒 Required permissions: tribufu.identity.token.refresh * Refresh credentials. * @deprecated */ async refreshRaw(requestParameters: RefreshOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/refresh`, method: 'POST', headers: headerParameters, query: queryParameters, body: RefreshRequestToJSON(requestParameters['refreshRequest']), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => LoginResponseFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.identity.token.refresh * Refresh credentials. * @deprecated */ async refresh(refreshRequest?: RefreshRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.refreshRaw({ refreshRequest: refreshRequest }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.identity.user.create * Create a new user. */ async registerRaw(requestParameters: RegisterOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/register`, method: 'POST', headers: headerParameters, query: queryParameters, body: RegisterRequestToJSON(requestParameters['registerRequest']), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => LoginResponseFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.identity.user.create * Create a new user. */ async register(registerRequest?: RegisterRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.registerRaw({ registerRequest: registerRequest }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.identity.oauth2.token.revoke * Revoke a token. */ async revokeTokenRaw(requestParameters: RevokeTokenRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/oauth2/revoke`, method: 'POST', headers: headerParameters, query: queryParameters, body: RevokeRequestToJSON(requestParameters['revokeRequest']), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * 🔒 Required permissions: tribufu.identity.oauth2.token.revoke * Revoke a token. */ async revokeToken(revokeRequest?: RevokeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.revokeTokenRaw({ revokeRequest: revokeRequest }, initOverrides); } /** * 🔒 Required permissions: tribufu.community.search * Advanced search for servers or players. */ async searchRaw(requestParameters: SearchOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/search`, method: 'POST', headers: headerParameters, query: queryParameters, body: SearchRequestToJSON(requestParameters['searchRequest']), }, initOverrides); return new runtime.JSONApiResponse(response); } /** * 🔒 Required permissions: tribufu.community.search * Advanced search for servers or players. */ async search(searchRequest?: SearchRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.searchRaw({ searchRequest: searchRequest }, initOverrides); return await response.value(); } /** * 🔒 Required permissions: tribufu.community.game.server.update * Update a game server. */ async updateGameServerRaw(requestParameters: UpdateGameServerRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling updateGameServer().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/servers/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'PUT', headers: headerParameters, query: queryParameters, body: requestParameters['body'] as any, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * 🔒 Required permissions: tribufu.community.game.server.update * Update a game server. */ async updateGameServer(id: string, body?: any | null, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.updateGameServerRaw({ id: id, body: body }, initOverrides); } /** * 🔒 Required permissions: tribufu.community.game.server.cluster.update * Update a game server cluster. */ async updateGameServerClusterRaw(requestParameters: UpdateGameServerClusterRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling updateGameServerCluster().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/clusters/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'PUT', headers: headerParameters, query: queryParameters, body: requestParameters['body'] as any, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * 🔒 Required permissions: tribufu.community.game.server.cluster.update * Update a game server cluster. */ async updateGameServerCluster(id: string, body?: any | null, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.updateGameServerClusterRaw({ id: id, body: body }, initOverrides); } /** * 🔒 Required permissions: tribufu.community.group.update * Update a group. */ async updateGroupRaw(requestParameters: UpdateGroupRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling updateGroup().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/groups/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'PUT', headers: headerParameters, query: queryParameters, body: requestParameters['body'] as any, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * 🔒 Required permissions: tribufu.community.group.update * Update a group. */ async updateGroup(id: string, body?: any | null, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.updateGroupRaw({ id: id, body: body }, initOverrides); } /** * 🔒 Required permissions: tribufu.community.profile.update * Update a user profile. */ async updateUserProfileRaw(requestParameters: UpdateUserProfileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters['id'] == null) { throw new runtime.RequiredError( 'id', 'Required parameter "id" was null or undefined when calling updateUserProfile().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json-patch+json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/v1/users/{id}/profile`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), method: 'PUT', headers: headerParameters, query: queryParameters, body: UpdateProfileToJSON(requestParameters['updateProfile']), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => ProfileFromJSON(jsonValue)); } /** * 🔒 Required permissions: tribufu.community.profile.update * Update a user profile. */ async updateUserProfile(id: string, updateProfile?: UpdateProfile, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.updateUserProfileRaw({ id: id, updateProfile: updateProfile }, initOverrides); return await response.value(); } }