@bitzonegaming/roleplay-engine-sdk
Version:
Roleplay Engine SDK
74 lines (73 loc) • 5.92 kB
TypeScript
import { ApiOptions, EngineClient } from '../core/engine-client';
import { RegisterAccountRequest } from './models/register-account-request';
import { Account } from './models/account';
import { AccountAuthRequest } from './models/account-auth-request';
import { GrantAccessResult } from './models/grant-access-result';
import { Character } from '../character/models/character';
import { ExternalLoginPreAuthRequest } from './models/external-login-pre-auth-request';
import { ExternalLoginPreAuthResult } from './models/external-login-pre-auth-result';
import { ExternalLoginAuthRequest } from './models/external-login-auth-request';
export declare class AccountApi {
private readonly client;
constructor(client: EngineClient);
/**
* Registers a new account in the game server. This endpoint is used to create a new player account.<br/>This endpoint performs server-level operations. The token does not need to be associated with any account or character.<br/><b>Account Policies</b>: account_policy:write:account<br/><br/> This endpoint requires authorization, and supports following token types:<br/>🔓 [API Key] <b>Required Scopes</b>: write:account<br/>🔓 [SSO Token]<br/>🔓 [Access Token]<br/>🔓 [Session Token]
* @summary Register a new account
* @param {RegisterAccountRequest} request
* @param {*} [options] Override http request option.
* @throws {EngineError}
*/
registerAccount(request: RegisterAccountRequest, options?: ApiOptions): Promise<Account>;
/**
* Authenticates a player using their password. This endpoint is used to log in a player to the game server.<br/>This endpoint performs server-level operations. The token does not need to be associated with any account or character.<br/><br/> This endpoint requires authorization, and supports following token types:<br/>🔓 [API Key] <b>Required Scopes</b>: write:player_auth
* @summary Authenticate with password
* @param {AccountAuthRequest} request
* @param {*} [options] Override http request option.
* @throws {EngineError}
*/
authWithPassword(request: AccountAuthRequest, options?: ApiOptions): Promise<GrantAccessResult>;
/**
* Retrieves an account by its unique identifier. This endpoint is used to fetch account details for a specific player.<br/>This endpoint performs server-level operations. The token does not need to be associated with any account or character.<br/><b>Account Policies</b>: account_policy:read:account<br/><br/> This endpoint requires authorization, and supports following token types:<br/>🔓 [API Key] <b>Required Scopes</b>: read:account<br/>🔓 [SSO Token]<br/>🔓 [Access Token]<br/>🔓 [Session Token]
* @summary Get account by id
* @param {string} accountId
* @param {Object} [query] Query parameters.
* @param {boolean} [query.includeSignInOptions] If `true`, include activated sign-in options in the response.
* @param {*} [options] Override http request option.
* @throws {EngineError}
*/
getAccountById(accountId: string, query?: {
includeSignInOptions?: boolean;
}, options?: ApiOptions): Promise<Account>;
/**
* Retrieves all characters associated with a specific account. This endpoint is used to list characters for a player.<br/>This endpoint performs server-level operations. The token does not need to be associated with any account or character.<br/><b>Account Policies</b>: account_policy:read:character<br/><br/> This endpoint requires authorization, and supports following token types:<br/>🔓 [API Key] <b>Required Scopes</b>: read:character<br/>🔓 [SSO Token]<br/>🔓 [Access Token]<br/>🔓 [Session Token]
* @summary Get account characters
* @param {string} accountId
* @param {Object} [query] Query parameters.
* @param {boolean} [query.includeAppearance] If `true`, include character appearance details in the response.
* @param {boolean} [query.includeMotives] If `true`, include character motives data in the response.
* @param {boolean} [query.onlyActive] If `true`, return only characters that are currently active.
* @param {*} [options] Override http request option.
* @throws {EngineError}
*/
getAccountCharacters(accountId: string, query?: {
includeAppearance?: boolean;
includeMotives?: boolean;
onlyActive?: boolean;
}, options?: ApiOptions): Promise<Character[]>;
/**
* Pre-authenticates a player for external login. This endpoint is used to initiate the external login flow.<br/>This endpoint performs server-level operations. The token does not need to be associated with any account or character.<br/><br/> This endpoint requires authorization, and supports following token types:<br/>🔓 [API Key] <b>Required Scopes</b>: write:player_auth
* @summary External login pre-authentication
* @param {ExternalLoginPreAuthRequest} request
* @param {*} [options] Override http request option.
* @throws {EngineError}
*/
preAuthExternalLogin(request: ExternalLoginPreAuthRequest, options?: ApiOptions): Promise<ExternalLoginPreAuthResult>;
/**
* Authenticates a player using external login credentials. This endpoint is used to complete the external login flow.<br/>This endpoint performs server-level operations. The token does not need to be associated with any account or character.<br/><br/> This endpoint requires authorization, and supports following token types:<br/>🔓 [API Key] <b>Required Scopes</b>: write:player_auth
* @summary External login authentication
* @param {ExternalLoginAuthRequest} request
* @param {*} [options] Override http request option.
* @throws {EngineError}
*/
authExternalLogin(request: ExternalLoginAuthRequest, options?: ApiOptions): Promise<GrantAccessResult>;
}