jellyfin api -> fetch

This commit is contained in:
2023-05-04 23:34:53 +02:00
parent 8e3f62c670
commit 08996386ca
884 changed files with 79987 additions and 84191 deletions

View File

@ -0,0 +1,83 @@
/* 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 {
ActivityLogEntryQueryResult,
} from '../models';
import {
ActivityLogEntryQueryResultFromJSON,
ActivityLogEntryQueryResultToJSON,
} from '../models';
export interface GetLogEntriesRequest {
startIndex?: number;
limit?: number;
minDate?: Date;
hasUserId?: boolean;
}
/**
*
*/
export class ActivityLogApi extends runtime.BaseAPI {
/**
* Gets activity log entries.
*/
async getLogEntriesRaw(requestParameters: GetLogEntriesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ActivityLogEntryQueryResult>> {
const queryParameters: any = {};
if (requestParameters.startIndex !== undefined) {
queryParameters['startIndex'] = requestParameters.startIndex;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.minDate !== undefined) {
queryParameters['minDate'] = (requestParameters.minDate as any).toISOString();
}
if (requestParameters.hasUserId !== undefined) {
queryParameters['hasUserId'] = requestParameters.hasUserId;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/System/ActivityLog/Entries`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => ActivityLogEntryQueryResultFromJSON(jsonValue));
}
/**
* Gets activity log entries.
*/
async getLogEntries(requestParameters: GetLogEntriesRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ActivityLogEntryQueryResult> {
const response = await this.getLogEntriesRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,138 @@
/* 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 {
AuthenticationInfoQueryResult,
} from '../models';
import {
AuthenticationInfoQueryResultFromJSON,
AuthenticationInfoQueryResultToJSON,
} from '../models';
export interface CreateKeyRequest {
app: string;
}
export interface RevokeKeyRequest {
key: string;
}
/**
*
*/
export class ApiKeyApi extends runtime.BaseAPI {
/**
* Create a new api key.
*/
async createKeyRaw(requestParameters: CreateKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling createKey.');
}
const queryParameters: any = {};
if (requestParameters.app !== undefined) {
queryParameters['app'] = requestParameters.app;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Auth/Keys`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Create a new api key.
*/
async createKey(requestParameters: CreateKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.createKeyRaw(requestParameters, initOverrides);
}
/**
* Get all keys.
*/
async getKeysRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<AuthenticationInfoQueryResult>> {
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: `/Auth/Keys`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => AuthenticationInfoQueryResultFromJSON(jsonValue));
}
/**
* Get all keys.
*/
async getKeys(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<AuthenticationInfoQueryResult> {
const response = await this.getKeysRaw(initOverrides);
return await response.value();
}
/**
* Remove an api key.
*/
async revokeKeyRaw(requestParameters: RevokeKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.key === null || requestParameters.key === undefined) {
throw new runtime.RequiredError('key','Required parameter requestParameters.key was null or undefined when calling revokeKey.');
}
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: `/Auth/Keys/{key}`.replace(`{${"key"}}`, encodeURIComponent(String(requestParameters.key))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Remove an api key.
*/
async revokeKey(requestParameters: RevokeKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.revokeKeyRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,477 @@
/* 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 {
BaseItemDto,
BaseItemDtoQueryResult,
BaseItemKind,
ImageType,
ItemFields,
ItemFilter,
SortOrder,
} from '../models';
import {
BaseItemDtoFromJSON,
BaseItemDtoToJSON,
BaseItemDtoQueryResultFromJSON,
BaseItemDtoQueryResultToJSON,
BaseItemKindFromJSON,
BaseItemKindToJSON,
ImageTypeFromJSON,
ImageTypeToJSON,
ItemFieldsFromJSON,
ItemFieldsToJSON,
ItemFilterFromJSON,
ItemFilterToJSON,
SortOrderFromJSON,
SortOrderToJSON,
} from '../models';
export interface GetAlbumArtistsRequest {
minCommunityRating?: number;
startIndex?: number;
limit?: number;
searchTerm?: string;
parentId?: string;
fields?: Array<ItemFields>;
excludeItemTypes?: Array<BaseItemKind>;
includeItemTypes?: Array<BaseItemKind>;
filters?: Array<ItemFilter>;
isFavorite?: boolean;
mediaTypes?: Array<string>;
genres?: Array<string>;
genreIds?: Array<string>;
officialRatings?: Array<string>;
tags?: Array<string>;
years?: Array<number>;
enableUserData?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
person?: string;
personIds?: Array<string>;
personTypes?: Array<string>;
studios?: Array<string>;
studioIds?: Array<string>;
userId?: string;
nameStartsWithOrGreater?: string;
nameStartsWith?: string;
nameLessThan?: string;
sortBy?: Array<string>;
sortOrder?: Array<SortOrder>;
enableImages?: boolean;
enableTotalRecordCount?: boolean;
}
export interface GetArtistByNameRequest {
name: string;
userId?: string;
}
export interface GetArtistsRequest {
minCommunityRating?: number;
startIndex?: number;
limit?: number;
searchTerm?: string;
parentId?: string;
fields?: Array<ItemFields>;
excludeItemTypes?: Array<BaseItemKind>;
includeItemTypes?: Array<BaseItemKind>;
filters?: Array<ItemFilter>;
isFavorite?: boolean;
mediaTypes?: Array<string>;
genres?: Array<string>;
genreIds?: Array<string>;
officialRatings?: Array<string>;
tags?: Array<string>;
years?: Array<number>;
enableUserData?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
person?: string;
personIds?: Array<string>;
personTypes?: Array<string>;
studios?: Array<string>;
studioIds?: Array<string>;
userId?: string;
nameStartsWithOrGreater?: string;
nameStartsWith?: string;
nameLessThan?: string;
sortBy?: Array<string>;
sortOrder?: Array<SortOrder>;
enableImages?: boolean;
enableTotalRecordCount?: boolean;
}
/**
*
*/
export class ArtistsApi extends runtime.BaseAPI {
/**
* Gets all album artists from a given item, folder, or the entire library.
*/
async getAlbumArtistsRaw(requestParameters: GetAlbumArtistsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
const queryParameters: any = {};
if (requestParameters.minCommunityRating !== undefined) {
queryParameters['minCommunityRating'] = requestParameters.minCommunityRating;
}
if (requestParameters.startIndex !== undefined) {
queryParameters['startIndex'] = requestParameters.startIndex;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.searchTerm !== undefined) {
queryParameters['searchTerm'] = requestParameters.searchTerm;
}
if (requestParameters.parentId !== undefined) {
queryParameters['parentId'] = requestParameters.parentId;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.excludeItemTypes) {
queryParameters['excludeItemTypes'] = requestParameters.excludeItemTypes;
}
if (requestParameters.includeItemTypes) {
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
}
if (requestParameters.filters) {
queryParameters['filters'] = requestParameters.filters;
}
if (requestParameters.isFavorite !== undefined) {
queryParameters['isFavorite'] = requestParameters.isFavorite;
}
if (requestParameters.mediaTypes) {
queryParameters['mediaTypes'] = requestParameters.mediaTypes;
}
if (requestParameters.genres) {
queryParameters['genres'] = requestParameters.genres;
}
if (requestParameters.genreIds) {
queryParameters['genreIds'] = requestParameters.genreIds;
}
if (requestParameters.officialRatings) {
queryParameters['officialRatings'] = requestParameters.officialRatings;
}
if (requestParameters.tags) {
queryParameters['tags'] = requestParameters.tags;
}
if (requestParameters.years) {
queryParameters['years'] = requestParameters.years;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
if (requestParameters.person !== undefined) {
queryParameters['person'] = requestParameters.person;
}
if (requestParameters.personIds) {
queryParameters['personIds'] = requestParameters.personIds;
}
if (requestParameters.personTypes) {
queryParameters['personTypes'] = requestParameters.personTypes;
}
if (requestParameters.studios) {
queryParameters['studios'] = requestParameters.studios;
}
if (requestParameters.studioIds) {
queryParameters['studioIds'] = requestParameters.studioIds;
}
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.nameStartsWithOrGreater !== undefined) {
queryParameters['nameStartsWithOrGreater'] = requestParameters.nameStartsWithOrGreater;
}
if (requestParameters.nameStartsWith !== undefined) {
queryParameters['nameStartsWith'] = requestParameters.nameStartsWith;
}
if (requestParameters.nameLessThan !== undefined) {
queryParameters['nameLessThan'] = requestParameters.nameLessThan;
}
if (requestParameters.sortBy) {
queryParameters['sortBy'] = requestParameters.sortBy;
}
if (requestParameters.sortOrder) {
queryParameters['sortOrder'] = requestParameters.sortOrder;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
if (requestParameters.enableTotalRecordCount !== undefined) {
queryParameters['enableTotalRecordCount'] = requestParameters.enableTotalRecordCount;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Artists/AlbumArtists`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Gets all album artists from a given item, folder, or the entire library.
*/
async getAlbumArtists(requestParameters: GetAlbumArtistsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getAlbumArtistsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets an artist by name.
*/
async getArtistByNameRaw(requestParameters: GetArtistByNameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDto>> {
if (requestParameters.name === null || requestParameters.name === undefined) {
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getArtistByName.');
}
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Artists/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoFromJSON(jsonValue));
}
/**
* Gets an artist by name.
*/
async getArtistByName(requestParameters: GetArtistByNameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDto> {
const response = await this.getArtistByNameRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets all artists from a given item, folder, or the entire library.
*/
async getArtistsRaw(requestParameters: GetArtistsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
const queryParameters: any = {};
if (requestParameters.minCommunityRating !== undefined) {
queryParameters['minCommunityRating'] = requestParameters.minCommunityRating;
}
if (requestParameters.startIndex !== undefined) {
queryParameters['startIndex'] = requestParameters.startIndex;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.searchTerm !== undefined) {
queryParameters['searchTerm'] = requestParameters.searchTerm;
}
if (requestParameters.parentId !== undefined) {
queryParameters['parentId'] = requestParameters.parentId;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.excludeItemTypes) {
queryParameters['excludeItemTypes'] = requestParameters.excludeItemTypes;
}
if (requestParameters.includeItemTypes) {
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
}
if (requestParameters.filters) {
queryParameters['filters'] = requestParameters.filters;
}
if (requestParameters.isFavorite !== undefined) {
queryParameters['isFavorite'] = requestParameters.isFavorite;
}
if (requestParameters.mediaTypes) {
queryParameters['mediaTypes'] = requestParameters.mediaTypes;
}
if (requestParameters.genres) {
queryParameters['genres'] = requestParameters.genres;
}
if (requestParameters.genreIds) {
queryParameters['genreIds'] = requestParameters.genreIds;
}
if (requestParameters.officialRatings) {
queryParameters['officialRatings'] = requestParameters.officialRatings;
}
if (requestParameters.tags) {
queryParameters['tags'] = requestParameters.tags;
}
if (requestParameters.years) {
queryParameters['years'] = requestParameters.years;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
if (requestParameters.person !== undefined) {
queryParameters['person'] = requestParameters.person;
}
if (requestParameters.personIds) {
queryParameters['personIds'] = requestParameters.personIds;
}
if (requestParameters.personTypes) {
queryParameters['personTypes'] = requestParameters.personTypes;
}
if (requestParameters.studios) {
queryParameters['studios'] = requestParameters.studios;
}
if (requestParameters.studioIds) {
queryParameters['studioIds'] = requestParameters.studioIds;
}
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.nameStartsWithOrGreater !== undefined) {
queryParameters['nameStartsWithOrGreater'] = requestParameters.nameStartsWithOrGreater;
}
if (requestParameters.nameStartsWith !== undefined) {
queryParameters['nameStartsWith'] = requestParameters.nameStartsWith;
}
if (requestParameters.nameLessThan !== undefined) {
queryParameters['nameLessThan'] = requestParameters.nameLessThan;
}
if (requestParameters.sortBy) {
queryParameters['sortBy'] = requestParameters.sortBy;
}
if (requestParameters.sortOrder) {
queryParameters['sortOrder'] = requestParameters.sortOrder;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
if (requestParameters.enableTotalRecordCount !== undefined) {
queryParameters['enableTotalRecordCount'] = requestParameters.enableTotalRecordCount;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Artists`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Gets all artists from a given item, folder, or the entire library.
*/
async getArtists(requestParameters: GetArtistsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getArtistsRaw(requestParameters, initOverrides);
return await response.value();
}
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,116 @@
/* 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 {
BrandingOptions,
} from '../models';
import {
BrandingOptionsFromJSON,
BrandingOptionsToJSON,
} from '../models';
/**
*
*/
export class BrandingApi extends runtime.BaseAPI {
/**
* Gets branding css.
*/
async getBrandingCssRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<string>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/Branding/Css`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
if (this.isJsonMime(response.headers.get('content-type'))) {
return new runtime.JSONApiResponse<string>(response);
} else {
return new runtime.TextApiResponse(response) as any;
}
}
/**
* Gets branding css.
*/
async getBrandingCss(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<string> {
const response = await this.getBrandingCssRaw(initOverrides);
return await response.value();
}
/**
* Gets branding css.
*/
async getBrandingCss2Raw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<string>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/Branding/Css.css`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
if (this.isJsonMime(response.headers.get('content-type'))) {
return new runtime.JSONApiResponse<string>(response);
} else {
return new runtime.TextApiResponse(response) as any;
}
}
/**
* Gets branding css.
*/
async getBrandingCss2(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<string> {
const response = await this.getBrandingCss2Raw(initOverrides);
return await response.value();
}
/**
* Gets branding configuration.
*/
async getBrandingOptionsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BrandingOptions>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/Branding/Configuration`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BrandingOptionsFromJSON(jsonValue));
}
/**
* Gets branding configuration.
*/
async getBrandingOptions(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BrandingOptions> {
const response = await this.getBrandingOptionsRaw(initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,314 @@
/* 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 {
BaseItemDtoQueryResult,
ChannelFeatures,
ItemFields,
ItemFilter,
SortOrder,
} from '../models';
import {
BaseItemDtoQueryResultFromJSON,
BaseItemDtoQueryResultToJSON,
ChannelFeaturesFromJSON,
ChannelFeaturesToJSON,
ItemFieldsFromJSON,
ItemFieldsToJSON,
ItemFilterFromJSON,
ItemFilterToJSON,
SortOrderFromJSON,
SortOrderToJSON,
} from '../models';
export interface GetChannelFeaturesRequest {
channelId: string;
}
export interface GetChannelItemsRequest {
channelId: string;
folderId?: string;
userId?: string;
startIndex?: number;
limit?: number;
sortOrder?: Array<SortOrder>;
filters?: Array<ItemFilter>;
sortBy?: Array<string>;
fields?: Array<ItemFields>;
}
export interface GetChannelsRequest {
userId?: string;
startIndex?: number;
limit?: number;
supportsLatestItems?: boolean;
supportsMediaDeletion?: boolean;
isFavorite?: boolean;
}
export interface GetLatestChannelItemsRequest {
userId?: string;
startIndex?: number;
limit?: number;
filters?: Array<ItemFilter>;
fields?: Array<ItemFields>;
channelIds?: Array<string>;
}
/**
*
*/
export class ChannelsApi extends runtime.BaseAPI {
/**
* Get all channel features.
*/
async getAllChannelFeaturesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<ChannelFeatures>>> {
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: `/Channels/Features`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ChannelFeaturesFromJSON));
}
/**
* Get all channel features.
*/
async getAllChannelFeatures(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<ChannelFeatures>> {
const response = await this.getAllChannelFeaturesRaw(initOverrides);
return await response.value();
}
/**
* Get channel features.
*/
async getChannelFeaturesRaw(requestParameters: GetChannelFeaturesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ChannelFeatures>> {
if (requestParameters.channelId === null || requestParameters.channelId === undefined) {
throw new runtime.RequiredError('channelId','Required parameter requestParameters.channelId was null or undefined when calling getChannelFeatures.');
}
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: `/Channels/{channelId}/Features`.replace(`{${"channelId"}}`, encodeURIComponent(String(requestParameters.channelId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => ChannelFeaturesFromJSON(jsonValue));
}
/**
* Get channel features.
*/
async getChannelFeatures(requestParameters: GetChannelFeaturesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ChannelFeatures> {
const response = await this.getChannelFeaturesRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get channel items.
*/
async getChannelItemsRaw(requestParameters: GetChannelItemsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
if (requestParameters.channelId === null || requestParameters.channelId === undefined) {
throw new runtime.RequiredError('channelId','Required parameter requestParameters.channelId was null or undefined when calling getChannelItems.');
}
const queryParameters: any = {};
if (requestParameters.folderId !== undefined) {
queryParameters['folderId'] = requestParameters.folderId;
}
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.startIndex !== undefined) {
queryParameters['startIndex'] = requestParameters.startIndex;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.sortOrder) {
queryParameters['sortOrder'] = requestParameters.sortOrder;
}
if (requestParameters.filters) {
queryParameters['filters'] = requestParameters.filters;
}
if (requestParameters.sortBy) {
queryParameters['sortBy'] = requestParameters.sortBy;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Channels/{channelId}/Items`.replace(`{${"channelId"}}`, encodeURIComponent(String(requestParameters.channelId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Get channel items.
*/
async getChannelItems(requestParameters: GetChannelItemsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getChannelItemsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets available channels.
*/
async getChannelsRaw(requestParameters: GetChannelsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.startIndex !== undefined) {
queryParameters['startIndex'] = requestParameters.startIndex;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.supportsLatestItems !== undefined) {
queryParameters['supportsLatestItems'] = requestParameters.supportsLatestItems;
}
if (requestParameters.supportsMediaDeletion !== undefined) {
queryParameters['supportsMediaDeletion'] = requestParameters.supportsMediaDeletion;
}
if (requestParameters.isFavorite !== undefined) {
queryParameters['isFavorite'] = requestParameters.isFavorite;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Channels`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Gets available channels.
*/
async getChannels(requestParameters: GetChannelsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getChannelsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets latest channel items.
*/
async getLatestChannelItemsRaw(requestParameters: GetLatestChannelItemsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.startIndex !== undefined) {
queryParameters['startIndex'] = requestParameters.startIndex;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.filters) {
queryParameters['filters'] = requestParameters.filters;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.channelIds) {
queryParameters['channelIds'] = requestParameters.channelIds;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Channels/Items/Latest`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Gets latest channel items.
*/
async getLatestChannelItems(requestParameters: GetLatestChannelItemsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getLatestChannelItemsRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,70 @@
/* 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 {
ClientLogDocumentResponseDto,
ProblemDetails,
} from '../models';
import {
ClientLogDocumentResponseDtoFromJSON,
ClientLogDocumentResponseDtoToJSON,
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
} from '../models';
export interface LogFileRequest {
body?: Blob;
}
/**
*
*/
export class ClientLogApi extends runtime.BaseAPI {
/**
* Upload a document.
*/
async logFileRaw(requestParameters: LogFileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ClientLogDocumentResponseDto>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'text/plain';
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/ClientLog/Document`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: requestParameters.body as any,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => ClientLogDocumentResponseDtoFromJSON(jsonValue));
}
/**
* Upload a document.
*/
async logFile(requestParameters: LogFileRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ClientLogDocumentResponseDto> {
const response = await this.logFileRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,175 @@
/* 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 {
CollectionCreationResult,
} from '../models';
import {
CollectionCreationResultFromJSON,
CollectionCreationResultToJSON,
} from '../models';
export interface AddToCollectionRequest {
collectionId: string;
ids: Array<string>;
}
export interface CreateCollectionRequest {
name?: string;
ids?: Array<string>;
parentId?: string;
isLocked?: boolean;
}
export interface RemoveFromCollectionRequest {
collectionId: string;
ids: Array<string>;
}
/**
*
*/
export class CollectionApi extends runtime.BaseAPI {
/**
* Adds items to a collection.
*/
async addToCollectionRaw(requestParameters: AddToCollectionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.collectionId === null || requestParameters.collectionId === undefined) {
throw new runtime.RequiredError('collectionId','Required parameter requestParameters.collectionId was null or undefined when calling addToCollection.');
}
if (requestParameters.ids === null || requestParameters.ids === undefined) {
throw new runtime.RequiredError('ids','Required parameter requestParameters.ids was null or undefined when calling addToCollection.');
}
const queryParameters: any = {};
if (requestParameters.ids) {
queryParameters['ids'] = requestParameters.ids;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Collections/{collectionId}/Items`.replace(`{${"collectionId"}}`, encodeURIComponent(String(requestParameters.collectionId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Adds items to a collection.
*/
async addToCollection(requestParameters: AddToCollectionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.addToCollectionRaw(requestParameters, initOverrides);
}
/**
* Creates a new collection.
*/
async createCollectionRaw(requestParameters: CreateCollectionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<CollectionCreationResult>> {
const queryParameters: any = {};
if (requestParameters.name !== undefined) {
queryParameters['name'] = requestParameters.name;
}
if (requestParameters.ids) {
queryParameters['ids'] = requestParameters.ids;
}
if (requestParameters.parentId !== undefined) {
queryParameters['parentId'] = requestParameters.parentId;
}
if (requestParameters.isLocked !== undefined) {
queryParameters['isLocked'] = requestParameters.isLocked;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Collections`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => CollectionCreationResultFromJSON(jsonValue));
}
/**
* Creates a new collection.
*/
async createCollection(requestParameters: CreateCollectionRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<CollectionCreationResult> {
const response = await this.createCollectionRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Removes items from a collection.
*/
async removeFromCollectionRaw(requestParameters: RemoveFromCollectionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.collectionId === null || requestParameters.collectionId === undefined) {
throw new runtime.RequiredError('collectionId','Required parameter requestParameters.collectionId was null or undefined when calling removeFromCollection.');
}
if (requestParameters.ids === null || requestParameters.ids === undefined) {
throw new runtime.RequiredError('ids','Required parameter requestParameters.ids was null or undefined when calling removeFromCollection.');
}
const queryParameters: any = {};
if (requestParameters.ids) {
queryParameters['ids'] = requestParameters.ids;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Collections/{collectionId}/Items`.replace(`{${"collectionId"}}`, encodeURIComponent(String(requestParameters.collectionId))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Removes items from a collection.
*/
async removeFromCollection(requestParameters: RemoveFromCollectionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.removeFromCollectionRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,262 @@
/* 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 {
MetadataOptions,
ServerConfiguration,
UpdateConfigurationRequest,
UpdateMediaEncoderPathRequest,
} from '../models';
import {
MetadataOptionsFromJSON,
MetadataOptionsToJSON,
ServerConfigurationFromJSON,
ServerConfigurationToJSON,
UpdateConfigurationRequestFromJSON,
UpdateConfigurationRequestToJSON,
UpdateMediaEncoderPathRequestFromJSON,
UpdateMediaEncoderPathRequestToJSON,
} from '../models';
export interface GetNamedConfigurationRequest {
key: string;
}
export interface UpdateConfigurationOperationRequest {
updateConfigurationRequest: UpdateConfigurationRequest;
}
export interface UpdateMediaEncoderPathOperationRequest {
updateMediaEncoderPathRequest: UpdateMediaEncoderPathRequest;
}
export interface UpdateNamedConfigurationRequest {
key: string;
body: any | null;
}
/**
*
*/
export class ConfigurationApi extends runtime.BaseAPI {
/**
* Gets application configuration.
*/
async getConfigurationRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ServerConfiguration>> {
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: `/System/Configuration`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => ServerConfigurationFromJSON(jsonValue));
}
/**
* Gets application configuration.
*/
async getConfiguration(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ServerConfiguration> {
const response = await this.getConfigurationRaw(initOverrides);
return await response.value();
}
/**
* Gets a default MetadataOptions object.
*/
async getDefaultMetadataOptionsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<MetadataOptions>> {
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: `/System/Configuration/MetadataOptions/Default`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => MetadataOptionsFromJSON(jsonValue));
}
/**
* Gets a default MetadataOptions object.
*/
async getDefaultMetadataOptions(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<MetadataOptions> {
const response = await this.getDefaultMetadataOptionsRaw(initOverrides);
return await response.value();
}
/**
* Gets a named configuration.
*/
async getNamedConfigurationRaw(requestParameters: GetNamedConfigurationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.key === null || requestParameters.key === undefined) {
throw new runtime.RequiredError('key','Required parameter requestParameters.key was null or undefined when calling getNamedConfiguration.');
}
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: `/System/Configuration/{key}`.replace(`{${"key"}}`, encodeURIComponent(String(requestParameters.key))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets a named configuration.
*/
async getNamedConfiguration(requestParameters: GetNamedConfigurationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getNamedConfigurationRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Updates application configuration.
*/
async updateConfigurationRaw(requestParameters: UpdateConfigurationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.updateConfigurationRequest === null || requestParameters.updateConfigurationRequest === undefined) {
throw new runtime.RequiredError('updateConfigurationRequest','Required parameter requestParameters.updateConfigurationRequest was null or undefined when calling updateConfiguration.');
}
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: `/System/Configuration`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: UpdateConfigurationRequestToJSON(requestParameters.updateConfigurationRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Updates application configuration.
*/
async updateConfiguration(requestParameters: UpdateConfigurationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.updateConfigurationRaw(requestParameters, initOverrides);
}
/**
* Updates the path to the media encoder.
*/
async updateMediaEncoderPathRaw(requestParameters: UpdateMediaEncoderPathOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.updateMediaEncoderPathRequest === null || requestParameters.updateMediaEncoderPathRequest === undefined) {
throw new runtime.RequiredError('updateMediaEncoderPathRequest','Required parameter requestParameters.updateMediaEncoderPathRequest was null or undefined when calling updateMediaEncoderPath.');
}
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: `/System/MediaEncoder/Path`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: UpdateMediaEncoderPathRequestToJSON(requestParameters.updateMediaEncoderPathRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Updates the path to the media encoder.
*/
async updateMediaEncoderPath(requestParameters: UpdateMediaEncoderPathOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.updateMediaEncoderPathRaw(requestParameters, initOverrides);
}
/**
* Updates named configuration.
*/
async updateNamedConfigurationRaw(requestParameters: UpdateNamedConfigurationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.key === null || requestParameters.key === undefined) {
throw new runtime.RequiredError('key','Required parameter requestParameters.key was null or undefined when calling updateNamedConfiguration.');
}
if (requestParameters.body === null || requestParameters.body === undefined) {
throw new runtime.RequiredError('body','Required parameter requestParameters.body was null or undefined when calling updateNamedConfiguration.');
}
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: `/System/Configuration/{key}`.replace(`{${"key"}}`, encodeURIComponent(String(requestParameters.key))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: requestParameters.body as any,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Updates named configuration.
*/
async updateNamedConfiguration(requestParameters: UpdateNamedConfigurationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.updateNamedConfigurationRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,105 @@
/* 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 {
ConfigurationPageInfo,
ProblemDetails,
} from '../models';
import {
ConfigurationPageInfoFromJSON,
ConfigurationPageInfoToJSON,
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
} from '../models';
export interface GetConfigurationPagesRequest {
enableInMainMenu?: boolean;
}
export interface GetDashboardConfigurationPageRequest {
name?: string;
}
/**
*
*/
export class DashboardApi extends runtime.BaseAPI {
/**
* Gets the configuration pages.
*/
async getConfigurationPagesRaw(requestParameters: GetConfigurationPagesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<ConfigurationPageInfo>>> {
const queryParameters: any = {};
if (requestParameters.enableInMainMenu !== undefined) {
queryParameters['enableInMainMenu'] = requestParameters.enableInMainMenu;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/web/ConfigurationPages`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ConfigurationPageInfoFromJSON));
}
/**
* Gets the configuration pages.
*/
async getConfigurationPages(requestParameters: GetConfigurationPagesRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<ConfigurationPageInfo>> {
const response = await this.getConfigurationPagesRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets a dashboard configuration page.
*/
async getDashboardConfigurationPageRaw(requestParameters: GetDashboardConfigurationPageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
const queryParameters: any = {};
if (requestParameters.name !== undefined) {
queryParameters['name'] = requestParameters.name;
}
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/web/ConfigurationPage`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets a dashboard configuration page.
*/
async getDashboardConfigurationPage(requestParameters: GetDashboardConfigurationPageRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getDashboardConfigurationPageRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,259 @@
/* 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 {
DeviceInfo,
DeviceInfoQueryResult,
DeviceOptions,
ProblemDetails,
UpdateDeviceOptionsRequest,
} from '../models';
import {
DeviceInfoFromJSON,
DeviceInfoToJSON,
DeviceInfoQueryResultFromJSON,
DeviceInfoQueryResultToJSON,
DeviceOptionsFromJSON,
DeviceOptionsToJSON,
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
UpdateDeviceOptionsRequestFromJSON,
UpdateDeviceOptionsRequestToJSON,
} from '../models';
export interface DeleteDeviceRequest {
id: string;
}
export interface GetDeviceInfoRequest {
id: string;
}
export interface GetDeviceOptionsRequest {
id: string;
}
export interface GetDevicesRequest {
supportsSync?: boolean;
userId?: string;
}
export interface UpdateDeviceOptionsOperationRequest {
id: string;
updateDeviceOptionsRequest: UpdateDeviceOptionsRequest;
}
/**
*
*/
export class DevicesApi extends runtime.BaseAPI {
/**
* Deletes a device.
*/
async deleteDeviceRaw(requestParameters: DeleteDeviceRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling deleteDevice.');
}
const queryParameters: any = {};
if (requestParameters.id !== undefined) {
queryParameters['id'] = requestParameters.id;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Devices`,
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Deletes a device.
*/
async deleteDevice(requestParameters: DeleteDeviceRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.deleteDeviceRaw(requestParameters, initOverrides);
}
/**
* Get info for a device.
*/
async getDeviceInfoRaw(requestParameters: GetDeviceInfoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<DeviceInfo>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getDeviceInfo.');
}
const queryParameters: any = {};
if (requestParameters.id !== undefined) {
queryParameters['id'] = requestParameters.id;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Devices/Info`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => DeviceInfoFromJSON(jsonValue));
}
/**
* Get info for a device.
*/
async getDeviceInfo(requestParameters: GetDeviceInfoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DeviceInfo> {
const response = await this.getDeviceInfoRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get options for a device.
*/
async getDeviceOptionsRaw(requestParameters: GetDeviceOptionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<DeviceOptions>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getDeviceOptions.');
}
const queryParameters: any = {};
if (requestParameters.id !== undefined) {
queryParameters['id'] = requestParameters.id;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Devices/Options`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => DeviceOptionsFromJSON(jsonValue));
}
/**
* Get options for a device.
*/
async getDeviceOptions(requestParameters: GetDeviceOptionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DeviceOptions> {
const response = await this.getDeviceOptionsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get Devices.
*/
async getDevicesRaw(requestParameters: GetDevicesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<DeviceInfoQueryResult>> {
const queryParameters: any = {};
if (requestParameters.supportsSync !== undefined) {
queryParameters['supportsSync'] = requestParameters.supportsSync;
}
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Devices`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => DeviceInfoQueryResultFromJSON(jsonValue));
}
/**
* Get Devices.
*/
async getDevices(requestParameters: GetDevicesRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DeviceInfoQueryResult> {
const response = await this.getDevicesRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Update device options.
*/
async updateDeviceOptionsRaw(requestParameters: UpdateDeviceOptionsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling updateDeviceOptions.');
}
if (requestParameters.updateDeviceOptionsRequest === null || requestParameters.updateDeviceOptionsRequest === undefined) {
throw new runtime.RequiredError('updateDeviceOptionsRequest','Required parameter requestParameters.updateDeviceOptionsRequest was null or undefined when calling updateDeviceOptions.');
}
const queryParameters: any = {};
if (requestParameters.id !== undefined) {
queryParameters['id'] = requestParameters.id;
}
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: `/Devices/Options`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: UpdateDeviceOptionsRequestToJSON(requestParameters.updateDeviceOptionsRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Update device options.
*/
async updateDeviceOptions(requestParameters: UpdateDeviceOptionsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.updateDeviceOptionsRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,152 @@
/* 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 {
DisplayPreferencesDto,
UpdateDisplayPreferencesRequest,
} from '../models';
import {
DisplayPreferencesDtoFromJSON,
DisplayPreferencesDtoToJSON,
UpdateDisplayPreferencesRequestFromJSON,
UpdateDisplayPreferencesRequestToJSON,
} from '../models';
export interface GetDisplayPreferencesRequest {
displayPreferencesId: string;
userId: string;
client: string;
}
export interface UpdateDisplayPreferencesOperationRequest {
displayPreferencesId: string;
userId: string;
client: string;
updateDisplayPreferencesRequest: UpdateDisplayPreferencesRequest;
}
/**
*
*/
export class DisplayPreferencesApi extends runtime.BaseAPI {
/**
* Get Display Preferences.
*/
async getDisplayPreferencesRaw(requestParameters: GetDisplayPreferencesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<DisplayPreferencesDto>> {
if (requestParameters.displayPreferencesId === null || requestParameters.displayPreferencesId === undefined) {
throw new runtime.RequiredError('displayPreferencesId','Required parameter requestParameters.displayPreferencesId was null or undefined when calling getDisplayPreferences.');
}
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getDisplayPreferences.');
}
if (requestParameters.client === null || requestParameters.client === undefined) {
throw new runtime.RequiredError('client','Required parameter requestParameters.client was null or undefined when calling getDisplayPreferences.');
}
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.client !== undefined) {
queryParameters['client'] = requestParameters.client;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/DisplayPreferences/{displayPreferencesId}`.replace(`{${"displayPreferencesId"}}`, encodeURIComponent(String(requestParameters.displayPreferencesId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => DisplayPreferencesDtoFromJSON(jsonValue));
}
/**
* Get Display Preferences.
*/
async getDisplayPreferences(requestParameters: GetDisplayPreferencesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DisplayPreferencesDto> {
const response = await this.getDisplayPreferencesRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Update Display Preferences.
*/
async updateDisplayPreferencesRaw(requestParameters: UpdateDisplayPreferencesOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.displayPreferencesId === null || requestParameters.displayPreferencesId === undefined) {
throw new runtime.RequiredError('displayPreferencesId','Required parameter requestParameters.displayPreferencesId was null or undefined when calling updateDisplayPreferences.');
}
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling updateDisplayPreferences.');
}
if (requestParameters.client === null || requestParameters.client === undefined) {
throw new runtime.RequiredError('client','Required parameter requestParameters.client was null or undefined when calling updateDisplayPreferences.');
}
if (requestParameters.updateDisplayPreferencesRequest === null || requestParameters.updateDisplayPreferencesRequest === undefined) {
throw new runtime.RequiredError('updateDisplayPreferencesRequest','Required parameter requestParameters.updateDisplayPreferencesRequest was null or undefined when calling updateDisplayPreferences.');
}
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.client !== undefined) {
queryParameters['client'] = requestParameters.client;
}
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: `/DisplayPreferences/{displayPreferencesId}`.replace(`{${"displayPreferencesId"}}`, encodeURIComponent(String(requestParameters.displayPreferencesId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: UpdateDisplayPreferencesRequestToJSON(requestParameters.updateDisplayPreferencesRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Update Display Preferences.
*/
async updateDisplayPreferences(requestParameters: UpdateDisplayPreferencesOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.updateDisplayPreferencesRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,251 @@
/* 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 {
CreateProfileRequest,
DeviceProfile,
DeviceProfileInfo,
ProblemDetails,
} from '../models';
import {
CreateProfileRequestFromJSON,
CreateProfileRequestToJSON,
DeviceProfileFromJSON,
DeviceProfileToJSON,
DeviceProfileInfoFromJSON,
DeviceProfileInfoToJSON,
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
} from '../models';
export interface CreateProfileOperationRequest {
createProfileRequest?: CreateProfileRequest;
}
export interface DeleteProfileRequest {
profileId: string;
}
export interface GetProfileRequest {
profileId: string;
}
export interface UpdateProfileRequest {
profileId: string;
createProfileRequest?: CreateProfileRequest;
}
/**
*
*/
export class DlnaApi extends runtime.BaseAPI {
/**
* Creates a profile.
*/
async createProfileRaw(requestParameters: CreateProfileOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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: `/Dlna/Profiles`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: CreateProfileRequestToJSON(requestParameters.createProfileRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Creates a profile.
*/
async createProfile(requestParameters: CreateProfileOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.createProfileRaw(requestParameters, initOverrides);
}
/**
* Deletes a profile.
*/
async deleteProfileRaw(requestParameters: DeleteProfileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.profileId === null || requestParameters.profileId === undefined) {
throw new runtime.RequiredError('profileId','Required parameter requestParameters.profileId was null or undefined when calling deleteProfile.');
}
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: `/Dlna/Profiles/{profileId}`.replace(`{${"profileId"}}`, encodeURIComponent(String(requestParameters.profileId))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Deletes a profile.
*/
async deleteProfile(requestParameters: DeleteProfileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.deleteProfileRaw(requestParameters, initOverrides);
}
/**
* Gets the default profile.
*/
async getDefaultProfileRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<DeviceProfile>> {
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: `/Dlna/Profiles/Default`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => DeviceProfileFromJSON(jsonValue));
}
/**
* Gets the default profile.
*/
async getDefaultProfile(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DeviceProfile> {
const response = await this.getDefaultProfileRaw(initOverrides);
return await response.value();
}
/**
* Gets a single profile.
*/
async getProfileRaw(requestParameters: GetProfileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<DeviceProfile>> {
if (requestParameters.profileId === null || requestParameters.profileId === undefined) {
throw new runtime.RequiredError('profileId','Required parameter requestParameters.profileId was null or undefined when calling getProfile.');
}
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: `/Dlna/Profiles/{profileId}`.replace(`{${"profileId"}}`, encodeURIComponent(String(requestParameters.profileId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => DeviceProfileFromJSON(jsonValue));
}
/**
* Gets a single profile.
*/
async getProfile(requestParameters: GetProfileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DeviceProfile> {
const response = await this.getProfileRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get profile infos.
*/
async getProfileInfosRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<DeviceProfileInfo>>> {
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: `/Dlna/ProfileInfos`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(DeviceProfileInfoFromJSON));
}
/**
* Get profile infos.
*/
async getProfileInfos(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<DeviceProfileInfo>> {
const response = await this.getProfileInfosRaw(initOverrides);
return await response.value();
}
/**
* Updates a profile.
*/
async updateProfileRaw(requestParameters: UpdateProfileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.profileId === null || requestParameters.profileId === undefined) {
throw new runtime.RequiredError('profileId','Required parameter requestParameters.profileId was null or undefined when calling updateProfile.');
}
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: `/Dlna/Profiles/{profileId}`.replace(`{${"profileId"}}`, encodeURIComponent(String(requestParameters.profileId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: CreateProfileRequestToJSON(requestParameters.createProfileRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Updates a profile.
*/
async updateProfile(requestParameters: UpdateProfileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.updateProfileRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,643 @@
/* 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,
} from '../models';
import {
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
} from '../models';
export interface GetConnectionManagerRequest {
serverId: string;
}
export interface GetConnectionManager2Request {
serverId: string;
}
export interface GetConnectionManager3Request {
serverId: string;
}
export interface GetContentDirectoryRequest {
serverId: string;
}
export interface GetContentDirectory2Request {
serverId: string;
}
export interface GetContentDirectory3Request {
serverId: string;
}
export interface GetDescriptionXmlRequest {
serverId: string;
}
export interface GetDescriptionXml2Request {
serverId: string;
}
export interface GetIconRequest {
fileName: string;
}
export interface GetIconIdRequest {
serverId: string;
fileName: string;
}
export interface GetMediaReceiverRegistrarRequest {
serverId: string;
}
export interface GetMediaReceiverRegistrar2Request {
serverId: string;
}
export interface GetMediaReceiverRegistrar3Request {
serverId: string;
}
export interface ProcessConnectionManagerControlRequestRequest {
serverId: string;
}
export interface ProcessContentDirectoryControlRequestRequest {
serverId: string;
}
export interface ProcessMediaReceiverRegistrarControlRequestRequest {
serverId: string;
}
/**
*
*/
export class DlnaServerApi extends runtime.BaseAPI {
/**
* Gets Dlna media receiver registrar xml.
*/
async getConnectionManagerRaw(requestParameters: GetConnectionManagerRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getConnectionManager.');
}
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: `/Dlna/{serverId}/ConnectionManager`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets Dlna media receiver registrar xml.
*/
async getConnectionManager(requestParameters: GetConnectionManagerRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getConnectionManagerRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets Dlna media receiver registrar xml.
*/
async getConnectionManager2Raw(requestParameters: GetConnectionManager2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getConnectionManager2.');
}
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: `/Dlna/{serverId}/ConnectionManager/ConnectionManager`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets Dlna media receiver registrar xml.
*/
async getConnectionManager2(requestParameters: GetConnectionManager2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getConnectionManager2Raw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets Dlna media receiver registrar xml.
*/
async getConnectionManager3Raw(requestParameters: GetConnectionManager3Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getConnectionManager3.');
}
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: `/Dlna/{serverId}/ConnectionManager/ConnectionManager.xml`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets Dlna media receiver registrar xml.
*/
async getConnectionManager3(requestParameters: GetConnectionManager3Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getConnectionManager3Raw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets Dlna content directory xml.
*/
async getContentDirectoryRaw(requestParameters: GetContentDirectoryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getContentDirectory.');
}
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: `/Dlna/{serverId}/ContentDirectory`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets Dlna content directory xml.
*/
async getContentDirectory(requestParameters: GetContentDirectoryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getContentDirectoryRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets Dlna content directory xml.
*/
async getContentDirectory2Raw(requestParameters: GetContentDirectory2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getContentDirectory2.');
}
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: `/Dlna/{serverId}/ContentDirectory/ContentDirectory`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets Dlna content directory xml.
*/
async getContentDirectory2(requestParameters: GetContentDirectory2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getContentDirectory2Raw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets Dlna content directory xml.
*/
async getContentDirectory3Raw(requestParameters: GetContentDirectory3Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getContentDirectory3.');
}
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: `/Dlna/{serverId}/ContentDirectory/ContentDirectory.xml`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets Dlna content directory xml.
*/
async getContentDirectory3(requestParameters: GetContentDirectory3Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getContentDirectory3Raw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get Description Xml.
*/
async getDescriptionXmlRaw(requestParameters: GetDescriptionXmlRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getDescriptionXml.');
}
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: `/Dlna/{serverId}/description`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Get Description Xml.
*/
async getDescriptionXml(requestParameters: GetDescriptionXmlRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getDescriptionXmlRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get Description Xml.
*/
async getDescriptionXml2Raw(requestParameters: GetDescriptionXml2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getDescriptionXml2.');
}
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: `/Dlna/{serverId}/description.xml`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Get Description Xml.
*/
async getDescriptionXml2(requestParameters: GetDescriptionXml2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getDescriptionXml2Raw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets a server icon.
*/
async getIconRaw(requestParameters: GetIconRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.fileName === null || requestParameters.fileName === undefined) {
throw new runtime.RequiredError('fileName','Required parameter requestParameters.fileName was null or undefined when calling getIcon.');
}
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: `/Dlna/icons/{fileName}`.replace(`{${"fileName"}}`, encodeURIComponent(String(requestParameters.fileName))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets a server icon.
*/
async getIcon(requestParameters: GetIconRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getIconRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets a server icon.
*/
async getIconIdRaw(requestParameters: GetIconIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getIconId.');
}
if (requestParameters.fileName === null || requestParameters.fileName === undefined) {
throw new runtime.RequiredError('fileName','Required parameter requestParameters.fileName was null or undefined when calling getIconId.');
}
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: `/Dlna/{serverId}/icons/{fileName}`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))).replace(`{${"fileName"}}`, encodeURIComponent(String(requestParameters.fileName))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets a server icon.
*/
async getIconId(requestParameters: GetIconIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getIconIdRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets Dlna media receiver registrar xml.
*/
async getMediaReceiverRegistrarRaw(requestParameters: GetMediaReceiverRegistrarRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getMediaReceiverRegistrar.');
}
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: `/Dlna/{serverId}/MediaReceiverRegistrar`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets Dlna media receiver registrar xml.
*/
async getMediaReceiverRegistrar(requestParameters: GetMediaReceiverRegistrarRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getMediaReceiverRegistrarRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets Dlna media receiver registrar xml.
*/
async getMediaReceiverRegistrar2Raw(requestParameters: GetMediaReceiverRegistrar2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getMediaReceiverRegistrar2.');
}
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: `/Dlna/{serverId}/MediaReceiverRegistrar/MediaReceiverRegistrar`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets Dlna media receiver registrar xml.
*/
async getMediaReceiverRegistrar2(requestParameters: GetMediaReceiverRegistrar2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getMediaReceiverRegistrar2Raw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets Dlna media receiver registrar xml.
*/
async getMediaReceiverRegistrar3Raw(requestParameters: GetMediaReceiverRegistrar3Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling getMediaReceiverRegistrar3.');
}
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: `/Dlna/{serverId}/MediaReceiverRegistrar/MediaReceiverRegistrar.xml`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets Dlna media receiver registrar xml.
*/
async getMediaReceiverRegistrar3(requestParameters: GetMediaReceiverRegistrar3Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getMediaReceiverRegistrar3Raw(requestParameters, initOverrides);
return await response.value();
}
/**
* Process a connection manager control request.
*/
async processConnectionManagerControlRequestRaw(requestParameters: ProcessConnectionManagerControlRequestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling processConnectionManagerControlRequest.');
}
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: `/Dlna/{serverId}/ConnectionManager/Control`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Process a connection manager control request.
*/
async processConnectionManagerControlRequest(requestParameters: ProcessConnectionManagerControlRequestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.processConnectionManagerControlRequestRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Process a content directory control request.
*/
async processContentDirectoryControlRequestRaw(requestParameters: ProcessContentDirectoryControlRequestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling processContentDirectoryControlRequest.');
}
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: `/Dlna/{serverId}/ContentDirectory/Control`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Process a content directory control request.
*/
async processContentDirectoryControlRequest(requestParameters: ProcessContentDirectoryControlRequestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.processContentDirectoryControlRequestRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Process a media receiver registrar control request.
*/
async processMediaReceiverRegistrarControlRequestRaw(requestParameters: ProcessMediaReceiverRegistrarControlRequestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.serverId === null || requestParameters.serverId === undefined) {
throw new runtime.RequiredError('serverId','Required parameter requestParameters.serverId was null or undefined when calling processMediaReceiverRegistrarControlRequest.');
}
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: `/Dlna/{serverId}/MediaReceiverRegistrar/Control`.replace(`{${"serverId"}}`, encodeURIComponent(String(requestParameters.serverId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Process a media receiver registrar control request.
*/
async processMediaReceiverRegistrarControlRequest(requestParameters: ProcessMediaReceiverRegistrarControlRequestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.processMediaReceiverRegistrarControlRequestRaw(requestParameters, initOverrides);
return await response.value();
}
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,267 @@
/* 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 {
DefaultDirectoryBrowserInfoDto,
FileSystemEntryInfo,
ProblemDetails,
ValidatePathRequest,
} from '../models';
import {
DefaultDirectoryBrowserInfoDtoFromJSON,
DefaultDirectoryBrowserInfoDtoToJSON,
FileSystemEntryInfoFromJSON,
FileSystemEntryInfoToJSON,
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
ValidatePathRequestFromJSON,
ValidatePathRequestToJSON,
} from '../models';
export interface GetDirectoryContentsRequest {
path: string;
includeFiles?: boolean;
includeDirectories?: boolean;
}
export interface GetParentPathRequest {
path: string;
}
export interface ValidatePathOperationRequest {
validatePathRequest: ValidatePathRequest;
}
/**
*
*/
export class EnvironmentApi extends runtime.BaseAPI {
/**
* Get Default directory browser.
*/
async getDefaultDirectoryBrowserRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<DefaultDirectoryBrowserInfoDto>> {
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: `/Environment/DefaultDirectoryBrowser`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => DefaultDirectoryBrowserInfoDtoFromJSON(jsonValue));
}
/**
* Get Default directory browser.
*/
async getDefaultDirectoryBrowser(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DefaultDirectoryBrowserInfoDto> {
const response = await this.getDefaultDirectoryBrowserRaw(initOverrides);
return await response.value();
}
/**
* Gets the contents of a given directory in the file system.
*/
async getDirectoryContentsRaw(requestParameters: GetDirectoryContentsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<FileSystemEntryInfo>>> {
if (requestParameters.path === null || requestParameters.path === undefined) {
throw new runtime.RequiredError('path','Required parameter requestParameters.path was null or undefined when calling getDirectoryContents.');
}
const queryParameters: any = {};
if (requestParameters.path !== undefined) {
queryParameters['path'] = requestParameters.path;
}
if (requestParameters.includeFiles !== undefined) {
queryParameters['includeFiles'] = requestParameters.includeFiles;
}
if (requestParameters.includeDirectories !== undefined) {
queryParameters['includeDirectories'] = requestParameters.includeDirectories;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Environment/DirectoryContents`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(FileSystemEntryInfoFromJSON));
}
/**
* Gets the contents of a given directory in the file system.
*/
async getDirectoryContents(requestParameters: GetDirectoryContentsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<FileSystemEntryInfo>> {
const response = await this.getDirectoryContentsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets available drives from the server\'s file system.
*/
async getDrivesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<FileSystemEntryInfo>>> {
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: `/Environment/Drives`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(FileSystemEntryInfoFromJSON));
}
/**
* Gets available drives from the server\'s file system.
*/
async getDrives(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<FileSystemEntryInfo>> {
const response = await this.getDrivesRaw(initOverrides);
return await response.value();
}
/**
* Gets network paths.
*/
async getNetworkSharesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<FileSystemEntryInfo>>> {
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: `/Environment/NetworkShares`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(FileSystemEntryInfoFromJSON));
}
/**
* Gets network paths.
*/
async getNetworkShares(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<FileSystemEntryInfo>> {
const response = await this.getNetworkSharesRaw(initOverrides);
return await response.value();
}
/**
* Gets the parent path of a given path.
*/
async getParentPathRaw(requestParameters: GetParentPathRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<string>> {
if (requestParameters.path === null || requestParameters.path === undefined) {
throw new runtime.RequiredError('path','Required parameter requestParameters.path was null or undefined when calling getParentPath.');
}
const queryParameters: any = {};
if (requestParameters.path !== undefined) {
queryParameters['path'] = requestParameters.path;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Environment/ParentPath`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
if (this.isJsonMime(response.headers.get('content-type'))) {
return new runtime.JSONApiResponse<string>(response);
} else {
return new runtime.TextApiResponse(response) as any;
}
}
/**
* Gets the parent path of a given path.
*/
async getParentPath(requestParameters: GetParentPathRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<string> {
const response = await this.getParentPathRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Validates path.
*/
async validatePathRaw(requestParameters: ValidatePathOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.validatePathRequest === null || requestParameters.validatePathRequest === undefined) {
throw new runtime.RequiredError('validatePathRequest','Required parameter requestParameters.validatePathRequest was null or undefined when calling validatePath.');
}
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: `/Environment/ValidatePath`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: ValidatePathRequestToJSON(requestParameters.validatePathRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Validates path.
*/
async validatePath(requestParameters: ValidatePathOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.validatePathRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,172 @@
/* 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 {
BaseItemKind,
QueryFilters,
QueryFiltersLegacy,
} from '../models';
import {
BaseItemKindFromJSON,
BaseItemKindToJSON,
QueryFiltersFromJSON,
QueryFiltersToJSON,
QueryFiltersLegacyFromJSON,
QueryFiltersLegacyToJSON,
} from '../models';
export interface GetQueryFiltersRequest {
userId?: string;
parentId?: string;
includeItemTypes?: Array<BaseItemKind>;
isAiring?: boolean;
isMovie?: boolean;
isSports?: boolean;
isKids?: boolean;
isNews?: boolean;
isSeries?: boolean;
recursive?: boolean;
}
export interface GetQueryFiltersLegacyRequest {
userId?: string;
parentId?: string;
includeItemTypes?: Array<BaseItemKind>;
mediaTypes?: Array<string>;
}
/**
*
*/
export class FilterApi extends runtime.BaseAPI {
/**
* Gets query filters.
*/
async getQueryFiltersRaw(requestParameters: GetQueryFiltersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<QueryFilters>> {
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.parentId !== undefined) {
queryParameters['parentId'] = requestParameters.parentId;
}
if (requestParameters.includeItemTypes) {
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
}
if (requestParameters.isAiring !== undefined) {
queryParameters['isAiring'] = requestParameters.isAiring;
}
if (requestParameters.isMovie !== undefined) {
queryParameters['isMovie'] = requestParameters.isMovie;
}
if (requestParameters.isSports !== undefined) {
queryParameters['isSports'] = requestParameters.isSports;
}
if (requestParameters.isKids !== undefined) {
queryParameters['isKids'] = requestParameters.isKids;
}
if (requestParameters.isNews !== undefined) {
queryParameters['isNews'] = requestParameters.isNews;
}
if (requestParameters.isSeries !== undefined) {
queryParameters['isSeries'] = requestParameters.isSeries;
}
if (requestParameters.recursive !== undefined) {
queryParameters['recursive'] = requestParameters.recursive;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Items/Filters2`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => QueryFiltersFromJSON(jsonValue));
}
/**
* Gets query filters.
*/
async getQueryFilters(requestParameters: GetQueryFiltersRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<QueryFilters> {
const response = await this.getQueryFiltersRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets legacy query filters.
*/
async getQueryFiltersLegacyRaw(requestParameters: GetQueryFiltersLegacyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<QueryFiltersLegacy>> {
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.parentId !== undefined) {
queryParameters['parentId'] = requestParameters.parentId;
}
if (requestParameters.includeItemTypes) {
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
}
if (requestParameters.mediaTypes) {
queryParameters['mediaTypes'] = requestParameters.mediaTypes;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Items/Filters`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => QueryFiltersLegacyFromJSON(jsonValue));
}
/**
* Gets legacy query filters.
*/
async getQueryFiltersLegacy(requestParameters: GetQueryFiltersLegacyRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<QueryFiltersLegacy> {
const response = await this.getQueryFiltersLegacyRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,211 @@
/* 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 {
BaseItemDto,
BaseItemDtoQueryResult,
BaseItemKind,
ImageType,
ItemFields,
SortOrder,
} from '../models';
import {
BaseItemDtoFromJSON,
BaseItemDtoToJSON,
BaseItemDtoQueryResultFromJSON,
BaseItemDtoQueryResultToJSON,
BaseItemKindFromJSON,
BaseItemKindToJSON,
ImageTypeFromJSON,
ImageTypeToJSON,
ItemFieldsFromJSON,
ItemFieldsToJSON,
SortOrderFromJSON,
SortOrderToJSON,
} from '../models';
export interface GetGenreRequest {
genreName: string;
userId?: string;
}
export interface GetGenresRequest {
startIndex?: number;
limit?: number;
searchTerm?: string;
parentId?: string;
fields?: Array<ItemFields>;
excludeItemTypes?: Array<BaseItemKind>;
includeItemTypes?: Array<BaseItemKind>;
isFavorite?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
userId?: string;
nameStartsWithOrGreater?: string;
nameStartsWith?: string;
nameLessThan?: string;
sortBy?: Array<string>;
sortOrder?: Array<SortOrder>;
enableImages?: boolean;
enableTotalRecordCount?: boolean;
}
/**
*
*/
export class GenresApi extends runtime.BaseAPI {
/**
* Gets a genre, by name.
*/
async getGenreRaw(requestParameters: GetGenreRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDto>> {
if (requestParameters.genreName === null || requestParameters.genreName === undefined) {
throw new runtime.RequiredError('genreName','Required parameter requestParameters.genreName was null or undefined when calling getGenre.');
}
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Genres/{genreName}`.replace(`{${"genreName"}}`, encodeURIComponent(String(requestParameters.genreName))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoFromJSON(jsonValue));
}
/**
* Gets a genre, by name.
*/
async getGenre(requestParameters: GetGenreRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDto> {
const response = await this.getGenreRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets all genres from a given item, folder, or the entire library.
*/
async getGenresRaw(requestParameters: GetGenresRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
const queryParameters: any = {};
if (requestParameters.startIndex !== undefined) {
queryParameters['startIndex'] = requestParameters.startIndex;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.searchTerm !== undefined) {
queryParameters['searchTerm'] = requestParameters.searchTerm;
}
if (requestParameters.parentId !== undefined) {
queryParameters['parentId'] = requestParameters.parentId;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.excludeItemTypes) {
queryParameters['excludeItemTypes'] = requestParameters.excludeItemTypes;
}
if (requestParameters.includeItemTypes) {
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
}
if (requestParameters.isFavorite !== undefined) {
queryParameters['isFavorite'] = requestParameters.isFavorite;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.nameStartsWithOrGreater !== undefined) {
queryParameters['nameStartsWithOrGreater'] = requestParameters.nameStartsWithOrGreater;
}
if (requestParameters.nameStartsWith !== undefined) {
queryParameters['nameStartsWith'] = requestParameters.nameStartsWith;
}
if (requestParameters.nameLessThan !== undefined) {
queryParameters['nameLessThan'] = requestParameters.nameLessThan;
}
if (requestParameters.sortBy) {
queryParameters['sortBy'] = requestParameters.sortBy;
}
if (requestParameters.sortOrder) {
queryParameters['sortOrder'] = requestParameters.sortOrder;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
if (requestParameters.enableTotalRecordCount !== undefined) {
queryParameters['enableTotalRecordCount'] = requestParameters.enableTotalRecordCount;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Genres`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Gets all genres from a given item, folder, or the entire library.
*/
async getGenres(requestParameters: GetGenresRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getGenresRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,250 @@
/* 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,
} from '../models';
import {
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
} from '../models';
export interface GetHlsAudioSegmentLegacyAacRequest {
itemId: string;
segmentId: string;
}
export interface GetHlsAudioSegmentLegacyMp3Request {
itemId: string;
segmentId: string;
}
export interface GetHlsPlaylistLegacyRequest {
itemId: string;
playlistId: string;
}
export interface GetHlsVideoSegmentLegacyRequest {
itemId: string;
playlistId: string;
segmentId: string;
segmentContainer: string;
}
export interface StopEncodingProcessRequest {
deviceId: string;
playSessionId: string;
}
/**
*
*/
export class HlsSegmentApi extends runtime.BaseAPI {
/**
* Gets the specified audio segment for an audio item.
*/
async getHlsAudioSegmentLegacyAacRaw(requestParameters: GetHlsAudioSegmentLegacyAacRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getHlsAudioSegmentLegacyAac.');
}
if (requestParameters.segmentId === null || requestParameters.segmentId === undefined) {
throw new runtime.RequiredError('segmentId','Required parameter requestParameters.segmentId was null or undefined when calling getHlsAudioSegmentLegacyAac.');
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/Audio/{itemId}/hls/{segmentId}/stream.aac`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))).replace(`{${"segmentId"}}`, encodeURIComponent(String(requestParameters.segmentId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets the specified audio segment for an audio item.
*/
async getHlsAudioSegmentLegacyAac(requestParameters: GetHlsAudioSegmentLegacyAacRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getHlsAudioSegmentLegacyAacRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets the specified audio segment for an audio item.
*/
async getHlsAudioSegmentLegacyMp3Raw(requestParameters: GetHlsAudioSegmentLegacyMp3Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getHlsAudioSegmentLegacyMp3.');
}
if (requestParameters.segmentId === null || requestParameters.segmentId === undefined) {
throw new runtime.RequiredError('segmentId','Required parameter requestParameters.segmentId was null or undefined when calling getHlsAudioSegmentLegacyMp3.');
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/Audio/{itemId}/hls/{segmentId}/stream.mp3`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))).replace(`{${"segmentId"}}`, encodeURIComponent(String(requestParameters.segmentId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets the specified audio segment for an audio item.
*/
async getHlsAudioSegmentLegacyMp3(requestParameters: GetHlsAudioSegmentLegacyMp3Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getHlsAudioSegmentLegacyMp3Raw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets a hls video playlist.
*/
async getHlsPlaylistLegacyRaw(requestParameters: GetHlsPlaylistLegacyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getHlsPlaylistLegacy.');
}
if (requestParameters.playlistId === null || requestParameters.playlistId === undefined) {
throw new runtime.RequiredError('playlistId','Required parameter requestParameters.playlistId was null or undefined when calling getHlsPlaylistLegacy.');
}
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: `/Videos/{itemId}/hls/{playlistId}/stream.m3u8`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))).replace(`{${"playlistId"}}`, encodeURIComponent(String(requestParameters.playlistId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets a hls video playlist.
*/
async getHlsPlaylistLegacy(requestParameters: GetHlsPlaylistLegacyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getHlsPlaylistLegacyRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets a hls video segment.
*/
async getHlsVideoSegmentLegacyRaw(requestParameters: GetHlsVideoSegmentLegacyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getHlsVideoSegmentLegacy.');
}
if (requestParameters.playlistId === null || requestParameters.playlistId === undefined) {
throw new runtime.RequiredError('playlistId','Required parameter requestParameters.playlistId was null or undefined when calling getHlsVideoSegmentLegacy.');
}
if (requestParameters.segmentId === null || requestParameters.segmentId === undefined) {
throw new runtime.RequiredError('segmentId','Required parameter requestParameters.segmentId was null or undefined when calling getHlsVideoSegmentLegacy.');
}
if (requestParameters.segmentContainer === null || requestParameters.segmentContainer === undefined) {
throw new runtime.RequiredError('segmentContainer','Required parameter requestParameters.segmentContainer was null or undefined when calling getHlsVideoSegmentLegacy.');
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/Videos/{itemId}/hls/{playlistId}/{segmentId}.{segmentContainer}`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))).replace(`{${"playlistId"}}`, encodeURIComponent(String(requestParameters.playlistId))).replace(`{${"segmentId"}}`, encodeURIComponent(String(requestParameters.segmentId))).replace(`{${"segmentContainer"}}`, encodeURIComponent(String(requestParameters.segmentContainer))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets a hls video segment.
*/
async getHlsVideoSegmentLegacy(requestParameters: GetHlsVideoSegmentLegacyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getHlsVideoSegmentLegacyRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Stops an active encoding.
*/
async stopEncodingProcessRaw(requestParameters: StopEncodingProcessRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.deviceId === null || requestParameters.deviceId === undefined) {
throw new runtime.RequiredError('deviceId','Required parameter requestParameters.deviceId was null or undefined when calling stopEncodingProcess.');
}
if (requestParameters.playSessionId === null || requestParameters.playSessionId === undefined) {
throw new runtime.RequiredError('playSessionId','Required parameter requestParameters.playSessionId was null or undefined when calling stopEncodingProcess.');
}
const queryParameters: any = {};
if (requestParameters.deviceId !== undefined) {
queryParameters['deviceId'] = requestParameters.deviceId;
}
if (requestParameters.playSessionId !== undefined) {
queryParameters['playSessionId'] = requestParameters.playSessionId;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Videos/ActiveEncodings`,
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Stops an active encoding.
*/
async stopEncodingProcess(requestParameters: StopEncodingProcessRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.stopEncodingProcessRaw(requestParameters, initOverrides);
}
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,240 @@
/* 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 {
ImageByNameInfo,
ProblemDetails,
} from '../models';
import {
ImageByNameInfoFromJSON,
ImageByNameInfoToJSON,
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
} from '../models';
export interface GetGeneralImageRequest {
name: string;
type: string;
}
export interface GetMediaInfoImageRequest {
theme: string;
name: string;
}
export interface GetRatingImageRequest {
theme: string;
name: string;
}
/**
*
*/
export class ImageByNameApi extends runtime.BaseAPI {
/**
* Get General Image.
*/
async getGeneralImageRaw(requestParameters: GetGeneralImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.name === null || requestParameters.name === undefined) {
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getGeneralImage.');
}
if (requestParameters.type === null || requestParameters.type === undefined) {
throw new runtime.RequiredError('type','Required parameter requestParameters.type was null or undefined when calling getGeneralImage.');
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/Images/General/{name}/{type}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))).replace(`{${"type"}}`, encodeURIComponent(String(requestParameters.type))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Get General Image.
*/
async getGeneralImage(requestParameters: GetGeneralImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getGeneralImageRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get all general images.
*/
async getGeneralImagesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<ImageByNameInfo>>> {
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: `/Images/General`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ImageByNameInfoFromJSON));
}
/**
* Get all general images.
*/
async getGeneralImages(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<ImageByNameInfo>> {
const response = await this.getGeneralImagesRaw(initOverrides);
return await response.value();
}
/**
* Get media info image.
*/
async getMediaInfoImageRaw(requestParameters: GetMediaInfoImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.theme === null || requestParameters.theme === undefined) {
throw new runtime.RequiredError('theme','Required parameter requestParameters.theme was null or undefined when calling getMediaInfoImage.');
}
if (requestParameters.name === null || requestParameters.name === undefined) {
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getMediaInfoImage.');
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/Images/MediaInfo/{theme}/{name}`.replace(`{${"theme"}}`, encodeURIComponent(String(requestParameters.theme))).replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Get media info image.
*/
async getMediaInfoImage(requestParameters: GetMediaInfoImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getMediaInfoImageRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get all media info images.
*/
async getMediaInfoImagesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<ImageByNameInfo>>> {
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: `/Images/MediaInfo`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ImageByNameInfoFromJSON));
}
/**
* Get all media info images.
*/
async getMediaInfoImages(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<ImageByNameInfo>> {
const response = await this.getMediaInfoImagesRaw(initOverrides);
return await response.value();
}
/**
* Get rating image.
*/
async getRatingImageRaw(requestParameters: GetRatingImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.theme === null || requestParameters.theme === undefined) {
throw new runtime.RequiredError('theme','Required parameter requestParameters.theme was null or undefined when calling getRatingImage.');
}
if (requestParameters.name === null || requestParameters.name === undefined) {
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getRatingImage.');
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/Images/Ratings/{theme}/{name}`.replace(`{${"theme"}}`, encodeURIComponent(String(requestParameters.theme))).replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Get rating image.
*/
async getRatingImage(requestParameters: GetRatingImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getRatingImageRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get all general images.
*/
async getRatingImagesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<ImageByNameInfo>>> {
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: `/Images/Ratings`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ImageByNameInfoFromJSON));
}
/**
* Get all general images.
*/
async getRatingImages(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<ImageByNameInfo>> {
const response = await this.getRatingImagesRaw(initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,628 @@
/* 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 {
BaseItemDtoQueryResult,
ImageType,
ItemFields,
} from '../models';
import {
BaseItemDtoQueryResultFromJSON,
BaseItemDtoQueryResultToJSON,
ImageTypeFromJSON,
ImageTypeToJSON,
ItemFieldsFromJSON,
ItemFieldsToJSON,
} from '../models';
export interface GetInstantMixFromAlbumRequest {
id: string;
userId?: string;
limit?: number;
fields?: Array<ItemFields>;
enableImages?: boolean;
enableUserData?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
}
export interface GetInstantMixFromArtistsRequest {
id: string;
userId?: string;
limit?: number;
fields?: Array<ItemFields>;
enableImages?: boolean;
enableUserData?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
}
export interface GetInstantMixFromArtists2Request {
id: string;
userId?: string;
limit?: number;
fields?: Array<ItemFields>;
enableImages?: boolean;
enableUserData?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
}
export interface GetInstantMixFromItemRequest {
id: string;
userId?: string;
limit?: number;
fields?: Array<ItemFields>;
enableImages?: boolean;
enableUserData?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
}
export interface GetInstantMixFromMusicGenreByIdRequest {
id: string;
userId?: string;
limit?: number;
fields?: Array<ItemFields>;
enableImages?: boolean;
enableUserData?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
}
export interface GetInstantMixFromMusicGenreByNameRequest {
name: string;
userId?: string;
limit?: number;
fields?: Array<ItemFields>;
enableImages?: boolean;
enableUserData?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
}
export interface GetInstantMixFromPlaylistRequest {
id: string;
userId?: string;
limit?: number;
fields?: Array<ItemFields>;
enableImages?: boolean;
enableUserData?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
}
export interface GetInstantMixFromSongRequest {
id: string;
userId?: string;
limit?: number;
fields?: Array<ItemFields>;
enableImages?: boolean;
enableUserData?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
}
/**
*
*/
export class InstantMixApi extends runtime.BaseAPI {
/**
* Creates an instant playlist based on a given album.
*/
async getInstantMixFromAlbumRaw(requestParameters: GetInstantMixFromAlbumRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getInstantMixFromAlbum.');
}
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Albums/{id}/InstantMix`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Creates an instant playlist based on a given album.
*/
async getInstantMixFromAlbum(requestParameters: GetInstantMixFromAlbumRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getInstantMixFromAlbumRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Creates an instant playlist based on a given artist.
*/
async getInstantMixFromArtistsRaw(requestParameters: GetInstantMixFromArtistsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getInstantMixFromArtists.');
}
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Artists/{id}/InstantMix`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Creates an instant playlist based on a given artist.
*/
async getInstantMixFromArtists(requestParameters: GetInstantMixFromArtistsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getInstantMixFromArtistsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Creates an instant playlist based on a given artist.
*/
async getInstantMixFromArtists2Raw(requestParameters: GetInstantMixFromArtists2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getInstantMixFromArtists2.');
}
const queryParameters: any = {};
if (requestParameters.id !== undefined) {
queryParameters['id'] = requestParameters.id;
}
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Artists/InstantMix`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Creates an instant playlist based on a given artist.
*/
async getInstantMixFromArtists2(requestParameters: GetInstantMixFromArtists2Request, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getInstantMixFromArtists2Raw(requestParameters, initOverrides);
return await response.value();
}
/**
* Creates an instant playlist based on a given item.
*/
async getInstantMixFromItemRaw(requestParameters: GetInstantMixFromItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getInstantMixFromItem.');
}
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Items/{id}/InstantMix`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Creates an instant playlist based on a given item.
*/
async getInstantMixFromItem(requestParameters: GetInstantMixFromItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getInstantMixFromItemRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Creates an instant playlist based on a given genre.
*/
async getInstantMixFromMusicGenreByIdRaw(requestParameters: GetInstantMixFromMusicGenreByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getInstantMixFromMusicGenreById.');
}
const queryParameters: any = {};
if (requestParameters.id !== undefined) {
queryParameters['id'] = requestParameters.id;
}
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/MusicGenres/InstantMix`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Creates an instant playlist based on a given genre.
*/
async getInstantMixFromMusicGenreById(requestParameters: GetInstantMixFromMusicGenreByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getInstantMixFromMusicGenreByIdRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Creates an instant playlist based on a given genre.
*/
async getInstantMixFromMusicGenreByNameRaw(requestParameters: GetInstantMixFromMusicGenreByNameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
if (requestParameters.name === null || requestParameters.name === undefined) {
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getInstantMixFromMusicGenreByName.');
}
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/MusicGenres/{name}/InstantMix`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Creates an instant playlist based on a given genre.
*/
async getInstantMixFromMusicGenreByName(requestParameters: GetInstantMixFromMusicGenreByNameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getInstantMixFromMusicGenreByNameRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Creates an instant playlist based on a given playlist.
*/
async getInstantMixFromPlaylistRaw(requestParameters: GetInstantMixFromPlaylistRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getInstantMixFromPlaylist.');
}
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Playlists/{id}/InstantMix`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Creates an instant playlist based on a given playlist.
*/
async getInstantMixFromPlaylist(requestParameters: GetInstantMixFromPlaylistRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getInstantMixFromPlaylistRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Creates an instant playlist based on a given song.
*/
async getInstantMixFromSongRaw(requestParameters: GetInstantMixFromSongRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getInstantMixFromSong.');
}
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Songs/{id}/InstantMix`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Creates an instant playlist based on a given song.
*/
async getInstantMixFromSong(requestParameters: GetInstantMixFromSongRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getInstantMixFromSongRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,523 @@
/* 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 {
ApplySearchCriteriaRequest,
ExternalIdInfo,
GetBookRemoteSearchResultsRequest,
GetBoxSetRemoteSearchResultsRequest,
GetMovieRemoteSearchResultsRequest,
GetMusicAlbumRemoteSearchResultsRequest,
GetMusicArtistRemoteSearchResultsRequest,
GetMusicVideoRemoteSearchResultsRequest,
GetPersonRemoteSearchResultsRequest,
GetSeriesRemoteSearchResultsRequest,
GetTrailerRemoteSearchResultsRequest,
ProblemDetails,
RemoteSearchResult,
} from '../models';
import {
ApplySearchCriteriaRequestFromJSON,
ApplySearchCriteriaRequestToJSON,
ExternalIdInfoFromJSON,
ExternalIdInfoToJSON,
GetBookRemoteSearchResultsRequestFromJSON,
GetBookRemoteSearchResultsRequestToJSON,
GetBoxSetRemoteSearchResultsRequestFromJSON,
GetBoxSetRemoteSearchResultsRequestToJSON,
GetMovieRemoteSearchResultsRequestFromJSON,
GetMovieRemoteSearchResultsRequestToJSON,
GetMusicAlbumRemoteSearchResultsRequestFromJSON,
GetMusicAlbumRemoteSearchResultsRequestToJSON,
GetMusicArtistRemoteSearchResultsRequestFromJSON,
GetMusicArtistRemoteSearchResultsRequestToJSON,
GetMusicVideoRemoteSearchResultsRequestFromJSON,
GetMusicVideoRemoteSearchResultsRequestToJSON,
GetPersonRemoteSearchResultsRequestFromJSON,
GetPersonRemoteSearchResultsRequestToJSON,
GetSeriesRemoteSearchResultsRequestFromJSON,
GetSeriesRemoteSearchResultsRequestToJSON,
GetTrailerRemoteSearchResultsRequestFromJSON,
GetTrailerRemoteSearchResultsRequestToJSON,
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
RemoteSearchResultFromJSON,
RemoteSearchResultToJSON,
} from '../models';
export interface ApplySearchCriteriaOperationRequest {
itemId: string;
applySearchCriteriaRequest: ApplySearchCriteriaRequest;
replaceAllImages?: boolean;
}
export interface GetBookRemoteSearchResultsOperationRequest {
getBookRemoteSearchResultsRequest: GetBookRemoteSearchResultsRequest;
}
export interface GetBoxSetRemoteSearchResultsOperationRequest {
getBoxSetRemoteSearchResultsRequest: GetBoxSetRemoteSearchResultsRequest;
}
export interface GetExternalIdInfosRequest {
itemId: string;
}
export interface GetMovieRemoteSearchResultsOperationRequest {
getMovieRemoteSearchResultsRequest: GetMovieRemoteSearchResultsRequest;
}
export interface GetMusicAlbumRemoteSearchResultsOperationRequest {
getMusicAlbumRemoteSearchResultsRequest: GetMusicAlbumRemoteSearchResultsRequest;
}
export interface GetMusicArtistRemoteSearchResultsOperationRequest {
getMusicArtistRemoteSearchResultsRequest: GetMusicArtistRemoteSearchResultsRequest;
}
export interface GetMusicVideoRemoteSearchResultsOperationRequest {
getMusicVideoRemoteSearchResultsRequest: GetMusicVideoRemoteSearchResultsRequest;
}
export interface GetPersonRemoteSearchResultsOperationRequest {
getPersonRemoteSearchResultsRequest: GetPersonRemoteSearchResultsRequest;
}
export interface GetSeriesRemoteSearchResultsOperationRequest {
getSeriesRemoteSearchResultsRequest: GetSeriesRemoteSearchResultsRequest;
}
export interface GetTrailerRemoteSearchResultsOperationRequest {
getTrailerRemoteSearchResultsRequest: GetTrailerRemoteSearchResultsRequest;
}
/**
*
*/
export class ItemLookupApi extends runtime.BaseAPI {
/**
* Applies search criteria to an item and refreshes metadata.
*/
async applySearchCriteriaRaw(requestParameters: ApplySearchCriteriaOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling applySearchCriteria.');
}
if (requestParameters.applySearchCriteriaRequest === null || requestParameters.applySearchCriteriaRequest === undefined) {
throw new runtime.RequiredError('applySearchCriteriaRequest','Required parameter requestParameters.applySearchCriteriaRequest was null or undefined when calling applySearchCriteria.');
}
const queryParameters: any = {};
if (requestParameters.replaceAllImages !== undefined) {
queryParameters['replaceAllImages'] = requestParameters.replaceAllImages;
}
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: `/Items/RemoteSearch/Apply/{itemId}`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: ApplySearchCriteriaRequestToJSON(requestParameters.applySearchCriteriaRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Applies search criteria to an item and refreshes metadata.
*/
async applySearchCriteria(requestParameters: ApplySearchCriteriaOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.applySearchCriteriaRaw(requestParameters, initOverrides);
}
/**
* Get book remote search.
*/
async getBookRemoteSearchResultsRaw(requestParameters: GetBookRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSearchResult>>> {
if (requestParameters.getBookRemoteSearchResultsRequest === null || requestParameters.getBookRemoteSearchResultsRequest === undefined) {
throw new runtime.RequiredError('getBookRemoteSearchResultsRequest','Required parameter requestParameters.getBookRemoteSearchResultsRequest was null or undefined when calling getBookRemoteSearchResults.');
}
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: `/Items/RemoteSearch/Book`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: GetBookRemoteSearchResultsRequestToJSON(requestParameters.getBookRemoteSearchResultsRequest),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSearchResultFromJSON));
}
/**
* Get book remote search.
*/
async getBookRemoteSearchResults(requestParameters: GetBookRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSearchResult>> {
const response = await this.getBookRemoteSearchResultsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get box set remote search.
*/
async getBoxSetRemoteSearchResultsRaw(requestParameters: GetBoxSetRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSearchResult>>> {
if (requestParameters.getBoxSetRemoteSearchResultsRequest === null || requestParameters.getBoxSetRemoteSearchResultsRequest === undefined) {
throw new runtime.RequiredError('getBoxSetRemoteSearchResultsRequest','Required parameter requestParameters.getBoxSetRemoteSearchResultsRequest was null or undefined when calling getBoxSetRemoteSearchResults.');
}
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: `/Items/RemoteSearch/BoxSet`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: GetBoxSetRemoteSearchResultsRequestToJSON(requestParameters.getBoxSetRemoteSearchResultsRequest),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSearchResultFromJSON));
}
/**
* Get box set remote search.
*/
async getBoxSetRemoteSearchResults(requestParameters: GetBoxSetRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSearchResult>> {
const response = await this.getBoxSetRemoteSearchResultsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get the item\'s external id info.
*/
async getExternalIdInfosRaw(requestParameters: GetExternalIdInfosRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<ExternalIdInfo>>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getExternalIdInfos.');
}
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: `/Items/{itemId}/ExternalIdInfos`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ExternalIdInfoFromJSON));
}
/**
* Get the item\'s external id info.
*/
async getExternalIdInfos(requestParameters: GetExternalIdInfosRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<ExternalIdInfo>> {
const response = await this.getExternalIdInfosRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get movie remote search.
*/
async getMovieRemoteSearchResultsRaw(requestParameters: GetMovieRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSearchResult>>> {
if (requestParameters.getMovieRemoteSearchResultsRequest === null || requestParameters.getMovieRemoteSearchResultsRequest === undefined) {
throw new runtime.RequiredError('getMovieRemoteSearchResultsRequest','Required parameter requestParameters.getMovieRemoteSearchResultsRequest was null or undefined when calling getMovieRemoteSearchResults.');
}
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: `/Items/RemoteSearch/Movie`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: GetMovieRemoteSearchResultsRequestToJSON(requestParameters.getMovieRemoteSearchResultsRequest),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSearchResultFromJSON));
}
/**
* Get movie remote search.
*/
async getMovieRemoteSearchResults(requestParameters: GetMovieRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSearchResult>> {
const response = await this.getMovieRemoteSearchResultsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get music album remote search.
*/
async getMusicAlbumRemoteSearchResultsRaw(requestParameters: GetMusicAlbumRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSearchResult>>> {
if (requestParameters.getMusicAlbumRemoteSearchResultsRequest === null || requestParameters.getMusicAlbumRemoteSearchResultsRequest === undefined) {
throw new runtime.RequiredError('getMusicAlbumRemoteSearchResultsRequest','Required parameter requestParameters.getMusicAlbumRemoteSearchResultsRequest was null or undefined when calling getMusicAlbumRemoteSearchResults.');
}
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: `/Items/RemoteSearch/MusicAlbum`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: GetMusicAlbumRemoteSearchResultsRequestToJSON(requestParameters.getMusicAlbumRemoteSearchResultsRequest),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSearchResultFromJSON));
}
/**
* Get music album remote search.
*/
async getMusicAlbumRemoteSearchResults(requestParameters: GetMusicAlbumRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSearchResult>> {
const response = await this.getMusicAlbumRemoteSearchResultsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get music artist remote search.
*/
async getMusicArtistRemoteSearchResultsRaw(requestParameters: GetMusicArtistRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSearchResult>>> {
if (requestParameters.getMusicArtistRemoteSearchResultsRequest === null || requestParameters.getMusicArtistRemoteSearchResultsRequest === undefined) {
throw new runtime.RequiredError('getMusicArtistRemoteSearchResultsRequest','Required parameter requestParameters.getMusicArtistRemoteSearchResultsRequest was null or undefined when calling getMusicArtistRemoteSearchResults.');
}
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: `/Items/RemoteSearch/MusicArtist`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: GetMusicArtistRemoteSearchResultsRequestToJSON(requestParameters.getMusicArtistRemoteSearchResultsRequest),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSearchResultFromJSON));
}
/**
* Get music artist remote search.
*/
async getMusicArtistRemoteSearchResults(requestParameters: GetMusicArtistRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSearchResult>> {
const response = await this.getMusicArtistRemoteSearchResultsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get music video remote search.
*/
async getMusicVideoRemoteSearchResultsRaw(requestParameters: GetMusicVideoRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSearchResult>>> {
if (requestParameters.getMusicVideoRemoteSearchResultsRequest === null || requestParameters.getMusicVideoRemoteSearchResultsRequest === undefined) {
throw new runtime.RequiredError('getMusicVideoRemoteSearchResultsRequest','Required parameter requestParameters.getMusicVideoRemoteSearchResultsRequest was null or undefined when calling getMusicVideoRemoteSearchResults.');
}
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: `/Items/RemoteSearch/MusicVideo`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: GetMusicVideoRemoteSearchResultsRequestToJSON(requestParameters.getMusicVideoRemoteSearchResultsRequest),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSearchResultFromJSON));
}
/**
* Get music video remote search.
*/
async getMusicVideoRemoteSearchResults(requestParameters: GetMusicVideoRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSearchResult>> {
const response = await this.getMusicVideoRemoteSearchResultsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get person remote search.
*/
async getPersonRemoteSearchResultsRaw(requestParameters: GetPersonRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSearchResult>>> {
if (requestParameters.getPersonRemoteSearchResultsRequest === null || requestParameters.getPersonRemoteSearchResultsRequest === undefined) {
throw new runtime.RequiredError('getPersonRemoteSearchResultsRequest','Required parameter requestParameters.getPersonRemoteSearchResultsRequest was null or undefined when calling getPersonRemoteSearchResults.');
}
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: `/Items/RemoteSearch/Person`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: GetPersonRemoteSearchResultsRequestToJSON(requestParameters.getPersonRemoteSearchResultsRequest),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSearchResultFromJSON));
}
/**
* Get person remote search.
*/
async getPersonRemoteSearchResults(requestParameters: GetPersonRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSearchResult>> {
const response = await this.getPersonRemoteSearchResultsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get series remote search.
*/
async getSeriesRemoteSearchResultsRaw(requestParameters: GetSeriesRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSearchResult>>> {
if (requestParameters.getSeriesRemoteSearchResultsRequest === null || requestParameters.getSeriesRemoteSearchResultsRequest === undefined) {
throw new runtime.RequiredError('getSeriesRemoteSearchResultsRequest','Required parameter requestParameters.getSeriesRemoteSearchResultsRequest was null or undefined when calling getSeriesRemoteSearchResults.');
}
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: `/Items/RemoteSearch/Series`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: GetSeriesRemoteSearchResultsRequestToJSON(requestParameters.getSeriesRemoteSearchResultsRequest),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSearchResultFromJSON));
}
/**
* Get series remote search.
*/
async getSeriesRemoteSearchResults(requestParameters: GetSeriesRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSearchResult>> {
const response = await this.getSeriesRemoteSearchResultsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get trailer remote search.
*/
async getTrailerRemoteSearchResultsRaw(requestParameters: GetTrailerRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSearchResult>>> {
if (requestParameters.getTrailerRemoteSearchResultsRequest === null || requestParameters.getTrailerRemoteSearchResultsRequest === undefined) {
throw new runtime.RequiredError('getTrailerRemoteSearchResultsRequest','Required parameter requestParameters.getTrailerRemoteSearchResultsRequest was null or undefined when calling getTrailerRemoteSearchResults.');
}
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: `/Items/RemoteSearch/Trailer`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: GetTrailerRemoteSearchResultsRequestToJSON(requestParameters.getTrailerRemoteSearchResultsRequest),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSearchResultFromJSON));
}
/**
* Get trailer remote search.
*/
async getTrailerRemoteSearchResults(requestParameters: GetTrailerRemoteSearchResultsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSearchResult>> {
const response = await this.getTrailerRemoteSearchResultsRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,90 @@
/* 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 {
MetadataRefreshMode,
ProblemDetails,
} from '../models';
import {
MetadataRefreshModeFromJSON,
MetadataRefreshModeToJSON,
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
} from '../models';
export interface RefreshItemRequest {
itemId: string;
metadataRefreshMode?: MetadataRefreshMode;
imageRefreshMode?: MetadataRefreshMode;
replaceAllMetadata?: boolean;
replaceAllImages?: boolean;
}
/**
*
*/
export class ItemRefreshApi extends runtime.BaseAPI {
/**
* Refreshes metadata for an item.
*/
async refreshItemRaw(requestParameters: RefreshItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling refreshItem.');
}
const queryParameters: any = {};
if (requestParameters.metadataRefreshMode !== undefined) {
queryParameters['metadataRefreshMode'] = requestParameters.metadataRefreshMode;
}
if (requestParameters.imageRefreshMode !== undefined) {
queryParameters['imageRefreshMode'] = requestParameters.imageRefreshMode;
}
if (requestParameters.replaceAllMetadata !== undefined) {
queryParameters['replaceAllMetadata'] = requestParameters.replaceAllMetadata;
}
if (requestParameters.replaceAllImages !== undefined) {
queryParameters['replaceAllImages'] = requestParameters.replaceAllImages;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Items/{itemId}/Refresh`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Refreshes metadata for an item.
*/
async refreshItem(requestParameters: RefreshItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.refreshItemRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,161 @@
/* 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 {
MetadataEditorInfo,
ProblemDetails,
UpdateItemRequest,
} from '../models';
import {
MetadataEditorInfoFromJSON,
MetadataEditorInfoToJSON,
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
UpdateItemRequestFromJSON,
UpdateItemRequestToJSON,
} from '../models';
export interface GetMetadataEditorInfoRequest {
itemId: string;
}
export interface UpdateItemOperationRequest {
itemId: string;
updateItemRequest: UpdateItemRequest;
}
export interface UpdateItemContentTypeRequest {
itemId: string;
contentType?: string;
}
/**
*
*/
export class ItemUpdateApi extends runtime.BaseAPI {
/**
* Gets metadata editor info for an item.
*/
async getMetadataEditorInfoRaw(requestParameters: GetMetadataEditorInfoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<MetadataEditorInfo>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getMetadataEditorInfo.');
}
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: `/Items/{itemId}/MetadataEditor`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => MetadataEditorInfoFromJSON(jsonValue));
}
/**
* Gets metadata editor info for an item.
*/
async getMetadataEditorInfo(requestParameters: GetMetadataEditorInfoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<MetadataEditorInfo> {
const response = await this.getMetadataEditorInfoRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Updates an item.
*/
async updateItemRaw(requestParameters: UpdateItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling updateItem.');
}
if (requestParameters.updateItemRequest === null || requestParameters.updateItemRequest === undefined) {
throw new runtime.RequiredError('updateItemRequest','Required parameter requestParameters.updateItemRequest was null or undefined when calling updateItem.');
}
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: `/Items/{itemId}`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: UpdateItemRequestToJSON(requestParameters.updateItemRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Updates an item.
*/
async updateItem(requestParameters: UpdateItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.updateItemRaw(requestParameters, initOverrides);
}
/**
* Updates an item\'s content type.
*/
async updateItemContentTypeRaw(requestParameters: UpdateItemContentTypeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling updateItemContentType.');
}
const queryParameters: any = {};
if (requestParameters.contentType !== undefined) {
queryParameters['contentType'] = requestParameters.contentType;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Items/{itemId}/ContentType`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Updates an item\'s content type.
*/
async updateItemContentType(requestParameters: UpdateItemContentTypeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.updateItemContentTypeRaw(requestParameters, initOverrides);
}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,391 @@
/* 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 {
AddMediaPathRequest,
AddVirtualFolderRequest,
CollectionTypeOptions,
ProblemDetails,
UpdateLibraryOptionsRequest,
UpdateMediaPathRequest,
VirtualFolderInfo,
} from '../models';
import {
AddMediaPathRequestFromJSON,
AddMediaPathRequestToJSON,
AddVirtualFolderRequestFromJSON,
AddVirtualFolderRequestToJSON,
CollectionTypeOptionsFromJSON,
CollectionTypeOptionsToJSON,
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
UpdateLibraryOptionsRequestFromJSON,
UpdateLibraryOptionsRequestToJSON,
UpdateMediaPathRequestFromJSON,
UpdateMediaPathRequestToJSON,
VirtualFolderInfoFromJSON,
VirtualFolderInfoToJSON,
} from '../models';
export interface AddMediaPathOperationRequest {
addMediaPathRequest: AddMediaPathRequest;
refreshLibrary?: boolean;
}
export interface AddVirtualFolderOperationRequest {
name?: string;
collectionType?: CollectionTypeOptions;
paths?: Array<string>;
refreshLibrary?: boolean;
addVirtualFolderRequest?: AddVirtualFolderRequest;
}
export interface RemoveMediaPathRequest {
name?: string;
path?: string;
refreshLibrary?: boolean;
}
export interface RemoveVirtualFolderRequest {
name?: string;
refreshLibrary?: boolean;
}
export interface RenameVirtualFolderRequest {
name?: string;
newName?: string;
refreshLibrary?: boolean;
}
export interface UpdateLibraryOptionsOperationRequest {
updateLibraryOptionsRequest?: UpdateLibraryOptionsRequest;
}
export interface UpdateMediaPathOperationRequest {
updateMediaPathRequest: UpdateMediaPathRequest;
}
/**
*
*/
export class LibraryStructureApi extends runtime.BaseAPI {
/**
* Add a media path to a library.
*/
async addMediaPathRaw(requestParameters: AddMediaPathOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.addMediaPathRequest === null || requestParameters.addMediaPathRequest === undefined) {
throw new runtime.RequiredError('addMediaPathRequest','Required parameter requestParameters.addMediaPathRequest was null or undefined when calling addMediaPath.');
}
const queryParameters: any = {};
if (requestParameters.refreshLibrary !== undefined) {
queryParameters['refreshLibrary'] = requestParameters.refreshLibrary;
}
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: `/Library/VirtualFolders/Paths`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: AddMediaPathRequestToJSON(requestParameters.addMediaPathRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Add a media path to a library.
*/
async addMediaPath(requestParameters: AddMediaPathOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.addMediaPathRaw(requestParameters, initOverrides);
}
/**
* Adds a virtual folder.
*/
async addVirtualFolderRaw(requestParameters: AddVirtualFolderOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
if (requestParameters.name !== undefined) {
queryParameters['name'] = requestParameters.name;
}
if (requestParameters.collectionType !== undefined) {
queryParameters['collectionType'] = requestParameters.collectionType;
}
if (requestParameters.paths) {
queryParameters['paths'] = requestParameters.paths;
}
if (requestParameters.refreshLibrary !== undefined) {
queryParameters['refreshLibrary'] = requestParameters.refreshLibrary;
}
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: `/Library/VirtualFolders`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: AddVirtualFolderRequestToJSON(requestParameters.addVirtualFolderRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Adds a virtual folder.
*/
async addVirtualFolder(requestParameters: AddVirtualFolderOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.addVirtualFolderRaw(requestParameters, initOverrides);
}
/**
* Gets all virtual folders.
*/
async getVirtualFoldersRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<VirtualFolderInfo>>> {
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: `/Library/VirtualFolders`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(VirtualFolderInfoFromJSON));
}
/**
* Gets all virtual folders.
*/
async getVirtualFolders(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<VirtualFolderInfo>> {
const response = await this.getVirtualFoldersRaw(initOverrides);
return await response.value();
}
/**
* Remove a media path.
*/
async removeMediaPathRaw(requestParameters: RemoveMediaPathRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
if (requestParameters.name !== undefined) {
queryParameters['name'] = requestParameters.name;
}
if (requestParameters.path !== undefined) {
queryParameters['path'] = requestParameters.path;
}
if (requestParameters.refreshLibrary !== undefined) {
queryParameters['refreshLibrary'] = requestParameters.refreshLibrary;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Library/VirtualFolders/Paths`,
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Remove a media path.
*/
async removeMediaPath(requestParameters: RemoveMediaPathRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.removeMediaPathRaw(requestParameters, initOverrides);
}
/**
* Removes a virtual folder.
*/
async removeVirtualFolderRaw(requestParameters: RemoveVirtualFolderRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
if (requestParameters.name !== undefined) {
queryParameters['name'] = requestParameters.name;
}
if (requestParameters.refreshLibrary !== undefined) {
queryParameters['refreshLibrary'] = requestParameters.refreshLibrary;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Library/VirtualFolders`,
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Removes a virtual folder.
*/
async removeVirtualFolder(requestParameters: RemoveVirtualFolderRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.removeVirtualFolderRaw(requestParameters, initOverrides);
}
/**
* Renames a virtual folder.
*/
async renameVirtualFolderRaw(requestParameters: RenameVirtualFolderRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
if (requestParameters.name !== undefined) {
queryParameters['name'] = requestParameters.name;
}
if (requestParameters.newName !== undefined) {
queryParameters['newName'] = requestParameters.newName;
}
if (requestParameters.refreshLibrary !== undefined) {
queryParameters['refreshLibrary'] = requestParameters.refreshLibrary;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Library/VirtualFolders/Name`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Renames a virtual folder.
*/
async renameVirtualFolder(requestParameters: RenameVirtualFolderRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.renameVirtualFolderRaw(requestParameters, initOverrides);
}
/**
* Update library options.
*/
async updateLibraryOptionsRaw(requestParameters: UpdateLibraryOptionsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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: `/Library/VirtualFolders/LibraryOptions`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: UpdateLibraryOptionsRequestToJSON(requestParameters.updateLibraryOptionsRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Update library options.
*/
async updateLibraryOptions(requestParameters: UpdateLibraryOptionsOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.updateLibraryOptionsRaw(requestParameters, initOverrides);
}
/**
* Updates a media path.
*/
async updateMediaPathRaw(requestParameters: UpdateMediaPathOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.updateMediaPathRequest === null || requestParameters.updateMediaPathRequest === undefined) {
throw new runtime.RequiredError('updateMediaPathRequest','Required parameter requestParameters.updateMediaPathRequest was null or undefined when calling updateMediaPath.');
}
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: `/Library/VirtualFolders/Paths/Update`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: UpdateMediaPathRequestToJSON(requestParameters.updateMediaPathRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Updates a media path.
*/
async updateMediaPath(requestParameters: UpdateMediaPathOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.updateMediaPathRaw(requestParameters, initOverrides);
}
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,159 @@
/* 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 {
CountryInfo,
CultureDto,
LocalizationOption,
ParentalRating,
} from '../models';
import {
CountryInfoFromJSON,
CountryInfoToJSON,
CultureDtoFromJSON,
CultureDtoToJSON,
LocalizationOptionFromJSON,
LocalizationOptionToJSON,
ParentalRatingFromJSON,
ParentalRatingToJSON,
} from '../models';
/**
*
*/
export class LocalizationApi extends runtime.BaseAPI {
/**
* Gets known countries.
*/
async getCountriesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<CountryInfo>>> {
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: `/Localization/Countries`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(CountryInfoFromJSON));
}
/**
* Gets known countries.
*/
async getCountries(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<CountryInfo>> {
const response = await this.getCountriesRaw(initOverrides);
return await response.value();
}
/**
* Gets known cultures.
*/
async getCulturesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<CultureDto>>> {
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: `/Localization/Cultures`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(CultureDtoFromJSON));
}
/**
* Gets known cultures.
*/
async getCultures(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<CultureDto>> {
const response = await this.getCulturesRaw(initOverrides);
return await response.value();
}
/**
* Gets localization options.
*/
async getLocalizationOptionsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<LocalizationOption>>> {
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: `/Localization/Options`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(LocalizationOptionFromJSON));
}
/**
* Gets localization options.
*/
async getLocalizationOptions(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<LocalizationOption>> {
const response = await this.getLocalizationOptionsRaw(initOverrides);
return await response.value();
}
/**
* Gets known parental ratings.
*/
async getParentalRatingsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<ParentalRating>>> {
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: `/Localization/ParentalRatings`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ParentalRatingFromJSON));
}
/**
* Gets known parental ratings.
*/
async getParentalRatings(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<ParentalRating>> {
const response = await this.getParentalRatingsRaw(initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,371 @@
/* 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 {
GetPostedPlaybackInfoRequest,
LiveStreamResponse,
OpenLiveStreamRequest,
PlaybackInfoResponse,
} from '../models';
import {
GetPostedPlaybackInfoRequestFromJSON,
GetPostedPlaybackInfoRequestToJSON,
LiveStreamResponseFromJSON,
LiveStreamResponseToJSON,
OpenLiveStreamRequestFromJSON,
OpenLiveStreamRequestToJSON,
PlaybackInfoResponseFromJSON,
PlaybackInfoResponseToJSON,
} from '../models';
export interface CloseLiveStreamRequest {
liveStreamId: string;
}
export interface GetBitrateTestBytesRequest {
size?: number;
}
export interface GetPlaybackInfoRequest {
itemId: string;
userId: string;
}
export interface GetPostedPlaybackInfoOperationRequest {
itemId: string;
userId?: string;
maxStreamingBitrate?: number;
startTimeTicks?: number;
audioStreamIndex?: number;
subtitleStreamIndex?: number;
maxAudioChannels?: number;
mediaSourceId?: string;
liveStreamId?: string;
autoOpenLiveStream?: boolean;
enableDirectPlay?: boolean;
enableDirectStream?: boolean;
enableTranscoding?: boolean;
allowVideoStreamCopy?: boolean;
allowAudioStreamCopy?: boolean;
getPostedPlaybackInfoRequest?: GetPostedPlaybackInfoRequest;
}
export interface OpenLiveStreamOperationRequest {
openToken?: string;
userId?: string;
playSessionId?: string;
maxStreamingBitrate?: number;
startTimeTicks?: number;
audioStreamIndex?: number;
subtitleStreamIndex?: number;
maxAudioChannels?: number;
itemId?: string;
enableDirectPlay?: boolean;
enableDirectStream?: boolean;
openLiveStreamRequest?: OpenLiveStreamRequest;
}
/**
*
*/
export class MediaInfoApi extends runtime.BaseAPI {
/**
* Closes a media source.
*/
async closeLiveStreamRaw(requestParameters: CloseLiveStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.liveStreamId === null || requestParameters.liveStreamId === undefined) {
throw new runtime.RequiredError('liveStreamId','Required parameter requestParameters.liveStreamId was null or undefined when calling closeLiveStream.');
}
const queryParameters: any = {};
if (requestParameters.liveStreamId !== undefined) {
queryParameters['liveStreamId'] = requestParameters.liveStreamId;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/LiveStreams/Close`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Closes a media source.
*/
async closeLiveStream(requestParameters: CloseLiveStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.closeLiveStreamRaw(requestParameters, initOverrides);
}
/**
* Tests the network with a request with the size of the bitrate.
*/
async getBitrateTestBytesRaw(requestParameters: GetBitrateTestBytesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
const queryParameters: any = {};
if (requestParameters.size !== undefined) {
queryParameters['size'] = requestParameters.size;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Playback/BitrateTest`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Tests the network with a request with the size of the bitrate.
*/
async getBitrateTestBytes(requestParameters: GetBitrateTestBytesRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getBitrateTestBytesRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets live playback media info for an item.
*/
async getPlaybackInfoRaw(requestParameters: GetPlaybackInfoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PlaybackInfoResponse>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getPlaybackInfo.');
}
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getPlaybackInfo.');
}
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Items/{itemId}/PlaybackInfo`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => PlaybackInfoResponseFromJSON(jsonValue));
}
/**
* Gets live playback media info for an item.
*/
async getPlaybackInfo(requestParameters: GetPlaybackInfoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PlaybackInfoResponse> {
const response = await this.getPlaybackInfoRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* For backwards compatibility parameters can be sent via Query or Body, with Query having higher precedence. Query parameters are obsolete.
* Gets live playback media info for an item.
*/
async getPostedPlaybackInfoRaw(requestParameters: GetPostedPlaybackInfoOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PlaybackInfoResponse>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getPostedPlaybackInfo.');
}
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.maxStreamingBitrate !== undefined) {
queryParameters['maxStreamingBitrate'] = requestParameters.maxStreamingBitrate;
}
if (requestParameters.startTimeTicks !== undefined) {
queryParameters['startTimeTicks'] = requestParameters.startTimeTicks;
}
if (requestParameters.audioStreamIndex !== undefined) {
queryParameters['audioStreamIndex'] = requestParameters.audioStreamIndex;
}
if (requestParameters.subtitleStreamIndex !== undefined) {
queryParameters['subtitleStreamIndex'] = requestParameters.subtitleStreamIndex;
}
if (requestParameters.maxAudioChannels !== undefined) {
queryParameters['maxAudioChannels'] = requestParameters.maxAudioChannels;
}
if (requestParameters.mediaSourceId !== undefined) {
queryParameters['mediaSourceId'] = requestParameters.mediaSourceId;
}
if (requestParameters.liveStreamId !== undefined) {
queryParameters['liveStreamId'] = requestParameters.liveStreamId;
}
if (requestParameters.autoOpenLiveStream !== undefined) {
queryParameters['autoOpenLiveStream'] = requestParameters.autoOpenLiveStream;
}
if (requestParameters.enableDirectPlay !== undefined) {
queryParameters['enableDirectPlay'] = requestParameters.enableDirectPlay;
}
if (requestParameters.enableDirectStream !== undefined) {
queryParameters['enableDirectStream'] = requestParameters.enableDirectStream;
}
if (requestParameters.enableTranscoding !== undefined) {
queryParameters['enableTranscoding'] = requestParameters.enableTranscoding;
}
if (requestParameters.allowVideoStreamCopy !== undefined) {
queryParameters['allowVideoStreamCopy'] = requestParameters.allowVideoStreamCopy;
}
if (requestParameters.allowAudioStreamCopy !== undefined) {
queryParameters['allowAudioStreamCopy'] = requestParameters.allowAudioStreamCopy;
}
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: `/Items/{itemId}/PlaybackInfo`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: GetPostedPlaybackInfoRequestToJSON(requestParameters.getPostedPlaybackInfoRequest),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => PlaybackInfoResponseFromJSON(jsonValue));
}
/**
* For backwards compatibility parameters can be sent via Query or Body, with Query having higher precedence. Query parameters are obsolete.
* Gets live playback media info for an item.
*/
async getPostedPlaybackInfo(requestParameters: GetPostedPlaybackInfoOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PlaybackInfoResponse> {
const response = await this.getPostedPlaybackInfoRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Opens a media source.
*/
async openLiveStreamRaw(requestParameters: OpenLiveStreamOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<LiveStreamResponse>> {
const queryParameters: any = {};
if (requestParameters.openToken !== undefined) {
queryParameters['openToken'] = requestParameters.openToken;
}
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.playSessionId !== undefined) {
queryParameters['playSessionId'] = requestParameters.playSessionId;
}
if (requestParameters.maxStreamingBitrate !== undefined) {
queryParameters['maxStreamingBitrate'] = requestParameters.maxStreamingBitrate;
}
if (requestParameters.startTimeTicks !== undefined) {
queryParameters['startTimeTicks'] = requestParameters.startTimeTicks;
}
if (requestParameters.audioStreamIndex !== undefined) {
queryParameters['audioStreamIndex'] = requestParameters.audioStreamIndex;
}
if (requestParameters.subtitleStreamIndex !== undefined) {
queryParameters['subtitleStreamIndex'] = requestParameters.subtitleStreamIndex;
}
if (requestParameters.maxAudioChannels !== undefined) {
queryParameters['maxAudioChannels'] = requestParameters.maxAudioChannels;
}
if (requestParameters.itemId !== undefined) {
queryParameters['itemId'] = requestParameters.itemId;
}
if (requestParameters.enableDirectPlay !== undefined) {
queryParameters['enableDirectPlay'] = requestParameters.enableDirectPlay;
}
if (requestParameters.enableDirectStream !== undefined) {
queryParameters['enableDirectStream'] = requestParameters.enableDirectStream;
}
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: `/LiveStreams/Open`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: OpenLiveStreamRequestToJSON(requestParameters.openLiveStreamRequest),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => LiveStreamResponseFromJSON(jsonValue));
}
/**
* Opens a media source.
*/
async openLiveStream(requestParameters: OpenLiveStreamOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<LiveStreamResponse> {
const response = await this.openLiveStreamRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,91 @@
/* 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 {
ItemFields,
RecommendationDto,
} from '../models';
import {
ItemFieldsFromJSON,
ItemFieldsToJSON,
RecommendationDtoFromJSON,
RecommendationDtoToJSON,
} from '../models';
export interface GetMovieRecommendationsRequest {
userId?: string;
parentId?: string;
fields?: Array<ItemFields>;
categoryLimit?: number;
itemLimit?: number;
}
/**
*
*/
export class MoviesApi extends runtime.BaseAPI {
/**
* Gets movie recommendations.
*/
async getMovieRecommendationsRaw(requestParameters: GetMovieRecommendationsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RecommendationDto>>> {
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.parentId !== undefined) {
queryParameters['parentId'] = requestParameters.parentId;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.categoryLimit !== undefined) {
queryParameters['categoryLimit'] = requestParameters.categoryLimit;
}
if (requestParameters.itemLimit !== undefined) {
queryParameters['itemLimit'] = requestParameters.itemLimit;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Movies/Recommendations`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RecommendationDtoFromJSON));
}
/**
* Gets movie recommendations.
*/
async getMovieRecommendations(requestParameters: GetMovieRecommendationsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RecommendationDto>> {
const response = await this.getMovieRecommendationsRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,211 @@
/* 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 {
BaseItemDto,
BaseItemDtoQueryResult,
BaseItemKind,
ImageType,
ItemFields,
SortOrder,
} from '../models';
import {
BaseItemDtoFromJSON,
BaseItemDtoToJSON,
BaseItemDtoQueryResultFromJSON,
BaseItemDtoQueryResultToJSON,
BaseItemKindFromJSON,
BaseItemKindToJSON,
ImageTypeFromJSON,
ImageTypeToJSON,
ItemFieldsFromJSON,
ItemFieldsToJSON,
SortOrderFromJSON,
SortOrderToJSON,
} from '../models';
export interface GetMusicGenreRequest {
genreName: string;
userId?: string;
}
export interface GetMusicGenresRequest {
startIndex?: number;
limit?: number;
searchTerm?: string;
parentId?: string;
fields?: Array<ItemFields>;
excludeItemTypes?: Array<BaseItemKind>;
includeItemTypes?: Array<BaseItemKind>;
isFavorite?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
userId?: string;
nameStartsWithOrGreater?: string;
nameStartsWith?: string;
nameLessThan?: string;
sortBy?: Array<string>;
sortOrder?: Array<SortOrder>;
enableImages?: boolean;
enableTotalRecordCount?: boolean;
}
/**
*
*/
export class MusicGenresApi extends runtime.BaseAPI {
/**
* Gets a music genre, by name.
*/
async getMusicGenreRaw(requestParameters: GetMusicGenreRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDto>> {
if (requestParameters.genreName === null || requestParameters.genreName === undefined) {
throw new runtime.RequiredError('genreName','Required parameter requestParameters.genreName was null or undefined when calling getMusicGenre.');
}
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/MusicGenres/{genreName}`.replace(`{${"genreName"}}`, encodeURIComponent(String(requestParameters.genreName))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoFromJSON(jsonValue));
}
/**
* Gets a music genre, by name.
*/
async getMusicGenre(requestParameters: GetMusicGenreRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDto> {
const response = await this.getMusicGenreRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets all music genres from a given item, folder, or the entire library.
*/
async getMusicGenresRaw(requestParameters: GetMusicGenresRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
const queryParameters: any = {};
if (requestParameters.startIndex !== undefined) {
queryParameters['startIndex'] = requestParameters.startIndex;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.searchTerm !== undefined) {
queryParameters['searchTerm'] = requestParameters.searchTerm;
}
if (requestParameters.parentId !== undefined) {
queryParameters['parentId'] = requestParameters.parentId;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.excludeItemTypes) {
queryParameters['excludeItemTypes'] = requestParameters.excludeItemTypes;
}
if (requestParameters.includeItemTypes) {
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
}
if (requestParameters.isFavorite !== undefined) {
queryParameters['isFavorite'] = requestParameters.isFavorite;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.nameStartsWithOrGreater !== undefined) {
queryParameters['nameStartsWithOrGreater'] = requestParameters.nameStartsWithOrGreater;
}
if (requestParameters.nameStartsWith !== undefined) {
queryParameters['nameStartsWith'] = requestParameters.nameStartsWith;
}
if (requestParameters.nameLessThan !== undefined) {
queryParameters['nameLessThan'] = requestParameters.nameLessThan;
}
if (requestParameters.sortBy) {
queryParameters['sortBy'] = requestParameters.sortBy;
}
if (requestParameters.sortOrder) {
queryParameters['sortOrder'] = requestParameters.sortOrder;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
if (requestParameters.enableTotalRecordCount !== undefined) {
queryParameters['enableTotalRecordCount'] = requestParameters.enableTotalRecordCount;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/MusicGenres`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Gets all music genres from a given item, folder, or the entire library.
*/
async getMusicGenres(requestParameters: GetMusicGenresRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getMusicGenresRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,292 @@
/* 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 {
CreateAdminNotificationRequest,
NameIdPair,
NotificationResultDto,
NotificationTypeInfo,
NotificationsSummaryDto,
} from '../models';
import {
CreateAdminNotificationRequestFromJSON,
CreateAdminNotificationRequestToJSON,
NameIdPairFromJSON,
NameIdPairToJSON,
NotificationResultDtoFromJSON,
NotificationResultDtoToJSON,
NotificationTypeInfoFromJSON,
NotificationTypeInfoToJSON,
NotificationsSummaryDtoFromJSON,
NotificationsSummaryDtoToJSON,
} from '../models';
export interface CreateAdminNotificationOperationRequest {
createAdminNotificationRequest: CreateAdminNotificationRequest;
}
export interface GetNotificationsRequest {
userId: string;
}
export interface GetNotificationsSummaryRequest {
userId: string;
}
export interface SetReadRequest {
userId: string;
}
export interface SetUnreadRequest {
userId: string;
}
/**
*
*/
export class NotificationsApi extends runtime.BaseAPI {
/**
* Sends a notification to all admins.
*/
async createAdminNotificationRaw(requestParameters: CreateAdminNotificationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.createAdminNotificationRequest === null || requestParameters.createAdminNotificationRequest === undefined) {
throw new runtime.RequiredError('createAdminNotificationRequest','Required parameter requestParameters.createAdminNotificationRequest was null or undefined when calling createAdminNotification.');
}
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: `/Notifications/Admin`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: CreateAdminNotificationRequestToJSON(requestParameters.createAdminNotificationRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Sends a notification to all admins.
*/
async createAdminNotification(requestParameters: CreateAdminNotificationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.createAdminNotificationRaw(requestParameters, initOverrides);
}
/**
* Gets notification services.
*/
async getNotificationServicesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<NameIdPair>>> {
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: `/Notifications/Services`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(NameIdPairFromJSON));
}
/**
* Gets notification services.
*/
async getNotificationServices(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<NameIdPair>> {
const response = await this.getNotificationServicesRaw(initOverrides);
return await response.value();
}
/**
* Gets notification types.
*/
async getNotificationTypesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<NotificationTypeInfo>>> {
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: `/Notifications/Types`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(NotificationTypeInfoFromJSON));
}
/**
* Gets notification types.
*/
async getNotificationTypes(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<NotificationTypeInfo>> {
const response = await this.getNotificationTypesRaw(initOverrides);
return await response.value();
}
/**
* Gets a user\'s notifications.
*/
async getNotificationsRaw(requestParameters: GetNotificationsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<NotificationResultDto>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getNotifications.');
}
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: `/Notifications/{userId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => NotificationResultDtoFromJSON(jsonValue));
}
/**
* Gets a user\'s notifications.
*/
async getNotifications(requestParameters: GetNotificationsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<NotificationResultDto> {
const response = await this.getNotificationsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets a user\'s notification summary.
*/
async getNotificationsSummaryRaw(requestParameters: GetNotificationsSummaryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<NotificationsSummaryDto>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getNotificationsSummary.');
}
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: `/Notifications/{userId}/Summary`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => NotificationsSummaryDtoFromJSON(jsonValue));
}
/**
* Gets a user\'s notification summary.
*/
async getNotificationsSummary(requestParameters: GetNotificationsSummaryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<NotificationsSummaryDto> {
const response = await this.getNotificationsSummaryRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Sets notifications as read.
*/
async setReadRaw(requestParameters: SetReadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling setRead.');
}
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: `/Notifications/{userId}/Read`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Sets notifications as read.
*/
async setRead(requestParameters: SetReadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.setReadRaw(requestParameters, initOverrides);
}
/**
* Sets notifications as unread.
*/
async setUnreadRaw(requestParameters: SetUnreadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling setUnread.');
}
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: `/Notifications/{userId}/Unread`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Sets notifications as unread.
*/
async setUnread(requestParameters: SetUnreadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.setUnreadRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,268 @@
/* 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 {
PackageInfo,
ProblemDetails,
RepositoryInfo,
} from '../models';
import {
PackageInfoFromJSON,
PackageInfoToJSON,
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
RepositoryInfoFromJSON,
RepositoryInfoToJSON,
} from '../models';
export interface CancelPackageInstallationRequest {
packageId: string;
}
export interface GetPackageInfoRequest {
name: string;
assemblyGuid?: string;
}
export interface InstallPackageRequest {
name: string;
assemblyGuid?: string;
version?: string;
repositoryUrl?: string;
}
export interface SetRepositoriesRequest {
repositoryInfo: Array<RepositoryInfo>;
}
/**
*
*/
export class PackageApi extends runtime.BaseAPI {
/**
* Cancels a package installation.
*/
async cancelPackageInstallationRaw(requestParameters: CancelPackageInstallationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.packageId === null || requestParameters.packageId === undefined) {
throw new runtime.RequiredError('packageId','Required parameter requestParameters.packageId was null or undefined when calling cancelPackageInstallation.');
}
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: `/Packages/Installing/{packageId}`.replace(`{${"packageId"}}`, encodeURIComponent(String(requestParameters.packageId))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Cancels a package installation.
*/
async cancelPackageInstallation(requestParameters: CancelPackageInstallationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.cancelPackageInstallationRaw(requestParameters, initOverrides);
}
/**
* Gets a package by name or assembly GUID.
*/
async getPackageInfoRaw(requestParameters: GetPackageInfoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PackageInfo>> {
if (requestParameters.name === null || requestParameters.name === undefined) {
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getPackageInfo.');
}
const queryParameters: any = {};
if (requestParameters.assemblyGuid !== undefined) {
queryParameters['assemblyGuid'] = requestParameters.assemblyGuid;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Packages/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => PackageInfoFromJSON(jsonValue));
}
/**
* Gets a package by name or assembly GUID.
*/
async getPackageInfo(requestParameters: GetPackageInfoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PackageInfo> {
const response = await this.getPackageInfoRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets available packages.
*/
async getPackagesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<PackageInfo>>> {
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: `/Packages`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(PackageInfoFromJSON));
}
/**
* Gets available packages.
*/
async getPackages(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<PackageInfo>> {
const response = await this.getPackagesRaw(initOverrides);
return await response.value();
}
/**
* Gets all package repositories.
*/
async getRepositoriesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RepositoryInfo>>> {
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: `/Repositories`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RepositoryInfoFromJSON));
}
/**
* Gets all package repositories.
*/
async getRepositories(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RepositoryInfo>> {
const response = await this.getRepositoriesRaw(initOverrides);
return await response.value();
}
/**
* Installs a package.
*/
async installPackageRaw(requestParameters: InstallPackageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.name === null || requestParameters.name === undefined) {
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling installPackage.');
}
const queryParameters: any = {};
if (requestParameters.assemblyGuid !== undefined) {
queryParameters['assemblyGuid'] = requestParameters.assemblyGuid;
}
if (requestParameters.version !== undefined) {
queryParameters['version'] = requestParameters.version;
}
if (requestParameters.repositoryUrl !== undefined) {
queryParameters['repositoryUrl'] = requestParameters.repositoryUrl;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Packages/Installed/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Installs a package.
*/
async installPackage(requestParameters: InstallPackageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.installPackageRaw(requestParameters, initOverrides);
}
/**
* Sets the enabled and existing package repositories.
*/
async setRepositoriesRaw(requestParameters: SetRepositoriesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.repositoryInfo === null || requestParameters.repositoryInfo === undefined) {
throw new runtime.RequiredError('repositoryInfo','Required parameter requestParameters.repositoryInfo was null or undefined when calling setRepositories.');
}
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: `/Repositories`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: requestParameters.repositoryInfo.map(RepositoryInfoToJSON),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Sets the enabled and existing package repositories.
*/
async setRepositories(requestParameters: SetRepositoriesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.setRepositoriesRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,186 @@
/* 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 {
BaseItemDto,
BaseItemDtoQueryResult,
ImageType,
ItemFields,
ItemFilter,
ProblemDetails,
} from '../models';
import {
BaseItemDtoFromJSON,
BaseItemDtoToJSON,
BaseItemDtoQueryResultFromJSON,
BaseItemDtoQueryResultToJSON,
ImageTypeFromJSON,
ImageTypeToJSON,
ItemFieldsFromJSON,
ItemFieldsToJSON,
ItemFilterFromJSON,
ItemFilterToJSON,
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
} from '../models';
export interface GetPersonRequest {
name: string;
userId?: string;
}
export interface GetPersonsRequest {
limit?: number;
searchTerm?: string;
fields?: Array<ItemFields>;
filters?: Array<ItemFilter>;
isFavorite?: boolean;
enableUserData?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
excludePersonTypes?: Array<string>;
personTypes?: Array<string>;
appearsInItemId?: string;
userId?: string;
enableImages?: boolean;
}
/**
*
*/
export class PersonsApi extends runtime.BaseAPI {
/**
* Get person by name.
*/
async getPersonRaw(requestParameters: GetPersonRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDto>> {
if (requestParameters.name === null || requestParameters.name === undefined) {
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getPerson.');
}
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Persons/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoFromJSON(jsonValue));
}
/**
* Get person by name.
*/
async getPerson(requestParameters: GetPersonRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDto> {
const response = await this.getPersonRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets all persons.
*/
async getPersonsRaw(requestParameters: GetPersonsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
const queryParameters: any = {};
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.searchTerm !== undefined) {
queryParameters['searchTerm'] = requestParameters.searchTerm;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.filters) {
queryParameters['filters'] = requestParameters.filters;
}
if (requestParameters.isFavorite !== undefined) {
queryParameters['isFavorite'] = requestParameters.isFavorite;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
if (requestParameters.excludePersonTypes) {
queryParameters['excludePersonTypes'] = requestParameters.excludePersonTypes;
}
if (requestParameters.personTypes) {
queryParameters['personTypes'] = requestParameters.personTypes;
}
if (requestParameters.appearsInItemId !== undefined) {
queryParameters['appearsInItemId'] = requestParameters.appearsInItemId;
}
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Persons`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Gets all persons.
*/
async getPersons(requestParameters: GetPersonsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getPersonsRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,319 @@
/* 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 {
BaseItemDtoQueryResult,
CreatePlaylistRequest,
ImageType,
ItemFields,
PlaylistCreationResult,
} from '../models';
import {
BaseItemDtoQueryResultFromJSON,
BaseItemDtoQueryResultToJSON,
CreatePlaylistRequestFromJSON,
CreatePlaylistRequestToJSON,
ImageTypeFromJSON,
ImageTypeToJSON,
ItemFieldsFromJSON,
ItemFieldsToJSON,
PlaylistCreationResultFromJSON,
PlaylistCreationResultToJSON,
} from '../models';
export interface AddToPlaylistRequest {
playlistId: string;
ids?: Array<string>;
userId?: string;
}
export interface CreatePlaylistOperationRequest {
name?: string;
ids?: Array<string>;
userId?: string;
mediaType?: string;
createPlaylistRequest?: CreatePlaylistRequest;
}
export interface GetPlaylistItemsRequest {
playlistId: string;
userId: string;
startIndex?: number;
limit?: number;
fields?: Array<ItemFields>;
enableImages?: boolean;
enableUserData?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
}
export interface MoveItemRequest {
playlistId: string;
itemId: string;
newIndex: number;
}
export interface RemoveFromPlaylistRequest {
playlistId: string;
entryIds?: Array<string>;
}
/**
*
*/
export class PlaylistsApi extends runtime.BaseAPI {
/**
* Adds items to a playlist.
*/
async addToPlaylistRaw(requestParameters: AddToPlaylistRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.playlistId === null || requestParameters.playlistId === undefined) {
throw new runtime.RequiredError('playlistId','Required parameter requestParameters.playlistId was null or undefined when calling addToPlaylist.');
}
const queryParameters: any = {};
if (requestParameters.ids) {
queryParameters['ids'] = requestParameters.ids;
}
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Playlists/{playlistId}/Items`.replace(`{${"playlistId"}}`, encodeURIComponent(String(requestParameters.playlistId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Adds items to a playlist.
*/
async addToPlaylist(requestParameters: AddToPlaylistRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.addToPlaylistRaw(requestParameters, initOverrides);
}
/**
* For backwards compatibility parameters can be sent via Query or Body, with Query having higher precedence. Query parameters are obsolete.
* Creates a new playlist.
*/
async createPlaylistRaw(requestParameters: CreatePlaylistOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PlaylistCreationResult>> {
const queryParameters: any = {};
if (requestParameters.name !== undefined) {
queryParameters['name'] = requestParameters.name;
}
if (requestParameters.ids) {
queryParameters['ids'] = requestParameters.ids;
}
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.mediaType !== undefined) {
queryParameters['mediaType'] = requestParameters.mediaType;
}
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: `/Playlists`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: CreatePlaylistRequestToJSON(requestParameters.createPlaylistRequest),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => PlaylistCreationResultFromJSON(jsonValue));
}
/**
* For backwards compatibility parameters can be sent via Query or Body, with Query having higher precedence. Query parameters are obsolete.
* Creates a new playlist.
*/
async createPlaylist(requestParameters: CreatePlaylistOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PlaylistCreationResult> {
const response = await this.createPlaylistRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets the original items of a playlist.
*/
async getPlaylistItemsRaw(requestParameters: GetPlaylistItemsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
if (requestParameters.playlistId === null || requestParameters.playlistId === undefined) {
throw new runtime.RequiredError('playlistId','Required parameter requestParameters.playlistId was null or undefined when calling getPlaylistItems.');
}
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getPlaylistItems.');
}
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.startIndex !== undefined) {
queryParameters['startIndex'] = requestParameters.startIndex;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Playlists/{playlistId}/Items`.replace(`{${"playlistId"}}`, encodeURIComponent(String(requestParameters.playlistId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Gets the original items of a playlist.
*/
async getPlaylistItems(requestParameters: GetPlaylistItemsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getPlaylistItemsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Moves a playlist item.
*/
async moveItemRaw(requestParameters: MoveItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.playlistId === null || requestParameters.playlistId === undefined) {
throw new runtime.RequiredError('playlistId','Required parameter requestParameters.playlistId was null or undefined when calling moveItem.');
}
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling moveItem.');
}
if (requestParameters.newIndex === null || requestParameters.newIndex === undefined) {
throw new runtime.RequiredError('newIndex','Required parameter requestParameters.newIndex was null or undefined when calling moveItem.');
}
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: `/Playlists/{playlistId}/Items/{itemId}/Move/{newIndex}`.replace(`{${"playlistId"}}`, encodeURIComponent(String(requestParameters.playlistId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))).replace(`{${"newIndex"}}`, encodeURIComponent(String(requestParameters.newIndex))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Moves a playlist item.
*/
async moveItem(requestParameters: MoveItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.moveItemRaw(requestParameters, initOverrides);
}
/**
* Removes items from a playlist.
*/
async removeFromPlaylistRaw(requestParameters: RemoveFromPlaylistRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.playlistId === null || requestParameters.playlistId === undefined) {
throw new runtime.RequiredError('playlistId','Required parameter requestParameters.playlistId was null or undefined when calling removeFromPlaylist.');
}
const queryParameters: any = {};
if (requestParameters.entryIds) {
queryParameters['entryIds'] = requestParameters.entryIds;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Playlists/{playlistId}/Items`.replace(`{${"playlistId"}}`, encodeURIComponent(String(requestParameters.playlistId))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Removes items from a playlist.
*/
async removeFromPlaylist(requestParameters: RemoveFromPlaylistRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.removeFromPlaylistRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,526 @@
/* 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 {
PlayMethod,
RepeatMode,
ReportPlaybackProgressRequest,
ReportPlaybackStartRequest,
ReportPlaybackStoppedRequest,
UserItemDataDto,
} from '../models';
import {
PlayMethodFromJSON,
PlayMethodToJSON,
RepeatModeFromJSON,
RepeatModeToJSON,
ReportPlaybackProgressRequestFromJSON,
ReportPlaybackProgressRequestToJSON,
ReportPlaybackStartRequestFromJSON,
ReportPlaybackStartRequestToJSON,
ReportPlaybackStoppedRequestFromJSON,
ReportPlaybackStoppedRequestToJSON,
UserItemDataDtoFromJSON,
UserItemDataDtoToJSON,
} from '../models';
export interface MarkPlayedItemRequest {
userId: string;
itemId: string;
datePlayed?: Date;
}
export interface MarkUnplayedItemRequest {
userId: string;
itemId: string;
}
export interface OnPlaybackProgressRequest {
userId: string;
itemId: string;
mediaSourceId?: string;
positionTicks?: number;
audioStreamIndex?: number;
subtitleStreamIndex?: number;
volumeLevel?: number;
playMethod?: PlayMethod;
liveStreamId?: string;
playSessionId?: string;
repeatMode?: RepeatMode;
isPaused?: boolean;
isMuted?: boolean;
}
export interface OnPlaybackStartRequest {
userId: string;
itemId: string;
mediaSourceId?: string;
audioStreamIndex?: number;
subtitleStreamIndex?: number;
playMethod?: PlayMethod;
liveStreamId?: string;
playSessionId?: string;
canSeek?: boolean;
}
export interface OnPlaybackStoppedRequest {
userId: string;
itemId: string;
mediaSourceId?: string;
nextMediaType?: string;
positionTicks?: number;
liveStreamId?: string;
playSessionId?: string;
}
export interface PingPlaybackSessionRequest {
playSessionId: string;
}
export interface ReportPlaybackProgressOperationRequest {
reportPlaybackProgressRequest?: ReportPlaybackProgressRequest;
}
export interface ReportPlaybackStartOperationRequest {
reportPlaybackStartRequest?: ReportPlaybackStartRequest;
}
export interface ReportPlaybackStoppedOperationRequest {
reportPlaybackStoppedRequest?: ReportPlaybackStoppedRequest;
}
/**
*
*/
export class PlaystateApi extends runtime.BaseAPI {
/**
* Marks an item as played for user.
*/
async markPlayedItemRaw(requestParameters: MarkPlayedItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserItemDataDto>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling markPlayedItem.');
}
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling markPlayedItem.');
}
const queryParameters: any = {};
if (requestParameters.datePlayed !== undefined) {
queryParameters['datePlayed'] = (requestParameters.datePlayed as any).toISOString();
}
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}/PlayedItems/{itemId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => UserItemDataDtoFromJSON(jsonValue));
}
/**
* Marks an item as played for user.
*/
async markPlayedItem(requestParameters: MarkPlayedItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserItemDataDto> {
const response = await this.markPlayedItemRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Marks an item as unplayed for user.
*/
async markUnplayedItemRaw(requestParameters: MarkUnplayedItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserItemDataDto>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling markUnplayedItem.');
}
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling markUnplayedItem.');
}
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}/PlayedItems/{itemId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => UserItemDataDtoFromJSON(jsonValue));
}
/**
* Marks an item as unplayed for user.
*/
async markUnplayedItem(requestParameters: MarkUnplayedItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserItemDataDto> {
const response = await this.markUnplayedItemRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Reports a user\'s playback progress.
*/
async onPlaybackProgressRaw(requestParameters: OnPlaybackProgressRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling onPlaybackProgress.');
}
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling onPlaybackProgress.');
}
const queryParameters: any = {};
if (requestParameters.mediaSourceId !== undefined) {
queryParameters['mediaSourceId'] = requestParameters.mediaSourceId;
}
if (requestParameters.positionTicks !== undefined) {
queryParameters['positionTicks'] = requestParameters.positionTicks;
}
if (requestParameters.audioStreamIndex !== undefined) {
queryParameters['audioStreamIndex'] = requestParameters.audioStreamIndex;
}
if (requestParameters.subtitleStreamIndex !== undefined) {
queryParameters['subtitleStreamIndex'] = requestParameters.subtitleStreamIndex;
}
if (requestParameters.volumeLevel !== undefined) {
queryParameters['volumeLevel'] = requestParameters.volumeLevel;
}
if (requestParameters.playMethod !== undefined) {
queryParameters['playMethod'] = requestParameters.playMethod;
}
if (requestParameters.liveStreamId !== undefined) {
queryParameters['liveStreamId'] = requestParameters.liveStreamId;
}
if (requestParameters.playSessionId !== undefined) {
queryParameters['playSessionId'] = requestParameters.playSessionId;
}
if (requestParameters.repeatMode !== undefined) {
queryParameters['repeatMode'] = requestParameters.repeatMode;
}
if (requestParameters.isPaused !== undefined) {
queryParameters['isPaused'] = requestParameters.isPaused;
}
if (requestParameters.isMuted !== undefined) {
queryParameters['isMuted'] = requestParameters.isMuted;
}
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}/PlayingItems/{itemId}/Progress`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Reports a user\'s playback progress.
*/
async onPlaybackProgress(requestParameters: OnPlaybackProgressRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.onPlaybackProgressRaw(requestParameters, initOverrides);
}
/**
* Reports that a user has begun playing an item.
*/
async onPlaybackStartRaw(requestParameters: OnPlaybackStartRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling onPlaybackStart.');
}
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling onPlaybackStart.');
}
const queryParameters: any = {};
if (requestParameters.mediaSourceId !== undefined) {
queryParameters['mediaSourceId'] = requestParameters.mediaSourceId;
}
if (requestParameters.audioStreamIndex !== undefined) {
queryParameters['audioStreamIndex'] = requestParameters.audioStreamIndex;
}
if (requestParameters.subtitleStreamIndex !== undefined) {
queryParameters['subtitleStreamIndex'] = requestParameters.subtitleStreamIndex;
}
if (requestParameters.playMethod !== undefined) {
queryParameters['playMethod'] = requestParameters.playMethod;
}
if (requestParameters.liveStreamId !== undefined) {
queryParameters['liveStreamId'] = requestParameters.liveStreamId;
}
if (requestParameters.playSessionId !== undefined) {
queryParameters['playSessionId'] = requestParameters.playSessionId;
}
if (requestParameters.canSeek !== undefined) {
queryParameters['canSeek'] = requestParameters.canSeek;
}
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}/PlayingItems/{itemId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Reports that a user has begun playing an item.
*/
async onPlaybackStart(requestParameters: OnPlaybackStartRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.onPlaybackStartRaw(requestParameters, initOverrides);
}
/**
* Reports that a user has stopped playing an item.
*/
async onPlaybackStoppedRaw(requestParameters: OnPlaybackStoppedRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling onPlaybackStopped.');
}
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling onPlaybackStopped.');
}
const queryParameters: any = {};
if (requestParameters.mediaSourceId !== undefined) {
queryParameters['mediaSourceId'] = requestParameters.mediaSourceId;
}
if (requestParameters.nextMediaType !== undefined) {
queryParameters['nextMediaType'] = requestParameters.nextMediaType;
}
if (requestParameters.positionTicks !== undefined) {
queryParameters['positionTicks'] = requestParameters.positionTicks;
}
if (requestParameters.liveStreamId !== undefined) {
queryParameters['liveStreamId'] = requestParameters.liveStreamId;
}
if (requestParameters.playSessionId !== undefined) {
queryParameters['playSessionId'] = requestParameters.playSessionId;
}
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}/PlayingItems/{itemId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Reports that a user has stopped playing an item.
*/
async onPlaybackStopped(requestParameters: OnPlaybackStoppedRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.onPlaybackStoppedRaw(requestParameters, initOverrides);
}
/**
* Pings a playback session.
*/
async pingPlaybackSessionRaw(requestParameters: PingPlaybackSessionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.playSessionId === null || requestParameters.playSessionId === undefined) {
throw new runtime.RequiredError('playSessionId','Required parameter requestParameters.playSessionId was null or undefined when calling pingPlaybackSession.');
}
const queryParameters: any = {};
if (requestParameters.playSessionId !== undefined) {
queryParameters['playSessionId'] = requestParameters.playSessionId;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Sessions/Playing/Ping`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Pings a playback session.
*/
async pingPlaybackSession(requestParameters: PingPlaybackSessionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.pingPlaybackSessionRaw(requestParameters, initOverrides);
}
/**
* Reports playback progress within a session.
*/
async reportPlaybackProgressRaw(requestParameters: ReportPlaybackProgressOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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: `/Sessions/Playing/Progress`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: ReportPlaybackProgressRequestToJSON(requestParameters.reportPlaybackProgressRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Reports playback progress within a session.
*/
async reportPlaybackProgress(requestParameters: ReportPlaybackProgressOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.reportPlaybackProgressRaw(requestParameters, initOverrides);
}
/**
* Reports playback has started within a session.
*/
async reportPlaybackStartRaw(requestParameters: ReportPlaybackStartOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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: `/Sessions/Playing`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: ReportPlaybackStartRequestToJSON(requestParameters.reportPlaybackStartRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Reports playback has started within a session.
*/
async reportPlaybackStart(requestParameters: ReportPlaybackStartOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.reportPlaybackStartRaw(requestParameters, initOverrides);
}
/**
* Reports playback has stopped within a session.
*/
async reportPlaybackStoppedRaw(requestParameters: ReportPlaybackStoppedOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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: `/Sessions/Playing/Stopped`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: ReportPlaybackStoppedRequestToJSON(requestParameters.reportPlaybackStoppedRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Reports playback has stopped within a session.
*/
async reportPlaybackStopped(requestParameters: ReportPlaybackStoppedOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.reportPlaybackStoppedRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,383 @@
/* 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 {
PluginInfo,
ProblemDetails,
} from '../models';
import {
PluginInfoFromJSON,
PluginInfoToJSON,
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
} from '../models';
export interface DisablePluginRequest {
pluginId: string;
version: string;
}
export interface EnablePluginRequest {
pluginId: string;
version: string;
}
export interface GetPluginConfigurationRequest {
pluginId: string;
}
export interface GetPluginImageRequest {
pluginId: string;
version: string;
}
export interface GetPluginManifestRequest {
pluginId: string;
}
export interface UninstallPluginRequest {
pluginId: string;
}
export interface UninstallPluginByVersionRequest {
pluginId: string;
version: string;
}
export interface UpdatePluginConfigurationRequest {
pluginId: string;
}
/**
*
*/
export class PluginsApi extends runtime.BaseAPI {
/**
* Disable a plugin.
*/
async disablePluginRaw(requestParameters: DisablePluginRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.pluginId === null || requestParameters.pluginId === undefined) {
throw new runtime.RequiredError('pluginId','Required parameter requestParameters.pluginId was null or undefined when calling disablePlugin.');
}
if (requestParameters.version === null || requestParameters.version === undefined) {
throw new runtime.RequiredError('version','Required parameter requestParameters.version was null or undefined when calling disablePlugin.');
}
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: `/Plugins/{pluginId}/{version}/Disable`.replace(`{${"pluginId"}}`, encodeURIComponent(String(requestParameters.pluginId))).replace(`{${"version"}}`, encodeURIComponent(String(requestParameters.version))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Disable a plugin.
*/
async disablePlugin(requestParameters: DisablePluginRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.disablePluginRaw(requestParameters, initOverrides);
}
/**
* Enables a disabled plugin.
*/
async enablePluginRaw(requestParameters: EnablePluginRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.pluginId === null || requestParameters.pluginId === undefined) {
throw new runtime.RequiredError('pluginId','Required parameter requestParameters.pluginId was null or undefined when calling enablePlugin.');
}
if (requestParameters.version === null || requestParameters.version === undefined) {
throw new runtime.RequiredError('version','Required parameter requestParameters.version was null or undefined when calling enablePlugin.');
}
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: `/Plugins/{pluginId}/{version}/Enable`.replace(`{${"pluginId"}}`, encodeURIComponent(String(requestParameters.pluginId))).replace(`{${"version"}}`, encodeURIComponent(String(requestParameters.version))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Enables a disabled plugin.
*/
async enablePlugin(requestParameters: EnablePluginRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.enablePluginRaw(requestParameters, initOverrides);
}
/**
* Gets plugin configuration.
*/
async getPluginConfigurationRaw(requestParameters: GetPluginConfigurationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<object>> {
if (requestParameters.pluginId === null || requestParameters.pluginId === undefined) {
throw new runtime.RequiredError('pluginId','Required parameter requestParameters.pluginId was null or undefined when calling getPluginConfiguration.');
}
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: `/Plugins/{pluginId}/Configuration`.replace(`{${"pluginId"}}`, encodeURIComponent(String(requestParameters.pluginId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse<any>(response);
}
/**
* Gets plugin configuration.
*/
async getPluginConfiguration(requestParameters: GetPluginConfigurationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<object> {
const response = await this.getPluginConfigurationRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets a plugin\'s image.
*/
async getPluginImageRaw(requestParameters: GetPluginImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.pluginId === null || requestParameters.pluginId === undefined) {
throw new runtime.RequiredError('pluginId','Required parameter requestParameters.pluginId was null or undefined when calling getPluginImage.');
}
if (requestParameters.version === null || requestParameters.version === undefined) {
throw new runtime.RequiredError('version','Required parameter requestParameters.version was null or undefined when calling getPluginImage.');
}
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: `/Plugins/{pluginId}/{version}/Image`.replace(`{${"pluginId"}}`, encodeURIComponent(String(requestParameters.pluginId))).replace(`{${"version"}}`, encodeURIComponent(String(requestParameters.version))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets a plugin\'s image.
*/
async getPluginImage(requestParameters: GetPluginImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getPluginImageRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets a plugin\'s manifest.
*/
async getPluginManifestRaw(requestParameters: GetPluginManifestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.pluginId === null || requestParameters.pluginId === undefined) {
throw new runtime.RequiredError('pluginId','Required parameter requestParameters.pluginId was null or undefined when calling getPluginManifest.');
}
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: `/Plugins/{pluginId}/Manifest`.replace(`{${"pluginId"}}`, encodeURIComponent(String(requestParameters.pluginId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Gets a plugin\'s manifest.
*/
async getPluginManifest(requestParameters: GetPluginManifestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.getPluginManifestRaw(requestParameters, initOverrides);
}
/**
* Gets a list of currently installed plugins.
*/
async getPluginsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<PluginInfo>>> {
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: `/Plugins`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(PluginInfoFromJSON));
}
/**
* Gets a list of currently installed plugins.
*/
async getPlugins(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<PluginInfo>> {
const response = await this.getPluginsRaw(initOverrides);
return await response.value();
}
/**
* Uninstalls a plugin.
*/
async uninstallPluginRaw(requestParameters: UninstallPluginRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.pluginId === null || requestParameters.pluginId === undefined) {
throw new runtime.RequiredError('pluginId','Required parameter requestParameters.pluginId was null or undefined when calling uninstallPlugin.');
}
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: `/Plugins/{pluginId}`.replace(`{${"pluginId"}}`, encodeURIComponent(String(requestParameters.pluginId))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Uninstalls a plugin.
*/
async uninstallPlugin(requestParameters: UninstallPluginRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.uninstallPluginRaw(requestParameters, initOverrides);
}
/**
* Uninstalls a plugin by version.
*/
async uninstallPluginByVersionRaw(requestParameters: UninstallPluginByVersionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.pluginId === null || requestParameters.pluginId === undefined) {
throw new runtime.RequiredError('pluginId','Required parameter requestParameters.pluginId was null or undefined when calling uninstallPluginByVersion.');
}
if (requestParameters.version === null || requestParameters.version === undefined) {
throw new runtime.RequiredError('version','Required parameter requestParameters.version was null or undefined when calling uninstallPluginByVersion.');
}
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: `/Plugins/{pluginId}/{version}`.replace(`{${"pluginId"}}`, encodeURIComponent(String(requestParameters.pluginId))).replace(`{${"version"}}`, encodeURIComponent(String(requestParameters.version))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Uninstalls a plugin by version.
*/
async uninstallPluginByVersion(requestParameters: UninstallPluginByVersionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.uninstallPluginByVersionRaw(requestParameters, initOverrides);
}
/**
* Accepts plugin configuration as JSON body.
* Updates plugin configuration.
*/
async updatePluginConfigurationRaw(requestParameters: UpdatePluginConfigurationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.pluginId === null || requestParameters.pluginId === undefined) {
throw new runtime.RequiredError('pluginId','Required parameter requestParameters.pluginId was null or undefined when calling updatePluginConfiguration.');
}
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: `/Plugins/{pluginId}/Configuration`.replace(`{${"pluginId"}}`, encodeURIComponent(String(requestParameters.pluginId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Accepts plugin configuration as JSON body.
* Updates plugin configuration.
*/
async updatePluginConfiguration(requestParameters: UpdatePluginConfigurationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.updatePluginConfigurationRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,173 @@
/* 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,
QuickConnectResult,
} from '../models';
import {
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
QuickConnectResultFromJSON,
QuickConnectResultToJSON,
} from '../models';
export interface AuthorizeRequest {
code: string;
}
export interface ConnectRequest {
secret: string;
}
/**
*
*/
export class QuickConnectApi extends runtime.BaseAPI {
/**
* Authorizes a pending quick connect request.
*/
async authorizeRaw(requestParameters: AuthorizeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<boolean>> {
if (requestParameters.code === null || requestParameters.code === undefined) {
throw new runtime.RequiredError('code','Required parameter requestParameters.code was null or undefined when calling authorize.');
}
const queryParameters: any = {};
if (requestParameters.code !== undefined) {
queryParameters['code'] = requestParameters.code;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/QuickConnect/Authorize`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
if (this.isJsonMime(response.headers.get('content-type'))) {
return new runtime.JSONApiResponse<boolean>(response);
} else {
return new runtime.TextApiResponse(response) as any;
}
}
/**
* Authorizes a pending quick connect request.
*/
async authorize(requestParameters: AuthorizeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<boolean> {
const response = await this.authorizeRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Attempts to retrieve authentication information.
*/
async connectRaw(requestParameters: ConnectRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<QuickConnectResult>> {
if (requestParameters.secret === null || requestParameters.secret === undefined) {
throw new runtime.RequiredError('secret','Required parameter requestParameters.secret was null or undefined when calling connect.');
}
const queryParameters: any = {};
if (requestParameters.secret !== undefined) {
queryParameters['secret'] = requestParameters.secret;
}
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/QuickConnect/Connect`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => QuickConnectResultFromJSON(jsonValue));
}
/**
* Attempts to retrieve authentication information.
*/
async connect(requestParameters: ConnectRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<QuickConnectResult> {
const response = await this.connectRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets the current quick connect state.
*/
async getEnabledRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<boolean>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/QuickConnect/Enabled`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
if (this.isJsonMime(response.headers.get('content-type'))) {
return new runtime.JSONApiResponse<boolean>(response);
} else {
return new runtime.TextApiResponse(response) as any;
}
}
/**
* Gets the current quick connect state.
*/
async getEnabled(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<boolean> {
const response = await this.getEnabledRaw(initOverrides);
return await response.value();
}
/**
* Initiate a new quick connect request.
*/
async initiateRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<QuickConnectResult>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/QuickConnect/Initiate`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => QuickConnectResultFromJSON(jsonValue));
}
/**
* Initiate a new quick connect request.
*/
async initiate(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<QuickConnectResult> {
const response = await this.initiateRaw(initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,191 @@
/* 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 {
ImageProviderInfo,
ImageType,
ProblemDetails,
RemoteImageResult,
} from '../models';
import {
ImageProviderInfoFromJSON,
ImageProviderInfoToJSON,
ImageTypeFromJSON,
ImageTypeToJSON,
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
RemoteImageResultFromJSON,
RemoteImageResultToJSON,
} from '../models';
export interface DownloadRemoteImageRequest {
itemId: string;
type: ImageType;
imageUrl?: string;
}
export interface GetRemoteImageProvidersRequest {
itemId: string;
}
export interface GetRemoteImagesRequest {
itemId: string;
type?: ImageType;
startIndex?: number;
limit?: number;
providerName?: string;
includeAllLanguages?: boolean;
}
/**
*
*/
export class RemoteImageApi extends runtime.BaseAPI {
/**
* Downloads a remote image for an item.
*/
async downloadRemoteImageRaw(requestParameters: DownloadRemoteImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling downloadRemoteImage.');
}
if (requestParameters.type === null || requestParameters.type === undefined) {
throw new runtime.RequiredError('type','Required parameter requestParameters.type was null or undefined when calling downloadRemoteImage.');
}
const queryParameters: any = {};
if (requestParameters.type !== undefined) {
queryParameters['type'] = requestParameters.type;
}
if (requestParameters.imageUrl !== undefined) {
queryParameters['imageUrl'] = requestParameters.imageUrl;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Items/{itemId}/RemoteImages/Download`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Downloads a remote image for an item.
*/
async downloadRemoteImage(requestParameters: DownloadRemoteImageRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.downloadRemoteImageRaw(requestParameters, initOverrides);
}
/**
* Gets available remote image providers for an item.
*/
async getRemoteImageProvidersRaw(requestParameters: GetRemoteImageProvidersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<ImageProviderInfo>>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getRemoteImageProviders.');
}
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: `/Items/{itemId}/RemoteImages/Providers`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(ImageProviderInfoFromJSON));
}
/**
* Gets available remote image providers for an item.
*/
async getRemoteImageProviders(requestParameters: GetRemoteImageProvidersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<ImageProviderInfo>> {
const response = await this.getRemoteImageProvidersRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets available remote images for an item.
*/
async getRemoteImagesRaw(requestParameters: GetRemoteImagesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RemoteImageResult>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getRemoteImages.');
}
const queryParameters: any = {};
if (requestParameters.type !== undefined) {
queryParameters['type'] = requestParameters.type;
}
if (requestParameters.startIndex !== undefined) {
queryParameters['startIndex'] = requestParameters.startIndex;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.providerName !== undefined) {
queryParameters['providerName'] = requestParameters.providerName;
}
if (requestParameters.includeAllLanguages !== undefined) {
queryParameters['includeAllLanguages'] = requestParameters.includeAllLanguages;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Items/{itemId}/RemoteImages`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => RemoteImageResultFromJSON(jsonValue));
}
/**
* Gets available remote images for an item.
*/
async getRemoteImages(requestParameters: GetRemoteImagesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<RemoteImageResult> {
const response = await this.getRemoteImagesRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,236 @@
/* 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<TaskTriggerInfo>;
}
/**
*
*/
export class ScheduledTasksApi extends runtime.BaseAPI {
/**
* Get task by id.
*/
async getTaskRaw(requestParameters: GetTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<TaskInfo>> {
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<TaskInfo> {
const response = await this.getTaskRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get tasks.
*/
async getTasksRaw(requestParameters: GetTasksRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<TaskInfo>>> {
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<Array<TaskInfo>> {
const response = await this.getTasksRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Start specified task.
*/
async startTaskRaw(requestParameters: StartTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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<void> {
await this.startTaskRaw(requestParameters, initOverrides);
}
/**
* Stop specified task.
*/
async stopTaskRaw(requestParameters: StopTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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<void> {
await this.stopTaskRaw(requestParameters, initOverrides);
}
/**
* Update specified task triggers.
*/
async updateTaskRaw(requestParameters: UpdateTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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<void> {
await this.updateTaskRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,160 @@
/* 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 {
BaseItemKind,
SearchHintResult,
} from '../models';
import {
BaseItemKindFromJSON,
BaseItemKindToJSON,
SearchHintResultFromJSON,
SearchHintResultToJSON,
} from '../models';
export interface GetRequest {
searchTerm: string;
startIndex?: number;
limit?: number;
userId?: string;
includeItemTypes?: Array<BaseItemKind>;
excludeItemTypes?: Array<BaseItemKind>;
mediaTypes?: Array<string>;
parentId?: string;
isMovie?: boolean;
isSeries?: boolean;
isNews?: boolean;
isKids?: boolean;
isSports?: boolean;
includePeople?: boolean;
includeMedia?: boolean;
includeGenres?: boolean;
includeStudios?: boolean;
includeArtists?: boolean;
}
/**
*
*/
export class SearchApi extends runtime.BaseAPI {
/**
* Gets the search hint result.
*/
async getRaw(requestParameters: GetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SearchHintResult>> {
if (requestParameters.searchTerm === null || requestParameters.searchTerm === undefined) {
throw new runtime.RequiredError('searchTerm','Required parameter requestParameters.searchTerm was null or undefined when calling get.');
}
const queryParameters: any = {};
if (requestParameters.startIndex !== undefined) {
queryParameters['startIndex'] = requestParameters.startIndex;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.searchTerm !== undefined) {
queryParameters['searchTerm'] = requestParameters.searchTerm;
}
if (requestParameters.includeItemTypes) {
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
}
if (requestParameters.excludeItemTypes) {
queryParameters['excludeItemTypes'] = requestParameters.excludeItemTypes;
}
if (requestParameters.mediaTypes) {
queryParameters['mediaTypes'] = requestParameters.mediaTypes;
}
if (requestParameters.parentId !== undefined) {
queryParameters['parentId'] = requestParameters.parentId;
}
if (requestParameters.isMovie !== undefined) {
queryParameters['isMovie'] = requestParameters.isMovie;
}
if (requestParameters.isSeries !== undefined) {
queryParameters['isSeries'] = requestParameters.isSeries;
}
if (requestParameters.isNews !== undefined) {
queryParameters['isNews'] = requestParameters.isNews;
}
if (requestParameters.isKids !== undefined) {
queryParameters['isKids'] = requestParameters.isKids;
}
if (requestParameters.isSports !== undefined) {
queryParameters['isSports'] = requestParameters.isSports;
}
if (requestParameters.includePeople !== undefined) {
queryParameters['includePeople'] = requestParameters.includePeople;
}
if (requestParameters.includeMedia !== undefined) {
queryParameters['includeMedia'] = requestParameters.includeMedia;
}
if (requestParameters.includeGenres !== undefined) {
queryParameters['includeGenres'] = requestParameters.includeGenres;
}
if (requestParameters.includeStudios !== undefined) {
queryParameters['includeStudios'] = requestParameters.includeStudios;
}
if (requestParameters.includeArtists !== undefined) {
queryParameters['includeArtists'] = requestParameters.includeArtists;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Search/Hints`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => SearchHintResultFromJSON(jsonValue));
}
/**
* Gets the search hint result.
*/
async get(requestParameters: GetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SearchHintResult> {
const response = await this.getRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,798 @@
/* 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 {
BaseItemKind,
GeneralCommandType,
NameIdPair,
PlayCommand,
PlaystateCommand,
PostFullCapabilitiesRequest,
SendFullGeneralCommandRequest,
SendMessageCommandRequest,
SessionInfo,
} from '../models';
import {
BaseItemKindFromJSON,
BaseItemKindToJSON,
GeneralCommandTypeFromJSON,
GeneralCommandTypeToJSON,
NameIdPairFromJSON,
NameIdPairToJSON,
PlayCommandFromJSON,
PlayCommandToJSON,
PlaystateCommandFromJSON,
PlaystateCommandToJSON,
PostFullCapabilitiesRequestFromJSON,
PostFullCapabilitiesRequestToJSON,
SendFullGeneralCommandRequestFromJSON,
SendFullGeneralCommandRequestToJSON,
SendMessageCommandRequestFromJSON,
SendMessageCommandRequestToJSON,
SessionInfoFromJSON,
SessionInfoToJSON,
} from '../models';
export interface AddUserToSessionRequest {
sessionId: string;
userId: string;
}
export interface DisplayContentRequest {
sessionId: string;
itemType: BaseItemKind;
itemId: string;
itemName: string;
}
export interface GetSessionsRequest {
controllableByUserId?: string;
deviceId?: string;
activeWithinSeconds?: number;
}
export interface PlayRequest {
sessionId: string;
playCommand: PlayCommand;
itemIds: Array<string>;
startPositionTicks?: number;
mediaSourceId?: string;
audioStreamIndex?: number;
subtitleStreamIndex?: number;
startIndex?: number;
}
export interface PostCapabilitiesRequest {
id?: string;
playableMediaTypes?: Array<string>;
supportedCommands?: Array<GeneralCommandType>;
supportsMediaControl?: boolean;
supportsSync?: boolean;
supportsPersistentIdentifier?: boolean;
}
export interface PostFullCapabilitiesOperationRequest {
postFullCapabilitiesRequest: PostFullCapabilitiesRequest;
id?: string;
}
export interface RemoveUserFromSessionRequest {
sessionId: string;
userId: string;
}
export interface ReportViewingRequest {
itemId: string;
sessionId?: string;
}
export interface SendFullGeneralCommandOperationRequest {
sessionId: string;
sendFullGeneralCommandRequest: SendFullGeneralCommandRequest;
}
export interface SendGeneralCommandRequest {
sessionId: string;
command: GeneralCommandType;
}
export interface SendMessageCommandOperationRequest {
sessionId: string;
sendMessageCommandRequest: SendMessageCommandRequest;
}
export interface SendPlaystateCommandRequest {
sessionId: string;
command: PlaystateCommand;
seekPositionTicks?: number;
controllingUserId?: string;
}
export interface SendSystemCommandRequest {
sessionId: string;
command: GeneralCommandType;
}
/**
*
*/
export class SessionApi extends runtime.BaseAPI {
/**
* Adds an additional user to a session.
*/
async addUserToSessionRaw(requestParameters: AddUserToSessionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.sessionId === null || requestParameters.sessionId === undefined) {
throw new runtime.RequiredError('sessionId','Required parameter requestParameters.sessionId was null or undefined when calling addUserToSession.');
}
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling addUserToSession.');
}
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: `/Sessions/{sessionId}/User/{userId}`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))).replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Adds an additional user to a session.
*/
async addUserToSession(requestParameters: AddUserToSessionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.addUserToSessionRaw(requestParameters, initOverrides);
}
/**
* Instructs a session to browse to an item or view.
*/
async displayContentRaw(requestParameters: DisplayContentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.sessionId === null || requestParameters.sessionId === undefined) {
throw new runtime.RequiredError('sessionId','Required parameter requestParameters.sessionId was null or undefined when calling displayContent.');
}
if (requestParameters.itemType === null || requestParameters.itemType === undefined) {
throw new runtime.RequiredError('itemType','Required parameter requestParameters.itemType was null or undefined when calling displayContent.');
}
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling displayContent.');
}
if (requestParameters.itemName === null || requestParameters.itemName === undefined) {
throw new runtime.RequiredError('itemName','Required parameter requestParameters.itemName was null or undefined when calling displayContent.');
}
const queryParameters: any = {};
if (requestParameters.itemType !== undefined) {
queryParameters['itemType'] = requestParameters.itemType;
}
if (requestParameters.itemId !== undefined) {
queryParameters['itemId'] = requestParameters.itemId;
}
if (requestParameters.itemName !== undefined) {
queryParameters['itemName'] = requestParameters.itemName;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Sessions/{sessionId}/Viewing`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Instructs a session to browse to an item or view.
*/
async displayContent(requestParameters: DisplayContentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.displayContentRaw(requestParameters, initOverrides);
}
/**
* Get all auth providers.
*/
async getAuthProvidersRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<NameIdPair>>> {
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: `/Auth/Providers`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(NameIdPairFromJSON));
}
/**
* Get all auth providers.
*/
async getAuthProviders(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<NameIdPair>> {
const response = await this.getAuthProvidersRaw(initOverrides);
return await response.value();
}
/**
* Get all password reset providers.
*/
async getPasswordResetProvidersRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<NameIdPair>>> {
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: `/Auth/PasswordResetProviders`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(NameIdPairFromJSON));
}
/**
* Get all password reset providers.
*/
async getPasswordResetProviders(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<NameIdPair>> {
const response = await this.getPasswordResetProvidersRaw(initOverrides);
return await response.value();
}
/**
* Gets a list of sessions.
*/
async getSessionsRaw(requestParameters: GetSessionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<SessionInfo>>> {
const queryParameters: any = {};
if (requestParameters.controllableByUserId !== undefined) {
queryParameters['controllableByUserId'] = requestParameters.controllableByUserId;
}
if (requestParameters.deviceId !== undefined) {
queryParameters['deviceId'] = requestParameters.deviceId;
}
if (requestParameters.activeWithinSeconds !== undefined) {
queryParameters['activeWithinSeconds'] = requestParameters.activeWithinSeconds;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Sessions`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(SessionInfoFromJSON));
}
/**
* Gets a list of sessions.
*/
async getSessions(requestParameters: GetSessionsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<SessionInfo>> {
const response = await this.getSessionsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Instructs a session to play an item.
*/
async playRaw(requestParameters: PlayRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.sessionId === null || requestParameters.sessionId === undefined) {
throw new runtime.RequiredError('sessionId','Required parameter requestParameters.sessionId was null or undefined when calling play.');
}
if (requestParameters.playCommand === null || requestParameters.playCommand === undefined) {
throw new runtime.RequiredError('playCommand','Required parameter requestParameters.playCommand was null or undefined when calling play.');
}
if (requestParameters.itemIds === null || requestParameters.itemIds === undefined) {
throw new runtime.RequiredError('itemIds','Required parameter requestParameters.itemIds was null or undefined when calling play.');
}
const queryParameters: any = {};
if (requestParameters.playCommand !== undefined) {
queryParameters['playCommand'] = requestParameters.playCommand;
}
if (requestParameters.itemIds) {
queryParameters['itemIds'] = requestParameters.itemIds;
}
if (requestParameters.startPositionTicks !== undefined) {
queryParameters['startPositionTicks'] = requestParameters.startPositionTicks;
}
if (requestParameters.mediaSourceId !== undefined) {
queryParameters['mediaSourceId'] = requestParameters.mediaSourceId;
}
if (requestParameters.audioStreamIndex !== undefined) {
queryParameters['audioStreamIndex'] = requestParameters.audioStreamIndex;
}
if (requestParameters.subtitleStreamIndex !== undefined) {
queryParameters['subtitleStreamIndex'] = requestParameters.subtitleStreamIndex;
}
if (requestParameters.startIndex !== undefined) {
queryParameters['startIndex'] = requestParameters.startIndex;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Sessions/{sessionId}/Playing`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Instructs a session to play an item.
*/
async play(requestParameters: PlayRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.playRaw(requestParameters, initOverrides);
}
/**
* Updates capabilities for a device.
*/
async postCapabilitiesRaw(requestParameters: PostCapabilitiesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
if (requestParameters.id !== undefined) {
queryParameters['id'] = requestParameters.id;
}
if (requestParameters.playableMediaTypes) {
queryParameters['playableMediaTypes'] = requestParameters.playableMediaTypes;
}
if (requestParameters.supportedCommands) {
queryParameters['supportedCommands'] = requestParameters.supportedCommands;
}
if (requestParameters.supportsMediaControl !== undefined) {
queryParameters['supportsMediaControl'] = requestParameters.supportsMediaControl;
}
if (requestParameters.supportsSync !== undefined) {
queryParameters['supportsSync'] = requestParameters.supportsSync;
}
if (requestParameters.supportsPersistentIdentifier !== undefined) {
queryParameters['supportsPersistentIdentifier'] = requestParameters.supportsPersistentIdentifier;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Sessions/Capabilities`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Updates capabilities for a device.
*/
async postCapabilities(requestParameters: PostCapabilitiesRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.postCapabilitiesRaw(requestParameters, initOverrides);
}
/**
* Updates capabilities for a device.
*/
async postFullCapabilitiesRaw(requestParameters: PostFullCapabilitiesOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.postFullCapabilitiesRequest === null || requestParameters.postFullCapabilitiesRequest === undefined) {
throw new runtime.RequiredError('postFullCapabilitiesRequest','Required parameter requestParameters.postFullCapabilitiesRequest was null or undefined when calling postFullCapabilities.');
}
const queryParameters: any = {};
if (requestParameters.id !== undefined) {
queryParameters['id'] = requestParameters.id;
}
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: `/Sessions/Capabilities/Full`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: PostFullCapabilitiesRequestToJSON(requestParameters.postFullCapabilitiesRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Updates capabilities for a device.
*/
async postFullCapabilities(requestParameters: PostFullCapabilitiesOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.postFullCapabilitiesRaw(requestParameters, initOverrides);
}
/**
* Removes an additional user from a session.
*/
async removeUserFromSessionRaw(requestParameters: RemoveUserFromSessionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.sessionId === null || requestParameters.sessionId === undefined) {
throw new runtime.RequiredError('sessionId','Required parameter requestParameters.sessionId was null or undefined when calling removeUserFromSession.');
}
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling removeUserFromSession.');
}
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: `/Sessions/{sessionId}/User/{userId}`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))).replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Removes an additional user from a session.
*/
async removeUserFromSession(requestParameters: RemoveUserFromSessionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.removeUserFromSessionRaw(requestParameters, initOverrides);
}
/**
* Reports that a session has ended.
*/
async reportSessionEndedRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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: `/Sessions/Logout`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Reports that a session has ended.
*/
async reportSessionEnded(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.reportSessionEndedRaw(initOverrides);
}
/**
* Reports that a session is viewing an item.
*/
async reportViewingRaw(requestParameters: ReportViewingRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling reportViewing.');
}
const queryParameters: any = {};
if (requestParameters.sessionId !== undefined) {
queryParameters['sessionId'] = requestParameters.sessionId;
}
if (requestParameters.itemId !== undefined) {
queryParameters['itemId'] = requestParameters.itemId;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Sessions/Viewing`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Reports that a session is viewing an item.
*/
async reportViewing(requestParameters: ReportViewingRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.reportViewingRaw(requestParameters, initOverrides);
}
/**
* Issues a full general command to a client.
*/
async sendFullGeneralCommandRaw(requestParameters: SendFullGeneralCommandOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.sessionId === null || requestParameters.sessionId === undefined) {
throw new runtime.RequiredError('sessionId','Required parameter requestParameters.sessionId was null or undefined when calling sendFullGeneralCommand.');
}
if (requestParameters.sendFullGeneralCommandRequest === null || requestParameters.sendFullGeneralCommandRequest === undefined) {
throw new runtime.RequiredError('sendFullGeneralCommandRequest','Required parameter requestParameters.sendFullGeneralCommandRequest was null or undefined when calling sendFullGeneralCommand.');
}
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: `/Sessions/{sessionId}/Command`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SendFullGeneralCommandRequestToJSON(requestParameters.sendFullGeneralCommandRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Issues a full general command to a client.
*/
async sendFullGeneralCommand(requestParameters: SendFullGeneralCommandOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.sendFullGeneralCommandRaw(requestParameters, initOverrides);
}
/**
* Issues a general command to a client.
*/
async sendGeneralCommandRaw(requestParameters: SendGeneralCommandRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.sessionId === null || requestParameters.sessionId === undefined) {
throw new runtime.RequiredError('sessionId','Required parameter requestParameters.sessionId was null or undefined when calling sendGeneralCommand.');
}
if (requestParameters.command === null || requestParameters.command === undefined) {
throw new runtime.RequiredError('command','Required parameter requestParameters.command was null or undefined when calling sendGeneralCommand.');
}
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: `/Sessions/{sessionId}/Command/{command}`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))).replace(`{${"command"}}`, encodeURIComponent(String(requestParameters.command))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Issues a general command to a client.
*/
async sendGeneralCommand(requestParameters: SendGeneralCommandRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.sendGeneralCommandRaw(requestParameters, initOverrides);
}
/**
* Issues a command to a client to display a message to the user.
*/
async sendMessageCommandRaw(requestParameters: SendMessageCommandOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.sessionId === null || requestParameters.sessionId === undefined) {
throw new runtime.RequiredError('sessionId','Required parameter requestParameters.sessionId was null or undefined when calling sendMessageCommand.');
}
if (requestParameters.sendMessageCommandRequest === null || requestParameters.sendMessageCommandRequest === undefined) {
throw new runtime.RequiredError('sendMessageCommandRequest','Required parameter requestParameters.sendMessageCommandRequest was null or undefined when calling sendMessageCommand.');
}
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: `/Sessions/{sessionId}/Message`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SendMessageCommandRequestToJSON(requestParameters.sendMessageCommandRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Issues a command to a client to display a message to the user.
*/
async sendMessageCommand(requestParameters: SendMessageCommandOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.sendMessageCommandRaw(requestParameters, initOverrides);
}
/**
* Issues a playstate command to a client.
*/
async sendPlaystateCommandRaw(requestParameters: SendPlaystateCommandRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.sessionId === null || requestParameters.sessionId === undefined) {
throw new runtime.RequiredError('sessionId','Required parameter requestParameters.sessionId was null or undefined when calling sendPlaystateCommand.');
}
if (requestParameters.command === null || requestParameters.command === undefined) {
throw new runtime.RequiredError('command','Required parameter requestParameters.command was null or undefined when calling sendPlaystateCommand.');
}
const queryParameters: any = {};
if (requestParameters.seekPositionTicks !== undefined) {
queryParameters['seekPositionTicks'] = requestParameters.seekPositionTicks;
}
if (requestParameters.controllingUserId !== undefined) {
queryParameters['controllingUserId'] = requestParameters.controllingUserId;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Sessions/{sessionId}/Playing/{command}`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))).replace(`{${"command"}}`, encodeURIComponent(String(requestParameters.command))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Issues a playstate command to a client.
*/
async sendPlaystateCommand(requestParameters: SendPlaystateCommandRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.sendPlaystateCommandRaw(requestParameters, initOverrides);
}
/**
* Issues a system command to a client.
*/
async sendSystemCommandRaw(requestParameters: SendSystemCommandRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.sessionId === null || requestParameters.sessionId === undefined) {
throw new runtime.RequiredError('sessionId','Required parameter requestParameters.sessionId was null or undefined when calling sendSystemCommand.');
}
if (requestParameters.command === null || requestParameters.command === undefined) {
throw new runtime.RequiredError('command','Required parameter requestParameters.command was null or undefined when calling sendSystemCommand.');
}
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: `/Sessions/{sessionId}/System/{command}`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))).replace(`{${"command"}}`, encodeURIComponent(String(requestParameters.command))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Issues a system command to a client.
*/
async sendSystemCommand(requestParameters: SendSystemCommandRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.sendSystemCommandRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,277 @@
/* 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 {
SetRemoteAccessRequest,
StartupConfigurationDto,
StartupUserDto,
UpdateInitialConfigurationRequest,
UpdateStartupUserRequest,
} from '../models';
import {
SetRemoteAccessRequestFromJSON,
SetRemoteAccessRequestToJSON,
StartupConfigurationDtoFromJSON,
StartupConfigurationDtoToJSON,
StartupUserDtoFromJSON,
StartupUserDtoToJSON,
UpdateInitialConfigurationRequestFromJSON,
UpdateInitialConfigurationRequestToJSON,
UpdateStartupUserRequestFromJSON,
UpdateStartupUserRequestToJSON,
} from '../models';
export interface SetRemoteAccessOperationRequest {
setRemoteAccessRequest: SetRemoteAccessRequest;
}
export interface UpdateInitialConfigurationOperationRequest {
updateInitialConfigurationRequest: UpdateInitialConfigurationRequest;
}
export interface UpdateStartupUserOperationRequest {
updateStartupUserRequest?: UpdateStartupUserRequest;
}
/**
*
*/
export class StartupApi extends runtime.BaseAPI {
/**
* Completes the startup wizard.
*/
async completeWizardRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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: `/Startup/Complete`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Completes the startup wizard.
*/
async completeWizard(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.completeWizardRaw(initOverrides);
}
/**
* Gets the first user.
*/
async getFirstUserRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<StartupUserDto>> {
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: `/Startup/User`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => StartupUserDtoFromJSON(jsonValue));
}
/**
* Gets the first user.
*/
async getFirstUser(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<StartupUserDto> {
const response = await this.getFirstUserRaw(initOverrides);
return await response.value();
}
/**
* Gets the first user.
*/
async getFirstUser2Raw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<StartupUserDto>> {
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: `/Startup/FirstUser`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => StartupUserDtoFromJSON(jsonValue));
}
/**
* Gets the first user.
*/
async getFirstUser2(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<StartupUserDto> {
const response = await this.getFirstUser2Raw(initOverrides);
return await response.value();
}
/**
* Gets the initial startup wizard configuration.
*/
async getStartupConfigurationRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<StartupConfigurationDto>> {
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: `/Startup/Configuration`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => StartupConfigurationDtoFromJSON(jsonValue));
}
/**
* Gets the initial startup wizard configuration.
*/
async getStartupConfiguration(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<StartupConfigurationDto> {
const response = await this.getStartupConfigurationRaw(initOverrides);
return await response.value();
}
/**
* Sets remote access and UPnP.
*/
async setRemoteAccessRaw(requestParameters: SetRemoteAccessOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.setRemoteAccessRequest === null || requestParameters.setRemoteAccessRequest === undefined) {
throw new runtime.RequiredError('setRemoteAccessRequest','Required parameter requestParameters.setRemoteAccessRequest was null or undefined when calling setRemoteAccess.');
}
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: `/Startup/RemoteAccess`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SetRemoteAccessRequestToJSON(requestParameters.setRemoteAccessRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Sets remote access and UPnP.
*/
async setRemoteAccess(requestParameters: SetRemoteAccessOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.setRemoteAccessRaw(requestParameters, initOverrides);
}
/**
* Sets the initial startup wizard configuration.
*/
async updateInitialConfigurationRaw(requestParameters: UpdateInitialConfigurationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.updateInitialConfigurationRequest === null || requestParameters.updateInitialConfigurationRequest === undefined) {
throw new runtime.RequiredError('updateInitialConfigurationRequest','Required parameter requestParameters.updateInitialConfigurationRequest was null or undefined when calling updateInitialConfiguration.');
}
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: `/Startup/Configuration`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: UpdateInitialConfigurationRequestToJSON(requestParameters.updateInitialConfigurationRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Sets the initial startup wizard configuration.
*/
async updateInitialConfiguration(requestParameters: UpdateInitialConfigurationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.updateInitialConfigurationRaw(requestParameters, initOverrides);
}
/**
* Sets the user name and password.
*/
async updateStartupUserRaw(requestParameters: UpdateStartupUserOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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: `/Startup/User`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: UpdateStartupUserRequestToJSON(requestParameters.updateStartupUserRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Sets the user name and password.
*/
async updateStartupUser(requestParameters: UpdateStartupUserOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.updateStartupUserRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,203 @@
/* 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 {
BaseItemDto,
BaseItemDtoQueryResult,
BaseItemKind,
ImageType,
ItemFields,
} from '../models';
import {
BaseItemDtoFromJSON,
BaseItemDtoToJSON,
BaseItemDtoQueryResultFromJSON,
BaseItemDtoQueryResultToJSON,
BaseItemKindFromJSON,
BaseItemKindToJSON,
ImageTypeFromJSON,
ImageTypeToJSON,
ItemFieldsFromJSON,
ItemFieldsToJSON,
} from '../models';
export interface GetStudioRequest {
name: string;
userId?: string;
}
export interface GetStudiosRequest {
startIndex?: number;
limit?: number;
searchTerm?: string;
parentId?: string;
fields?: Array<ItemFields>;
excludeItemTypes?: Array<BaseItemKind>;
includeItemTypes?: Array<BaseItemKind>;
isFavorite?: boolean;
enableUserData?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
userId?: string;
nameStartsWithOrGreater?: string;
nameStartsWith?: string;
nameLessThan?: string;
enableImages?: boolean;
enableTotalRecordCount?: boolean;
}
/**
*
*/
export class StudiosApi extends runtime.BaseAPI {
/**
* Gets a studio by name.
*/
async getStudioRaw(requestParameters: GetStudioRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDto>> {
if (requestParameters.name === null || requestParameters.name === undefined) {
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getStudio.');
}
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Studios/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoFromJSON(jsonValue));
}
/**
* Gets a studio by name.
*/
async getStudio(requestParameters: GetStudioRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDto> {
const response = await this.getStudioRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets all studios from a given item, folder, or the entire library.
*/
async getStudiosRaw(requestParameters: GetStudiosRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
const queryParameters: any = {};
if (requestParameters.startIndex !== undefined) {
queryParameters['startIndex'] = requestParameters.startIndex;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.searchTerm !== undefined) {
queryParameters['searchTerm'] = requestParameters.searchTerm;
}
if (requestParameters.parentId !== undefined) {
queryParameters['parentId'] = requestParameters.parentId;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.excludeItemTypes) {
queryParameters['excludeItemTypes'] = requestParameters.excludeItemTypes;
}
if (requestParameters.includeItemTypes) {
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
}
if (requestParameters.isFavorite !== undefined) {
queryParameters['isFavorite'] = requestParameters.isFavorite;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.nameStartsWithOrGreater !== undefined) {
queryParameters['nameStartsWithOrGreater'] = requestParameters.nameStartsWithOrGreater;
}
if (requestParameters.nameStartsWith !== undefined) {
queryParameters['nameStartsWith'] = requestParameters.nameStartsWith;
}
if (requestParameters.nameLessThan !== undefined) {
queryParameters['nameLessThan'] = requestParameters.nameLessThan;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
if (requestParameters.enableTotalRecordCount !== undefined) {
queryParameters['enableTotalRecordCount'] = requestParameters.enableTotalRecordCount;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Studios`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Gets all studios from a given item, folder, or the entire library.
*/
async getStudios(requestParameters: GetStudiosRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getStudiosRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,562 @@
/* 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 {
FontFile,
ProblemDetails,
RemoteSubtitleInfo,
UploadSubtitleRequest,
} from '../models';
import {
FontFileFromJSON,
FontFileToJSON,
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
RemoteSubtitleInfoFromJSON,
RemoteSubtitleInfoToJSON,
UploadSubtitleRequestFromJSON,
UploadSubtitleRequestToJSON,
} from '../models';
export interface DeleteSubtitleRequest {
itemId: string;
index: number;
}
export interface DownloadRemoteSubtitlesRequest {
itemId: string;
subtitleId: string;
}
export interface GetFallbackFontRequest {
name: string;
}
export interface GetRemoteSubtitlesRequest {
id: string;
}
export interface GetSubtitleRequest {
routeItemId: string;
routeMediaSourceId: string;
routeIndex: number;
routeFormat: string;
itemId?: string;
mediaSourceId?: string;
index?: number;
format?: string;
endPositionTicks?: number;
copyTimestamps?: boolean;
addVttTimeMap?: boolean;
startPositionTicks?: number;
}
export interface GetSubtitlePlaylistRequest {
itemId: string;
index: number;
mediaSourceId: string;
segmentLength: number;
}
export interface GetSubtitleWithTicksRequest {
routeItemId: string;
routeMediaSourceId: string;
routeIndex: number;
routeStartPositionTicks: number;
routeFormat: string;
itemId?: string;
mediaSourceId?: string;
index?: number;
startPositionTicks?: number;
format?: string;
endPositionTicks?: number;
copyTimestamps?: boolean;
addVttTimeMap?: boolean;
}
export interface SearchRemoteSubtitlesRequest {
itemId: string;
language: string;
isPerfectMatch?: boolean;
}
export interface UploadSubtitleOperationRequest {
itemId: string;
uploadSubtitleRequest: UploadSubtitleRequest;
}
/**
*
*/
export class SubtitleApi extends runtime.BaseAPI {
/**
* Deletes an external subtitle file.
*/
async deleteSubtitleRaw(requestParameters: DeleteSubtitleRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling deleteSubtitle.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling deleteSubtitle.');
}
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: `/Videos/{itemId}/Subtitles/{index}`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Deletes an external subtitle file.
*/
async deleteSubtitle(requestParameters: DeleteSubtitleRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.deleteSubtitleRaw(requestParameters, initOverrides);
}
/**
* Downloads a remote subtitle.
*/
async downloadRemoteSubtitlesRaw(requestParameters: DownloadRemoteSubtitlesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling downloadRemoteSubtitles.');
}
if (requestParameters.subtitleId === null || requestParameters.subtitleId === undefined) {
throw new runtime.RequiredError('subtitleId','Required parameter requestParameters.subtitleId was null or undefined when calling downloadRemoteSubtitles.');
}
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: `/Items/{itemId}/RemoteSearch/Subtitles/{subtitleId}`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))).replace(`{${"subtitleId"}}`, encodeURIComponent(String(requestParameters.subtitleId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Downloads a remote subtitle.
*/
async downloadRemoteSubtitles(requestParameters: DownloadRemoteSubtitlesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.downloadRemoteSubtitlesRaw(requestParameters, initOverrides);
}
/**
* Gets a fallback font file.
*/
async getFallbackFontRaw(requestParameters: GetFallbackFontRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.name === null || requestParameters.name === undefined) {
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getFallbackFont.');
}
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: `/FallbackFont/Fonts/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets a fallback font file.
*/
async getFallbackFont(requestParameters: GetFallbackFontRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getFallbackFontRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets a list of available fallback font files.
*/
async getFallbackFontListRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<FontFile>>> {
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: `/FallbackFont/Fonts`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(FontFileFromJSON));
}
/**
* Gets a list of available fallback font files.
*/
async getFallbackFontList(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<FontFile>> {
const response = await this.getFallbackFontListRaw(initOverrides);
return await response.value();
}
/**
* Gets the remote subtitles.
*/
async getRemoteSubtitlesRaw(requestParameters: GetRemoteSubtitlesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getRemoteSubtitles.');
}
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: `/Providers/Subtitles/Subtitles/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets the remote subtitles.
*/
async getRemoteSubtitles(requestParameters: GetRemoteSubtitlesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getRemoteSubtitlesRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets subtitles in a specified format.
*/
async getSubtitleRaw(requestParameters: GetSubtitleRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.routeItemId === null || requestParameters.routeItemId === undefined) {
throw new runtime.RequiredError('routeItemId','Required parameter requestParameters.routeItemId was null or undefined when calling getSubtitle.');
}
if (requestParameters.routeMediaSourceId === null || requestParameters.routeMediaSourceId === undefined) {
throw new runtime.RequiredError('routeMediaSourceId','Required parameter requestParameters.routeMediaSourceId was null or undefined when calling getSubtitle.');
}
if (requestParameters.routeIndex === null || requestParameters.routeIndex === undefined) {
throw new runtime.RequiredError('routeIndex','Required parameter requestParameters.routeIndex was null or undefined when calling getSubtitle.');
}
if (requestParameters.routeFormat === null || requestParameters.routeFormat === undefined) {
throw new runtime.RequiredError('routeFormat','Required parameter requestParameters.routeFormat was null or undefined when calling getSubtitle.');
}
const queryParameters: any = {};
if (requestParameters.itemId !== undefined) {
queryParameters['itemId'] = requestParameters.itemId;
}
if (requestParameters.mediaSourceId !== undefined) {
queryParameters['mediaSourceId'] = requestParameters.mediaSourceId;
}
if (requestParameters.index !== undefined) {
queryParameters['index'] = requestParameters.index;
}
if (requestParameters.format !== undefined) {
queryParameters['format'] = requestParameters.format;
}
if (requestParameters.endPositionTicks !== undefined) {
queryParameters['endPositionTicks'] = requestParameters.endPositionTicks;
}
if (requestParameters.copyTimestamps !== undefined) {
queryParameters['copyTimestamps'] = requestParameters.copyTimestamps;
}
if (requestParameters.addVttTimeMap !== undefined) {
queryParameters['addVttTimeMap'] = requestParameters.addVttTimeMap;
}
if (requestParameters.startPositionTicks !== undefined) {
queryParameters['startPositionTicks'] = requestParameters.startPositionTicks;
}
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/Videos/{routeItemId}/{routeMediaSourceId}/Subtitles/{routeIndex}/Stream.{routeFormat}`.replace(`{${"routeItemId"}}`, encodeURIComponent(String(requestParameters.routeItemId))).replace(`{${"routeMediaSourceId"}}`, encodeURIComponent(String(requestParameters.routeMediaSourceId))).replace(`{${"routeIndex"}}`, encodeURIComponent(String(requestParameters.routeIndex))).replace(`{${"routeFormat"}}`, encodeURIComponent(String(requestParameters.routeFormat))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets subtitles in a specified format.
*/
async getSubtitle(requestParameters: GetSubtitleRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getSubtitleRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets an HLS subtitle playlist.
*/
async getSubtitlePlaylistRaw(requestParameters: GetSubtitlePlaylistRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getSubtitlePlaylist.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling getSubtitlePlaylist.');
}
if (requestParameters.mediaSourceId === null || requestParameters.mediaSourceId === undefined) {
throw new runtime.RequiredError('mediaSourceId','Required parameter requestParameters.mediaSourceId was null or undefined when calling getSubtitlePlaylist.');
}
if (requestParameters.segmentLength === null || requestParameters.segmentLength === undefined) {
throw new runtime.RequiredError('segmentLength','Required parameter requestParameters.segmentLength was null or undefined when calling getSubtitlePlaylist.');
}
const queryParameters: any = {};
if (requestParameters.segmentLength !== undefined) {
queryParameters['segmentLength'] = requestParameters.segmentLength;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Videos/{itemId}/{mediaSourceId}/Subtitles/{index}/subtitles.m3u8`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))).replace(`{${"mediaSourceId"}}`, encodeURIComponent(String(requestParameters.mediaSourceId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets an HLS subtitle playlist.
*/
async getSubtitlePlaylist(requestParameters: GetSubtitlePlaylistRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getSubtitlePlaylistRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets subtitles in a specified format.
*/
async getSubtitleWithTicksRaw(requestParameters: GetSubtitleWithTicksRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.routeItemId === null || requestParameters.routeItemId === undefined) {
throw new runtime.RequiredError('routeItemId','Required parameter requestParameters.routeItemId was null or undefined when calling getSubtitleWithTicks.');
}
if (requestParameters.routeMediaSourceId === null || requestParameters.routeMediaSourceId === undefined) {
throw new runtime.RequiredError('routeMediaSourceId','Required parameter requestParameters.routeMediaSourceId was null or undefined when calling getSubtitleWithTicks.');
}
if (requestParameters.routeIndex === null || requestParameters.routeIndex === undefined) {
throw new runtime.RequiredError('routeIndex','Required parameter requestParameters.routeIndex was null or undefined when calling getSubtitleWithTicks.');
}
if (requestParameters.routeStartPositionTicks === null || requestParameters.routeStartPositionTicks === undefined) {
throw new runtime.RequiredError('routeStartPositionTicks','Required parameter requestParameters.routeStartPositionTicks was null or undefined when calling getSubtitleWithTicks.');
}
if (requestParameters.routeFormat === null || requestParameters.routeFormat === undefined) {
throw new runtime.RequiredError('routeFormat','Required parameter requestParameters.routeFormat was null or undefined when calling getSubtitleWithTicks.');
}
const queryParameters: any = {};
if (requestParameters.itemId !== undefined) {
queryParameters['itemId'] = requestParameters.itemId;
}
if (requestParameters.mediaSourceId !== undefined) {
queryParameters['mediaSourceId'] = requestParameters.mediaSourceId;
}
if (requestParameters.index !== undefined) {
queryParameters['index'] = requestParameters.index;
}
if (requestParameters.startPositionTicks !== undefined) {
queryParameters['startPositionTicks'] = requestParameters.startPositionTicks;
}
if (requestParameters.format !== undefined) {
queryParameters['format'] = requestParameters.format;
}
if (requestParameters.endPositionTicks !== undefined) {
queryParameters['endPositionTicks'] = requestParameters.endPositionTicks;
}
if (requestParameters.copyTimestamps !== undefined) {
queryParameters['copyTimestamps'] = requestParameters.copyTimestamps;
}
if (requestParameters.addVttTimeMap !== undefined) {
queryParameters['addVttTimeMap'] = requestParameters.addVttTimeMap;
}
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/Videos/{routeItemId}/{routeMediaSourceId}/Subtitles/{routeIndex}/{routeStartPositionTicks}/Stream.{routeFormat}`.replace(`{${"routeItemId"}}`, encodeURIComponent(String(requestParameters.routeItemId))).replace(`{${"routeMediaSourceId"}}`, encodeURIComponent(String(requestParameters.routeMediaSourceId))).replace(`{${"routeIndex"}}`, encodeURIComponent(String(requestParameters.routeIndex))).replace(`{${"routeStartPositionTicks"}}`, encodeURIComponent(String(requestParameters.routeStartPositionTicks))).replace(`{${"routeFormat"}}`, encodeURIComponent(String(requestParameters.routeFormat))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets subtitles in a specified format.
*/
async getSubtitleWithTicks(requestParameters: GetSubtitleWithTicksRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getSubtitleWithTicksRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Search remote subtitles.
*/
async searchRemoteSubtitlesRaw(requestParameters: SearchRemoteSubtitlesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<RemoteSubtitleInfo>>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling searchRemoteSubtitles.');
}
if (requestParameters.language === null || requestParameters.language === undefined) {
throw new runtime.RequiredError('language','Required parameter requestParameters.language was null or undefined when calling searchRemoteSubtitles.');
}
const queryParameters: any = {};
if (requestParameters.isPerfectMatch !== undefined) {
queryParameters['isPerfectMatch'] = requestParameters.isPerfectMatch;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Items/{itemId}/RemoteSearch/Subtitles/{language}`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))).replace(`{${"language"}}`, encodeURIComponent(String(requestParameters.language))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(RemoteSubtitleInfoFromJSON));
}
/**
* Search remote subtitles.
*/
async searchRemoteSubtitles(requestParameters: SearchRemoteSubtitlesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<RemoteSubtitleInfo>> {
const response = await this.searchRemoteSubtitlesRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Upload an external subtitle file.
*/
async uploadSubtitleRaw(requestParameters: UploadSubtitleOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling uploadSubtitle.');
}
if (requestParameters.uploadSubtitleRequest === null || requestParameters.uploadSubtitleRequest === undefined) {
throw new runtime.RequiredError('uploadSubtitleRequest','Required parameter requestParameters.uploadSubtitleRequest was null or undefined when calling uploadSubtitle.');
}
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: `/Videos/{itemId}/Subtitles`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: UploadSubtitleRequestToJSON(requestParameters.uploadSubtitleRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Upload an external subtitle file.
*/
async uploadSubtitle(requestParameters: UploadSubtitleOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.uploadSubtitleRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,96 @@
/* 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 {
BaseItemDtoQueryResult,
BaseItemKind,
} from '../models';
import {
BaseItemDtoQueryResultFromJSON,
BaseItemDtoQueryResultToJSON,
BaseItemKindFromJSON,
BaseItemKindToJSON,
} from '../models';
export interface GetSuggestionsRequest {
userId: string;
mediaType?: Array<string>;
type?: Array<BaseItemKind>;
startIndex?: number;
limit?: number;
enableTotalRecordCount?: boolean;
}
/**
*
*/
export class SuggestionsApi extends runtime.BaseAPI {
/**
* Gets suggestions.
*/
async getSuggestionsRaw(requestParameters: GetSuggestionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getSuggestions.');
}
const queryParameters: any = {};
if (requestParameters.mediaType) {
queryParameters['mediaType'] = requestParameters.mediaType;
}
if (requestParameters.type) {
queryParameters['type'] = requestParameters.type;
}
if (requestParameters.startIndex !== undefined) {
queryParameters['startIndex'] = requestParameters.startIndex;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.enableTotalRecordCount !== undefined) {
queryParameters['enableTotalRecordCount'] = requestParameters.enableTotalRecordCount;
}
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}/Suggestions`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Gets suggestions.
*/
async getSuggestions(requestParameters: GetSuggestionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getSuggestionsRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,864 @@
/* 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 {
GroupInfoDto,
SyncPlayBufferingRequest,
SyncPlayCreateGroupRequest,
SyncPlayJoinGroupRequest,
SyncPlayMovePlaylistItemRequest,
SyncPlayNextItemRequest,
SyncPlayPingRequest,
SyncPlayPreviousItemRequest,
SyncPlayQueueRequest,
SyncPlayReadyRequest,
SyncPlayRemoveFromPlaylistRequest,
SyncPlaySeekRequest,
SyncPlaySetIgnoreWaitRequest,
SyncPlaySetNewQueueRequest,
SyncPlaySetPlaylistItemRequest,
SyncPlaySetRepeatModeRequest,
SyncPlaySetShuffleModeRequest,
} from '../models';
import {
GroupInfoDtoFromJSON,
GroupInfoDtoToJSON,
SyncPlayBufferingRequestFromJSON,
SyncPlayBufferingRequestToJSON,
SyncPlayCreateGroupRequestFromJSON,
SyncPlayCreateGroupRequestToJSON,
SyncPlayJoinGroupRequestFromJSON,
SyncPlayJoinGroupRequestToJSON,
SyncPlayMovePlaylistItemRequestFromJSON,
SyncPlayMovePlaylistItemRequestToJSON,
SyncPlayNextItemRequestFromJSON,
SyncPlayNextItemRequestToJSON,
SyncPlayPingRequestFromJSON,
SyncPlayPingRequestToJSON,
SyncPlayPreviousItemRequestFromJSON,
SyncPlayPreviousItemRequestToJSON,
SyncPlayQueueRequestFromJSON,
SyncPlayQueueRequestToJSON,
SyncPlayReadyRequestFromJSON,
SyncPlayReadyRequestToJSON,
SyncPlayRemoveFromPlaylistRequestFromJSON,
SyncPlayRemoveFromPlaylistRequestToJSON,
SyncPlaySeekRequestFromJSON,
SyncPlaySeekRequestToJSON,
SyncPlaySetIgnoreWaitRequestFromJSON,
SyncPlaySetIgnoreWaitRequestToJSON,
SyncPlaySetNewQueueRequestFromJSON,
SyncPlaySetNewQueueRequestToJSON,
SyncPlaySetPlaylistItemRequestFromJSON,
SyncPlaySetPlaylistItemRequestToJSON,
SyncPlaySetRepeatModeRequestFromJSON,
SyncPlaySetRepeatModeRequestToJSON,
SyncPlaySetShuffleModeRequestFromJSON,
SyncPlaySetShuffleModeRequestToJSON,
} from '../models';
export interface SyncPlayBufferingOperationRequest {
syncPlayBufferingRequest: SyncPlayBufferingRequest;
}
export interface SyncPlayCreateGroupOperationRequest {
syncPlayCreateGroupRequest: SyncPlayCreateGroupRequest;
}
export interface SyncPlayJoinGroupOperationRequest {
syncPlayJoinGroupRequest: SyncPlayJoinGroupRequest;
}
export interface SyncPlayMovePlaylistItemOperationRequest {
syncPlayMovePlaylistItemRequest: SyncPlayMovePlaylistItemRequest;
}
export interface SyncPlayNextItemOperationRequest {
syncPlayNextItemRequest: SyncPlayNextItemRequest;
}
export interface SyncPlayPingOperationRequest {
syncPlayPingRequest: SyncPlayPingRequest;
}
export interface SyncPlayPreviousItemOperationRequest {
syncPlayPreviousItemRequest: SyncPlayPreviousItemRequest;
}
export interface SyncPlayQueueOperationRequest {
syncPlayQueueRequest: SyncPlayQueueRequest;
}
export interface SyncPlayReadyOperationRequest {
syncPlayReadyRequest: SyncPlayReadyRequest;
}
export interface SyncPlayRemoveFromPlaylistOperationRequest {
syncPlayRemoveFromPlaylistRequest: SyncPlayRemoveFromPlaylistRequest;
}
export interface SyncPlaySeekOperationRequest {
syncPlaySeekRequest: SyncPlaySeekRequest;
}
export interface SyncPlaySetIgnoreWaitOperationRequest {
syncPlaySetIgnoreWaitRequest: SyncPlaySetIgnoreWaitRequest;
}
export interface SyncPlaySetNewQueueOperationRequest {
syncPlaySetNewQueueRequest: SyncPlaySetNewQueueRequest;
}
export interface SyncPlaySetPlaylistItemOperationRequest {
syncPlaySetPlaylistItemRequest: SyncPlaySetPlaylistItemRequest;
}
export interface SyncPlaySetRepeatModeOperationRequest {
syncPlaySetRepeatModeRequest: SyncPlaySetRepeatModeRequest;
}
export interface SyncPlaySetShuffleModeOperationRequest {
syncPlaySetShuffleModeRequest: SyncPlaySetShuffleModeRequest;
}
/**
*
*/
export class SyncPlayApi extends runtime.BaseAPI {
/**
* Notify SyncPlay group that member is buffering.
*/
async syncPlayBufferingRaw(requestParameters: SyncPlayBufferingOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.syncPlayBufferingRequest === null || requestParameters.syncPlayBufferingRequest === undefined) {
throw new runtime.RequiredError('syncPlayBufferingRequest','Required parameter requestParameters.syncPlayBufferingRequest was null or undefined when calling syncPlayBuffering.');
}
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: `/SyncPlay/Buffering`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SyncPlayBufferingRequestToJSON(requestParameters.syncPlayBufferingRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Notify SyncPlay group that member is buffering.
*/
async syncPlayBuffering(requestParameters: SyncPlayBufferingOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlayBufferingRaw(requestParameters, initOverrides);
}
/**
* Create a new SyncPlay group.
*/
async syncPlayCreateGroupRaw(requestParameters: SyncPlayCreateGroupOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.syncPlayCreateGroupRequest === null || requestParameters.syncPlayCreateGroupRequest === undefined) {
throw new runtime.RequiredError('syncPlayCreateGroupRequest','Required parameter requestParameters.syncPlayCreateGroupRequest was null or undefined when calling syncPlayCreateGroup.');
}
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: `/SyncPlay/New`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SyncPlayCreateGroupRequestToJSON(requestParameters.syncPlayCreateGroupRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Create a new SyncPlay group.
*/
async syncPlayCreateGroup(requestParameters: SyncPlayCreateGroupOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlayCreateGroupRaw(requestParameters, initOverrides);
}
/**
* Gets all SyncPlay groups.
*/
async syncPlayGetGroupsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<GroupInfoDto>>> {
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: `/SyncPlay/List`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(GroupInfoDtoFromJSON));
}
/**
* Gets all SyncPlay groups.
*/
async syncPlayGetGroups(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<GroupInfoDto>> {
const response = await this.syncPlayGetGroupsRaw(initOverrides);
return await response.value();
}
/**
* Join an existing SyncPlay group.
*/
async syncPlayJoinGroupRaw(requestParameters: SyncPlayJoinGroupOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.syncPlayJoinGroupRequest === null || requestParameters.syncPlayJoinGroupRequest === undefined) {
throw new runtime.RequiredError('syncPlayJoinGroupRequest','Required parameter requestParameters.syncPlayJoinGroupRequest was null or undefined when calling syncPlayJoinGroup.');
}
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: `/SyncPlay/Join`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SyncPlayJoinGroupRequestToJSON(requestParameters.syncPlayJoinGroupRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Join an existing SyncPlay group.
*/
async syncPlayJoinGroup(requestParameters: SyncPlayJoinGroupOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlayJoinGroupRaw(requestParameters, initOverrides);
}
/**
* Leave the joined SyncPlay group.
*/
async syncPlayLeaveGroupRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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: `/SyncPlay/Leave`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Leave the joined SyncPlay group.
*/
async syncPlayLeaveGroup(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlayLeaveGroupRaw(initOverrides);
}
/**
* Request to move an item in the playlist in SyncPlay group.
*/
async syncPlayMovePlaylistItemRaw(requestParameters: SyncPlayMovePlaylistItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.syncPlayMovePlaylistItemRequest === null || requestParameters.syncPlayMovePlaylistItemRequest === undefined) {
throw new runtime.RequiredError('syncPlayMovePlaylistItemRequest','Required parameter requestParameters.syncPlayMovePlaylistItemRequest was null or undefined when calling syncPlayMovePlaylistItem.');
}
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: `/SyncPlay/MovePlaylistItem`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SyncPlayMovePlaylistItemRequestToJSON(requestParameters.syncPlayMovePlaylistItemRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Request to move an item in the playlist in SyncPlay group.
*/
async syncPlayMovePlaylistItem(requestParameters: SyncPlayMovePlaylistItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlayMovePlaylistItemRaw(requestParameters, initOverrides);
}
/**
* Request next item in SyncPlay group.
*/
async syncPlayNextItemRaw(requestParameters: SyncPlayNextItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.syncPlayNextItemRequest === null || requestParameters.syncPlayNextItemRequest === undefined) {
throw new runtime.RequiredError('syncPlayNextItemRequest','Required parameter requestParameters.syncPlayNextItemRequest was null or undefined when calling syncPlayNextItem.');
}
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: `/SyncPlay/NextItem`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SyncPlayNextItemRequestToJSON(requestParameters.syncPlayNextItemRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Request next item in SyncPlay group.
*/
async syncPlayNextItem(requestParameters: SyncPlayNextItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlayNextItemRaw(requestParameters, initOverrides);
}
/**
* Request pause in SyncPlay group.
*/
async syncPlayPauseRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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: `/SyncPlay/Pause`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Request pause in SyncPlay group.
*/
async syncPlayPause(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlayPauseRaw(initOverrides);
}
/**
* Update session ping.
*/
async syncPlayPingRaw(requestParameters: SyncPlayPingOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.syncPlayPingRequest === null || requestParameters.syncPlayPingRequest === undefined) {
throw new runtime.RequiredError('syncPlayPingRequest','Required parameter requestParameters.syncPlayPingRequest was null or undefined when calling syncPlayPing.');
}
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: `/SyncPlay/Ping`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SyncPlayPingRequestToJSON(requestParameters.syncPlayPingRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Update session ping.
*/
async syncPlayPing(requestParameters: SyncPlayPingOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlayPingRaw(requestParameters, initOverrides);
}
/**
* Request previous item in SyncPlay group.
*/
async syncPlayPreviousItemRaw(requestParameters: SyncPlayPreviousItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.syncPlayPreviousItemRequest === null || requestParameters.syncPlayPreviousItemRequest === undefined) {
throw new runtime.RequiredError('syncPlayPreviousItemRequest','Required parameter requestParameters.syncPlayPreviousItemRequest was null or undefined when calling syncPlayPreviousItem.');
}
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: `/SyncPlay/PreviousItem`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SyncPlayPreviousItemRequestToJSON(requestParameters.syncPlayPreviousItemRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Request previous item in SyncPlay group.
*/
async syncPlayPreviousItem(requestParameters: SyncPlayPreviousItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlayPreviousItemRaw(requestParameters, initOverrides);
}
/**
* Request to queue items to the playlist of a SyncPlay group.
*/
async syncPlayQueueRaw(requestParameters: SyncPlayQueueOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.syncPlayQueueRequest === null || requestParameters.syncPlayQueueRequest === undefined) {
throw new runtime.RequiredError('syncPlayQueueRequest','Required parameter requestParameters.syncPlayQueueRequest was null or undefined when calling syncPlayQueue.');
}
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: `/SyncPlay/Queue`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SyncPlayQueueRequestToJSON(requestParameters.syncPlayQueueRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Request to queue items to the playlist of a SyncPlay group.
*/
async syncPlayQueue(requestParameters: SyncPlayQueueOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlayQueueRaw(requestParameters, initOverrides);
}
/**
* Notify SyncPlay group that member is ready for playback.
*/
async syncPlayReadyRaw(requestParameters: SyncPlayReadyOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.syncPlayReadyRequest === null || requestParameters.syncPlayReadyRequest === undefined) {
throw new runtime.RequiredError('syncPlayReadyRequest','Required parameter requestParameters.syncPlayReadyRequest was null or undefined when calling syncPlayReady.');
}
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: `/SyncPlay/Ready`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SyncPlayReadyRequestToJSON(requestParameters.syncPlayReadyRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Notify SyncPlay group that member is ready for playback.
*/
async syncPlayReady(requestParameters: SyncPlayReadyOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlayReadyRaw(requestParameters, initOverrides);
}
/**
* Request to remove items from the playlist in SyncPlay group.
*/
async syncPlayRemoveFromPlaylistRaw(requestParameters: SyncPlayRemoveFromPlaylistOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.syncPlayRemoveFromPlaylistRequest === null || requestParameters.syncPlayRemoveFromPlaylistRequest === undefined) {
throw new runtime.RequiredError('syncPlayRemoveFromPlaylistRequest','Required parameter requestParameters.syncPlayRemoveFromPlaylistRequest was null or undefined when calling syncPlayRemoveFromPlaylist.');
}
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: `/SyncPlay/RemoveFromPlaylist`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SyncPlayRemoveFromPlaylistRequestToJSON(requestParameters.syncPlayRemoveFromPlaylistRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Request to remove items from the playlist in SyncPlay group.
*/
async syncPlayRemoveFromPlaylist(requestParameters: SyncPlayRemoveFromPlaylistOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlayRemoveFromPlaylistRaw(requestParameters, initOverrides);
}
/**
* Request seek in SyncPlay group.
*/
async syncPlaySeekRaw(requestParameters: SyncPlaySeekOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.syncPlaySeekRequest === null || requestParameters.syncPlaySeekRequest === undefined) {
throw new runtime.RequiredError('syncPlaySeekRequest','Required parameter requestParameters.syncPlaySeekRequest was null or undefined when calling syncPlaySeek.');
}
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: `/SyncPlay/Seek`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SyncPlaySeekRequestToJSON(requestParameters.syncPlaySeekRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Request seek in SyncPlay group.
*/
async syncPlaySeek(requestParameters: SyncPlaySeekOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlaySeekRaw(requestParameters, initOverrides);
}
/**
* Request SyncPlay group to ignore member during group-wait.
*/
async syncPlaySetIgnoreWaitRaw(requestParameters: SyncPlaySetIgnoreWaitOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.syncPlaySetIgnoreWaitRequest === null || requestParameters.syncPlaySetIgnoreWaitRequest === undefined) {
throw new runtime.RequiredError('syncPlaySetIgnoreWaitRequest','Required parameter requestParameters.syncPlaySetIgnoreWaitRequest was null or undefined when calling syncPlaySetIgnoreWait.');
}
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: `/SyncPlay/SetIgnoreWait`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SyncPlaySetIgnoreWaitRequestToJSON(requestParameters.syncPlaySetIgnoreWaitRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Request SyncPlay group to ignore member during group-wait.
*/
async syncPlaySetIgnoreWait(requestParameters: SyncPlaySetIgnoreWaitOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlaySetIgnoreWaitRaw(requestParameters, initOverrides);
}
/**
* Request to set new playlist in SyncPlay group.
*/
async syncPlaySetNewQueueRaw(requestParameters: SyncPlaySetNewQueueOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.syncPlaySetNewQueueRequest === null || requestParameters.syncPlaySetNewQueueRequest === undefined) {
throw new runtime.RequiredError('syncPlaySetNewQueueRequest','Required parameter requestParameters.syncPlaySetNewQueueRequest was null or undefined when calling syncPlaySetNewQueue.');
}
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: `/SyncPlay/SetNewQueue`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SyncPlaySetNewQueueRequestToJSON(requestParameters.syncPlaySetNewQueueRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Request to set new playlist in SyncPlay group.
*/
async syncPlaySetNewQueue(requestParameters: SyncPlaySetNewQueueOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlaySetNewQueueRaw(requestParameters, initOverrides);
}
/**
* Request to change playlist item in SyncPlay group.
*/
async syncPlaySetPlaylistItemRaw(requestParameters: SyncPlaySetPlaylistItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.syncPlaySetPlaylistItemRequest === null || requestParameters.syncPlaySetPlaylistItemRequest === undefined) {
throw new runtime.RequiredError('syncPlaySetPlaylistItemRequest','Required parameter requestParameters.syncPlaySetPlaylistItemRequest was null or undefined when calling syncPlaySetPlaylistItem.');
}
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: `/SyncPlay/SetPlaylistItem`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SyncPlaySetPlaylistItemRequestToJSON(requestParameters.syncPlaySetPlaylistItemRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Request to change playlist item in SyncPlay group.
*/
async syncPlaySetPlaylistItem(requestParameters: SyncPlaySetPlaylistItemOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlaySetPlaylistItemRaw(requestParameters, initOverrides);
}
/**
* Request to set repeat mode in SyncPlay group.
*/
async syncPlaySetRepeatModeRaw(requestParameters: SyncPlaySetRepeatModeOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.syncPlaySetRepeatModeRequest === null || requestParameters.syncPlaySetRepeatModeRequest === undefined) {
throw new runtime.RequiredError('syncPlaySetRepeatModeRequest','Required parameter requestParameters.syncPlaySetRepeatModeRequest was null or undefined when calling syncPlaySetRepeatMode.');
}
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: `/SyncPlay/SetRepeatMode`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SyncPlaySetRepeatModeRequestToJSON(requestParameters.syncPlaySetRepeatModeRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Request to set repeat mode in SyncPlay group.
*/
async syncPlaySetRepeatMode(requestParameters: SyncPlaySetRepeatModeOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlaySetRepeatModeRaw(requestParameters, initOverrides);
}
/**
* Request to set shuffle mode in SyncPlay group.
*/
async syncPlaySetShuffleModeRaw(requestParameters: SyncPlaySetShuffleModeOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters.syncPlaySetShuffleModeRequest === null || requestParameters.syncPlaySetShuffleModeRequest === undefined) {
throw new runtime.RequiredError('syncPlaySetShuffleModeRequest','Required parameter requestParameters.syncPlaySetShuffleModeRequest was null or undefined when calling syncPlaySetShuffleMode.');
}
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: `/SyncPlay/SetShuffleMode`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: SyncPlaySetShuffleModeRequestToJSON(requestParameters.syncPlaySetShuffleModeRequest),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Request to set shuffle mode in SyncPlay group.
*/
async syncPlaySetShuffleMode(requestParameters: SyncPlaySetShuffleModeOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlaySetShuffleModeRaw(requestParameters, initOverrides);
}
/**
* Request stop in SyncPlay group.
*/
async syncPlayStopRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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: `/SyncPlay/Stop`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Request stop in SyncPlay group.
*/
async syncPlayStop(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlayStopRaw(initOverrides);
}
/**
* Request unpause in SyncPlay group.
*/
async syncPlayUnpauseRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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: `/SyncPlay/Unpause`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Request unpause in SyncPlay group.
*/
async syncPlayUnpause(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.syncPlayUnpauseRaw(initOverrides);
}
}

View File

@ -0,0 +1,348 @@
/* 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 {
EndPointInfo,
LogFile,
PublicSystemInfo,
SystemInfo,
WakeOnLanInfo,
} from '../models';
import {
EndPointInfoFromJSON,
EndPointInfoToJSON,
LogFileFromJSON,
LogFileToJSON,
PublicSystemInfoFromJSON,
PublicSystemInfoToJSON,
SystemInfoFromJSON,
SystemInfoToJSON,
WakeOnLanInfoFromJSON,
WakeOnLanInfoToJSON,
} from '../models';
export interface GetLogFileRequest {
name: string;
}
/**
*
*/
export class SystemApi extends runtime.BaseAPI {
/**
* Gets information about the request endpoint.
*/
async getEndpointInfoRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<EndPointInfo>> {
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: `/System/Endpoint`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => EndPointInfoFromJSON(jsonValue));
}
/**
* Gets information about the request endpoint.
*/
async getEndpointInfo(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<EndPointInfo> {
const response = await this.getEndpointInfoRaw(initOverrides);
return await response.value();
}
/**
* Gets a log file.
*/
async getLogFileRaw(requestParameters: GetLogFileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.name === null || requestParameters.name === undefined) {
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getLogFile.');
}
const queryParameters: any = {};
if (requestParameters.name !== undefined) {
queryParameters['name'] = requestParameters.name;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/System/Logs/Log`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets a log file.
*/
async getLogFile(requestParameters: GetLogFileRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getLogFileRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Pings the system.
*/
async getPingSystemRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<string>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/System/Ping`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
if (this.isJsonMime(response.headers.get('content-type'))) {
return new runtime.JSONApiResponse<string>(response);
} else {
return new runtime.TextApiResponse(response) as any;
}
}
/**
* Pings the system.
*/
async getPingSystem(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<string> {
const response = await this.getPingSystemRaw(initOverrides);
return await response.value();
}
/**
* Gets public information about the server.
*/
async getPublicSystemInfoRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PublicSystemInfo>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/System/Info/Public`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => PublicSystemInfoFromJSON(jsonValue));
}
/**
* Gets public information about the server.
*/
async getPublicSystemInfo(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PublicSystemInfo> {
const response = await this.getPublicSystemInfoRaw(initOverrides);
return await response.value();
}
/**
* Gets a list of available server log files.
*/
async getServerLogsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<LogFile>>> {
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: `/System/Logs`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(LogFileFromJSON));
}
/**
* Gets a list of available server log files.
*/
async getServerLogs(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<LogFile>> {
const response = await this.getServerLogsRaw(initOverrides);
return await response.value();
}
/**
* Gets information about the server.
*/
async getSystemInfoRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SystemInfo>> {
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: `/System/Info`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => SystemInfoFromJSON(jsonValue));
}
/**
* Gets information about the server.
*/
async getSystemInfo(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SystemInfo> {
const response = await this.getSystemInfoRaw(initOverrides);
return await response.value();
}
/**
* Gets wake on lan information.
*/
async getWakeOnLanInfoRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<WakeOnLanInfo>>> {
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: `/System/WakeOnLanInfo`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(WakeOnLanInfoFromJSON));
}
/**
* Gets wake on lan information.
*/
async getWakeOnLanInfo(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<WakeOnLanInfo>> {
const response = await this.getWakeOnLanInfoRaw(initOverrides);
return await response.value();
}
/**
* Pings the system.
*/
async postPingSystemRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<string>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/System/Ping`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
if (this.isJsonMime(response.headers.get('content-type'))) {
return new runtime.JSONApiResponse<string>(response);
} else {
return new runtime.TextApiResponse(response) as any;
}
}
/**
* Pings the system.
*/
async postPingSystem(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<string> {
const response = await this.postPingSystemRaw(initOverrides);
return await response.value();
}
/**
* Restarts the application.
*/
async restartApplicationRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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: `/System/Restart`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Restarts the application.
*/
async restartApplication(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.restartApplicationRaw(initOverrides);
}
/**
* Shuts down the application.
*/
async shutdownApplicationRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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: `/System/Shutdown`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Shuts down the application.
*/
async shutdownApplication(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.shutdownApplicationRaw(initOverrides);
}
}

View File

@ -0,0 +1,56 @@
/* 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 {
UtcTimeResponse,
} from '../models';
import {
UtcTimeResponseFromJSON,
UtcTimeResponseToJSON,
} from '../models';
/**
*
*/
export class TimeSyncApi extends runtime.BaseAPI {
/**
* Gets the current UTC time.
*/
async getUtcTimeRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UtcTimeResponse>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/GetUtcTime`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => UtcTimeResponseFromJSON(jsonValue));
}
/**
* Gets the current UTC time.
*/
async getUtcTime(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UtcTimeResponse> {
const response = await this.getUtcTimeRaw(initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,60 @@
/* 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 {
ConfigImageTypes,
} from '../models';
import {
ConfigImageTypesFromJSON,
ConfigImageTypesToJSON,
} from '../models';
/**
*
*/
export class TmdbApi extends runtime.BaseAPI {
/**
* Gets the TMDb image configuration options.
*/
async tmdbClientConfigurationRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ConfigImageTypes>> {
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: `/Tmdb/ClientConfiguration`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => ConfigImageTypesFromJSON(jsonValue));
}
/**
* Gets the TMDb image configuration options.
*/
async tmdbClientConfiguration(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ConfigImageTypes> {
const response = await this.tmdbClientConfigurationRaw(initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,507 @@
/* 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 {
BaseItemDtoQueryResult,
BaseItemKind,
ImageType,
ItemFields,
ItemFilter,
LocationType,
SeriesStatus,
SortOrder,
VideoType,
} from '../models';
import {
BaseItemDtoQueryResultFromJSON,
BaseItemDtoQueryResultToJSON,
BaseItemKindFromJSON,
BaseItemKindToJSON,
ImageTypeFromJSON,
ImageTypeToJSON,
ItemFieldsFromJSON,
ItemFieldsToJSON,
ItemFilterFromJSON,
ItemFilterToJSON,
LocationTypeFromJSON,
LocationTypeToJSON,
SeriesStatusFromJSON,
SeriesStatusToJSON,
SortOrderFromJSON,
SortOrderToJSON,
VideoTypeFromJSON,
VideoTypeToJSON,
} from '../models';
export interface GetTrailersRequest {
userId?: string;
maxOfficialRating?: string;
hasThemeSong?: boolean;
hasThemeVideo?: boolean;
hasSubtitles?: boolean;
hasSpecialFeature?: boolean;
hasTrailer?: boolean;
adjacentTo?: string;
parentIndexNumber?: number;
hasParentalRating?: boolean;
isHd?: boolean;
is4K?: boolean;
locationTypes?: Array<LocationType>;
excludeLocationTypes?: Array<LocationType>;
isMissing?: boolean;
isUnaired?: boolean;
minCommunityRating?: number;
minCriticRating?: number;
minPremiereDate?: Date;
minDateLastSaved?: Date;
minDateLastSavedForUser?: Date;
maxPremiereDate?: Date;
hasOverview?: boolean;
hasImdbId?: boolean;
hasTmdbId?: boolean;
hasTvdbId?: boolean;
isMovie?: boolean;
isSeries?: boolean;
isNews?: boolean;
isKids?: boolean;
isSports?: boolean;
excludeItemIds?: Array<string>;
startIndex?: number;
limit?: number;
recursive?: boolean;
searchTerm?: string;
sortOrder?: Array<SortOrder>;
parentId?: string;
fields?: Array<ItemFields>;
excludeItemTypes?: Array<BaseItemKind>;
filters?: Array<ItemFilter>;
isFavorite?: boolean;
mediaTypes?: Array<string>;
imageTypes?: Array<ImageType>;
sortBy?: Array<string>;
isPlayed?: boolean;
genres?: Array<string>;
officialRatings?: Array<string>;
tags?: Array<string>;
years?: Array<number>;
enableUserData?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
person?: string;
personIds?: Array<string>;
personTypes?: Array<string>;
studios?: Array<string>;
artists?: Array<string>;
excludeArtistIds?: Array<string>;
artistIds?: Array<string>;
albumArtistIds?: Array<string>;
contributingArtistIds?: Array<string>;
albums?: Array<string>;
albumIds?: Array<string>;
ids?: Array<string>;
videoTypes?: Array<VideoType>;
minOfficialRating?: string;
isLocked?: boolean;
isPlaceHolder?: boolean;
hasOfficialRating?: boolean;
collapseBoxSetItems?: boolean;
minWidth?: number;
minHeight?: number;
maxWidth?: number;
maxHeight?: number;
is3D?: boolean;
seriesStatus?: Array<SeriesStatus>;
nameStartsWithOrGreater?: string;
nameStartsWith?: string;
nameLessThan?: string;
studioIds?: Array<string>;
genreIds?: Array<string>;
enableTotalRecordCount?: boolean;
enableImages?: boolean;
}
/**
*
*/
export class TrailersApi extends runtime.BaseAPI {
/**
* Finds movies and trailers similar to a given trailer.
*/
async getTrailersRaw(requestParameters: GetTrailersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.maxOfficialRating !== undefined) {
queryParameters['maxOfficialRating'] = requestParameters.maxOfficialRating;
}
if (requestParameters.hasThemeSong !== undefined) {
queryParameters['hasThemeSong'] = requestParameters.hasThemeSong;
}
if (requestParameters.hasThemeVideo !== undefined) {
queryParameters['hasThemeVideo'] = requestParameters.hasThemeVideo;
}
if (requestParameters.hasSubtitles !== undefined) {
queryParameters['hasSubtitles'] = requestParameters.hasSubtitles;
}
if (requestParameters.hasSpecialFeature !== undefined) {
queryParameters['hasSpecialFeature'] = requestParameters.hasSpecialFeature;
}
if (requestParameters.hasTrailer !== undefined) {
queryParameters['hasTrailer'] = requestParameters.hasTrailer;
}
if (requestParameters.adjacentTo !== undefined) {
queryParameters['adjacentTo'] = requestParameters.adjacentTo;
}
if (requestParameters.parentIndexNumber !== undefined) {
queryParameters['parentIndexNumber'] = requestParameters.parentIndexNumber;
}
if (requestParameters.hasParentalRating !== undefined) {
queryParameters['hasParentalRating'] = requestParameters.hasParentalRating;
}
if (requestParameters.isHd !== undefined) {
queryParameters['isHd'] = requestParameters.isHd;
}
if (requestParameters.is4K !== undefined) {
queryParameters['is4K'] = requestParameters.is4K;
}
if (requestParameters.locationTypes) {
queryParameters['locationTypes'] = requestParameters.locationTypes;
}
if (requestParameters.excludeLocationTypes) {
queryParameters['excludeLocationTypes'] = requestParameters.excludeLocationTypes;
}
if (requestParameters.isMissing !== undefined) {
queryParameters['isMissing'] = requestParameters.isMissing;
}
if (requestParameters.isUnaired !== undefined) {
queryParameters['isUnaired'] = requestParameters.isUnaired;
}
if (requestParameters.minCommunityRating !== undefined) {
queryParameters['minCommunityRating'] = requestParameters.minCommunityRating;
}
if (requestParameters.minCriticRating !== undefined) {
queryParameters['minCriticRating'] = requestParameters.minCriticRating;
}
if (requestParameters.minPremiereDate !== undefined) {
queryParameters['minPremiereDate'] = (requestParameters.minPremiereDate as any).toISOString();
}
if (requestParameters.minDateLastSaved !== undefined) {
queryParameters['minDateLastSaved'] = (requestParameters.minDateLastSaved as any).toISOString();
}
if (requestParameters.minDateLastSavedForUser !== undefined) {
queryParameters['minDateLastSavedForUser'] = (requestParameters.minDateLastSavedForUser as any).toISOString();
}
if (requestParameters.maxPremiereDate !== undefined) {
queryParameters['maxPremiereDate'] = (requestParameters.maxPremiereDate as any).toISOString();
}
if (requestParameters.hasOverview !== undefined) {
queryParameters['hasOverview'] = requestParameters.hasOverview;
}
if (requestParameters.hasImdbId !== undefined) {
queryParameters['hasImdbId'] = requestParameters.hasImdbId;
}
if (requestParameters.hasTmdbId !== undefined) {
queryParameters['hasTmdbId'] = requestParameters.hasTmdbId;
}
if (requestParameters.hasTvdbId !== undefined) {
queryParameters['hasTvdbId'] = requestParameters.hasTvdbId;
}
if (requestParameters.isMovie !== undefined) {
queryParameters['isMovie'] = requestParameters.isMovie;
}
if (requestParameters.isSeries !== undefined) {
queryParameters['isSeries'] = requestParameters.isSeries;
}
if (requestParameters.isNews !== undefined) {
queryParameters['isNews'] = requestParameters.isNews;
}
if (requestParameters.isKids !== undefined) {
queryParameters['isKids'] = requestParameters.isKids;
}
if (requestParameters.isSports !== undefined) {
queryParameters['isSports'] = requestParameters.isSports;
}
if (requestParameters.excludeItemIds) {
queryParameters['excludeItemIds'] = requestParameters.excludeItemIds;
}
if (requestParameters.startIndex !== undefined) {
queryParameters['startIndex'] = requestParameters.startIndex;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.recursive !== undefined) {
queryParameters['recursive'] = requestParameters.recursive;
}
if (requestParameters.searchTerm !== undefined) {
queryParameters['searchTerm'] = requestParameters.searchTerm;
}
if (requestParameters.sortOrder) {
queryParameters['sortOrder'] = requestParameters.sortOrder;
}
if (requestParameters.parentId !== undefined) {
queryParameters['parentId'] = requestParameters.parentId;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.excludeItemTypes) {
queryParameters['excludeItemTypes'] = requestParameters.excludeItemTypes;
}
if (requestParameters.filters) {
queryParameters['filters'] = requestParameters.filters;
}
if (requestParameters.isFavorite !== undefined) {
queryParameters['isFavorite'] = requestParameters.isFavorite;
}
if (requestParameters.mediaTypes) {
queryParameters['mediaTypes'] = requestParameters.mediaTypes;
}
if (requestParameters.imageTypes) {
queryParameters['imageTypes'] = requestParameters.imageTypes;
}
if (requestParameters.sortBy) {
queryParameters['sortBy'] = requestParameters.sortBy;
}
if (requestParameters.isPlayed !== undefined) {
queryParameters['isPlayed'] = requestParameters.isPlayed;
}
if (requestParameters.genres) {
queryParameters['genres'] = requestParameters.genres;
}
if (requestParameters.officialRatings) {
queryParameters['officialRatings'] = requestParameters.officialRatings;
}
if (requestParameters.tags) {
queryParameters['tags'] = requestParameters.tags;
}
if (requestParameters.years) {
queryParameters['years'] = requestParameters.years;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
if (requestParameters.person !== undefined) {
queryParameters['person'] = requestParameters.person;
}
if (requestParameters.personIds) {
queryParameters['personIds'] = requestParameters.personIds;
}
if (requestParameters.personTypes) {
queryParameters['personTypes'] = requestParameters.personTypes;
}
if (requestParameters.studios) {
queryParameters['studios'] = requestParameters.studios;
}
if (requestParameters.artists) {
queryParameters['artists'] = requestParameters.artists;
}
if (requestParameters.excludeArtistIds) {
queryParameters['excludeArtistIds'] = requestParameters.excludeArtistIds;
}
if (requestParameters.artistIds) {
queryParameters['artistIds'] = requestParameters.artistIds;
}
if (requestParameters.albumArtistIds) {
queryParameters['albumArtistIds'] = requestParameters.albumArtistIds;
}
if (requestParameters.contributingArtistIds) {
queryParameters['contributingArtistIds'] = requestParameters.contributingArtistIds;
}
if (requestParameters.albums) {
queryParameters['albums'] = requestParameters.albums;
}
if (requestParameters.albumIds) {
queryParameters['albumIds'] = requestParameters.albumIds;
}
if (requestParameters.ids) {
queryParameters['ids'] = requestParameters.ids;
}
if (requestParameters.videoTypes) {
queryParameters['videoTypes'] = requestParameters.videoTypes;
}
if (requestParameters.minOfficialRating !== undefined) {
queryParameters['minOfficialRating'] = requestParameters.minOfficialRating;
}
if (requestParameters.isLocked !== undefined) {
queryParameters['isLocked'] = requestParameters.isLocked;
}
if (requestParameters.isPlaceHolder !== undefined) {
queryParameters['isPlaceHolder'] = requestParameters.isPlaceHolder;
}
if (requestParameters.hasOfficialRating !== undefined) {
queryParameters['hasOfficialRating'] = requestParameters.hasOfficialRating;
}
if (requestParameters.collapseBoxSetItems !== undefined) {
queryParameters['collapseBoxSetItems'] = requestParameters.collapseBoxSetItems;
}
if (requestParameters.minWidth !== undefined) {
queryParameters['minWidth'] = requestParameters.minWidth;
}
if (requestParameters.minHeight !== undefined) {
queryParameters['minHeight'] = requestParameters.minHeight;
}
if (requestParameters.maxWidth !== undefined) {
queryParameters['maxWidth'] = requestParameters.maxWidth;
}
if (requestParameters.maxHeight !== undefined) {
queryParameters['maxHeight'] = requestParameters.maxHeight;
}
if (requestParameters.is3D !== undefined) {
queryParameters['is3D'] = requestParameters.is3D;
}
if (requestParameters.seriesStatus) {
queryParameters['seriesStatus'] = requestParameters.seriesStatus;
}
if (requestParameters.nameStartsWithOrGreater !== undefined) {
queryParameters['nameStartsWithOrGreater'] = requestParameters.nameStartsWithOrGreater;
}
if (requestParameters.nameStartsWith !== undefined) {
queryParameters['nameStartsWith'] = requestParameters.nameStartsWith;
}
if (requestParameters.nameLessThan !== undefined) {
queryParameters['nameLessThan'] = requestParameters.nameLessThan;
}
if (requestParameters.studioIds) {
queryParameters['studioIds'] = requestParameters.studioIds;
}
if (requestParameters.genreIds) {
queryParameters['genreIds'] = requestParameters.genreIds;
}
if (requestParameters.enableTotalRecordCount !== undefined) {
queryParameters['enableTotalRecordCount'] = requestParameters.enableTotalRecordCount;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Trailers`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Finds movies and trailers similar to a given trailer.
*/
async getTrailers(requestParameters: GetTrailersRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getTrailersRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,411 @@
/* 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 {
BaseItemDtoQueryResult,
ImageType,
ItemFields,
ProblemDetails,
} from '../models';
import {
BaseItemDtoQueryResultFromJSON,
BaseItemDtoQueryResultToJSON,
ImageTypeFromJSON,
ImageTypeToJSON,
ItemFieldsFromJSON,
ItemFieldsToJSON,
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
} from '../models';
export interface GetEpisodesRequest {
seriesId: string;
userId?: string;
fields?: Array<ItemFields>;
season?: number;
seasonId?: string;
isMissing?: boolean;
adjacentTo?: string;
startItemId?: string;
startIndex?: number;
limit?: number;
enableImages?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
enableUserData?: boolean;
sortBy?: string;
}
export interface GetNextUpRequest {
userId?: string;
startIndex?: number;
limit?: number;
fields?: Array<ItemFields>;
seriesId?: string;
parentId?: string;
enableImages?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
enableUserData?: boolean;
nextUpDateCutoff?: Date;
enableTotalRecordCount?: boolean;
disableFirstEpisode?: boolean;
enableRewatching?: boolean;
}
export interface GetSeasonsRequest {
seriesId: string;
userId?: string;
fields?: Array<ItemFields>;
isSpecialSeason?: boolean;
isMissing?: boolean;
adjacentTo?: string;
enableImages?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
enableUserData?: boolean;
}
export interface GetUpcomingEpisodesRequest {
userId?: string;
startIndex?: number;
limit?: number;
fields?: Array<ItemFields>;
parentId?: string;
enableImages?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
enableUserData?: boolean;
}
/**
*
*/
export class TvShowsApi extends runtime.BaseAPI {
/**
* Gets episodes for a tv season.
*/
async getEpisodesRaw(requestParameters: GetEpisodesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
if (requestParameters.seriesId === null || requestParameters.seriesId === undefined) {
throw new runtime.RequiredError('seriesId','Required parameter requestParameters.seriesId was null or undefined when calling getEpisodes.');
}
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.season !== undefined) {
queryParameters['season'] = requestParameters.season;
}
if (requestParameters.seasonId !== undefined) {
queryParameters['seasonId'] = requestParameters.seasonId;
}
if (requestParameters.isMissing !== undefined) {
queryParameters['isMissing'] = requestParameters.isMissing;
}
if (requestParameters.adjacentTo !== undefined) {
queryParameters['adjacentTo'] = requestParameters.adjacentTo;
}
if (requestParameters.startItemId !== undefined) {
queryParameters['startItemId'] = requestParameters.startItemId;
}
if (requestParameters.startIndex !== undefined) {
queryParameters['startIndex'] = requestParameters.startIndex;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
if (requestParameters.sortBy !== undefined) {
queryParameters['sortBy'] = requestParameters.sortBy;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Shows/{seriesId}/Episodes`.replace(`{${"seriesId"}}`, encodeURIComponent(String(requestParameters.seriesId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Gets episodes for a tv season.
*/
async getEpisodes(requestParameters: GetEpisodesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getEpisodesRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets a list of next up episodes.
*/
async getNextUpRaw(requestParameters: GetNextUpRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.startIndex !== undefined) {
queryParameters['startIndex'] = requestParameters.startIndex;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.seriesId !== undefined) {
queryParameters['seriesId'] = requestParameters.seriesId;
}
if (requestParameters.parentId !== undefined) {
queryParameters['parentId'] = requestParameters.parentId;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
if (requestParameters.nextUpDateCutoff !== undefined) {
queryParameters['nextUpDateCutoff'] = (requestParameters.nextUpDateCutoff as any).toISOString();
}
if (requestParameters.enableTotalRecordCount !== undefined) {
queryParameters['enableTotalRecordCount'] = requestParameters.enableTotalRecordCount;
}
if (requestParameters.disableFirstEpisode !== undefined) {
queryParameters['disableFirstEpisode'] = requestParameters.disableFirstEpisode;
}
if (requestParameters.enableRewatching !== undefined) {
queryParameters['enableRewatching'] = requestParameters.enableRewatching;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Shows/NextUp`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Gets a list of next up episodes.
*/
async getNextUp(requestParameters: GetNextUpRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getNextUpRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets seasons for a tv series.
*/
async getSeasonsRaw(requestParameters: GetSeasonsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
if (requestParameters.seriesId === null || requestParameters.seriesId === undefined) {
throw new runtime.RequiredError('seriesId','Required parameter requestParameters.seriesId was null or undefined when calling getSeasons.');
}
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.isSpecialSeason !== undefined) {
queryParameters['isSpecialSeason'] = requestParameters.isSpecialSeason;
}
if (requestParameters.isMissing !== undefined) {
queryParameters['isMissing'] = requestParameters.isMissing;
}
if (requestParameters.adjacentTo !== undefined) {
queryParameters['adjacentTo'] = requestParameters.adjacentTo;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Shows/{seriesId}/Seasons`.replace(`{${"seriesId"}}`, encodeURIComponent(String(requestParameters.seriesId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Gets seasons for a tv series.
*/
async getSeasons(requestParameters: GetSeasonsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getSeasonsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets a list of upcoming episodes.
*/
async getUpcomingEpisodesRaw(requestParameters: GetUpcomingEpisodesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.startIndex !== undefined) {
queryParameters['startIndex'] = requestParameters.startIndex;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.parentId !== undefined) {
queryParameters['parentId'] = requestParameters.parentId;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Shows/Upcoming`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Gets a list of upcoming episodes.
*/
async getUpcomingEpisodes(requestParameters: GetUpcomingEpisodesRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getUpcomingEpisodesRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,269 @@
/* 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';
export interface GetUniversalAudioStreamRequest {
itemId: string;
container?: Array<string>;
mediaSourceId?: string;
deviceId?: string;
userId?: string;
audioCodec?: string;
maxAudioChannels?: number;
transcodingAudioChannels?: number;
maxStreamingBitrate?: number;
audioBitRate?: number;
startTimeTicks?: number;
transcodingContainer?: string;
transcodingProtocol?: string;
maxAudioSampleRate?: number;
maxAudioBitDepth?: number;
enableRemoteMedia?: boolean;
breakOnNonKeyFrames?: boolean;
enableRedirection?: boolean;
}
export interface HeadUniversalAudioStreamRequest {
itemId: string;
container?: Array<string>;
mediaSourceId?: string;
deviceId?: string;
userId?: string;
audioCodec?: string;
maxAudioChannels?: number;
transcodingAudioChannels?: number;
maxStreamingBitrate?: number;
audioBitRate?: number;
startTimeTicks?: number;
transcodingContainer?: string;
transcodingProtocol?: string;
maxAudioSampleRate?: number;
maxAudioBitDepth?: number;
enableRemoteMedia?: boolean;
breakOnNonKeyFrames?: boolean;
enableRedirection?: boolean;
}
/**
*
*/
export class UniversalAudioApi extends runtime.BaseAPI {
/**
* Gets an audio stream.
*/
async getUniversalAudioStreamRaw(requestParameters: GetUniversalAudioStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getUniversalAudioStream.');
}
const queryParameters: any = {};
if (requestParameters.container) {
queryParameters['container'] = requestParameters.container;
}
if (requestParameters.mediaSourceId !== undefined) {
queryParameters['mediaSourceId'] = requestParameters.mediaSourceId;
}
if (requestParameters.deviceId !== undefined) {
queryParameters['deviceId'] = requestParameters.deviceId;
}
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.audioCodec !== undefined) {
queryParameters['audioCodec'] = requestParameters.audioCodec;
}
if (requestParameters.maxAudioChannels !== undefined) {
queryParameters['maxAudioChannels'] = requestParameters.maxAudioChannels;
}
if (requestParameters.transcodingAudioChannels !== undefined) {
queryParameters['transcodingAudioChannels'] = requestParameters.transcodingAudioChannels;
}
if (requestParameters.maxStreamingBitrate !== undefined) {
queryParameters['maxStreamingBitrate'] = requestParameters.maxStreamingBitrate;
}
if (requestParameters.audioBitRate !== undefined) {
queryParameters['audioBitRate'] = requestParameters.audioBitRate;
}
if (requestParameters.startTimeTicks !== undefined) {
queryParameters['startTimeTicks'] = requestParameters.startTimeTicks;
}
if (requestParameters.transcodingContainer !== undefined) {
queryParameters['transcodingContainer'] = requestParameters.transcodingContainer;
}
if (requestParameters.transcodingProtocol !== undefined) {
queryParameters['transcodingProtocol'] = requestParameters.transcodingProtocol;
}
if (requestParameters.maxAudioSampleRate !== undefined) {
queryParameters['maxAudioSampleRate'] = requestParameters.maxAudioSampleRate;
}
if (requestParameters.maxAudioBitDepth !== undefined) {
queryParameters['maxAudioBitDepth'] = requestParameters.maxAudioBitDepth;
}
if (requestParameters.enableRemoteMedia !== undefined) {
queryParameters['enableRemoteMedia'] = requestParameters.enableRemoteMedia;
}
if (requestParameters.breakOnNonKeyFrames !== undefined) {
queryParameters['breakOnNonKeyFrames'] = requestParameters.breakOnNonKeyFrames;
}
if (requestParameters.enableRedirection !== undefined) {
queryParameters['enableRedirection'] = requestParameters.enableRedirection;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Audio/{itemId}/universal`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets an audio stream.
*/
async getUniversalAudioStream(requestParameters: GetUniversalAudioStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getUniversalAudioStreamRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets an audio stream.
*/
async headUniversalAudioStreamRaw(requestParameters: HeadUniversalAudioStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling headUniversalAudioStream.');
}
const queryParameters: any = {};
if (requestParameters.container) {
queryParameters['container'] = requestParameters.container;
}
if (requestParameters.mediaSourceId !== undefined) {
queryParameters['mediaSourceId'] = requestParameters.mediaSourceId;
}
if (requestParameters.deviceId !== undefined) {
queryParameters['deviceId'] = requestParameters.deviceId;
}
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.audioCodec !== undefined) {
queryParameters['audioCodec'] = requestParameters.audioCodec;
}
if (requestParameters.maxAudioChannels !== undefined) {
queryParameters['maxAudioChannels'] = requestParameters.maxAudioChannels;
}
if (requestParameters.transcodingAudioChannels !== undefined) {
queryParameters['transcodingAudioChannels'] = requestParameters.transcodingAudioChannels;
}
if (requestParameters.maxStreamingBitrate !== undefined) {
queryParameters['maxStreamingBitrate'] = requestParameters.maxStreamingBitrate;
}
if (requestParameters.audioBitRate !== undefined) {
queryParameters['audioBitRate'] = requestParameters.audioBitRate;
}
if (requestParameters.startTimeTicks !== undefined) {
queryParameters['startTimeTicks'] = requestParameters.startTimeTicks;
}
if (requestParameters.transcodingContainer !== undefined) {
queryParameters['transcodingContainer'] = requestParameters.transcodingContainer;
}
if (requestParameters.transcodingProtocol !== undefined) {
queryParameters['transcodingProtocol'] = requestParameters.transcodingProtocol;
}
if (requestParameters.maxAudioSampleRate !== undefined) {
queryParameters['maxAudioSampleRate'] = requestParameters.maxAudioSampleRate;
}
if (requestParameters.maxAudioBitDepth !== undefined) {
queryParameters['maxAudioBitDepth'] = requestParameters.maxAudioBitDepth;
}
if (requestParameters.enableRemoteMedia !== undefined) {
queryParameters['enableRemoteMedia'] = requestParameters.enableRemoteMedia;
}
if (requestParameters.breakOnNonKeyFrames !== undefined) {
queryParameters['breakOnNonKeyFrames'] = requestParameters.breakOnNonKeyFrames;
}
if (requestParameters.enableRedirection !== undefined) {
queryParameters['enableRedirection'] = requestParameters.enableRedirection;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Audio/{itemId}/universal`.replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'HEAD',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Gets an audio stream.
*/
async headUniversalAudioStream(requestParameters: HeadUniversalAudioStreamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.headUniversalAudioStreamRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,708 @@
/* 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<runtime.ApiResponse<AuthenticationResult>> {
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<AuthenticationResult> {
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<runtime.ApiResponse<AuthenticationResult>> {
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<AuthenticationResult> {
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<runtime.ApiResponse<AuthenticationResult>> {
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<AuthenticationResult> {
const response = await this.authenticateWithQuickConnectRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Creates a user.
*/
async createUserByNameRaw(requestParameters: CreateUserByNameOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserDto>> {
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<UserDto> {
const response = await this.createUserByNameRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Deletes a user.
*/
async deleteUserRaw(requestParameters: DeleteUserRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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<void> {
await this.deleteUserRaw(requestParameters, initOverrides);
}
/**
* Initiates the forgot password process for a local user.
*/
async forgotPasswordRaw(requestParameters: ForgotPasswordOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ForgotPasswordResult>> {
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<ForgotPasswordResult> {
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<runtime.ApiResponse<PinRedeemResult>> {
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<PinRedeemResult> {
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<runtime.ApiResponse<UserDto>> {
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<UserDto> {
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<runtime.ApiResponse<Array<UserDto>>> {
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<Array<UserDto>> {
const response = await this.getPublicUsersRaw(initOverrides);
return await response.value();
}
/**
* Gets a user by Id.
*/
async getUserByIdRaw(requestParameters: GetUserByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserDto>> {
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<UserDto> {
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<runtime.ApiResponse<Array<UserDto>>> {
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<Array<UserDto>> {
const response = await this.getUsersRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Updates a user.
*/
async updateUserRaw(requestParameters: UpdateUserOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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<void> {
await this.updateUserRaw(requestParameters, initOverrides);
}
/**
* Updates a user configuration.
*/
async updateUserConfigurationRaw(requestParameters: UpdateUserConfigurationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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<void> {
await this.updateUserConfigurationRaw(requestParameters, initOverrides);
}
/**
* Updates a user\'s easy password.
*/
async updateUserEasyPasswordRaw(requestParameters: UpdateUserEasyPasswordOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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<void> {
await this.updateUserEasyPasswordRaw(requestParameters, initOverrides);
}
/**
* Updates a user\'s password.
*/
async updateUserPasswordRaw(requestParameters: UpdateUserPasswordOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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<void> {
await this.updateUserPasswordRaw(requestParameters, initOverrides);
}
/**
* Updates a user policy.
*/
async updateUserPolicyRaw(requestParameters: UpdateUserPolicyOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
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<void> {
await this.updateUserPolicyRaw(requestParameters, initOverrides);
}
}

View File

@ -0,0 +1,520 @@
/* 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 {
BaseItemDto,
BaseItemDtoQueryResult,
BaseItemKind,
ImageType,
ItemFields,
UserItemDataDto,
} from '../models';
import {
BaseItemDtoFromJSON,
BaseItemDtoToJSON,
BaseItemDtoQueryResultFromJSON,
BaseItemDtoQueryResultToJSON,
BaseItemKindFromJSON,
BaseItemKindToJSON,
ImageTypeFromJSON,
ImageTypeToJSON,
ItemFieldsFromJSON,
ItemFieldsToJSON,
UserItemDataDtoFromJSON,
UserItemDataDtoToJSON,
} from '../models';
export interface DeleteUserItemRatingRequest {
userId: string;
itemId: string;
}
export interface GetIntrosRequest {
userId: string;
itemId: string;
}
export interface GetItemRequest {
userId: string;
itemId: string;
}
export interface GetLatestMediaRequest {
userId: string;
parentId?: string;
fields?: Array<ItemFields>;
includeItemTypes?: Array<BaseItemKind>;
isPlayed?: boolean;
enableImages?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
enableUserData?: boolean;
limit?: number;
groupItems?: boolean;
}
export interface GetLocalTrailersRequest {
userId: string;
itemId: string;
}
export interface GetRootFolderRequest {
userId: string;
}
export interface GetSpecialFeaturesRequest {
userId: string;
itemId: string;
}
export interface MarkFavoriteItemRequest {
userId: string;
itemId: string;
}
export interface UnmarkFavoriteItemRequest {
userId: string;
itemId: string;
}
export interface UpdateUserItemRatingRequest {
userId: string;
itemId: string;
likes?: boolean;
}
/**
*
*/
export class UserLibraryApi extends runtime.BaseAPI {
/**
* Deletes a user\'s saved personal rating for an item.
*/
async deleteUserItemRatingRaw(requestParameters: DeleteUserItemRatingRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserItemDataDto>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling deleteUserItemRating.');
}
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling deleteUserItemRating.');
}
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}/Items/{itemId}/Rating`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => UserItemDataDtoFromJSON(jsonValue));
}
/**
* Deletes a user\'s saved personal rating for an item.
*/
async deleteUserItemRating(requestParameters: DeleteUserItemRatingRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserItemDataDto> {
const response = await this.deleteUserItemRatingRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets intros to play before the main media item plays.
*/
async getIntrosRaw(requestParameters: GetIntrosRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getIntros.');
}
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getIntros.');
}
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}/Items/{itemId}/Intros`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Gets intros to play before the main media item plays.
*/
async getIntros(requestParameters: GetIntrosRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getIntrosRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets an item from a user\'s library.
*/
async getItemRaw(requestParameters: GetItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDto>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getItem.');
}
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getItem.');
}
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}/Items/{itemId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoFromJSON(jsonValue));
}
/**
* Gets an item from a user\'s library.
*/
async getItem(requestParameters: GetItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDto> {
const response = await this.getItemRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets latest media.
*/
async getLatestMediaRaw(requestParameters: GetLatestMediaRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<BaseItemDto>>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getLatestMedia.');
}
const queryParameters: any = {};
if (requestParameters.parentId !== undefined) {
queryParameters['parentId'] = requestParameters.parentId;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.includeItemTypes) {
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
}
if (requestParameters.isPlayed !== undefined) {
queryParameters['isPlayed'] = requestParameters.isPlayed;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.groupItems !== undefined) {
queryParameters['groupItems'] = requestParameters.groupItems;
}
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}/Items/Latest`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(BaseItemDtoFromJSON));
}
/**
* Gets latest media.
*/
async getLatestMedia(requestParameters: GetLatestMediaRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<BaseItemDto>> {
const response = await this.getLatestMediaRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets local trailers for an item.
*/
async getLocalTrailersRaw(requestParameters: GetLocalTrailersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<BaseItemDto>>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getLocalTrailers.');
}
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getLocalTrailers.');
}
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}/Items/{itemId}/LocalTrailers`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(BaseItemDtoFromJSON));
}
/**
* Gets local trailers for an item.
*/
async getLocalTrailers(requestParameters: GetLocalTrailersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<BaseItemDto>> {
const response = await this.getLocalTrailersRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets the root folder from a user\'s library.
*/
async getRootFolderRaw(requestParameters: GetRootFolderRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDto>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getRootFolder.');
}
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}/Items/Root`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoFromJSON(jsonValue));
}
/**
* Gets the root folder from a user\'s library.
*/
async getRootFolder(requestParameters: GetRootFolderRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDto> {
const response = await this.getRootFolderRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Gets special features for an item.
*/
async getSpecialFeaturesRaw(requestParameters: GetSpecialFeaturesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<BaseItemDto>>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getSpecialFeatures.');
}
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling getSpecialFeatures.');
}
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}/Items/{itemId}/SpecialFeatures`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(BaseItemDtoFromJSON));
}
/**
* Gets special features for an item.
*/
async getSpecialFeatures(requestParameters: GetSpecialFeaturesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<BaseItemDto>> {
const response = await this.getSpecialFeaturesRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Marks an item as a favorite.
*/
async markFavoriteItemRaw(requestParameters: MarkFavoriteItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserItemDataDto>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling markFavoriteItem.');
}
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling markFavoriteItem.');
}
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}/FavoriteItems/{itemId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => UserItemDataDtoFromJSON(jsonValue));
}
/**
* Marks an item as a favorite.
*/
async markFavoriteItem(requestParameters: MarkFavoriteItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserItemDataDto> {
const response = await this.markFavoriteItemRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Unmarks item as a favorite.
*/
async unmarkFavoriteItemRaw(requestParameters: UnmarkFavoriteItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserItemDataDto>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling unmarkFavoriteItem.');
}
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling unmarkFavoriteItem.');
}
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}/FavoriteItems/{itemId}`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => UserItemDataDtoFromJSON(jsonValue));
}
/**
* Unmarks item as a favorite.
*/
async unmarkFavoriteItem(requestParameters: UnmarkFavoriteItemRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserItemDataDto> {
const response = await this.unmarkFavoriteItemRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Updates a user\'s rating for an item.
*/
async updateUserItemRatingRaw(requestParameters: UpdateUserItemRatingRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<UserItemDataDto>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling updateUserItemRating.');
}
if (requestParameters.itemId === null || requestParameters.itemId === undefined) {
throw new runtime.RequiredError('itemId','Required parameter requestParameters.itemId was null or undefined when calling updateUserItemRating.');
}
const queryParameters: any = {};
if (requestParameters.likes !== undefined) {
queryParameters['likes'] = requestParameters.likes;
}
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}/Items/{itemId}/Rating`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))).replace(`{${"itemId"}}`, encodeURIComponent(String(requestParameters.itemId))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => UserItemDataDtoFromJSON(jsonValue));
}
/**
* Updates a user\'s rating for an item.
*/
async updateUserItemRating(requestParameters: UpdateUserItemRatingRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<UserItemDataDto> {
const response = await this.updateUserItemRatingRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,127 @@
/* 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 {
BaseItemDtoQueryResult,
ProblemDetails,
SpecialViewOptionDto,
} from '../models';
import {
BaseItemDtoQueryResultFromJSON,
BaseItemDtoQueryResultToJSON,
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
SpecialViewOptionDtoFromJSON,
SpecialViewOptionDtoToJSON,
} from '../models';
export interface GetGroupingOptionsRequest {
userId: string;
}
export interface GetUserViewsRequest {
userId: string;
includeExternalContent?: boolean;
presetViews?: Array<string>;
includeHidden?: boolean;
}
/**
*
*/
export class UserViewsApi extends runtime.BaseAPI {
/**
* Get user view grouping options.
*/
async getGroupingOptionsRaw(requestParameters: GetGroupingOptionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<SpecialViewOptionDto>>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getGroupingOptions.');
}
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}/GroupingOptions`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(SpecialViewOptionDtoFromJSON));
}
/**
* Get user view grouping options.
*/
async getGroupingOptions(requestParameters: GetGroupingOptionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<SpecialViewOptionDto>> {
const response = await this.getGroupingOptionsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get user views.
*/
async getUserViewsRaw(requestParameters: GetUserViewsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
if (requestParameters.userId === null || requestParameters.userId === undefined) {
throw new runtime.RequiredError('userId','Required parameter requestParameters.userId was null or undefined when calling getUserViews.');
}
const queryParameters: any = {};
if (requestParameters.includeExternalContent !== undefined) {
queryParameters['includeExternalContent'] = requestParameters.includeExternalContent;
}
if (requestParameters.presetViews) {
queryParameters['presetViews'] = requestParameters.presetViews;
}
if (requestParameters.includeHidden !== undefined) {
queryParameters['includeHidden'] = requestParameters.includeHidden;
}
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}/Views`.replace(`{${"userId"}}`, encodeURIComponent(String(requestParameters.userId))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Get user views.
*/
async getUserViews(requestParameters: GetUserViewsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getUserViewsRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,74 @@
/* 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,
} from '../models';
import {
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
} from '../models';
export interface GetAttachmentRequest {
videoId: string;
mediaSourceId: string;
index: number;
}
/**
*
*/
export class VideoAttachmentsApi extends runtime.BaseAPI {
/**
* Get video attachment.
*/
async getAttachmentRaw(requestParameters: GetAttachmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
if (requestParameters.videoId === null || requestParameters.videoId === undefined) {
throw new runtime.RequiredError('videoId','Required parameter requestParameters.videoId was null or undefined when calling getAttachment.');
}
if (requestParameters.mediaSourceId === null || requestParameters.mediaSourceId === undefined) {
throw new runtime.RequiredError('mediaSourceId','Required parameter requestParameters.mediaSourceId was null or undefined when calling getAttachment.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling getAttachment.');
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
const response = await this.request({
path: `/Videos/{videoId}/{mediaSourceId}/Attachments/{index}`.replace(`{${"videoId"}}`, encodeURIComponent(String(requestParameters.videoId))).replace(`{${"mediaSourceId"}}`, encodeURIComponent(String(requestParameters.mediaSourceId))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.BlobApiResponse(response);
}
/**
* Get video attachment.
*/
async getAttachment(requestParameters: GetAttachmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
const response = await this.getAttachmentRaw(requestParameters, initOverrides);
return await response.value();
}
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,199 @@
/* 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 {
BaseItemDto,
BaseItemDtoQueryResult,
BaseItemKind,
ImageType,
ItemFields,
ProblemDetails,
SortOrder,
} from '../models';
import {
BaseItemDtoFromJSON,
BaseItemDtoToJSON,
BaseItemDtoQueryResultFromJSON,
BaseItemDtoQueryResultToJSON,
BaseItemKindFromJSON,
BaseItemKindToJSON,
ImageTypeFromJSON,
ImageTypeToJSON,
ItemFieldsFromJSON,
ItemFieldsToJSON,
ProblemDetailsFromJSON,
ProblemDetailsToJSON,
SortOrderFromJSON,
SortOrderToJSON,
} from '../models';
export interface GetYearRequest {
year: number;
userId?: string;
}
export interface GetYearsRequest {
startIndex?: number;
limit?: number;
sortOrder?: Array<SortOrder>;
parentId?: string;
fields?: Array<ItemFields>;
excludeItemTypes?: Array<BaseItemKind>;
includeItemTypes?: Array<BaseItemKind>;
mediaTypes?: Array<string>;
sortBy?: Array<string>;
enableUserData?: boolean;
imageTypeLimit?: number;
enableImageTypes?: Array<ImageType>;
userId?: string;
recursive?: boolean;
enableImages?: boolean;
}
/**
*
*/
export class YearsApi extends runtime.BaseAPI {
/**
* Gets a year.
*/
async getYearRaw(requestParameters: GetYearRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDto>> {
if (requestParameters.year === null || requestParameters.year === undefined) {
throw new runtime.RequiredError('year','Required parameter requestParameters.year was null or undefined when calling getYear.');
}
const queryParameters: any = {};
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Years/{year}`.replace(`{${"year"}}`, encodeURIComponent(String(requestParameters.year))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoFromJSON(jsonValue));
}
/**
* Gets a year.
*/
async getYear(requestParameters: GetYearRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDto> {
const response = await this.getYearRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get years.
*/
async getYearsRaw(requestParameters: GetYearsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<BaseItemDtoQueryResult>> {
const queryParameters: any = {};
if (requestParameters.startIndex !== undefined) {
queryParameters['startIndex'] = requestParameters.startIndex;
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit;
}
if (requestParameters.sortOrder) {
queryParameters['sortOrder'] = requestParameters.sortOrder;
}
if (requestParameters.parentId !== undefined) {
queryParameters['parentId'] = requestParameters.parentId;
}
if (requestParameters.fields) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.excludeItemTypes) {
queryParameters['excludeItemTypes'] = requestParameters.excludeItemTypes;
}
if (requestParameters.includeItemTypes) {
queryParameters['includeItemTypes'] = requestParameters.includeItemTypes;
}
if (requestParameters.mediaTypes) {
queryParameters['mediaTypes'] = requestParameters.mediaTypes;
}
if (requestParameters.sortBy) {
queryParameters['sortBy'] = requestParameters.sortBy;
}
if (requestParameters.enableUserData !== undefined) {
queryParameters['enableUserData'] = requestParameters.enableUserData;
}
if (requestParameters.imageTypeLimit !== undefined) {
queryParameters['imageTypeLimit'] = requestParameters.imageTypeLimit;
}
if (requestParameters.enableImageTypes) {
queryParameters['enableImageTypes'] = requestParameters.enableImageTypes;
}
if (requestParameters.userId !== undefined) {
queryParameters['userId'] = requestParameters.userId;
}
if (requestParameters.recursive !== undefined) {
queryParameters['recursive'] = requestParameters.recursive;
}
if (requestParameters.enableImages !== undefined) {
queryParameters['enableImages'] = requestParameters.enableImages;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // CustomAuthentication authentication
}
const response = await this.request({
path: `/Years`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => BaseItemDtoQueryResultFromJSON(jsonValue));
}
/**
* Get years.
*/
async getYears(requestParameters: GetYearsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<BaseItemDtoQueryResult> {
const response = await this.getYearsRaw(requestParameters, initOverrides);
return await response.value();
}
}

View File

@ -0,0 +1,63 @@
/* tslint:disable */
/* eslint-disable */
export * from './ActivityLogApi';
export * from './ApiKeyApi';
export * from './ArtistsApi';
export * from './AudioApi';
export * from './BrandingApi';
export * from './ChannelsApi';
export * from './ClientLogApi';
export * from './CollectionApi';
export * from './ConfigurationApi';
export * from './DashboardApi';
export * from './DevicesApi';
export * from './DisplayPreferencesApi';
export * from './DlnaApi';
export * from './DlnaServerApi';
export * from './DynamicHlsApi';
export * from './EnvironmentApi';
export * from './FilterApi';
export * from './GenresApi';
export * from './HlsSegmentApi';
export * from './ImageApi';
export * from './ImageByNameApi';
export * from './InstantMixApi';
export * from './ItemLookupApi';
export * from './ItemRefreshApi';
export * from './ItemUpdateApi';
export * from './ItemsApi';
export * from './LibraryApi';
export * from './LibraryStructureApi';
export * from './LiveTvApi';
export * from './LocalizationApi';
export * from './MediaInfoApi';
export * from './MoviesApi';
export * from './MusicGenresApi';
export * from './NotificationsApi';
export * from './PackageApi';
export * from './PersonsApi';
export * from './PlaylistsApi';
export * from './PlaystateApi';
export * from './PluginsApi';
export * from './QuickConnectApi';
export * from './RemoteImageApi';
export * from './ScheduledTasksApi';
export * from './SearchApi';
export * from './SessionApi';
export * from './StartupApi';
export * from './StudiosApi';
export * from './SubtitleApi';
export * from './SuggestionsApi';
export * from './SyncPlayApi';
export * from './SystemApi';
export * from './TimeSyncApi';
export * from './TmdbApi';
export * from './TrailersApi';
export * from './TvShowsApi';
export * from './UniversalAudioApi';
export * from './UserApi';
export * from './UserLibraryApi';
export * from './UserViewsApi';
export * from './VideoAttachmentsApi';
export * from './VideosApi';
export * from './YearsApi';