/* 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 { ProblemDetails, TaskInfo, TaskTriggerInfo, } from '../models'; import { ProblemDetailsFromJSON, ProblemDetailsToJSON, TaskInfoFromJSON, TaskInfoToJSON, TaskTriggerInfoFromJSON, TaskTriggerInfoToJSON, } from '../models'; export interface GetTaskRequest { taskId: string; } export interface GetTasksRequest { isHidden?: boolean; isEnabled?: boolean; } export interface StartTaskRequest { taskId: string; } export interface StopTaskRequest { taskId: string; } export interface UpdateTaskRequest { taskId: string; taskTriggerInfo: Array; } /** * */ export class ScheduledTasksApi extends runtime.BaseAPI { /** * Get task by id. */ async getTaskRaw(requestParameters: GetTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.taskId === null || requestParameters.taskId === undefined) { throw new runtime.RequiredError('taskId','Required parameter requestParameters.taskId was null or undefined when calling getTask.'); } 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: `/ScheduledTasks/{taskId}`.replace(`{${"taskId"}}`, encodeURIComponent(String(requestParameters.taskId))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => TaskInfoFromJSON(jsonValue)); } /** * Get task by id. */ async getTask(requestParameters: GetTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getTaskRaw(requestParameters, initOverrides); return await response.value(); } /** * Get tasks. */ async getTasksRaw(requestParameters: GetTasksRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; if (requestParameters.isHidden !== undefined) { queryParameters['isHidden'] = requestParameters.isHidden; } if (requestParameters.isEnabled !== undefined) { queryParameters['isEnabled'] = requestParameters.isEnabled; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication } const response = await this.request({ path: `/ScheduledTasks`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(TaskInfoFromJSON)); } /** * Get tasks. */ async getTasks(requestParameters: GetTasksRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getTasksRaw(requestParameters, initOverrides); return await response.value(); } /** * Start specified task. */ async startTaskRaw(requestParameters: StartTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.taskId === null || requestParameters.taskId === undefined) { throw new runtime.RequiredError('taskId','Required parameter requestParameters.taskId was null or undefined when calling startTask.'); } 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: `/ScheduledTasks/Running/{taskId}`.replace(`{${"taskId"}}`, encodeURIComponent(String(requestParameters.taskId))), method: 'POST', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Start specified task. */ async startTask(requestParameters: StartTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.startTaskRaw(requestParameters, initOverrides); } /** * Stop specified task. */ async stopTaskRaw(requestParameters: StopTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.taskId === null || requestParameters.taskId === undefined) { throw new runtime.RequiredError('taskId','Required parameter requestParameters.taskId was null or undefined when calling stopTask.'); } 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: `/ScheduledTasks/Running/{taskId}`.replace(`{${"taskId"}}`, encodeURIComponent(String(requestParameters.taskId))), method: 'DELETE', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Stop specified task. */ async stopTask(requestParameters: StopTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.stopTaskRaw(requestParameters, initOverrides); } /** * Update specified task triggers. */ async updateTaskRaw(requestParameters: UpdateTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.taskId === null || requestParameters.taskId === undefined) { throw new runtime.RequiredError('taskId','Required parameter requestParameters.taskId was null or undefined when calling updateTask.'); } if (requestParameters.taskTriggerInfo === null || requestParameters.taskTriggerInfo === undefined) { throw new runtime.RequiredError('taskTriggerInfo','Required parameter requestParameters.taskTriggerInfo was null or undefined when calling updateTask.'); } 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: `/ScheduledTasks/{taskId}/Triggers`.replace(`{${"taskId"}}`, encodeURIComponent(String(requestParameters.taskId))), method: 'POST', headers: headerParameters, query: queryParameters, body: requestParameters.taskTriggerInfo.map(TaskTriggerInfoToJSON), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Update specified task triggers. */ async updateTask(requestParameters: UpdateTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { await this.updateTaskRaw(requestParameters, initOverrides); } }