/* tslint:disable */ /* eslint-disable */ /** * Jellyfin API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: 10.8.9 * * * 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 { AuthenticateUserByNameRequest, AuthenticateWithQuickConnectRequest, AuthenticationResult, CreateUserByNameRequest, ForgotPasswordPinRequest, ForgotPasswordRequest, ForgotPasswordResult, PinRedeemResult, ProblemDetails, UpdateUserConfigurationRequest, UpdateUserEasyPasswordRequest, UpdateUserPasswordRequest, UpdateUserPolicyRequest, UpdateUserRequest, UserDto, } from '../models'; import { AuthenticateUserByNameRequestFromJSON, AuthenticateUserByNameRequestToJSON, AuthenticateWithQuickConnectRequestFromJSON, AuthenticateWithQuickConnectRequestToJSON, AuthenticationResultFromJSON, AuthenticationResultToJSON, CreateUserByNameRequestFromJSON, CreateUserByNameRequestToJSON, ForgotPasswordPinRequestFromJSON, ForgotPasswordPinRequestToJSON, ForgotPasswordRequestFromJSON, ForgotPasswordRequestToJSON, ForgotPasswordResultFromJSON, ForgotPasswordResultToJSON, PinRedeemResultFromJSON, PinRedeemResultToJSON, ProblemDetailsFromJSON, ProblemDetailsToJSON, UpdateUserConfigurationRequestFromJSON, UpdateUserConfigurationRequestToJSON, UpdateUserEasyPasswordRequestFromJSON, UpdateUserEasyPasswordRequestToJSON, UpdateUserPasswordRequestFromJSON, UpdateUserPasswordRequestToJSON, UpdateUserPolicyRequestFromJSON, UpdateUserPolicyRequestToJSON, UpdateUserRequestFromJSON, UpdateUserRequestToJSON, UserDtoFromJSON, UserDtoToJSON, } from '../models'; export interface AuthenticateUserRequest { userId: string; pw: string; password?: string; } export interface AuthenticateUserByNameOperationRequest { authenticateUserByNameRequest: AuthenticateUserByNameRequest; } export interface AuthenticateWithQuickConnectOperationRequest { authenticateWithQuickConnectRequest: AuthenticateWithQuickConnectRequest; } export interface CreateUserByNameOperationRequest { createUserByNameRequest: CreateUserByNameRequest; } export interface DeleteUserRequest { userId: string; } export interface ForgotPasswordOperationRequest { forgotPasswordRequest: ForgotPasswordRequest; } export interface ForgotPasswordPinOperationRequest { forgotPasswordPinRequest: ForgotPasswordPinRequest; } export interface GetUserByIdRequest { userId: string; } export interface GetUsersRequest { isHidden?: boolean; isDisabled?: boolean; } export interface UpdateUserOperationRequest { userId: string; updateUserRequest: UpdateUserRequest; } export interface UpdateUserConfigurationOperationRequest { userId: string; updateUserConfigurationRequest: UpdateUserConfigurationRequest; } export interface UpdateUserEasyPasswordOperationRequest { userId: string; updateUserEasyPasswordRequest: UpdateUserEasyPasswordRequest; } export interface UpdateUserPasswordOperationRequest { userId: string; updateUserPasswordRequest: UpdateUserPasswordRequest; } export interface UpdateUserPolicyOperationRequest { userId: string; updateUserPolicyRequest: UpdateUserPolicyRequest; } /** * */ export class UserApi extends runtime.BaseAPI { /** * Authenticates a user. */ async authenticateUserRaw(requestParameters: AuthenticateUserRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.userId === null || requestParameters.userId === undefined) { throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling authenticateUser.'); } if (requestParameters.pw === null || requestParameters.pw === undefined) { throw new runtime.RequiredError('pw','Required parameter requestParameters.pw was null or undefined when calling authenticateUser.'); } const queryParameters: any = {}; if (requestParameters.pw !== undefined) { queryParameters['pw'] = requestParameters.pw; } if (requestParameters.password !== undefined) { queryParameters['password'] = requestParameters.password; } const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/Users/{userId}/Authenticate`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))), method: 'POST', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => AuthenticationResultFromJSON(jsonValue)); } /** * Authenticates a user. */ async authenticateUser(requestParameters: AuthenticateUserRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.authenticateUserRaw(requestParameters, initOverrides); return await response.value(); } /** * Authenticates a user by name. */ async authenticateUserByNameRaw(requestParameters: AuthenticateUserByNameOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.authenticateUserByNameRequest === null || requestParameters.authenticateUserByNameRequest === undefined) { throw new runtime.RequiredError('authenticateUserByNameRequest','Required parameter requestParameters.authenticateUserByNameRequest was null or undefined when calling authenticateUserByName.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; const response = await this.request({ path: `/Users/AuthenticateByName`, method: 'POST', headers: headerParameters, query: queryParameters, body: AuthenticateUserByNameRequestToJSON(requestParameters.authenticateUserByNameRequest), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => AuthenticationResultFromJSON(jsonValue)); } /** * Authenticates a user by name. */ async authenticateUserByName(requestParameters: AuthenticateUserByNameOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.authenticateUserByNameRaw(requestParameters, initOverrides); return await response.value(); } /** * Authenticates a user with quick connect. */ async authenticateWithQuickConnectRaw(requestParameters: AuthenticateWithQuickConnectOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.authenticateWithQuickConnectRequest === null || requestParameters.authenticateWithQuickConnectRequest === undefined) { throw new runtime.RequiredError('authenticateWithQuickConnectRequest','Required parameter requestParameters.authenticateWithQuickConnectRequest was null or undefined when calling authenticateWithQuickConnect.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; const response = await this.request({ path: `/Users/AuthenticateWithQuickConnect`, method: 'POST', headers: headerParameters, query: queryParameters, body: AuthenticateWithQuickConnectRequestToJSON(requestParameters.authenticateWithQuickConnectRequest), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => AuthenticationResultFromJSON(jsonValue)); } /** * Authenticates a user with quick connect. */ async authenticateWithQuickConnect(requestParameters: AuthenticateWithQuickConnectOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.authenticateWithQuickConnectRaw(requestParameters, initOverrides); return await response.value(); } /** * Creates a user. */ async createUserByNameRaw(requestParameters: CreateUserByNameOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.createUserByNameRequest === null || requestParameters.createUserByNameRequest === undefined) { throw new runtime.RequiredError('createUserByNameRequest','Required parameter requestParameters.createUserByNameRequest was null or undefined when calling createUserByName.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication } const response = await this.request({ path: `/Users/New`, method: 'POST', headers: headerParameters, query: queryParameters, body: CreateUserByNameRequestToJSON(requestParameters.createUserByNameRequest), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => UserDtoFromJSON(jsonValue)); } /** * Creates a user. */ async createUserByName(requestParameters: CreateUserByNameOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.createUserByNameRaw(requestParameters, initOverrides); return await response.value(); } /** * Deletes a user. */ async deleteUserRaw(requestParameters: DeleteUserRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.userId === null || requestParameters.userId === undefined) { throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling deleteUser.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication } const response = await this.request({ path: `/Users/{userId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))), method: 'DELETE', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Deletes a user. */ async deleteUser(requestParameters: DeleteUserRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.deleteUserRaw(requestParameters, initOverrides); } /** * Initiates the forgot password process for a local user. */ async forgotPasswordRaw(requestParameters: ForgotPasswordOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.forgotPasswordRequest === null || requestParameters.forgotPasswordRequest === undefined) { throw new runtime.RequiredError('forgotPasswordRequest','Required parameter requestParameters.forgotPasswordRequest was null or undefined when calling forgotPassword.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; const response = await this.request({ path: `/Users/ForgotPassword`, method: 'POST', headers: headerParameters, query: queryParameters, body: ForgotPasswordRequestToJSON(requestParameters.forgotPasswordRequest), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => ForgotPasswordResultFromJSON(jsonValue)); } /** * Initiates the forgot password process for a local user. */ async forgotPassword(requestParameters: ForgotPasswordOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.forgotPasswordRaw(requestParameters, initOverrides); return await response.value(); } /** * Redeems a forgot password pin. */ async forgotPasswordPinRaw(requestParameters: ForgotPasswordPinOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.forgotPasswordPinRequest === null || requestParameters.forgotPasswordPinRequest === undefined) { throw new runtime.RequiredError('forgotPasswordPinRequest','Required parameter requestParameters.forgotPasswordPinRequest was null or undefined when calling forgotPasswordPin.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; const response = await this.request({ path: `/Users/ForgotPassword/Pin`, method: 'POST', headers: headerParameters, query: queryParameters, body: ForgotPasswordPinRequestToJSON(requestParameters.forgotPasswordPinRequest), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => PinRedeemResultFromJSON(jsonValue)); } /** * Redeems a forgot password pin. */ async forgotPasswordPin(requestParameters: ForgotPasswordPinOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.forgotPasswordPinRaw(requestParameters, initOverrides); return await response.value(); } /** * Gets the user based on auth token. */ async getCurrentUserRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication } const response = await this.request({ path: `/Users/Me`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => UserDtoFromJSON(jsonValue)); } /** * Gets the user based on auth token. */ async getCurrentUser(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getCurrentUserRaw(initOverrides); return await response.value(); } /** * Gets a list of publicly visible users for display on a login screen. */ async getPublicUsersRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; const response = await this.request({ path: `/Users/Public`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(UserDtoFromJSON)); } /** * Gets a list of publicly visible users for display on a login screen. */ async getPublicUsers(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getPublicUsersRaw(initOverrides); return await response.value(); } /** * Gets a user by Id. */ async getUserByIdRaw(requestParameters: GetUserByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.userId === null || requestParameters.userId === undefined) { throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getUserById.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication } const response = await this.request({ path: `/Users/{userId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => UserDtoFromJSON(jsonValue)); } /** * Gets a user by Id. */ async getUserById(requestParameters: GetUserByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getUserByIdRaw(requestParameters, initOverrides); return await response.value(); } /** * Gets a list of users. */ async getUsersRaw(requestParameters: GetUsersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; if (requestParameters.isHidden !== undefined) { queryParameters['isHidden'] = requestParameters.isHidden; } if (requestParameters.isDisabled !== undefined) { queryParameters['isDisabled'] = requestParameters.isDisabled; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication } const response = await this.request({ path: `/Users`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(UserDtoFromJSON)); } /** * Gets a list of users. */ async getUsers(requestParameters: GetUsersRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getUsersRaw(requestParameters, initOverrides); return await response.value(); } /** * Updates a user. */ async updateUserRaw(requestParameters: UpdateUserOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.userId === null || requestParameters.userId === undefined) { throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling updateUser.'); } if (requestParameters.updateUserRequest === null || requestParameters.updateUserRequest === undefined) { throw new runtime.RequiredError('updateUserRequest','Required parameter requestParameters.updateUserRequest was null or undefined when calling updateUser.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication } const response = await this.request({ path: `/Users/{userId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))), method: 'POST', headers: headerParameters, query: queryParameters, body: UpdateUserRequestToJSON(requestParameters.updateUserRequest), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Updates a user. */ async updateUser(requestParameters: UpdateUserOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.updateUserRaw(requestParameters, initOverrides); } /** * Updates a user configuration. */ async updateUserConfigurationRaw(requestParameters: UpdateUserConfigurationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.userId === null || requestParameters.userId === undefined) { throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling updateUserConfiguration.'); } if (requestParameters.updateUserConfigurationRequest === null || requestParameters.updateUserConfigurationRequest === undefined) { throw new runtime.RequiredError('updateUserConfigurationRequest','Required parameter requestParameters.updateUserConfigurationRequest was null or undefined when calling updateUserConfiguration.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication } const response = await this.request({ path: `/Users/{userId}/Configuration`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))), method: 'POST', headers: headerParameters, query: queryParameters, body: UpdateUserConfigurationRequestToJSON(requestParameters.updateUserConfigurationRequest), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Updates a user configuration. */ async updateUserConfiguration(requestParameters: UpdateUserConfigurationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.updateUserConfigurationRaw(requestParameters, initOverrides); } /** * Updates a user\'s easy password. */ async updateUserEasyPasswordRaw(requestParameters: UpdateUserEasyPasswordOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.userId === null || requestParameters.userId === undefined) { throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling updateUserEasyPassword.'); } if (requestParameters.updateUserEasyPasswordRequest === null || requestParameters.updateUserEasyPasswordRequest === undefined) { throw new runtime.RequiredError('updateUserEasyPasswordRequest','Required parameter requestParameters.updateUserEasyPasswordRequest was null or undefined when calling updateUserEasyPassword.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication } const response = await this.request({ path: `/Users/{userId}/EasyPassword`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))), method: 'POST', headers: headerParameters, query: queryParameters, body: UpdateUserEasyPasswordRequestToJSON(requestParameters.updateUserEasyPasswordRequest), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Updates a user\'s easy password. */ async updateUserEasyPassword(requestParameters: UpdateUserEasyPasswordOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.updateUserEasyPasswordRaw(requestParameters, initOverrides); } /** * Updates a user\'s password. */ async updateUserPasswordRaw(requestParameters: UpdateUserPasswordOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.userId === null || requestParameters.userId === undefined) { throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling updateUserPassword.'); } if (requestParameters.updateUserPasswordRequest === null || requestParameters.updateUserPasswordRequest === undefined) { throw new runtime.RequiredError('updateUserPasswordRequest','Required parameter requestParameters.updateUserPasswordRequest was null or undefined when calling updateUserPassword.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication } const response = await this.request({ path: `/Users/{userId}/Password`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))), method: 'POST', headers: headerParameters, query: queryParameters, body: UpdateUserPasswordRequestToJSON(requestParameters.updateUserPasswordRequest), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Updates a user\'s password. */ async updateUserPassword(requestParameters: UpdateUserPasswordOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.updateUserPasswordRaw(requestParameters, initOverrides); } /** * Updates a user policy. */ async updateUserPolicyRaw(requestParameters: UpdateUserPolicyOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.userId === null || requestParameters.userId === undefined) { throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling updateUserPolicy.'); } if (requestParameters.updateUserPolicyRequest === null || requestParameters.updateUserPolicyRequest === undefined) { throw new runtime.RequiredError('updateUserPolicyRequest','Required parameter requestParameters.updateUserPolicyRequest was null or undefined when calling updateUserPolicy.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication } const response = await this.request({ path: `/Users/{userId}/Policy`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))), method: 'POST', headers: headerParameters, query: queryParameters, body: UpdateUserPolicyRequestToJSON(requestParameters.updateUserPolicyRequest), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Updates a user policy. */ async updateUserPolicy(requestParameters: UpdateUserPolicyOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.updateUserPolicyRaw(requestParameters, initOverrides); } }