diff --git a/dist/index.d.ts b/dist/index.d.ts index e8c333ee..02b90696 100644 --- a/dist/index.d.ts +++ b/dist/index.d.ts @@ -1,4 +1,3 @@ export * from "./sdk-output/api"; export { Configuration, ConfigurationParameters } from "./sdk-output/configuration"; -export * from "./paginator"; export * as axiosRetry from "axios-retry"; diff --git a/dist/index.js b/dist/index.js index e4020196..383814f4 100644 --- a/dist/index.js +++ b/dist/index.js @@ -18,6 +18,5 @@ exports.axiosRetry = exports.Configuration = void 0; __exportStar(require("./sdk-output/api"), exports); var configuration_1 = require("./sdk-output/configuration"); Object.defineProperty(exports, "Configuration", { enumerable: true, get: function () { return configuration_1.Configuration; } }); -__exportStar(require("./paginator"), exports); exports.axiosRetry = require("axios-retry"); //# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/dist/index.js.map b/dist/index.js.map index 89a02efd..27fbef1e 100644 --- a/dist/index.js.map +++ b/dist/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,mDAAiC;AAEjC,4DAAkF;AAA1E,8GAAA,aAAa,OAAA;AAErB,8CAA4B;AAE5B,4CAAyC"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,mDAAiC;AAEjC,4DAAkF;AAA1E,8GAAA,aAAa,OAAA;AAErB,4CAAyC"} \ No newline at end of file diff --git a/dist/sdk-output/api.d.ts b/dist/sdk-output/api.d.ts index faa4a707..c2fbf4b7 100644 --- a/dist/sdk-output/api.d.ts +++ b/dist/sdk-output/api.d.ts @@ -12,6 +12,202 @@ import { Configuration } from './configuration'; import { AxiosPromise, AxiosInstance, AxiosRequestConfig } from 'axios'; import { RequestArgs, BaseAPI } from './base'; +/** + * + * @export + * @interface GetAvailableClients200Response + */ +export interface GetAvailableClients200Response { + /** + * + * @type {GetAvailableClients200ResponseMediaContainer} + * @memberof GetAvailableClients200Response + */ + 'MediaContainer'?: GetAvailableClients200ResponseMediaContainer; +} +/** + * + * @export + * @interface GetAvailableClients200ResponseMediaContainer + */ +export interface GetAvailableClients200ResponseMediaContainer { + /** + * + * @type {any} + * @memberof GetAvailableClients200ResponseMediaContainer + */ + 'size'?: any; + /** + * + * @type {any} + * @memberof GetAvailableClients200ResponseMediaContainer + */ + 'Server'?: any; +} +/** + * + * @export + * @interface GetAvailableClients401Response + */ +export interface GetAvailableClients401Response { + /** + * + * @type {any} + * @memberof GetAvailableClients401Response + */ + 'errors'?: any; +} +/** + * + * @export + * @interface GetDevices200Response + */ +export interface GetDevices200Response { + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'name'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'product'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'productVersion'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'platform'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'platformVersion'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'device'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'clientIdentifier'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'createdAt'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'lastSeenAt'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'provides'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'ownerId'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'sourceTitle'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'publicAddress'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'accessToken'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'owned'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'home'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'synced'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'relay'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'presence'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'httpsRequired'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'publicAddressMatches'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'dnsRebindingProtection'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'natLoopbackSupported'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'connections'?: any; +} /** * * @export @@ -647,29 +843,382 @@ export declare class ButlerApi extends BaseAPI { */ stopAllButlerTasks(axiosOptions?: AxiosRequestConfig): Promise>; } +/** + * DevicesApi - axios parameter creator + * @export + */ +export declare const DevicesApiAxiosParamCreator: (configuration?: Configuration) => { + /** + * Get Available Clients + * @summary Get Available Clients + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAvailableClients: (axiosOptions?: AxiosRequestConfig) => Promise; + /** + * Get Devices + * @summary Get Devices + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getDevices: (axiosOptions?: AxiosRequestConfig) => Promise; +}; +/** + * DevicesApi - functional programming interface + * @export + */ +export declare const DevicesApiFp: (configuration?: Configuration) => { + /** + * Get Available Clients + * @summary Get Available Clients + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAvailableClients(axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; + /** + * Get Devices + * @summary Get Devices + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getDevices(axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; +}; +/** + * DevicesApi - factory interface + * @export + */ +export declare const DevicesApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => { + /** + * Get Available Clients + * @summary Get Available Clients + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAvailableClients(axiosOptions?: any): AxiosPromise; + /** + * Get Devices + * @summary Get Devices + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getDevices(axiosOptions?: any): AxiosPromise; +}; +/** + * DevicesApi - object-oriented interface + * @export + * @class DevicesApi + * @extends {BaseAPI} + */ +export declare class DevicesApi extends BaseAPI { + /** + * Get Available Clients + * @summary Get Available Clients + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof DevicesApi + */ + getAvailableClients(axiosOptions?: AxiosRequestConfig): Promise>; + /** + * Get Devices + * @summary Get Devices + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof DevicesApi + */ + getDevices(axiosOptions?: AxiosRequestConfig): Promise>; +} +/** + * HashesApi - axios parameter creator + * @export + */ +export declare const HashesApiAxiosParamCreator: (configuration?: Configuration) => { + /** + * This resource returns hash values for local files + * @summary Get Hash Value + * @param {any} url This is the path to the local file, must be prefixed by `file://` + * @param {any} [type] Item type + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getFileHash: (url: any, type?: any, axiosOptions?: AxiosRequestConfig) => Promise; +}; +/** + * HashesApi - functional programming interface + * @export + */ +export declare const HashesApiFp: (configuration?: Configuration) => { + /** + * This resource returns hash values for local files + * @summary Get Hash Value + * @param {any} url This is the path to the local file, must be prefixed by `file://` + * @param {any} [type] Item type + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getFileHash(url: any, type?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; +}; +/** + * HashesApi - factory interface + * @export + */ +export declare const HashesApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => { + /** + * This resource returns hash values for local files + * @summary Get Hash Value + * @param {any} url This is the path to the local file, must be prefixed by `file://` + * @param {any} [type] Item type + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getFileHash(url: any, type?: any, axiosOptions?: any): AxiosPromise; +}; +/** + * Request parameters for getFileHash operation in HashesApi. + * @export + * @interface HashesApiGetFileHashRequest + */ +export interface HashesApiGetFileHashRequest { + /** + * This is the path to the local file, must be prefixed by `file://` + * @type {any} + * @memberof HashesApiGetFileHash + */ + readonly url: any; + /** + * Item type + * @type {any} + * @memberof HashesApiGetFileHash + */ + readonly type?: any; +} +/** + * HashesApi - object-oriented interface + * @export + * @class HashesApi + * @extends {BaseAPI} + */ +export declare class HashesApi extends BaseAPI { + /** + * This resource returns hash values for local files + * @summary Get Hash Value + * @param {HashesApiGetFileHashRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof HashesApi + */ + getFileHash(requestParameters: HashesApiGetFileHashRequest, axiosOptions?: AxiosRequestConfig): Promise>; +} +/** + * HubsApi - axios parameter creator + * @export + */ +export declare const HubsApiAxiosParamCreator: (configuration?: Configuration) => { + /** + * + * @summary Get Global Hubs + * @param {any} [count] The number of items to return with each hub. + * @param {any} [onlyTransient] Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getGlobalHubs: (count?: any, onlyTransient?: any, axiosOptions?: AxiosRequestConfig) => Promise; + /** + * This endpoint will return a list of library specific hubs + * @summary Get library specific hubs + * @param {any} sectionId the Id of the library to query + * @param {any} [count] The number of items to return with each hub. + * @param {any} [onlyTransient] Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getLibraryHubs: (sectionId: any, count?: any, onlyTransient?: any, axiosOptions?: AxiosRequestConfig) => Promise; +}; +/** + * HubsApi - functional programming interface + * @export + */ +export declare const HubsApiFp: (configuration?: Configuration) => { + /** + * + * @summary Get Global Hubs + * @param {any} [count] The number of items to return with each hub. + * @param {any} [onlyTransient] Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getGlobalHubs(count?: any, onlyTransient?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; + /** + * This endpoint will return a list of library specific hubs + * @summary Get library specific hubs + * @param {any} sectionId the Id of the library to query + * @param {any} [count] The number of items to return with each hub. + * @param {any} [onlyTransient] Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getLibraryHubs(sectionId: any, count?: any, onlyTransient?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; +}; +/** + * HubsApi - factory interface + * @export + */ +export declare const HubsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => { + /** + * + * @summary Get Global Hubs + * @param {any} [count] The number of items to return with each hub. + * @param {any} [onlyTransient] Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getGlobalHubs(count?: any, onlyTransient?: any, axiosOptions?: any): AxiosPromise; + /** + * This endpoint will return a list of library specific hubs + * @summary Get library specific hubs + * @param {any} sectionId the Id of the library to query + * @param {any} [count] The number of items to return with each hub. + * @param {any} [onlyTransient] Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getLibraryHubs(sectionId: any, count?: any, onlyTransient?: any, axiosOptions?: any): AxiosPromise; +}; +/** + * Request parameters for getGlobalHubs operation in HubsApi. + * @export + * @interface HubsApiGetGlobalHubsRequest + */ +export interface HubsApiGetGlobalHubsRequest { + /** + * The number of items to return with each hub. + * @type {any} + * @memberof HubsApiGetGlobalHubs + */ + readonly count?: any; + /** + * Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @type {any} + * @memberof HubsApiGetGlobalHubs + */ + readonly onlyTransient?: any; +} +/** + * Request parameters for getLibraryHubs operation in HubsApi. + * @export + * @interface HubsApiGetLibraryHubsRequest + */ +export interface HubsApiGetLibraryHubsRequest { + /** + * the Id of the library to query + * @type {any} + * @memberof HubsApiGetLibraryHubs + */ + readonly sectionId: any; + /** + * The number of items to return with each hub. + * @type {any} + * @memberof HubsApiGetLibraryHubs + */ + readonly count?: any; + /** + * Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @type {any} + * @memberof HubsApiGetLibraryHubs + */ + readonly onlyTransient?: any; +} +/** + * HubsApi - object-oriented interface + * @export + * @class HubsApi + * @extends {BaseAPI} + */ +export declare class HubsApi extends BaseAPI { + /** + * + * @summary Get Global Hubs + * @param {HubsApiGetGlobalHubsRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof HubsApi + */ + getGlobalHubs(requestParameters?: HubsApiGetGlobalHubsRequest, axiosOptions?: AxiosRequestConfig): Promise>; + /** + * This endpoint will return a list of library specific hubs + * @summary Get library specific hubs + * @param {HubsApiGetLibraryHubsRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof HubsApi + */ + getLibraryHubs(requestParameters: HubsApiGetLibraryHubsRequest, axiosOptions?: AxiosRequestConfig): Promise>; +} /** * LibraryApi - axios parameter creator * @export */ export declare const LibraryApiAxiosParamCreator: (configuration?: Configuration) => { /** - * This endpoint will return a list of libraries + * This endpoint will return a list of all library items filtered by the filter and type provided + * @summary Get All Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} [type] item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAllLibraryItems: (sectionId: any, type?: any, filter?: any, axiosOptions?: AxiosRequestConfig) => Promise; + /** + * Represents a \"Common\" item. It contains only the common attributes of the items selected by the provided filter + * @summary Get Common Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} type item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getCommonLibraryItems: (sectionId: any, type: any, filter?: any, axiosOptions?: AxiosRequestConfig) => Promise; + /** + * This endpoint will return a list of the latest library items filtered by the filter and type provided + * @summary Get Latest Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} type item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getLatestLibraryItems: (sectionId: any, type: any, filter?: any, axiosOptions?: AxiosRequestConfig) => Promise; + /** + * A library section (commonly referred to as just a library) is a collection of media. Libraries are typed, and depending on their type provide either a flat or a hierarchical view of the media. For example, a music library has an artist > albums > tracks structure, whereas a movie library is flat. Libraries have features beyond just being a collection of media; for starters, they include information about supported types, filters and sorts. \\This allows a client to provide a rich interface around the media (e.g. allow sorting movies by release year). * @summary Get All Libraries * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getLibraries: (axiosOptions?: AxiosRequestConfig) => Promise; /** - * This endpoint will return a list of library items filtered by the filter and type provided - * @summary Get Library Items + * Returns details for the library. This can be thought of as an interstitial endpoint because it contains information about the library, rather than content itself. These details are: - A list of `Directory` objects: These used to be used by clients to build a menuing system. There are four flavors of directory found here: - Primary: (e.g. all, On Deck) These are still used in some clients to provide \"shortcuts\" to subsets of media. However, with the exception of On Deck, all of them can be created by media queries, and the desire is to allow these to be customized by users. - Secondary: These are marked with `secondary=\"1\"` and were used by old clients to provide nested menus allowing for primative (but structured) navigation. - Special: There is a By Folder entry which allows browsing the media by the underlying filesystem structure, and there\'s a completely obsolete entry marked `search=\"1\"` which used to be used to allow clients to build search dialogs on the fly. - A list of `Type` objects: These represent the types of things found in this library, and for each one, a list of `Filter` and `Sort` objects. These can be used to build rich controls around a grid of media to allow filtering and organizing. Note that these filters and sorts are optional, and without them, the client won\'t render any filtering controls. The `Type` object contains: - `key`: This provides the root endpoint returning the actual media list for the type. - `type`: This is the metadata type for the type (if a standard Plex type). - `title`: The title for for the content of this type (e.g. \"Movies\"). - Each `Filter` object contains a description of the filter. Note that it is not an exhaustive list of the full media query language, but an inportant subset useful for top-level API. - `filter`: This represents the filter name used for the filter, which can be used to construct complex media queries with. - `filterType`: This is either `string`, `integer`, or `boolean`, and describes the type of values used for the filter. - `key`: This provides the endpoint where the possible range of values for the filter can be retrieved (e.g. for a \"Genre\" filter, it returns a list of all the genres in the library). This will include a `type` argument that matches the metadata type of the Type element. - `title`: The title for the filter. - Each `Sort` object contains a description of the sort field. - `defaultDirection`: Can be either `asc` or `desc`, and specifies the default direction for the sort field (e.g. titles default to alphabetically ascending). - `descKey` and `key`: Contains the parameters passed to the `sort=...` media query for each direction of the sort. - `title`: The title of the field. + * @summary Get Library Details * @param {any} sectionId the Id of the library to query - * @param {any} category the category to retrieve from the library - * @param {any} [type] item type - * @param {any} [filter] the filter parameter + * @param {any} [includeDetails] Whether or not to include details for a section (types, filters, and sorts). Only exists for backwards compatibility, media providers other than the server libraries have it on always. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ - getLibraryItems: (sectionId: any, category: any, type?: any, filter?: any, axiosOptions?: AxiosRequestConfig) => Promise; + getLibraryDetails: (sectionId: any, includeDetails?: any, axiosOptions?: AxiosRequestConfig) => Promise; + /** + * This endpoint will return the on deck content. + * @summary Get On Deck + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getOnDeck: (axiosOptions?: AxiosRequestConfig) => Promise; + /** + * This endpoint Refreshes the library. + * @summary Refresh Library + * @param {any} sectionId the Id of the library to refresh + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + refreshLibrary: (sectionId: any, axiosOptions?: AxiosRequestConfig) => Promise; }; /** * LibraryApi - functional programming interface @@ -677,23 +1226,66 @@ export declare const LibraryApiAxiosParamCreator: (configuration?: Configuration */ export declare const LibraryApiFp: (configuration?: Configuration) => { /** - * This endpoint will return a list of libraries + * This endpoint will return a list of all library items filtered by the filter and type provided + * @summary Get All Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} [type] item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAllLibraryItems(sectionId: any, type?: any, filter?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; + /** + * Represents a \"Common\" item. It contains only the common attributes of the items selected by the provided filter + * @summary Get Common Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} type item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getCommonLibraryItems(sectionId: any, type: any, filter?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; + /** + * This endpoint will return a list of the latest library items filtered by the filter and type provided + * @summary Get Latest Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} type item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getLatestLibraryItems(sectionId: any, type: any, filter?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; + /** + * A library section (commonly referred to as just a library) is a collection of media. Libraries are typed, and depending on their type provide either a flat or a hierarchical view of the media. For example, a music library has an artist > albums > tracks structure, whereas a movie library is flat. Libraries have features beyond just being a collection of media; for starters, they include information about supported types, filters and sorts. \\This allows a client to provide a rich interface around the media (e.g. allow sorting movies by release year). * @summary Get All Libraries * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getLibraries(axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** - * This endpoint will return a list of library items filtered by the filter and type provided - * @summary Get Library Items + * Returns details for the library. This can be thought of as an interstitial endpoint because it contains information about the library, rather than content itself. These details are: - A list of `Directory` objects: These used to be used by clients to build a menuing system. There are four flavors of directory found here: - Primary: (e.g. all, On Deck) These are still used in some clients to provide \"shortcuts\" to subsets of media. However, with the exception of On Deck, all of them can be created by media queries, and the desire is to allow these to be customized by users. - Secondary: These are marked with `secondary=\"1\"` and were used by old clients to provide nested menus allowing for primative (but structured) navigation. - Special: There is a By Folder entry which allows browsing the media by the underlying filesystem structure, and there\'s a completely obsolete entry marked `search=\"1\"` which used to be used to allow clients to build search dialogs on the fly. - A list of `Type` objects: These represent the types of things found in this library, and for each one, a list of `Filter` and `Sort` objects. These can be used to build rich controls around a grid of media to allow filtering and organizing. Note that these filters and sorts are optional, and without them, the client won\'t render any filtering controls. The `Type` object contains: - `key`: This provides the root endpoint returning the actual media list for the type. - `type`: This is the metadata type for the type (if a standard Plex type). - `title`: The title for for the content of this type (e.g. \"Movies\"). - Each `Filter` object contains a description of the filter. Note that it is not an exhaustive list of the full media query language, but an inportant subset useful for top-level API. - `filter`: This represents the filter name used for the filter, which can be used to construct complex media queries with. - `filterType`: This is either `string`, `integer`, or `boolean`, and describes the type of values used for the filter. - `key`: This provides the endpoint where the possible range of values for the filter can be retrieved (e.g. for a \"Genre\" filter, it returns a list of all the genres in the library). This will include a `type` argument that matches the metadata type of the Type element. - `title`: The title for the filter. - Each `Sort` object contains a description of the sort field. - `defaultDirection`: Can be either `asc` or `desc`, and specifies the default direction for the sort field (e.g. titles default to alphabetically ascending). - `descKey` and `key`: Contains the parameters passed to the `sort=...` media query for each direction of the sort. - `title`: The title of the field. + * @summary Get Library Details * @param {any} sectionId the Id of the library to query - * @param {any} category the category to retrieve from the library - * @param {any} [type] item type - * @param {any} [filter] the filter parameter + * @param {any} [includeDetails] Whether or not to include details for a section (types, filters, and sorts). Only exists for backwards compatibility, media providers other than the server libraries have it on always. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ - getLibraryItems(sectionId: any, category: any, type?: any, filter?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; + getLibraryDetails(sectionId: any, includeDetails?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; + /** + * This endpoint will return the on deck content. + * @summary Get On Deck + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getOnDeck(axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; + /** + * This endpoint Refreshes the library. + * @summary Refresh Library + * @param {any} sectionId the Id of the library to refresh + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + refreshLibrary(sectionId: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; }; /** * LibraryApi - factory interface @@ -701,55 +1293,174 @@ export declare const LibraryApiFp: (configuration?: Configuration) => { */ export declare const LibraryApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => { /** - * This endpoint will return a list of libraries + * This endpoint will return a list of all library items filtered by the filter and type provided + * @summary Get All Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} [type] item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAllLibraryItems(sectionId: any, type?: any, filter?: any, axiosOptions?: any): AxiosPromise; + /** + * Represents a \"Common\" item. It contains only the common attributes of the items selected by the provided filter + * @summary Get Common Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} type item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getCommonLibraryItems(sectionId: any, type: any, filter?: any, axiosOptions?: any): AxiosPromise; + /** + * This endpoint will return a list of the latest library items filtered by the filter and type provided + * @summary Get Latest Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} type item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getLatestLibraryItems(sectionId: any, type: any, filter?: any, axiosOptions?: any): AxiosPromise; + /** + * A library section (commonly referred to as just a library) is a collection of media. Libraries are typed, and depending on their type provide either a flat or a hierarchical view of the media. For example, a music library has an artist > albums > tracks structure, whereas a movie library is flat. Libraries have features beyond just being a collection of media; for starters, they include information about supported types, filters and sorts. \\This allows a client to provide a rich interface around the media (e.g. allow sorting movies by release year). * @summary Get All Libraries * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getLibraries(axiosOptions?: any): AxiosPromise; /** - * This endpoint will return a list of library items filtered by the filter and type provided - * @summary Get Library Items + * Returns details for the library. This can be thought of as an interstitial endpoint because it contains information about the library, rather than content itself. These details are: - A list of `Directory` objects: These used to be used by clients to build a menuing system. There are four flavors of directory found here: - Primary: (e.g. all, On Deck) These are still used in some clients to provide \"shortcuts\" to subsets of media. However, with the exception of On Deck, all of them can be created by media queries, and the desire is to allow these to be customized by users. - Secondary: These are marked with `secondary=\"1\"` and were used by old clients to provide nested menus allowing for primative (but structured) navigation. - Special: There is a By Folder entry which allows browsing the media by the underlying filesystem structure, and there\'s a completely obsolete entry marked `search=\"1\"` which used to be used to allow clients to build search dialogs on the fly. - A list of `Type` objects: These represent the types of things found in this library, and for each one, a list of `Filter` and `Sort` objects. These can be used to build rich controls around a grid of media to allow filtering and organizing. Note that these filters and sorts are optional, and without them, the client won\'t render any filtering controls. The `Type` object contains: - `key`: This provides the root endpoint returning the actual media list for the type. - `type`: This is the metadata type for the type (if a standard Plex type). - `title`: The title for for the content of this type (e.g. \"Movies\"). - Each `Filter` object contains a description of the filter. Note that it is not an exhaustive list of the full media query language, but an inportant subset useful for top-level API. - `filter`: This represents the filter name used for the filter, which can be used to construct complex media queries with. - `filterType`: This is either `string`, `integer`, or `boolean`, and describes the type of values used for the filter. - `key`: This provides the endpoint where the possible range of values for the filter can be retrieved (e.g. for a \"Genre\" filter, it returns a list of all the genres in the library). This will include a `type` argument that matches the metadata type of the Type element. - `title`: The title for the filter. - Each `Sort` object contains a description of the sort field. - `defaultDirection`: Can be either `asc` or `desc`, and specifies the default direction for the sort field (e.g. titles default to alphabetically ascending). - `descKey` and `key`: Contains the parameters passed to the `sort=...` media query for each direction of the sort. - `title`: The title of the field. + * @summary Get Library Details * @param {any} sectionId the Id of the library to query - * @param {any} category the category to retrieve from the library - * @param {any} [type] item type - * @param {any} [filter] the filter parameter + * @param {any} [includeDetails] Whether or not to include details for a section (types, filters, and sorts). Only exists for backwards compatibility, media providers other than the server libraries have it on always. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ - getLibraryItems(sectionId: any, category: any, type?: any, filter?: any, axiosOptions?: any): AxiosPromise; + getLibraryDetails(sectionId: any, includeDetails?: any, axiosOptions?: any): AxiosPromise; + /** + * This endpoint will return the on deck content. + * @summary Get On Deck + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getOnDeck(axiosOptions?: any): AxiosPromise; + /** + * This endpoint Refreshes the library. + * @summary Refresh Library + * @param {any} sectionId the Id of the library to refresh + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + refreshLibrary(sectionId: any, axiosOptions?: any): AxiosPromise; }; /** - * Request parameters for getLibraryItems operation in LibraryApi. + * Request parameters for getAllLibraryItems operation in LibraryApi. * @export - * @interface LibraryApiGetLibraryItemsRequest + * @interface LibraryApiGetAllLibraryItemsRequest */ -export interface LibraryApiGetLibraryItemsRequest { +export interface LibraryApiGetAllLibraryItemsRequest { /** * the Id of the library to query * @type {any} - * @memberof LibraryApiGetLibraryItems + * @memberof LibraryApiGetAllLibraryItems */ readonly sectionId: any; - /** - * the category to retrieve from the library - * @type {any} - * @memberof LibraryApiGetLibraryItems - */ - readonly category: any; /** * item type * @type {any} - * @memberof LibraryApiGetLibraryItems + * @memberof LibraryApiGetAllLibraryItems */ readonly type?: any; /** * the filter parameter * @type {any} - * @memberof LibraryApiGetLibraryItems + * @memberof LibraryApiGetAllLibraryItems */ readonly filter?: any; } +/** + * Request parameters for getCommonLibraryItems operation in LibraryApi. + * @export + * @interface LibraryApiGetCommonLibraryItemsRequest + */ +export interface LibraryApiGetCommonLibraryItemsRequest { + /** + * the Id of the library to query + * @type {any} + * @memberof LibraryApiGetCommonLibraryItems + */ + readonly sectionId: any; + /** + * item type + * @type {any} + * @memberof LibraryApiGetCommonLibraryItems + */ + readonly type: any; + /** + * the filter parameter + * @type {any} + * @memberof LibraryApiGetCommonLibraryItems + */ + readonly filter?: any; +} +/** + * Request parameters for getLatestLibraryItems operation in LibraryApi. + * @export + * @interface LibraryApiGetLatestLibraryItemsRequest + */ +export interface LibraryApiGetLatestLibraryItemsRequest { + /** + * the Id of the library to query + * @type {any} + * @memberof LibraryApiGetLatestLibraryItems + */ + readonly sectionId: any; + /** + * item type + * @type {any} + * @memberof LibraryApiGetLatestLibraryItems + */ + readonly type: any; + /** + * the filter parameter + * @type {any} + * @memberof LibraryApiGetLatestLibraryItems + */ + readonly filter?: any; +} +/** + * Request parameters for getLibraryDetails operation in LibraryApi. + * @export + * @interface LibraryApiGetLibraryDetailsRequest + */ +export interface LibraryApiGetLibraryDetailsRequest { + /** + * the Id of the library to query + * @type {any} + * @memberof LibraryApiGetLibraryDetails + */ + readonly sectionId: any; + /** + * Whether or not to include details for a section (types, filters, and sorts). Only exists for backwards compatibility, media providers other than the server libraries have it on always. + * @type {any} + * @memberof LibraryApiGetLibraryDetails + */ + readonly includeDetails?: any; +} +/** + * Request parameters for refreshLibrary operation in LibraryApi. + * @export + * @interface LibraryApiRefreshLibraryRequest + */ +export interface LibraryApiRefreshLibraryRequest { + /** + * the Id of the library to refresh + * @type {any} + * @memberof LibraryApiRefreshLibrary + */ + readonly sectionId: any; +} /** * LibraryApi - object-oriented interface * @export @@ -758,7 +1469,34 @@ export interface LibraryApiGetLibraryItemsRequest { */ export declare class LibraryApi extends BaseAPI { /** - * This endpoint will return a list of libraries + * This endpoint will return a list of all library items filtered by the filter and type provided + * @summary Get All Library Items + * @param {LibraryApiGetAllLibraryItemsRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof LibraryApi + */ + getAllLibraryItems(requestParameters: LibraryApiGetAllLibraryItemsRequest, axiosOptions?: AxiosRequestConfig): Promise>; + /** + * Represents a \"Common\" item. It contains only the common attributes of the items selected by the provided filter + * @summary Get Common Library Items + * @param {LibraryApiGetCommonLibraryItemsRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof LibraryApi + */ + getCommonLibraryItems(requestParameters: LibraryApiGetCommonLibraryItemsRequest, axiosOptions?: AxiosRequestConfig): Promise>; + /** + * This endpoint will return a list of the latest library items filtered by the filter and type provided + * @summary Get Latest Library Items + * @param {LibraryApiGetLatestLibraryItemsRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof LibraryApi + */ + getLatestLibraryItems(requestParameters: LibraryApiGetLatestLibraryItemsRequest, axiosOptions?: AxiosRequestConfig): Promise>; + /** + * A library section (commonly referred to as just a library) is a collection of media. Libraries are typed, and depending on their type provide either a flat or a hierarchical view of the media. For example, a music library has an artist > albums > tracks structure, whereas a movie library is flat. Libraries have features beyond just being a collection of media; for starters, they include information about supported types, filters and sorts. \\This allows a client to provide a rich interface around the media (e.g. allow sorting movies by release year). * @summary Get All Libraries * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} @@ -766,14 +1504,31 @@ export declare class LibraryApi extends BaseAPI { */ getLibraries(axiosOptions?: AxiosRequestConfig): Promise>; /** - * This endpoint will return a list of library items filtered by the filter and type provided - * @summary Get Library Items - * @param {LibraryApiGetLibraryItemsRequest} requestParameters Request parameters. + * Returns details for the library. This can be thought of as an interstitial endpoint because it contains information about the library, rather than content itself. These details are: - A list of `Directory` objects: These used to be used by clients to build a menuing system. There are four flavors of directory found here: - Primary: (e.g. all, On Deck) These are still used in some clients to provide \"shortcuts\" to subsets of media. However, with the exception of On Deck, all of them can be created by media queries, and the desire is to allow these to be customized by users. - Secondary: These are marked with `secondary=\"1\"` and were used by old clients to provide nested menus allowing for primative (but structured) navigation. - Special: There is a By Folder entry which allows browsing the media by the underlying filesystem structure, and there\'s a completely obsolete entry marked `search=\"1\"` which used to be used to allow clients to build search dialogs on the fly. - A list of `Type` objects: These represent the types of things found in this library, and for each one, a list of `Filter` and `Sort` objects. These can be used to build rich controls around a grid of media to allow filtering and organizing. Note that these filters and sorts are optional, and without them, the client won\'t render any filtering controls. The `Type` object contains: - `key`: This provides the root endpoint returning the actual media list for the type. - `type`: This is the metadata type for the type (if a standard Plex type). - `title`: The title for for the content of this type (e.g. \"Movies\"). - Each `Filter` object contains a description of the filter. Note that it is not an exhaustive list of the full media query language, but an inportant subset useful for top-level API. - `filter`: This represents the filter name used for the filter, which can be used to construct complex media queries with. - `filterType`: This is either `string`, `integer`, or `boolean`, and describes the type of values used for the filter. - `key`: This provides the endpoint where the possible range of values for the filter can be retrieved (e.g. for a \"Genre\" filter, it returns a list of all the genres in the library). This will include a `type` argument that matches the metadata type of the Type element. - `title`: The title for the filter. - Each `Sort` object contains a description of the sort field. - `defaultDirection`: Can be either `asc` or `desc`, and specifies the default direction for the sort field (e.g. titles default to alphabetically ascending). - `descKey` and `key`: Contains the parameters passed to the `sort=...` media query for each direction of the sort. - `title`: The title of the field. + * @summary Get Library Details + * @param {LibraryApiGetLibraryDetailsRequest} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof LibraryApi */ - getLibraryItems(requestParameters: LibraryApiGetLibraryItemsRequest, axiosOptions?: AxiosRequestConfig): Promise>; + getLibraryDetails(requestParameters: LibraryApiGetLibraryDetailsRequest, axiosOptions?: AxiosRequestConfig): Promise>; + /** + * This endpoint will return the on deck content. + * @summary Get On Deck + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof LibraryApi + */ + getOnDeck(axiosOptions?: AxiosRequestConfig): Promise>; + /** + * This endpoint Refreshes the library. + * @summary Refresh Library + * @param {LibraryApiRefreshLibraryRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof LibraryApi + */ + refreshLibrary(requestParameters: LibraryApiRefreshLibraryRequest, axiosOptions?: AxiosRequestConfig): Promise>; } /** * LogApi - axios parameter creator @@ -923,6 +1678,681 @@ export declare class LogApi extends BaseAPI { */ logaLine(requestParameters: LogApiLogaLineRequest, axiosOptions?: AxiosRequestConfig): Promise>; } +/** + * PlaylistsApi - axios parameter creator + * @export + */ +export declare const PlaylistsApiAxiosParamCreator: (configuration?: Configuration) => { + /** + * Adds a generator to a playlist, same parameters as the POST above. With a dumb playlist, this adds the specified items to the playlist. With a smart playlist, passing a new `uri` parameter replaces the rules for the playlist. Returns the playlist. + * @summary Adding to a Playlist + * @param {any} playlistID the ID of the playlist + * @param {any} uri the content URI for the playlist + * @param {any} playQueueID the play queue to add to a playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + addPlaylistContent: (playlistID: any, uri: any, playQueueID: any, axiosOptions?: AxiosRequestConfig) => Promise; + /** + * Clears a playlist, only works with dumb playlists. Returns the playlist. + * @summary Delete Playlist Contents + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + clearPlaylistContent: (playlistID: any, axiosOptions?: AxiosRequestConfig) => Promise; + /** + * Create a new playlist. By default the playlist is blank. To create a playlist along with a first item, pass: - `uri` - The content URI for what we\'re playing (e.g. `library://...`). - `playQueueID` - To create a playlist from an existing play queue. + * @summary Create a Playlist + * @param {any} title name of the playlist + * @param {any} type type of playlist to create + * @param {any} smart whether the playlist is smart or not + * @param {any} [uri] the content URI for the playlist + * @param {any} [playQueueID] the play queue to copy to a playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + createAPlaylist: (title: any, type: any, smart: any, uri?: any, playQueueID?: any, axiosOptions?: AxiosRequestConfig) => Promise; + /** + * This endpoint will delete a playlist + * @summary Deletes a Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + deletePlaylist: (playlistID: any, axiosOptions?: AxiosRequestConfig) => Promise; + /** + * + * @summary Get All Playlists + * @param {any} [playlistType] limit to a type of playlist. + * @param {any} [smart] type of playlists to return (default is all). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAllPlaylists: (playlistType?: any, smart?: any, axiosOptions?: AxiosRequestConfig) => Promise; + /** + * Gets detailed metadata for a playlist. A playlist for many purposes (rating, editing metadata, tagging), can be treated like a regular metadata item: Smart playlist details contain the `content` attribute. This is the content URI for the generator. This can then be parsed by a client to provide smart playlist editing. + * @summary Retrieve Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getPlaylist: (playlistID: any, axiosOptions?: AxiosRequestConfig) => Promise; + /** + * Gets the contents of a playlist. Should be paged by clients via standard mechanisms. By default leaves are returned (e.g. episodes, movies). In order to return other types you can use the `type` parameter. For example, you could use this to display a list of recently added albums vis a smart playlist. Note that for dumb playlists, items have a `playlistItemID` attribute which is used for deleting or moving items. + * @summary Retrieve Playlist Contents + * @param {any} playlistID the ID of the playlist + * @param {any} type the metadata type of the item to return + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getPlaylistContent: (playlistID: any, type: any, axiosOptions?: AxiosRequestConfig) => Promise; + /** + * From PMS version 1.9.1 clients can also edit playlist metadata using this endpoint as they would via `PUT /library/metadata/{playlistID}` + * @summary Update a Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + updatePlaylist: (playlistID: any, axiosOptions?: AxiosRequestConfig) => Promise; + /** + * Imports m3u playlists by passing a path on the server to scan for m3u-formatted playlist files, or a path to a single playlist file. + * @summary Upload Playlist + * @param {any} path absolute path to a directory on the server where m3u files are stored, or the absolute path to a playlist file on the server. If the `path` argument is a directory, that path will be scanned for playlist files to be processed. Each file in that directory creates a separate playlist, with a name based on the filename of the file that created it. The GUID of each playlist is based on the filename. If the `path` argument is a file, that file will be used to create a new playlist, with the name based on the filename of the file that created it. The GUID of each playlist is based on the filename. + * @param {any} force force overwriting of duplicate playlists. By default, a playlist file uploaded with the same path will overwrite the existing playlist. The `force` argument is used to disable overwriting. If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + uploadPlaylist: (path: any, force: any, axiosOptions?: AxiosRequestConfig) => Promise; +}; +/** + * PlaylistsApi - functional programming interface + * @export + */ +export declare const PlaylistsApiFp: (configuration?: Configuration) => { + /** + * Adds a generator to a playlist, same parameters as the POST above. With a dumb playlist, this adds the specified items to the playlist. With a smart playlist, passing a new `uri` parameter replaces the rules for the playlist. Returns the playlist. + * @summary Adding to a Playlist + * @param {any} playlistID the ID of the playlist + * @param {any} uri the content URI for the playlist + * @param {any} playQueueID the play queue to add to a playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + addPlaylistContent(playlistID: any, uri: any, playQueueID: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; + /** + * Clears a playlist, only works with dumb playlists. Returns the playlist. + * @summary Delete Playlist Contents + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + clearPlaylistContent(playlistID: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; + /** + * Create a new playlist. By default the playlist is blank. To create a playlist along with a first item, pass: - `uri` - The content URI for what we\'re playing (e.g. `library://...`). - `playQueueID` - To create a playlist from an existing play queue. + * @summary Create a Playlist + * @param {any} title name of the playlist + * @param {any} type type of playlist to create + * @param {any} smart whether the playlist is smart or not + * @param {any} [uri] the content URI for the playlist + * @param {any} [playQueueID] the play queue to copy to a playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + createAPlaylist(title: any, type: any, smart: any, uri?: any, playQueueID?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; + /** + * This endpoint will delete a playlist + * @summary Deletes a Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + deletePlaylist(playlistID: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; + /** + * + * @summary Get All Playlists + * @param {any} [playlistType] limit to a type of playlist. + * @param {any} [smart] type of playlists to return (default is all). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAllPlaylists(playlistType?: any, smart?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; + /** + * Gets detailed metadata for a playlist. A playlist for many purposes (rating, editing metadata, tagging), can be treated like a regular metadata item: Smart playlist details contain the `content` attribute. This is the content URI for the generator. This can then be parsed by a client to provide smart playlist editing. + * @summary Retrieve Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getPlaylist(playlistID: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; + /** + * Gets the contents of a playlist. Should be paged by clients via standard mechanisms. By default leaves are returned (e.g. episodes, movies). In order to return other types you can use the `type` parameter. For example, you could use this to display a list of recently added albums vis a smart playlist. Note that for dumb playlists, items have a `playlistItemID` attribute which is used for deleting or moving items. + * @summary Retrieve Playlist Contents + * @param {any} playlistID the ID of the playlist + * @param {any} type the metadata type of the item to return + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getPlaylistContent(playlistID: any, type: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; + /** + * From PMS version 1.9.1 clients can also edit playlist metadata using this endpoint as they would via `PUT /library/metadata/{playlistID}` + * @summary Update a Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + updatePlaylist(playlistID: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; + /** + * Imports m3u playlists by passing a path on the server to scan for m3u-formatted playlist files, or a path to a single playlist file. + * @summary Upload Playlist + * @param {any} path absolute path to a directory on the server where m3u files are stored, or the absolute path to a playlist file on the server. If the `path` argument is a directory, that path will be scanned for playlist files to be processed. Each file in that directory creates a separate playlist, with a name based on the filename of the file that created it. The GUID of each playlist is based on the filename. If the `path` argument is a file, that file will be used to create a new playlist, with the name based on the filename of the file that created it. The GUID of each playlist is based on the filename. + * @param {any} force force overwriting of duplicate playlists. By default, a playlist file uploaded with the same path will overwrite the existing playlist. The `force` argument is used to disable overwriting. If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + uploadPlaylist(path: any, force: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; +}; +/** + * PlaylistsApi - factory interface + * @export + */ +export declare const PlaylistsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => { + /** + * Adds a generator to a playlist, same parameters as the POST above. With a dumb playlist, this adds the specified items to the playlist. With a smart playlist, passing a new `uri` parameter replaces the rules for the playlist. Returns the playlist. + * @summary Adding to a Playlist + * @param {any} playlistID the ID of the playlist + * @param {any} uri the content URI for the playlist + * @param {any} playQueueID the play queue to add to a playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + addPlaylistContent(playlistID: any, uri: any, playQueueID: any, axiosOptions?: any): AxiosPromise; + /** + * Clears a playlist, only works with dumb playlists. Returns the playlist. + * @summary Delete Playlist Contents + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + clearPlaylistContent(playlistID: any, axiosOptions?: any): AxiosPromise; + /** + * Create a new playlist. By default the playlist is blank. To create a playlist along with a first item, pass: - `uri` - The content URI for what we\'re playing (e.g. `library://...`). - `playQueueID` - To create a playlist from an existing play queue. + * @summary Create a Playlist + * @param {any} title name of the playlist + * @param {any} type type of playlist to create + * @param {any} smart whether the playlist is smart or not + * @param {any} [uri] the content URI for the playlist + * @param {any} [playQueueID] the play queue to copy to a playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + createAPlaylist(title: any, type: any, smart: any, uri?: any, playQueueID?: any, axiosOptions?: any): AxiosPromise; + /** + * This endpoint will delete a playlist + * @summary Deletes a Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + deletePlaylist(playlistID: any, axiosOptions?: any): AxiosPromise; + /** + * + * @summary Get All Playlists + * @param {any} [playlistType] limit to a type of playlist. + * @param {any} [smart] type of playlists to return (default is all). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAllPlaylists(playlistType?: any, smart?: any, axiosOptions?: any): AxiosPromise; + /** + * Gets detailed metadata for a playlist. A playlist for many purposes (rating, editing metadata, tagging), can be treated like a regular metadata item: Smart playlist details contain the `content` attribute. This is the content URI for the generator. This can then be parsed by a client to provide smart playlist editing. + * @summary Retrieve Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getPlaylist(playlistID: any, axiosOptions?: any): AxiosPromise; + /** + * Gets the contents of a playlist. Should be paged by clients via standard mechanisms. By default leaves are returned (e.g. episodes, movies). In order to return other types you can use the `type` parameter. For example, you could use this to display a list of recently added albums vis a smart playlist. Note that for dumb playlists, items have a `playlistItemID` attribute which is used for deleting or moving items. + * @summary Retrieve Playlist Contents + * @param {any} playlistID the ID of the playlist + * @param {any} type the metadata type of the item to return + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getPlaylistContent(playlistID: any, type: any, axiosOptions?: any): AxiosPromise; + /** + * From PMS version 1.9.1 clients can also edit playlist metadata using this endpoint as they would via `PUT /library/metadata/{playlistID}` + * @summary Update a Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + updatePlaylist(playlistID: any, axiosOptions?: any): AxiosPromise; + /** + * Imports m3u playlists by passing a path on the server to scan for m3u-formatted playlist files, or a path to a single playlist file. + * @summary Upload Playlist + * @param {any} path absolute path to a directory on the server where m3u files are stored, or the absolute path to a playlist file on the server. If the `path` argument is a directory, that path will be scanned for playlist files to be processed. Each file in that directory creates a separate playlist, with a name based on the filename of the file that created it. The GUID of each playlist is based on the filename. If the `path` argument is a file, that file will be used to create a new playlist, with the name based on the filename of the file that created it. The GUID of each playlist is based on the filename. + * @param {any} force force overwriting of duplicate playlists. By default, a playlist file uploaded with the same path will overwrite the existing playlist. The `force` argument is used to disable overwriting. If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + uploadPlaylist(path: any, force: any, axiosOptions?: any): AxiosPromise; +}; +/** + * Request parameters for addPlaylistContent operation in PlaylistsApi. + * @export + * @interface PlaylistsApiAddPlaylistContentRequest + */ +export interface PlaylistsApiAddPlaylistContentRequest { + /** + * the ID of the playlist + * @type {any} + * @memberof PlaylistsApiAddPlaylistContent + */ + readonly playlistID: any; + /** + * the content URI for the playlist + * @type {any} + * @memberof PlaylistsApiAddPlaylistContent + */ + readonly uri: any; + /** + * the play queue to add to a playlist + * @type {any} + * @memberof PlaylistsApiAddPlaylistContent + */ + readonly playQueueID: any; +} +/** + * Request parameters for clearPlaylistContent operation in PlaylistsApi. + * @export + * @interface PlaylistsApiClearPlaylistContentRequest + */ +export interface PlaylistsApiClearPlaylistContentRequest { + /** + * the ID of the playlist + * @type {any} + * @memberof PlaylistsApiClearPlaylistContent + */ + readonly playlistID: any; +} +/** + * Request parameters for createAPlaylist operation in PlaylistsApi. + * @export + * @interface PlaylistsApiCreateAPlaylistRequest + */ +export interface PlaylistsApiCreateAPlaylistRequest { + /** + * name of the playlist + * @type {any} + * @memberof PlaylistsApiCreateAPlaylist + */ + readonly title: any; + /** + * type of playlist to create + * @type {any} + * @memberof PlaylistsApiCreateAPlaylist + */ + readonly type: any; + /** + * whether the playlist is smart or not + * @type {any} + * @memberof PlaylistsApiCreateAPlaylist + */ + readonly smart: any; + /** + * the content URI for the playlist + * @type {any} + * @memberof PlaylistsApiCreateAPlaylist + */ + readonly uri?: any; + /** + * the play queue to copy to a playlist + * @type {any} + * @memberof PlaylistsApiCreateAPlaylist + */ + readonly playQueueID?: any; +} +/** + * Request parameters for deletePlaylist operation in PlaylistsApi. + * @export + * @interface PlaylistsApiDeletePlaylistRequest + */ +export interface PlaylistsApiDeletePlaylistRequest { + /** + * the ID of the playlist + * @type {any} + * @memberof PlaylistsApiDeletePlaylist + */ + readonly playlistID: any; +} +/** + * Request parameters for getAllPlaylists operation in PlaylistsApi. + * @export + * @interface PlaylistsApiGetAllPlaylistsRequest + */ +export interface PlaylistsApiGetAllPlaylistsRequest { + /** + * limit to a type of playlist. + * @type {any} + * @memberof PlaylistsApiGetAllPlaylists + */ + readonly playlistType?: any; + /** + * type of playlists to return (default is all). + * @type {any} + * @memberof PlaylistsApiGetAllPlaylists + */ + readonly smart?: any; +} +/** + * Request parameters for getPlaylist operation in PlaylistsApi. + * @export + * @interface PlaylistsApiGetPlaylistRequest + */ +export interface PlaylistsApiGetPlaylistRequest { + /** + * the ID of the playlist + * @type {any} + * @memberof PlaylistsApiGetPlaylist + */ + readonly playlistID: any; +} +/** + * Request parameters for getPlaylistContent operation in PlaylistsApi. + * @export + * @interface PlaylistsApiGetPlaylistContentRequest + */ +export interface PlaylistsApiGetPlaylistContentRequest { + /** + * the ID of the playlist + * @type {any} + * @memberof PlaylistsApiGetPlaylistContent + */ + readonly playlistID: any; + /** + * the metadata type of the item to return + * @type {any} + * @memberof PlaylistsApiGetPlaylistContent + */ + readonly type: any; +} +/** + * Request parameters for updatePlaylist operation in PlaylistsApi. + * @export + * @interface PlaylistsApiUpdatePlaylistRequest + */ +export interface PlaylistsApiUpdatePlaylistRequest { + /** + * the ID of the playlist + * @type {any} + * @memberof PlaylistsApiUpdatePlaylist + */ + readonly playlistID: any; +} +/** + * Request parameters for uploadPlaylist operation in PlaylistsApi. + * @export + * @interface PlaylistsApiUploadPlaylistRequest + */ +export interface PlaylistsApiUploadPlaylistRequest { + /** + * absolute path to a directory on the server where m3u files are stored, or the absolute path to a playlist file on the server. If the `path` argument is a directory, that path will be scanned for playlist files to be processed. Each file in that directory creates a separate playlist, with a name based on the filename of the file that created it. The GUID of each playlist is based on the filename. If the `path` argument is a file, that file will be used to create a new playlist, with the name based on the filename of the file that created it. The GUID of each playlist is based on the filename. + * @type {any} + * @memberof PlaylistsApiUploadPlaylist + */ + readonly path: any; + /** + * force overwriting of duplicate playlists. By default, a playlist file uploaded with the same path will overwrite the existing playlist. The `force` argument is used to disable overwriting. If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded. + * @type {any} + * @memberof PlaylistsApiUploadPlaylist + */ + readonly force: any; +} +/** + * PlaylistsApi - object-oriented interface + * @export + * @class PlaylistsApi + * @extends {BaseAPI} + */ +export declare class PlaylistsApi extends BaseAPI { + /** + * Adds a generator to a playlist, same parameters as the POST above. With a dumb playlist, this adds the specified items to the playlist. With a smart playlist, passing a new `uri` parameter replaces the rules for the playlist. Returns the playlist. + * @summary Adding to a Playlist + * @param {PlaylistsApiAddPlaylistContentRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + addPlaylistContent(requestParameters: PlaylistsApiAddPlaylistContentRequest, axiosOptions?: AxiosRequestConfig): Promise>; + /** + * Clears a playlist, only works with dumb playlists. Returns the playlist. + * @summary Delete Playlist Contents + * @param {PlaylistsApiClearPlaylistContentRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + clearPlaylistContent(requestParameters: PlaylistsApiClearPlaylistContentRequest, axiosOptions?: AxiosRequestConfig): Promise>; + /** + * Create a new playlist. By default the playlist is blank. To create a playlist along with a first item, pass: - `uri` - The content URI for what we\'re playing (e.g. `library://...`). - `playQueueID` - To create a playlist from an existing play queue. + * @summary Create a Playlist + * @param {PlaylistsApiCreateAPlaylistRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + createAPlaylist(requestParameters: PlaylistsApiCreateAPlaylistRequest, axiosOptions?: AxiosRequestConfig): Promise>; + /** + * This endpoint will delete a playlist + * @summary Deletes a Playlist + * @param {PlaylistsApiDeletePlaylistRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + deletePlaylist(requestParameters: PlaylistsApiDeletePlaylistRequest, axiosOptions?: AxiosRequestConfig): Promise>; + /** + * + * @summary Get All Playlists + * @param {PlaylistsApiGetAllPlaylistsRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + getAllPlaylists(requestParameters?: PlaylistsApiGetAllPlaylistsRequest, axiosOptions?: AxiosRequestConfig): Promise>; + /** + * Gets detailed metadata for a playlist. A playlist for many purposes (rating, editing metadata, tagging), can be treated like a regular metadata item: Smart playlist details contain the `content` attribute. This is the content URI for the generator. This can then be parsed by a client to provide smart playlist editing. + * @summary Retrieve Playlist + * @param {PlaylistsApiGetPlaylistRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + getPlaylist(requestParameters: PlaylistsApiGetPlaylistRequest, axiosOptions?: AxiosRequestConfig): Promise>; + /** + * Gets the contents of a playlist. Should be paged by clients via standard mechanisms. By default leaves are returned (e.g. episodes, movies). In order to return other types you can use the `type` parameter. For example, you could use this to display a list of recently added albums vis a smart playlist. Note that for dumb playlists, items have a `playlistItemID` attribute which is used for deleting or moving items. + * @summary Retrieve Playlist Contents + * @param {PlaylistsApiGetPlaylistContentRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + getPlaylistContent(requestParameters: PlaylistsApiGetPlaylistContentRequest, axiosOptions?: AxiosRequestConfig): Promise>; + /** + * From PMS version 1.9.1 clients can also edit playlist metadata using this endpoint as they would via `PUT /library/metadata/{playlistID}` + * @summary Update a Playlist + * @param {PlaylistsApiUpdatePlaylistRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + updatePlaylist(requestParameters: PlaylistsApiUpdatePlaylistRequest, axiosOptions?: AxiosRequestConfig): Promise>; + /** + * Imports m3u playlists by passing a path on the server to scan for m3u-formatted playlist files, or a path to a single playlist file. + * @summary Upload Playlist + * @param {PlaylistsApiUploadPlaylistRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + uploadPlaylist(requestParameters: PlaylistsApiUploadPlaylistRequest, axiosOptions?: AxiosRequestConfig): Promise>; +} +/** + * SearchApi - axios parameter creator + * @export + */ +export declare const SearchApiAxiosParamCreator: (configuration?: Configuration) => { + /** + * This endpoint performs a search across all library sections, or a single section, and returns matches as hubs, split up by type. It performs spell checking, looks for partial matches, and orders the hubs based on quality of results. In addition, based on matches, it will return other related matches (e.g. for a genre match, it may return movies in that genre, or for an actor match, movies with that actor). In the response\'s items, the following extra attributes are returned to further describe or disambiguate the result: - `reason`: The reason for the result, if not because of a direct search term match; can be either: - `section`: There are multiple identical results from different sections. - `originalTitle`: There was a search term match from the original title field (sometimes those can be very different or in a foreign language). - ``: If the reason for the result is due to a result in another hub, the source hub identifier is returned. For example, if the search is for \"dylan\" then Bob Dylan may be returned as an artist result, an a few of his albums returned as album results with a reason code of `artist` (the identifier of that particular hub). Or if the search is for \"arnold\", there might be movie results returned with a reason of `actor` - `reasonTitle`: The string associated with the reason code. For a section reason, it\'ll be the section name; For a hub identifier, it\'ll be a string associated with the match (e.g. `Arnold Schwarzenegger` for movies which were returned because the search was for \"arnold\"). - `reasonID`: The ID of the item associated with the reason for the result. This might be a section ID, a tag ID, an artist ID, or a show ID. This request is intended to be very fast, and called as the user types. + * @summary Perform a search + * @param {any} query The query term + * @param {any} [sectionId] This gives context to the search, and can result in re-ordering of search result hubs + * @param {any} [limit] The number of items to return per hub + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + performSearch: (query: any, sectionId?: any, limit?: any, axiosOptions?: AxiosRequestConfig) => Promise; + /** + * This endpoint performs a search specifically tailored towards voice or other imprecise input which may work badly with the substring and spell-checking heuristics used by the `/hubs/search` endpoint. It uses a [Levenshtein distance](https://en.wikipedia.org/wiki/Levenshtein_distance) heuristic to search titles, and as such is much slower than the other search endpoint. Whenever possible, clients should limit the search to the appropriate type. Results, as well as their containing per-type hubs, contain a `distance` attribute which can be used to judge result quality. + * @summary Perform a voice search + * @param {any} query The query term + * @param {any} [sectionId] This gives context to the search, and can result in re-ordering of search result hubs + * @param {any} [limit] The number of items to return per hub + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + performVoiceSearch: (query: any, sectionId?: any, limit?: any, axiosOptions?: AxiosRequestConfig) => Promise; +}; +/** + * SearchApi - functional programming interface + * @export + */ +export declare const SearchApiFp: (configuration?: Configuration) => { + /** + * This endpoint performs a search across all library sections, or a single section, and returns matches as hubs, split up by type. It performs spell checking, looks for partial matches, and orders the hubs based on quality of results. In addition, based on matches, it will return other related matches (e.g. for a genre match, it may return movies in that genre, or for an actor match, movies with that actor). In the response\'s items, the following extra attributes are returned to further describe or disambiguate the result: - `reason`: The reason for the result, if not because of a direct search term match; can be either: - `section`: There are multiple identical results from different sections. - `originalTitle`: There was a search term match from the original title field (sometimes those can be very different or in a foreign language). - ``: If the reason for the result is due to a result in another hub, the source hub identifier is returned. For example, if the search is for \"dylan\" then Bob Dylan may be returned as an artist result, an a few of his albums returned as album results with a reason code of `artist` (the identifier of that particular hub). Or if the search is for \"arnold\", there might be movie results returned with a reason of `actor` - `reasonTitle`: The string associated with the reason code. For a section reason, it\'ll be the section name; For a hub identifier, it\'ll be a string associated with the match (e.g. `Arnold Schwarzenegger` for movies which were returned because the search was for \"arnold\"). - `reasonID`: The ID of the item associated with the reason for the result. This might be a section ID, a tag ID, an artist ID, or a show ID. This request is intended to be very fast, and called as the user types. + * @summary Perform a search + * @param {any} query The query term + * @param {any} [sectionId] This gives context to the search, and can result in re-ordering of search result hubs + * @param {any} [limit] The number of items to return per hub + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + performSearch(query: any, sectionId?: any, limit?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; + /** + * This endpoint performs a search specifically tailored towards voice or other imprecise input which may work badly with the substring and spell-checking heuristics used by the `/hubs/search` endpoint. It uses a [Levenshtein distance](https://en.wikipedia.org/wiki/Levenshtein_distance) heuristic to search titles, and as such is much slower than the other search endpoint. Whenever possible, clients should limit the search to the appropriate type. Results, as well as their containing per-type hubs, contain a `distance` attribute which can be used to judge result quality. + * @summary Perform a voice search + * @param {any} query The query term + * @param {any} [sectionId] This gives context to the search, and can result in re-ordering of search result hubs + * @param {any} [limit] The number of items to return per hub + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + performVoiceSearch(query: any, sectionId?: any, limit?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; +}; +/** + * SearchApi - factory interface + * @export + */ +export declare const SearchApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => { + /** + * This endpoint performs a search across all library sections, or a single section, and returns matches as hubs, split up by type. It performs spell checking, looks for partial matches, and orders the hubs based on quality of results. In addition, based on matches, it will return other related matches (e.g. for a genre match, it may return movies in that genre, or for an actor match, movies with that actor). In the response\'s items, the following extra attributes are returned to further describe or disambiguate the result: - `reason`: The reason for the result, if not because of a direct search term match; can be either: - `section`: There are multiple identical results from different sections. - `originalTitle`: There was a search term match from the original title field (sometimes those can be very different or in a foreign language). - ``: If the reason for the result is due to a result in another hub, the source hub identifier is returned. For example, if the search is for \"dylan\" then Bob Dylan may be returned as an artist result, an a few of his albums returned as album results with a reason code of `artist` (the identifier of that particular hub). Or if the search is for \"arnold\", there might be movie results returned with a reason of `actor` - `reasonTitle`: The string associated with the reason code. For a section reason, it\'ll be the section name; For a hub identifier, it\'ll be a string associated with the match (e.g. `Arnold Schwarzenegger` for movies which were returned because the search was for \"arnold\"). - `reasonID`: The ID of the item associated with the reason for the result. This might be a section ID, a tag ID, an artist ID, or a show ID. This request is intended to be very fast, and called as the user types. + * @summary Perform a search + * @param {any} query The query term + * @param {any} [sectionId] This gives context to the search, and can result in re-ordering of search result hubs + * @param {any} [limit] The number of items to return per hub + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + performSearch(query: any, sectionId?: any, limit?: any, axiosOptions?: any): AxiosPromise; + /** + * This endpoint performs a search specifically tailored towards voice or other imprecise input which may work badly with the substring and spell-checking heuristics used by the `/hubs/search` endpoint. It uses a [Levenshtein distance](https://en.wikipedia.org/wiki/Levenshtein_distance) heuristic to search titles, and as such is much slower than the other search endpoint. Whenever possible, clients should limit the search to the appropriate type. Results, as well as their containing per-type hubs, contain a `distance` attribute which can be used to judge result quality. + * @summary Perform a voice search + * @param {any} query The query term + * @param {any} [sectionId] This gives context to the search, and can result in re-ordering of search result hubs + * @param {any} [limit] The number of items to return per hub + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + performVoiceSearch(query: any, sectionId?: any, limit?: any, axiosOptions?: any): AxiosPromise; +}; +/** + * Request parameters for performSearch operation in SearchApi. + * @export + * @interface SearchApiPerformSearchRequest + */ +export interface SearchApiPerformSearchRequest { + /** + * The query term + * @type {any} + * @memberof SearchApiPerformSearch + */ + readonly query: any; + /** + * This gives context to the search, and can result in re-ordering of search result hubs + * @type {any} + * @memberof SearchApiPerformSearch + */ + readonly sectionId?: any; + /** + * The number of items to return per hub + * @type {any} + * @memberof SearchApiPerformSearch + */ + readonly limit?: any; +} +/** + * Request parameters for performVoiceSearch operation in SearchApi. + * @export + * @interface SearchApiPerformVoiceSearchRequest + */ +export interface SearchApiPerformVoiceSearchRequest { + /** + * The query term + * @type {any} + * @memberof SearchApiPerformVoiceSearch + */ + readonly query: any; + /** + * This gives context to the search, and can result in re-ordering of search result hubs + * @type {any} + * @memberof SearchApiPerformVoiceSearch + */ + readonly sectionId?: any; + /** + * The number of items to return per hub + * @type {any} + * @memberof SearchApiPerformVoiceSearch + */ + readonly limit?: any; +} +/** + * SearchApi - object-oriented interface + * @export + * @class SearchApi + * @extends {BaseAPI} + */ +export declare class SearchApi extends BaseAPI { + /** + * This endpoint performs a search across all library sections, or a single section, and returns matches as hubs, split up by type. It performs spell checking, looks for partial matches, and orders the hubs based on quality of results. In addition, based on matches, it will return other related matches (e.g. for a genre match, it may return movies in that genre, or for an actor match, movies with that actor). In the response\'s items, the following extra attributes are returned to further describe or disambiguate the result: - `reason`: The reason for the result, if not because of a direct search term match; can be either: - `section`: There are multiple identical results from different sections. - `originalTitle`: There was a search term match from the original title field (sometimes those can be very different or in a foreign language). - ``: If the reason for the result is due to a result in another hub, the source hub identifier is returned. For example, if the search is for \"dylan\" then Bob Dylan may be returned as an artist result, an a few of his albums returned as album results with a reason code of `artist` (the identifier of that particular hub). Or if the search is for \"arnold\", there might be movie results returned with a reason of `actor` - `reasonTitle`: The string associated with the reason code. For a section reason, it\'ll be the section name; For a hub identifier, it\'ll be a string associated with the match (e.g. `Arnold Schwarzenegger` for movies which were returned because the search was for \"arnold\"). - `reasonID`: The ID of the item associated with the reason for the result. This might be a section ID, a tag ID, an artist ID, or a show ID. This request is intended to be very fast, and called as the user types. + * @summary Perform a search + * @param {SearchApiPerformSearchRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof SearchApi + */ + performSearch(requestParameters: SearchApiPerformSearchRequest, axiosOptions?: AxiosRequestConfig): Promise>; + /** + * This endpoint performs a search specifically tailored towards voice or other imprecise input which may work badly with the substring and spell-checking heuristics used by the `/hubs/search` endpoint. It uses a [Levenshtein distance](https://en.wikipedia.org/wiki/Levenshtein_distance) heuristic to search titles, and as such is much slower than the other search endpoint. Whenever possible, clients should limit the search to the appropriate type. Results, as well as their containing per-type hubs, contain a `distance` attribute which can be used to judge result quality. + * @summary Perform a voice search + * @param {SearchApiPerformVoiceSearchRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof SearchApi + */ + performVoiceSearch(requestParameters: SearchApiPerformVoiceSearchRequest, axiosOptions?: AxiosRequestConfig): Promise>; +} /** * SecurityApi - axios parameter creator * @export @@ -1055,6 +2485,13 @@ export declare class SecurityApi extends BaseAPI { * @export */ export declare const ServerApiAxiosParamCreator: (configuration?: Configuration) => { + /** + * Get Server Preferences + * @summary Get Server Preferences + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getServerPreferences: (axiosOptions?: AxiosRequestConfig) => Promise; /** * Server Capabilities * @summary Server Capabilities @@ -1068,6 +2505,13 @@ export declare const ServerApiAxiosParamCreator: (configuration?: Configuration) * @export */ export declare const ServerApiFp: (configuration?: Configuration) => { + /** + * Get Server Preferences + * @summary Get Server Preferences + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getServerPreferences(axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * Server Capabilities * @summary Server Capabilities @@ -1081,6 +2525,13 @@ export declare const ServerApiFp: (configuration?: Configuration) => { * @export */ export declare const ServerApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => { + /** + * Get Server Preferences + * @summary Get Server Preferences + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getServerPreferences(axiosOptions?: any): AxiosPromise; /** * Server Capabilities * @summary Server Capabilities @@ -1096,6 +2547,14 @@ export declare const ServerApiFactory: (configuration?: Configuration, basePath? * @extends {BaseAPI} */ export declare class ServerApi extends BaseAPI { + /** + * Get Server Preferences + * @summary Get Server Preferences + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof ServerApi + */ + getServerPreferences(axiosOptions?: AxiosRequestConfig): Promise>; /** * Server Capabilities * @summary Server Capabilities @@ -1105,6 +2564,90 @@ export declare class ServerApi extends BaseAPI { */ serverCapabilities(axiosOptions?: AxiosRequestConfig): Promise>; } +/** + * SessionsApi - axios parameter creator + * @export + */ +export declare const SessionsApiAxiosParamCreator: (configuration?: Configuration) => { + /** + * This will Retrieve a listing of all history views. + * @summary Get Session History + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getSessionHistory: (axiosOptions?: AxiosRequestConfig) => Promise; + /** + * This will retrieve the \"Now Playing\" Information of the PMS. + * @summary Get Active Sessions + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getSessions: (axiosOptions?: AxiosRequestConfig) => Promise; +}; +/** + * SessionsApi - functional programming interface + * @export + */ +export declare const SessionsApiFp: (configuration?: Configuration) => { + /** + * This will Retrieve a listing of all history views. + * @summary Get Session History + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getSessionHistory(axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; + /** + * This will retrieve the \"Now Playing\" Information of the PMS. + * @summary Get Active Sessions + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getSessions(axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; +}; +/** + * SessionsApi - factory interface + * @export + */ +export declare const SessionsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => { + /** + * This will Retrieve a listing of all history views. + * @summary Get Session History + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getSessionHistory(axiosOptions?: any): AxiosPromise; + /** + * This will retrieve the \"Now Playing\" Information of the PMS. + * @summary Get Active Sessions + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getSessions(axiosOptions?: any): AxiosPromise; +}; +/** + * SessionsApi - object-oriented interface + * @export + * @class SessionsApi + * @extends {BaseAPI} + */ +export declare class SessionsApi extends BaseAPI { + /** + * This will Retrieve a listing of all history views. + * @summary Get Session History + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof SessionsApi + */ + getSessionHistory(axiosOptions?: AxiosRequestConfig): Promise>; + /** + * This will retrieve the \"Now Playing\" Information of the PMS. + * @summary Get Active Sessions + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof SessionsApi + */ + getSessions(axiosOptions?: AxiosRequestConfig): Promise>; +} /** * UpdaterApi - axios parameter creator * @export @@ -1261,3 +2804,58 @@ export declare class UpdaterApi extends BaseAPI { */ queryingUpdateStatus(axiosOptions?: AxiosRequestConfig): Promise>; } +/** + * UserApi - axios parameter creator + * @export + */ +export declare const UserApiAxiosParamCreator: (configuration?: Configuration) => { + /** + * Get Logged in User + * @summary Get Logged in User + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getCurrentUserDetails: (axiosOptions?: AxiosRequestConfig) => Promise; +}; +/** + * UserApi - functional programming interface + * @export + */ +export declare const UserApiFp: (configuration?: Configuration) => { + /** + * Get Logged in User + * @summary Get Logged in User + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getCurrentUserDetails(axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; +}; +/** + * UserApi - factory interface + * @export + */ +export declare const UserApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => { + /** + * Get Logged in User + * @summary Get Logged in User + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getCurrentUserDetails(axiosOptions?: any): AxiosPromise; +}; +/** + * UserApi - object-oriented interface + * @export + * @class UserApi + * @extends {BaseAPI} + */ +export declare class UserApi extends BaseAPI { + /** + * Get Logged in User + * @summary Get Logged in User + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof UserApi + */ + getCurrentUserDetails(axiosOptions?: AxiosRequestConfig): Promise>; +} diff --git a/dist/sdk-output/api.js b/dist/sdk-output/api.js index 8f22da73..e3e6342d 100644 --- a/dist/sdk-output/api.js +++ b/dist/sdk-output/api.js @@ -75,7 +75,8 @@ var __generator = (this && this.__generator) || function (thisArg, body) { } }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.UpdaterApi = exports.UpdaterApiFactory = exports.UpdaterApiFp = exports.UpdaterApiAxiosParamCreator = exports.ServerApi = exports.ServerApiFactory = exports.ServerApiFp = exports.ServerApiAxiosParamCreator = exports.SecurityApi = exports.SecurityApiFactory = exports.SecurityApiFp = exports.SecurityApiAxiosParamCreator = exports.LogApi = exports.LogApiFactory = exports.LogApiFp = exports.LogApiAxiosParamCreator = exports.LibraryApi = exports.LibraryApiFactory = exports.LibraryApiFp = exports.LibraryApiAxiosParamCreator = exports.ButlerApi = exports.ButlerApiFactory = exports.ButlerApiFp = exports.ButlerApiAxiosParamCreator = exports.ActivitiesApi = exports.ActivitiesApiFactory = exports.ActivitiesApiFp = exports.ActivitiesApiAxiosParamCreator = void 0; +exports.UpdaterApiFp = exports.UpdaterApiAxiosParamCreator = exports.SessionsApi = exports.SessionsApiFactory = exports.SessionsApiFp = exports.SessionsApiAxiosParamCreator = exports.ServerApi = exports.ServerApiFactory = exports.ServerApiFp = exports.ServerApiAxiosParamCreator = exports.SecurityApi = exports.SecurityApiFactory = exports.SecurityApiFp = exports.SecurityApiAxiosParamCreator = exports.SearchApi = exports.SearchApiFactory = exports.SearchApiFp = exports.SearchApiAxiosParamCreator = exports.PlaylistsApi = exports.PlaylistsApiFactory = exports.PlaylistsApiFp = exports.PlaylistsApiAxiosParamCreator = exports.LogApi = exports.LogApiFactory = exports.LogApiFp = exports.LogApiAxiosParamCreator = exports.LibraryApi = exports.LibraryApiFactory = exports.LibraryApiFp = exports.LibraryApiAxiosParamCreator = exports.HubsApi = exports.HubsApiFactory = exports.HubsApiFp = exports.HubsApiAxiosParamCreator = exports.HashesApi = exports.HashesApiFactory = exports.HashesApiFp = exports.HashesApiAxiosParamCreator = exports.DevicesApi = exports.DevicesApiFactory = exports.DevicesApiFp = exports.DevicesApiAxiosParamCreator = exports.ButlerApi = exports.ButlerApiFactory = exports.ButlerApiFp = exports.ButlerApiAxiosParamCreator = exports.ActivitiesApi = exports.ActivitiesApiFactory = exports.ActivitiesApiFp = exports.ActivitiesApiAxiosParamCreator = void 0; +exports.UserApi = exports.UserApiFactory = exports.UserApiFp = exports.UserApiAxiosParamCreator = exports.UpdaterApi = exports.UpdaterApiFactory = void 0; var axios_1 = require("axios"); // Some imports not used depending on template conditions // @ts-ignore @@ -647,6 +648,564 @@ var ButlerApi = /** @class */ (function (_super) { return ButlerApi; }(base_1.BaseAPI)); exports.ButlerApi = ButlerApi; +/** + * DevicesApi - axios parameter creator + * @export + */ +var DevicesApiAxiosParamCreator = function (configuration) { + var _this = this; + return { + /** + * Get Available Clients + * @summary Get Available Clients + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAvailableClients: function (axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + localVarPath = "/clients"; + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + /** + * Get Devices + * @summary Get Devices + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getDevices: function (axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + localVarPath = "/resources"; + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + }; +}; +exports.DevicesApiAxiosParamCreator = DevicesApiAxiosParamCreator; +/** + * DevicesApi - functional programming interface + * @export + */ +var DevicesApiFp = function (configuration) { + var localVarAxiosParamCreator = (0, exports.DevicesApiAxiosParamCreator)(configuration); + return { + /** + * Get Available Clients + * @summary Get Available Clients + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAvailableClients: function (axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.getAvailableClients(axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + /** + * Get Devices + * @summary Get Devices + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getDevices: function (axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.getDevices(axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + }; +}; +exports.DevicesApiFp = DevicesApiFp; +/** + * DevicesApi - factory interface + * @export + */ +var DevicesApiFactory = function (configuration, basePath, axios) { + var localVarFp = (0, exports.DevicesApiFp)(configuration); + return { + /** + * Get Available Clients + * @summary Get Available Clients + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAvailableClients: function (axiosOptions) { + return localVarFp.getAvailableClients(axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + /** + * Get Devices + * @summary Get Devices + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getDevices: function (axiosOptions) { + return localVarFp.getDevices(axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + }; +}; +exports.DevicesApiFactory = DevicesApiFactory; +/** + * DevicesApi - object-oriented interface + * @export + * @class DevicesApi + * @extends {BaseAPI} + */ +var DevicesApi = /** @class */ (function (_super) { + __extends(DevicesApi, _super); + function DevicesApi() { + return _super !== null && _super.apply(this, arguments) || this; + } + /** + * Get Available Clients + * @summary Get Available Clients + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof DevicesApi + */ + DevicesApi.prototype.getAvailableClients = function (axiosOptions) { + var _this = this; + return (0, exports.DevicesApiFp)(this.configuration).getAvailableClients(axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + /** + * Get Devices + * @summary Get Devices + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof DevicesApi + */ + DevicesApi.prototype.getDevices = function (axiosOptions) { + var _this = this; + return (0, exports.DevicesApiFp)(this.configuration).getDevices(axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + return DevicesApi; +}(base_1.BaseAPI)); +exports.DevicesApi = DevicesApi; +/** + * HashesApi - axios parameter creator + * @export + */ +var HashesApiAxiosParamCreator = function (configuration) { + var _this = this; + return { + /** + * This resource returns hash values for local files + * @summary Get Hash Value + * @param {any} url This is the path to the local file, must be prefixed by `file://` + * @param {any} [type] Item type + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getFileHash: function (url, type, axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + // verify required parameter 'url' is not null or undefined + (0, common_1.assertParamExists)('getFileHash', 'url', url); + localVarPath = "/library/hashes" + .replace("{".concat("url", "}"), encodeURIComponent(String(url))); + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + if (type !== undefined) { + localVarQueryParameter['type'] = type; + } + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + }; +}; +exports.HashesApiAxiosParamCreator = HashesApiAxiosParamCreator; +/** + * HashesApi - functional programming interface + * @export + */ +var HashesApiFp = function (configuration) { + var localVarAxiosParamCreator = (0, exports.HashesApiAxiosParamCreator)(configuration); + return { + /** + * This resource returns hash values for local files + * @summary Get Hash Value + * @param {any} url This is the path to the local file, must be prefixed by `file://` + * @param {any} [type] Item type + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getFileHash: function (url, type, axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.getFileHash(url, type, axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + }; +}; +exports.HashesApiFp = HashesApiFp; +/** + * HashesApi - factory interface + * @export + */ +var HashesApiFactory = function (configuration, basePath, axios) { + var localVarFp = (0, exports.HashesApiFp)(configuration); + return { + /** + * This resource returns hash values for local files + * @summary Get Hash Value + * @param {any} url This is the path to the local file, must be prefixed by `file://` + * @param {any} [type] Item type + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getFileHash: function (url, type, axiosOptions) { + return localVarFp.getFileHash(url, type, axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + }; +}; +exports.HashesApiFactory = HashesApiFactory; +/** + * HashesApi - object-oriented interface + * @export + * @class HashesApi + * @extends {BaseAPI} + */ +var HashesApi = /** @class */ (function (_super) { + __extends(HashesApi, _super); + function HashesApi() { + return _super !== null && _super.apply(this, arguments) || this; + } + /** + * This resource returns hash values for local files + * @summary Get Hash Value + * @param {HashesApiGetFileHashRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof HashesApi + */ + HashesApi.prototype.getFileHash = function (requestParameters, axiosOptions) { + var _this = this; + return (0, exports.HashesApiFp)(this.configuration).getFileHash(requestParameters.url, requestParameters.type, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + return HashesApi; +}(base_1.BaseAPI)); +exports.HashesApi = HashesApi; +/** + * HubsApi - axios parameter creator + * @export + */ +var HubsApiAxiosParamCreator = function (configuration) { + var _this = this; + return { + /** + * + * @summary Get Global Hubs + * @param {any} [count] The number of items to return with each hub. + * @param {any} [onlyTransient] Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getGlobalHubs: function (count, onlyTransient, axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + localVarPath = "/hubs"; + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + if (count !== undefined) { + localVarQueryParameter['count'] = count; + } + if (onlyTransient !== undefined) { + localVarQueryParameter['onlyTransient'] = onlyTransient; + } + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + /** + * This endpoint will return a list of library specific hubs + * @summary Get library specific hubs + * @param {any} sectionId the Id of the library to query + * @param {any} [count] The number of items to return with each hub. + * @param {any} [onlyTransient] Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getLibraryHubs: function (sectionId, count, onlyTransient, axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + // verify required parameter 'sectionId' is not null or undefined + (0, common_1.assertParamExists)('getLibraryHubs', 'sectionId', sectionId); + localVarPath = "/hubs/sections/{sectionId}" + .replace("{".concat("sectionId", "}"), encodeURIComponent(String(sectionId))); + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + if (count !== undefined) { + localVarQueryParameter['count'] = count; + } + if (onlyTransient !== undefined) { + localVarQueryParameter['onlyTransient'] = onlyTransient; + } + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + }; +}; +exports.HubsApiAxiosParamCreator = HubsApiAxiosParamCreator; +/** + * HubsApi - functional programming interface + * @export + */ +var HubsApiFp = function (configuration) { + var localVarAxiosParamCreator = (0, exports.HubsApiAxiosParamCreator)(configuration); + return { + /** + * + * @summary Get Global Hubs + * @param {any} [count] The number of items to return with each hub. + * @param {any} [onlyTransient] Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getGlobalHubs: function (count, onlyTransient, axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.getGlobalHubs(count, onlyTransient, axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + /** + * This endpoint will return a list of library specific hubs + * @summary Get library specific hubs + * @param {any} sectionId the Id of the library to query + * @param {any} [count] The number of items to return with each hub. + * @param {any} [onlyTransient] Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getLibraryHubs: function (sectionId, count, onlyTransient, axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.getLibraryHubs(sectionId, count, onlyTransient, axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + }; +}; +exports.HubsApiFp = HubsApiFp; +/** + * HubsApi - factory interface + * @export + */ +var HubsApiFactory = function (configuration, basePath, axios) { + var localVarFp = (0, exports.HubsApiFp)(configuration); + return { + /** + * + * @summary Get Global Hubs + * @param {any} [count] The number of items to return with each hub. + * @param {any} [onlyTransient] Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getGlobalHubs: function (count, onlyTransient, axiosOptions) { + return localVarFp.getGlobalHubs(count, onlyTransient, axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + /** + * This endpoint will return a list of library specific hubs + * @summary Get library specific hubs + * @param {any} sectionId the Id of the library to query + * @param {any} [count] The number of items to return with each hub. + * @param {any} [onlyTransient] Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getLibraryHubs: function (sectionId, count, onlyTransient, axiosOptions) { + return localVarFp.getLibraryHubs(sectionId, count, onlyTransient, axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + }; +}; +exports.HubsApiFactory = HubsApiFactory; +/** + * HubsApi - object-oriented interface + * @export + * @class HubsApi + * @extends {BaseAPI} + */ +var HubsApi = /** @class */ (function (_super) { + __extends(HubsApi, _super); + function HubsApi() { + return _super !== null && _super.apply(this, arguments) || this; + } + /** + * + * @summary Get Global Hubs + * @param {HubsApiGetGlobalHubsRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof HubsApi + */ + HubsApi.prototype.getGlobalHubs = function (requestParameters, axiosOptions) { + var _this = this; + if (requestParameters === void 0) { requestParameters = {}; } + return (0, exports.HubsApiFp)(this.configuration).getGlobalHubs(requestParameters.count, requestParameters.onlyTransient, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + /** + * This endpoint will return a list of library specific hubs + * @summary Get library specific hubs + * @param {HubsApiGetLibraryHubsRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof HubsApi + */ + HubsApi.prototype.getLibraryHubs = function (requestParameters, axiosOptions) { + var _this = this; + return (0, exports.HubsApiFp)(this.configuration).getLibraryHubs(requestParameters.sectionId, requestParameters.count, requestParameters.onlyTransient, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + return HubsApi; +}(base_1.BaseAPI)); +exports.HubsApi = HubsApi; /** * LibraryApi - axios parameter creator * @export @@ -655,7 +1214,158 @@ var LibraryApiAxiosParamCreator = function (configuration) { var _this = this; return { /** - * This endpoint will return a list of libraries + * This endpoint will return a list of all library items filtered by the filter and type provided + * @summary Get All Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} [type] item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAllLibraryItems: function (sectionId, type, filter, axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + // verify required parameter 'sectionId' is not null or undefined + (0, common_1.assertParamExists)('getAllLibraryItems', 'sectionId', sectionId); + localVarPath = "/library/sections/{sectionId}/all" + .replace("{".concat("sectionId", "}"), encodeURIComponent(String(sectionId))); + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + if (type !== undefined) { + localVarQueryParameter['type'] = type; + } + if (filter !== undefined) { + localVarQueryParameter['filter'] = filter; + } + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + /** + * Represents a \"Common\" item. It contains only the common attributes of the items selected by the provided filter + * @summary Get Common Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} type item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getCommonLibraryItems: function (sectionId, type, filter, axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + // verify required parameter 'sectionId' is not null or undefined + (0, common_1.assertParamExists)('getCommonLibraryItems', 'sectionId', sectionId); + // verify required parameter 'type' is not null or undefined + (0, common_1.assertParamExists)('getCommonLibraryItems', 'type', type); + localVarPath = "/library/sections/{sectionId}/common" + .replace("{".concat("sectionId", "}"), encodeURIComponent(String(sectionId))); + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + if (type !== undefined) { + localVarQueryParameter['type'] = type; + } + if (filter !== undefined) { + localVarQueryParameter['filter'] = filter; + } + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + /** + * This endpoint will return a list of the latest library items filtered by the filter and type provided + * @summary Get Latest Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} type item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getLatestLibraryItems: function (sectionId, type, filter, axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + // verify required parameter 'sectionId' is not null or undefined + (0, common_1.assertParamExists)('getLatestLibraryItems', 'sectionId', sectionId); + // verify required parameter 'type' is not null or undefined + (0, common_1.assertParamExists)('getLatestLibraryItems', 'type', type); + localVarPath = "/library/sections/{sectionId}/latest" + .replace("{".concat("sectionId", "}"), encodeURIComponent(String(sectionId))); + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + if (type !== undefined) { + localVarQueryParameter['type'] = type; + } + if (filter !== undefined) { + localVarQueryParameter['filter'] = filter; + } + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + /** + * A library section (commonly referred to as just a library) is a collection of media. Libraries are typed, and depending on their type provide either a flat or a hierarchical view of the media. For example, a music library has an artist > albums > tracks structure, whereas a movie library is flat. Libraries have features beyond just being a collection of media; for starters, they include information about supported types, filters and sorts. \\This allows a client to provide a rich interface around the media (e.g. allow sorting movies by release year). * @summary Get All Libraries * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} @@ -692,16 +1402,14 @@ var LibraryApiAxiosParamCreator = function (configuration) { }); }, /** - * This endpoint will return a list of library items filtered by the filter and type provided - * @summary Get Library Items + * Returns details for the library. This can be thought of as an interstitial endpoint because it contains information about the library, rather than content itself. These details are: - A list of `Directory` objects: These used to be used by clients to build a menuing system. There are four flavors of directory found here: - Primary: (e.g. all, On Deck) These are still used in some clients to provide \"shortcuts\" to subsets of media. However, with the exception of On Deck, all of them can be created by media queries, and the desire is to allow these to be customized by users. - Secondary: These are marked with `secondary=\"1\"` and were used by old clients to provide nested menus allowing for primative (but structured) navigation. - Special: There is a By Folder entry which allows browsing the media by the underlying filesystem structure, and there\'s a completely obsolete entry marked `search=\"1\"` which used to be used to allow clients to build search dialogs on the fly. - A list of `Type` objects: These represent the types of things found in this library, and for each one, a list of `Filter` and `Sort` objects. These can be used to build rich controls around a grid of media to allow filtering and organizing. Note that these filters and sorts are optional, and without them, the client won\'t render any filtering controls. The `Type` object contains: - `key`: This provides the root endpoint returning the actual media list for the type. - `type`: This is the metadata type for the type (if a standard Plex type). - `title`: The title for for the content of this type (e.g. \"Movies\"). - Each `Filter` object contains a description of the filter. Note that it is not an exhaustive list of the full media query language, but an inportant subset useful for top-level API. - `filter`: This represents the filter name used for the filter, which can be used to construct complex media queries with. - `filterType`: This is either `string`, `integer`, or `boolean`, and describes the type of values used for the filter. - `key`: This provides the endpoint where the possible range of values for the filter can be retrieved (e.g. for a \"Genre\" filter, it returns a list of all the genres in the library). This will include a `type` argument that matches the metadata type of the Type element. - `title`: The title for the filter. - Each `Sort` object contains a description of the sort field. - `defaultDirection`: Can be either `asc` or `desc`, and specifies the default direction for the sort field (e.g. titles default to alphabetically ascending). - `descKey` and `key`: Contains the parameters passed to the `sort=...` media query for each direction of the sort. - `title`: The title of the field. + * @summary Get Library Details * @param {any} sectionId the Id of the library to query - * @param {any} category the category to retrieve from the library - * @param {any} [type] item type - * @param {any} [filter] the filter parameter + * @param {any} [includeDetails] Whether or not to include details for a section (types, filters, and sorts). Only exists for backwards compatibility, media providers other than the server libraries have it on always. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ - getLibraryItems: function (sectionId, category, type, filter, axiosOptions) { + getLibraryDetails: function (sectionId, includeDetails, axiosOptions) { if (axiosOptions === void 0) { axiosOptions = {}; } return __awaiter(_this, void 0, void 0, function () { var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; @@ -709,12 +1417,9 @@ var LibraryApiAxiosParamCreator = function (configuration) { switch (_a.label) { case 0: // verify required parameter 'sectionId' is not null or undefined - (0, common_1.assertParamExists)('getLibraryItems', 'sectionId', sectionId); - // verify required parameter 'category' is not null or undefined - (0, common_1.assertParamExists)('getLibraryItems', 'category', category); - localVarPath = "/library/sections/{sectionId}/{category}" - .replace("{".concat("sectionId", "}"), encodeURIComponent(String(sectionId))) - .replace("{".concat("category", "}"), encodeURIComponent(String(category))); + (0, common_1.assertParamExists)('getLibraryDetails', 'sectionId', sectionId); + localVarPath = "/library/sections/{sectionId}" + .replace("{".concat("sectionId", "}"), encodeURIComponent(String(sectionId))); localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); if (configuration) { baseOptions = configuration.baseOptions; @@ -727,12 +1432,87 @@ var LibraryApiAxiosParamCreator = function (configuration) { case 1: // authentication PlexToken required _a.sent(); - if (type !== undefined) { - localVarQueryParameter['type'] = type; + if (includeDetails !== undefined) { + localVarQueryParameter['includeDetails'] = includeDetails; } - if (filter !== undefined) { - localVarQueryParameter['filter'] = filter; + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + /** + * This endpoint will return the on deck content. + * @summary Get On Deck + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getOnDeck: function (axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + localVarPath = "/library/onDeck"; + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; } + localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + /** + * This endpoint Refreshes the library. + * @summary Refresh Library + * @param {any} sectionId the Id of the library to refresh + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + refreshLibrary: function (sectionId, axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + // verify required parameter 'sectionId' is not null or undefined + (0, common_1.assertParamExists)('refreshLibrary', 'sectionId', sectionId); + localVarPath = "/library/sections/{sectionId}/refresh" + .replace("{".concat("sectionId", "}"), encodeURIComponent(String(sectionId))); + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); @@ -755,7 +1535,73 @@ var LibraryApiFp = function (configuration) { var localVarAxiosParamCreator = (0, exports.LibraryApiAxiosParamCreator)(configuration); return { /** - * This endpoint will return a list of libraries + * This endpoint will return a list of all library items filtered by the filter and type provided + * @summary Get All Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} [type] item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAllLibraryItems: function (sectionId, type, filter, axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.getAllLibraryItems(sectionId, type, filter, axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + /** + * Represents a \"Common\" item. It contains only the common attributes of the items selected by the provided filter + * @summary Get Common Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} type item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getCommonLibraryItems: function (sectionId, type, filter, axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.getCommonLibraryItems(sectionId, type, filter, axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + /** + * This endpoint will return a list of the latest library items filtered by the filter and type provided + * @summary Get Latest Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} type item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getLatestLibraryItems: function (sectionId, type, filter, axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.getLatestLibraryItems(sectionId, type, filter, axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + /** + * A library section (commonly referred to as just a library) is a collection of media. Libraries are typed, and depending on their type provide either a flat or a hierarchical view of the media. For example, a music library has an artist > albums > tracks structure, whereas a movie library is flat. Libraries have features beyond just being a collection of media; for starters, they include information about supported types, filters and sorts. \\This allows a client to provide a rich interface around the media (e.g. allow sorting movies by release year). * @summary Get All Libraries * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} @@ -774,21 +1620,58 @@ var LibraryApiFp = function (configuration) { }); }, /** - * This endpoint will return a list of library items filtered by the filter and type provided - * @summary Get Library Items + * Returns details for the library. This can be thought of as an interstitial endpoint because it contains information about the library, rather than content itself. These details are: - A list of `Directory` objects: These used to be used by clients to build a menuing system. There are four flavors of directory found here: - Primary: (e.g. all, On Deck) These are still used in some clients to provide \"shortcuts\" to subsets of media. However, with the exception of On Deck, all of them can be created by media queries, and the desire is to allow these to be customized by users. - Secondary: These are marked with `secondary=\"1\"` and were used by old clients to provide nested menus allowing for primative (but structured) navigation. - Special: There is a By Folder entry which allows browsing the media by the underlying filesystem structure, and there\'s a completely obsolete entry marked `search=\"1\"` which used to be used to allow clients to build search dialogs on the fly. - A list of `Type` objects: These represent the types of things found in this library, and for each one, a list of `Filter` and `Sort` objects. These can be used to build rich controls around a grid of media to allow filtering and organizing. Note that these filters and sorts are optional, and without them, the client won\'t render any filtering controls. The `Type` object contains: - `key`: This provides the root endpoint returning the actual media list for the type. - `type`: This is the metadata type for the type (if a standard Plex type). - `title`: The title for for the content of this type (e.g. \"Movies\"). - Each `Filter` object contains a description of the filter. Note that it is not an exhaustive list of the full media query language, but an inportant subset useful for top-level API. - `filter`: This represents the filter name used for the filter, which can be used to construct complex media queries with. - `filterType`: This is either `string`, `integer`, or `boolean`, and describes the type of values used for the filter. - `key`: This provides the endpoint where the possible range of values for the filter can be retrieved (e.g. for a \"Genre\" filter, it returns a list of all the genres in the library). This will include a `type` argument that matches the metadata type of the Type element. - `title`: The title for the filter. - Each `Sort` object contains a description of the sort field. - `defaultDirection`: Can be either `asc` or `desc`, and specifies the default direction for the sort field (e.g. titles default to alphabetically ascending). - `descKey` and `key`: Contains the parameters passed to the `sort=...` media query for each direction of the sort. - `title`: The title of the field. + * @summary Get Library Details * @param {any} sectionId the Id of the library to query - * @param {any} category the category to retrieve from the library - * @param {any} [type] item type - * @param {any} [filter] the filter parameter + * @param {any} [includeDetails] Whether or not to include details for a section (types, filters, and sorts). Only exists for backwards compatibility, media providers other than the server libraries have it on always. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ - getLibraryItems: function (sectionId, category, type, filter, axiosOptions) { + getLibraryDetails: function (sectionId, includeDetails, axiosOptions) { return __awaiter(this, void 0, void 0, function () { var localVarAxiosArgs; return __generator(this, function (_a) { switch (_a.label) { - case 0: return [4 /*yield*/, localVarAxiosParamCreator.getLibraryItems(sectionId, category, type, filter, axiosOptions)]; + case 0: return [4 /*yield*/, localVarAxiosParamCreator.getLibraryDetails(sectionId, includeDetails, axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + /** + * This endpoint will return the on deck content. + * @summary Get On Deck + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getOnDeck: function (axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.getOnDeck(axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + /** + * This endpoint Refreshes the library. + * @summary Refresh Library + * @param {any} sectionId the Id of the library to refresh + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + refreshLibrary: function (sectionId, axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.refreshLibrary(sectionId, axiosOptions)]; case 1: localVarAxiosArgs = _a.sent(); return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; @@ -807,7 +1690,43 @@ var LibraryApiFactory = function (configuration, basePath, axios) { var localVarFp = (0, exports.LibraryApiFp)(configuration); return { /** - * This endpoint will return a list of libraries + * This endpoint will return a list of all library items filtered by the filter and type provided + * @summary Get All Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} [type] item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAllLibraryItems: function (sectionId, type, filter, axiosOptions) { + return localVarFp.getAllLibraryItems(sectionId, type, filter, axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + /** + * Represents a \"Common\" item. It contains only the common attributes of the items selected by the provided filter + * @summary Get Common Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} type item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getCommonLibraryItems: function (sectionId, type, filter, axiosOptions) { + return localVarFp.getCommonLibraryItems(sectionId, type, filter, axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + /** + * This endpoint will return a list of the latest library items filtered by the filter and type provided + * @summary Get Latest Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} type item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getLatestLibraryItems: function (sectionId, type, filter, axiosOptions) { + return localVarFp.getLatestLibraryItems(sectionId, type, filter, axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + /** + * A library section (commonly referred to as just a library) is a collection of media. Libraries are typed, and depending on their type provide either a flat or a hierarchical view of the media. For example, a music library has an artist > albums > tracks structure, whereas a movie library is flat. Libraries have features beyond just being a collection of media; for starters, they include information about supported types, filters and sorts. \\This allows a client to provide a rich interface around the media (e.g. allow sorting movies by release year). * @summary Get All Libraries * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} @@ -816,17 +1735,34 @@ var LibraryApiFactory = function (configuration, basePath, axios) { return localVarFp.getLibraries(axiosOptions).then(function (request) { return request(axios, basePath); }); }, /** - * This endpoint will return a list of library items filtered by the filter and type provided - * @summary Get Library Items + * Returns details for the library. This can be thought of as an interstitial endpoint because it contains information about the library, rather than content itself. These details are: - A list of `Directory` objects: These used to be used by clients to build a menuing system. There are four flavors of directory found here: - Primary: (e.g. all, On Deck) These are still used in some clients to provide \"shortcuts\" to subsets of media. However, with the exception of On Deck, all of them can be created by media queries, and the desire is to allow these to be customized by users. - Secondary: These are marked with `secondary=\"1\"` and were used by old clients to provide nested menus allowing for primative (but structured) navigation. - Special: There is a By Folder entry which allows browsing the media by the underlying filesystem structure, and there\'s a completely obsolete entry marked `search=\"1\"` which used to be used to allow clients to build search dialogs on the fly. - A list of `Type` objects: These represent the types of things found in this library, and for each one, a list of `Filter` and `Sort` objects. These can be used to build rich controls around a grid of media to allow filtering and organizing. Note that these filters and sorts are optional, and without them, the client won\'t render any filtering controls. The `Type` object contains: - `key`: This provides the root endpoint returning the actual media list for the type. - `type`: This is the metadata type for the type (if a standard Plex type). - `title`: The title for for the content of this type (e.g. \"Movies\"). - Each `Filter` object contains a description of the filter. Note that it is not an exhaustive list of the full media query language, but an inportant subset useful for top-level API. - `filter`: This represents the filter name used for the filter, which can be used to construct complex media queries with. - `filterType`: This is either `string`, `integer`, or `boolean`, and describes the type of values used for the filter. - `key`: This provides the endpoint where the possible range of values for the filter can be retrieved (e.g. for a \"Genre\" filter, it returns a list of all the genres in the library). This will include a `type` argument that matches the metadata type of the Type element. - `title`: The title for the filter. - Each `Sort` object contains a description of the sort field. - `defaultDirection`: Can be either `asc` or `desc`, and specifies the default direction for the sort field (e.g. titles default to alphabetically ascending). - `descKey` and `key`: Contains the parameters passed to the `sort=...` media query for each direction of the sort. - `title`: The title of the field. + * @summary Get Library Details * @param {any} sectionId the Id of the library to query - * @param {any} category the category to retrieve from the library - * @param {any} [type] item type - * @param {any} [filter] the filter parameter + * @param {any} [includeDetails] Whether or not to include details for a section (types, filters, and sorts). Only exists for backwards compatibility, media providers other than the server libraries have it on always. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ - getLibraryItems: function (sectionId, category, type, filter, axiosOptions) { - return localVarFp.getLibraryItems(sectionId, category, type, filter, axiosOptions).then(function (request) { return request(axios, basePath); }); + getLibraryDetails: function (sectionId, includeDetails, axiosOptions) { + return localVarFp.getLibraryDetails(sectionId, includeDetails, axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + /** + * This endpoint will return the on deck content. + * @summary Get On Deck + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getOnDeck: function (axiosOptions) { + return localVarFp.getOnDeck(axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + /** + * This endpoint Refreshes the library. + * @summary Refresh Library + * @param {any} sectionId the Id of the library to refresh + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + refreshLibrary: function (sectionId, axiosOptions) { + return localVarFp.refreshLibrary(sectionId, axiosOptions).then(function (request) { return request(axios, basePath); }); }, }; }; @@ -843,7 +1779,43 @@ var LibraryApi = /** @class */ (function (_super) { return _super !== null && _super.apply(this, arguments) || this; } /** - * This endpoint will return a list of libraries + * This endpoint will return a list of all library items filtered by the filter and type provided + * @summary Get All Library Items + * @param {LibraryApiGetAllLibraryItemsRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof LibraryApi + */ + LibraryApi.prototype.getAllLibraryItems = function (requestParameters, axiosOptions) { + var _this = this; + return (0, exports.LibraryApiFp)(this.configuration).getAllLibraryItems(requestParameters.sectionId, requestParameters.type, requestParameters.filter, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + /** + * Represents a \"Common\" item. It contains only the common attributes of the items selected by the provided filter + * @summary Get Common Library Items + * @param {LibraryApiGetCommonLibraryItemsRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof LibraryApi + */ + LibraryApi.prototype.getCommonLibraryItems = function (requestParameters, axiosOptions) { + var _this = this; + return (0, exports.LibraryApiFp)(this.configuration).getCommonLibraryItems(requestParameters.sectionId, requestParameters.type, requestParameters.filter, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + /** + * This endpoint will return a list of the latest library items filtered by the filter and type provided + * @summary Get Latest Library Items + * @param {LibraryApiGetLatestLibraryItemsRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof LibraryApi + */ + LibraryApi.prototype.getLatestLibraryItems = function (requestParameters, axiosOptions) { + var _this = this; + return (0, exports.LibraryApiFp)(this.configuration).getLatestLibraryItems(requestParameters.sectionId, requestParameters.type, requestParameters.filter, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + /** + * A library section (commonly referred to as just a library) is a collection of media. Libraries are typed, and depending on their type provide either a flat or a hierarchical view of the media. For example, a music library has an artist > albums > tracks structure, whereas a movie library is flat. Libraries have features beyond just being a collection of media; for starters, they include information about supported types, filters and sorts. \\This allows a client to provide a rich interface around the media (e.g. allow sorting movies by release year). * @summary Get All Libraries * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} @@ -854,16 +1826,39 @@ var LibraryApi = /** @class */ (function (_super) { return (0, exports.LibraryApiFp)(this.configuration).getLibraries(axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); }; /** - * This endpoint will return a list of library items filtered by the filter and type provided - * @summary Get Library Items - * @param {LibraryApiGetLibraryItemsRequest} requestParameters Request parameters. + * Returns details for the library. This can be thought of as an interstitial endpoint because it contains information about the library, rather than content itself. These details are: - A list of `Directory` objects: These used to be used by clients to build a menuing system. There are four flavors of directory found here: - Primary: (e.g. all, On Deck) These are still used in some clients to provide \"shortcuts\" to subsets of media. However, with the exception of On Deck, all of them can be created by media queries, and the desire is to allow these to be customized by users. - Secondary: These are marked with `secondary=\"1\"` and were used by old clients to provide nested menus allowing for primative (but structured) navigation. - Special: There is a By Folder entry which allows browsing the media by the underlying filesystem structure, and there\'s a completely obsolete entry marked `search=\"1\"` which used to be used to allow clients to build search dialogs on the fly. - A list of `Type` objects: These represent the types of things found in this library, and for each one, a list of `Filter` and `Sort` objects. These can be used to build rich controls around a grid of media to allow filtering and organizing. Note that these filters and sorts are optional, and without them, the client won\'t render any filtering controls. The `Type` object contains: - `key`: This provides the root endpoint returning the actual media list for the type. - `type`: This is the metadata type for the type (if a standard Plex type). - `title`: The title for for the content of this type (e.g. \"Movies\"). - Each `Filter` object contains a description of the filter. Note that it is not an exhaustive list of the full media query language, but an inportant subset useful for top-level API. - `filter`: This represents the filter name used for the filter, which can be used to construct complex media queries with. - `filterType`: This is either `string`, `integer`, or `boolean`, and describes the type of values used for the filter. - `key`: This provides the endpoint where the possible range of values for the filter can be retrieved (e.g. for a \"Genre\" filter, it returns a list of all the genres in the library). This will include a `type` argument that matches the metadata type of the Type element. - `title`: The title for the filter. - Each `Sort` object contains a description of the sort field. - `defaultDirection`: Can be either `asc` or `desc`, and specifies the default direction for the sort field (e.g. titles default to alphabetically ascending). - `descKey` and `key`: Contains the parameters passed to the `sort=...` media query for each direction of the sort. - `title`: The title of the field. + * @summary Get Library Details + * @param {LibraryApiGetLibraryDetailsRequest} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof LibraryApi */ - LibraryApi.prototype.getLibraryItems = function (requestParameters, axiosOptions) { + LibraryApi.prototype.getLibraryDetails = function (requestParameters, axiosOptions) { var _this = this; - return (0, exports.LibraryApiFp)(this.configuration).getLibraryItems(requestParameters.sectionId, requestParameters.category, requestParameters.type, requestParameters.filter, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + return (0, exports.LibraryApiFp)(this.configuration).getLibraryDetails(requestParameters.sectionId, requestParameters.includeDetails, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + /** + * This endpoint will return the on deck content. + * @summary Get On Deck + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof LibraryApi + */ + LibraryApi.prototype.getOnDeck = function (axiosOptions) { + var _this = this; + return (0, exports.LibraryApiFp)(this.configuration).getOnDeck(axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + /** + * This endpoint Refreshes the library. + * @summary Refresh Library + * @param {LibraryApiRefreshLibraryRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof LibraryApi + */ + LibraryApi.prototype.refreshLibrary = function (requestParameters, axiosOptions) { + var _this = this; + return (0, exports.LibraryApiFp)(this.configuration).refreshLibrary(requestParameters.sectionId, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); }; return LibraryApi; }(base_1.BaseAPI)); @@ -1165,6 +2160,1106 @@ var LogApi = /** @class */ (function (_super) { return LogApi; }(base_1.BaseAPI)); exports.LogApi = LogApi; +/** + * PlaylistsApi - axios parameter creator + * @export + */ +var PlaylistsApiAxiosParamCreator = function (configuration) { + var _this = this; + return { + /** + * Adds a generator to a playlist, same parameters as the POST above. With a dumb playlist, this adds the specified items to the playlist. With a smart playlist, passing a new `uri` parameter replaces the rules for the playlist. Returns the playlist. + * @summary Adding to a Playlist + * @param {any} playlistID the ID of the playlist + * @param {any} uri the content URI for the playlist + * @param {any} playQueueID the play queue to add to a playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + addPlaylistContent: function (playlistID, uri, playQueueID, axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + // verify required parameter 'playlistID' is not null or undefined + (0, common_1.assertParamExists)('addPlaylistContent', 'playlistID', playlistID); + // verify required parameter 'uri' is not null or undefined + (0, common_1.assertParamExists)('addPlaylistContent', 'uri', uri); + // verify required parameter 'playQueueID' is not null or undefined + (0, common_1.assertParamExists)('addPlaylistContent', 'playQueueID', playQueueID); + localVarPath = "/playlists/{playlistID}/items" + .replace("{".concat("playlistID", "}"), encodeURIComponent(String(playlistID))); + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'PUT' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + if (uri !== undefined) { + localVarQueryParameter['uri'] = uri; + } + if (playQueueID !== undefined) { + localVarQueryParameter['playQueueID'] = playQueueID; + } + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + /** + * Clears a playlist, only works with dumb playlists. Returns the playlist. + * @summary Delete Playlist Contents + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + clearPlaylistContent: function (playlistID, axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + // verify required parameter 'playlistID' is not null or undefined + (0, common_1.assertParamExists)('clearPlaylistContent', 'playlistID', playlistID); + localVarPath = "/playlists/{playlistID}/items" + .replace("{".concat("playlistID", "}"), encodeURIComponent(String(playlistID))); + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'DELETE' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + /** + * Create a new playlist. By default the playlist is blank. To create a playlist along with a first item, pass: - `uri` - The content URI for what we\'re playing (e.g. `library://...`). - `playQueueID` - To create a playlist from an existing play queue. + * @summary Create a Playlist + * @param {any} title name of the playlist + * @param {any} type type of playlist to create + * @param {any} smart whether the playlist is smart or not + * @param {any} [uri] the content URI for the playlist + * @param {any} [playQueueID] the play queue to copy to a playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + createAPlaylist: function (title, type, smart, uri, playQueueID, axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + // verify required parameter 'title' is not null or undefined + (0, common_1.assertParamExists)('createAPlaylist', 'title', title); + // verify required parameter 'type' is not null or undefined + (0, common_1.assertParamExists)('createAPlaylist', 'type', type); + // verify required parameter 'smart' is not null or undefined + (0, common_1.assertParamExists)('createAPlaylist', 'smart', smart); + localVarPath = "/playlists"; + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'POST' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + if (title !== undefined) { + localVarQueryParameter['title'] = title; + } + if (type !== undefined) { + localVarQueryParameter['type'] = type; + } + if (smart !== undefined) { + localVarQueryParameter['smart'] = smart; + } + if (uri !== undefined) { + localVarQueryParameter['uri'] = uri; + } + if (playQueueID !== undefined) { + localVarQueryParameter['playQueueID'] = playQueueID; + } + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + /** + * This endpoint will delete a playlist + * @summary Deletes a Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + deletePlaylist: function (playlistID, axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + // verify required parameter 'playlistID' is not null or undefined + (0, common_1.assertParamExists)('deletePlaylist', 'playlistID', playlistID); + localVarPath = "/playlists/{playlistID}" + .replace("{".concat("playlistID", "}"), encodeURIComponent(String(playlistID))); + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'DELETE' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + /** + * + * @summary Get All Playlists + * @param {any} [playlistType] limit to a type of playlist. + * @param {any} [smart] type of playlists to return (default is all). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAllPlaylists: function (playlistType, smart, axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + localVarPath = "/playlists/all"; + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + if (playlistType !== undefined) { + localVarQueryParameter['playlistType'] = playlistType; + } + if (smart !== undefined) { + localVarQueryParameter['smart'] = smart; + } + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + /** + * Gets detailed metadata for a playlist. A playlist for many purposes (rating, editing metadata, tagging), can be treated like a regular metadata item: Smart playlist details contain the `content` attribute. This is the content URI for the generator. This can then be parsed by a client to provide smart playlist editing. + * @summary Retrieve Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getPlaylist: function (playlistID, axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + // verify required parameter 'playlistID' is not null or undefined + (0, common_1.assertParamExists)('getPlaylist', 'playlistID', playlistID); + localVarPath = "/playlists/{playlistID}" + .replace("{".concat("playlistID", "}"), encodeURIComponent(String(playlistID))); + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + /** + * Gets the contents of a playlist. Should be paged by clients via standard mechanisms. By default leaves are returned (e.g. episodes, movies). In order to return other types you can use the `type` parameter. For example, you could use this to display a list of recently added albums vis a smart playlist. Note that for dumb playlists, items have a `playlistItemID` attribute which is used for deleting or moving items. + * @summary Retrieve Playlist Contents + * @param {any} playlistID the ID of the playlist + * @param {any} type the metadata type of the item to return + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getPlaylistContent: function (playlistID, type, axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + // verify required parameter 'playlistID' is not null or undefined + (0, common_1.assertParamExists)('getPlaylistContent', 'playlistID', playlistID); + // verify required parameter 'type' is not null or undefined + (0, common_1.assertParamExists)('getPlaylistContent', 'type', type); + localVarPath = "/playlists/{playlistID}/items" + .replace("{".concat("playlistID", "}"), encodeURIComponent(String(playlistID))); + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + if (type !== undefined) { + localVarQueryParameter['type'] = type; + } + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + /** + * From PMS version 1.9.1 clients can also edit playlist metadata using this endpoint as they would via `PUT /library/metadata/{playlistID}` + * @summary Update a Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + updatePlaylist: function (playlistID, axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + // verify required parameter 'playlistID' is not null or undefined + (0, common_1.assertParamExists)('updatePlaylist', 'playlistID', playlistID); + localVarPath = "/playlists/{playlistID}" + .replace("{".concat("playlistID", "}"), encodeURIComponent(String(playlistID))); + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'PUT' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + /** + * Imports m3u playlists by passing a path on the server to scan for m3u-formatted playlist files, or a path to a single playlist file. + * @summary Upload Playlist + * @param {any} path absolute path to a directory on the server where m3u files are stored, or the absolute path to a playlist file on the server. If the `path` argument is a directory, that path will be scanned for playlist files to be processed. Each file in that directory creates a separate playlist, with a name based on the filename of the file that created it. The GUID of each playlist is based on the filename. If the `path` argument is a file, that file will be used to create a new playlist, with the name based on the filename of the file that created it. The GUID of each playlist is based on the filename. + * @param {any} force force overwriting of duplicate playlists. By default, a playlist file uploaded with the same path will overwrite the existing playlist. The `force` argument is used to disable overwriting. If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + uploadPlaylist: function (path, force, axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + // verify required parameter 'path' is not null or undefined + (0, common_1.assertParamExists)('uploadPlaylist', 'path', path); + // verify required parameter 'force' is not null or undefined + (0, common_1.assertParamExists)('uploadPlaylist', 'force', force); + localVarPath = "/playlists/upload"; + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'POST' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + if (path !== undefined) { + localVarQueryParameter['path'] = path; + } + if (force !== undefined) { + localVarQueryParameter['force'] = force; + } + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + }; +}; +exports.PlaylistsApiAxiosParamCreator = PlaylistsApiAxiosParamCreator; +/** + * PlaylistsApi - functional programming interface + * @export + */ +var PlaylistsApiFp = function (configuration) { + var localVarAxiosParamCreator = (0, exports.PlaylistsApiAxiosParamCreator)(configuration); + return { + /** + * Adds a generator to a playlist, same parameters as the POST above. With a dumb playlist, this adds the specified items to the playlist. With a smart playlist, passing a new `uri` parameter replaces the rules for the playlist. Returns the playlist. + * @summary Adding to a Playlist + * @param {any} playlistID the ID of the playlist + * @param {any} uri the content URI for the playlist + * @param {any} playQueueID the play queue to add to a playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + addPlaylistContent: function (playlistID, uri, playQueueID, axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.addPlaylistContent(playlistID, uri, playQueueID, axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + /** + * Clears a playlist, only works with dumb playlists. Returns the playlist. + * @summary Delete Playlist Contents + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + clearPlaylistContent: function (playlistID, axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.clearPlaylistContent(playlistID, axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + /** + * Create a new playlist. By default the playlist is blank. To create a playlist along with a first item, pass: - `uri` - The content URI for what we\'re playing (e.g. `library://...`). - `playQueueID` - To create a playlist from an existing play queue. + * @summary Create a Playlist + * @param {any} title name of the playlist + * @param {any} type type of playlist to create + * @param {any} smart whether the playlist is smart or not + * @param {any} [uri] the content URI for the playlist + * @param {any} [playQueueID] the play queue to copy to a playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + createAPlaylist: function (title, type, smart, uri, playQueueID, axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.createAPlaylist(title, type, smart, uri, playQueueID, axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + /** + * This endpoint will delete a playlist + * @summary Deletes a Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + deletePlaylist: function (playlistID, axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.deletePlaylist(playlistID, axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + /** + * + * @summary Get All Playlists + * @param {any} [playlistType] limit to a type of playlist. + * @param {any} [smart] type of playlists to return (default is all). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAllPlaylists: function (playlistType, smart, axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.getAllPlaylists(playlistType, smart, axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + /** + * Gets detailed metadata for a playlist. A playlist for many purposes (rating, editing metadata, tagging), can be treated like a regular metadata item: Smart playlist details contain the `content` attribute. This is the content URI for the generator. This can then be parsed by a client to provide smart playlist editing. + * @summary Retrieve Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getPlaylist: function (playlistID, axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.getPlaylist(playlistID, axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + /** + * Gets the contents of a playlist. Should be paged by clients via standard mechanisms. By default leaves are returned (e.g. episodes, movies). In order to return other types you can use the `type` parameter. For example, you could use this to display a list of recently added albums vis a smart playlist. Note that for dumb playlists, items have a `playlistItemID` attribute which is used for deleting or moving items. + * @summary Retrieve Playlist Contents + * @param {any} playlistID the ID of the playlist + * @param {any} type the metadata type of the item to return + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getPlaylistContent: function (playlistID, type, axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.getPlaylistContent(playlistID, type, axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + /** + * From PMS version 1.9.1 clients can also edit playlist metadata using this endpoint as they would via `PUT /library/metadata/{playlistID}` + * @summary Update a Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + updatePlaylist: function (playlistID, axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.updatePlaylist(playlistID, axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + /** + * Imports m3u playlists by passing a path on the server to scan for m3u-formatted playlist files, or a path to a single playlist file. + * @summary Upload Playlist + * @param {any} path absolute path to a directory on the server where m3u files are stored, or the absolute path to a playlist file on the server. If the `path` argument is a directory, that path will be scanned for playlist files to be processed. Each file in that directory creates a separate playlist, with a name based on the filename of the file that created it. The GUID of each playlist is based on the filename. If the `path` argument is a file, that file will be used to create a new playlist, with the name based on the filename of the file that created it. The GUID of each playlist is based on the filename. + * @param {any} force force overwriting of duplicate playlists. By default, a playlist file uploaded with the same path will overwrite the existing playlist. The `force` argument is used to disable overwriting. If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + uploadPlaylist: function (path, force, axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.uploadPlaylist(path, force, axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + }; +}; +exports.PlaylistsApiFp = PlaylistsApiFp; +/** + * PlaylistsApi - factory interface + * @export + */ +var PlaylistsApiFactory = function (configuration, basePath, axios) { + var localVarFp = (0, exports.PlaylistsApiFp)(configuration); + return { + /** + * Adds a generator to a playlist, same parameters as the POST above. With a dumb playlist, this adds the specified items to the playlist. With a smart playlist, passing a new `uri` parameter replaces the rules for the playlist. Returns the playlist. + * @summary Adding to a Playlist + * @param {any} playlistID the ID of the playlist + * @param {any} uri the content URI for the playlist + * @param {any} playQueueID the play queue to add to a playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + addPlaylistContent: function (playlistID, uri, playQueueID, axiosOptions) { + return localVarFp.addPlaylistContent(playlistID, uri, playQueueID, axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + /** + * Clears a playlist, only works with dumb playlists. Returns the playlist. + * @summary Delete Playlist Contents + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + clearPlaylistContent: function (playlistID, axiosOptions) { + return localVarFp.clearPlaylistContent(playlistID, axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + /** + * Create a new playlist. By default the playlist is blank. To create a playlist along with a first item, pass: - `uri` - The content URI for what we\'re playing (e.g. `library://...`). - `playQueueID` - To create a playlist from an existing play queue. + * @summary Create a Playlist + * @param {any} title name of the playlist + * @param {any} type type of playlist to create + * @param {any} smart whether the playlist is smart or not + * @param {any} [uri] the content URI for the playlist + * @param {any} [playQueueID] the play queue to copy to a playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + createAPlaylist: function (title, type, smart, uri, playQueueID, axiosOptions) { + return localVarFp.createAPlaylist(title, type, smart, uri, playQueueID, axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + /** + * This endpoint will delete a playlist + * @summary Deletes a Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + deletePlaylist: function (playlistID, axiosOptions) { + return localVarFp.deletePlaylist(playlistID, axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + /** + * + * @summary Get All Playlists + * @param {any} [playlistType] limit to a type of playlist. + * @param {any} [smart] type of playlists to return (default is all). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAllPlaylists: function (playlistType, smart, axiosOptions) { + return localVarFp.getAllPlaylists(playlistType, smart, axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + /** + * Gets detailed metadata for a playlist. A playlist for many purposes (rating, editing metadata, tagging), can be treated like a regular metadata item: Smart playlist details contain the `content` attribute. This is the content URI for the generator. This can then be parsed by a client to provide smart playlist editing. + * @summary Retrieve Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getPlaylist: function (playlistID, axiosOptions) { + return localVarFp.getPlaylist(playlistID, axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + /** + * Gets the contents of a playlist. Should be paged by clients via standard mechanisms. By default leaves are returned (e.g. episodes, movies). In order to return other types you can use the `type` parameter. For example, you could use this to display a list of recently added albums vis a smart playlist. Note that for dumb playlists, items have a `playlistItemID` attribute which is used for deleting or moving items. + * @summary Retrieve Playlist Contents + * @param {any} playlistID the ID of the playlist + * @param {any} type the metadata type of the item to return + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getPlaylistContent: function (playlistID, type, axiosOptions) { + return localVarFp.getPlaylistContent(playlistID, type, axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + /** + * From PMS version 1.9.1 clients can also edit playlist metadata using this endpoint as they would via `PUT /library/metadata/{playlistID}` + * @summary Update a Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + updatePlaylist: function (playlistID, axiosOptions) { + return localVarFp.updatePlaylist(playlistID, axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + /** + * Imports m3u playlists by passing a path on the server to scan for m3u-formatted playlist files, or a path to a single playlist file. + * @summary Upload Playlist + * @param {any} path absolute path to a directory on the server where m3u files are stored, or the absolute path to a playlist file on the server. If the `path` argument is a directory, that path will be scanned for playlist files to be processed. Each file in that directory creates a separate playlist, with a name based on the filename of the file that created it. The GUID of each playlist is based on the filename. If the `path` argument is a file, that file will be used to create a new playlist, with the name based on the filename of the file that created it. The GUID of each playlist is based on the filename. + * @param {any} force force overwriting of duplicate playlists. By default, a playlist file uploaded with the same path will overwrite the existing playlist. The `force` argument is used to disable overwriting. If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + uploadPlaylist: function (path, force, axiosOptions) { + return localVarFp.uploadPlaylist(path, force, axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + }; +}; +exports.PlaylistsApiFactory = PlaylistsApiFactory; +/** + * PlaylistsApi - object-oriented interface + * @export + * @class PlaylistsApi + * @extends {BaseAPI} + */ +var PlaylistsApi = /** @class */ (function (_super) { + __extends(PlaylistsApi, _super); + function PlaylistsApi() { + return _super !== null && _super.apply(this, arguments) || this; + } + /** + * Adds a generator to a playlist, same parameters as the POST above. With a dumb playlist, this adds the specified items to the playlist. With a smart playlist, passing a new `uri` parameter replaces the rules for the playlist. Returns the playlist. + * @summary Adding to a Playlist + * @param {PlaylistsApiAddPlaylistContentRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + PlaylistsApi.prototype.addPlaylistContent = function (requestParameters, axiosOptions) { + var _this = this; + return (0, exports.PlaylistsApiFp)(this.configuration).addPlaylistContent(requestParameters.playlistID, requestParameters.uri, requestParameters.playQueueID, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + /** + * Clears a playlist, only works with dumb playlists. Returns the playlist. + * @summary Delete Playlist Contents + * @param {PlaylistsApiClearPlaylistContentRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + PlaylistsApi.prototype.clearPlaylistContent = function (requestParameters, axiosOptions) { + var _this = this; + return (0, exports.PlaylistsApiFp)(this.configuration).clearPlaylistContent(requestParameters.playlistID, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + /** + * Create a new playlist. By default the playlist is blank. To create a playlist along with a first item, pass: - `uri` - The content URI for what we\'re playing (e.g. `library://...`). - `playQueueID` - To create a playlist from an existing play queue. + * @summary Create a Playlist + * @param {PlaylistsApiCreateAPlaylistRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + PlaylistsApi.prototype.createAPlaylist = function (requestParameters, axiosOptions) { + var _this = this; + return (0, exports.PlaylistsApiFp)(this.configuration).createAPlaylist(requestParameters.title, requestParameters.type, requestParameters.smart, requestParameters.uri, requestParameters.playQueueID, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + /** + * This endpoint will delete a playlist + * @summary Deletes a Playlist + * @param {PlaylistsApiDeletePlaylistRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + PlaylistsApi.prototype.deletePlaylist = function (requestParameters, axiosOptions) { + var _this = this; + return (0, exports.PlaylistsApiFp)(this.configuration).deletePlaylist(requestParameters.playlistID, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + /** + * + * @summary Get All Playlists + * @param {PlaylistsApiGetAllPlaylistsRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + PlaylistsApi.prototype.getAllPlaylists = function (requestParameters, axiosOptions) { + var _this = this; + if (requestParameters === void 0) { requestParameters = {}; } + return (0, exports.PlaylistsApiFp)(this.configuration).getAllPlaylists(requestParameters.playlistType, requestParameters.smart, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + /** + * Gets detailed metadata for a playlist. A playlist for many purposes (rating, editing metadata, tagging), can be treated like a regular metadata item: Smart playlist details contain the `content` attribute. This is the content URI for the generator. This can then be parsed by a client to provide smart playlist editing. + * @summary Retrieve Playlist + * @param {PlaylistsApiGetPlaylistRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + PlaylistsApi.prototype.getPlaylist = function (requestParameters, axiosOptions) { + var _this = this; + return (0, exports.PlaylistsApiFp)(this.configuration).getPlaylist(requestParameters.playlistID, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + /** + * Gets the contents of a playlist. Should be paged by clients via standard mechanisms. By default leaves are returned (e.g. episodes, movies). In order to return other types you can use the `type` parameter. For example, you could use this to display a list of recently added albums vis a smart playlist. Note that for dumb playlists, items have a `playlistItemID` attribute which is used for deleting or moving items. + * @summary Retrieve Playlist Contents + * @param {PlaylistsApiGetPlaylistContentRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + PlaylistsApi.prototype.getPlaylistContent = function (requestParameters, axiosOptions) { + var _this = this; + return (0, exports.PlaylistsApiFp)(this.configuration).getPlaylistContent(requestParameters.playlistID, requestParameters.type, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + /** + * From PMS version 1.9.1 clients can also edit playlist metadata using this endpoint as they would via `PUT /library/metadata/{playlistID}` + * @summary Update a Playlist + * @param {PlaylistsApiUpdatePlaylistRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + PlaylistsApi.prototype.updatePlaylist = function (requestParameters, axiosOptions) { + var _this = this; + return (0, exports.PlaylistsApiFp)(this.configuration).updatePlaylist(requestParameters.playlistID, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + /** + * Imports m3u playlists by passing a path on the server to scan for m3u-formatted playlist files, or a path to a single playlist file. + * @summary Upload Playlist + * @param {PlaylistsApiUploadPlaylistRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + PlaylistsApi.prototype.uploadPlaylist = function (requestParameters, axiosOptions) { + var _this = this; + return (0, exports.PlaylistsApiFp)(this.configuration).uploadPlaylist(requestParameters.path, requestParameters.force, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + return PlaylistsApi; +}(base_1.BaseAPI)); +exports.PlaylistsApi = PlaylistsApi; +/** + * SearchApi - axios parameter creator + * @export + */ +var SearchApiAxiosParamCreator = function (configuration) { + var _this = this; + return { + /** + * This endpoint performs a search across all library sections, or a single section, and returns matches as hubs, split up by type. It performs spell checking, looks for partial matches, and orders the hubs based on quality of results. In addition, based on matches, it will return other related matches (e.g. for a genre match, it may return movies in that genre, or for an actor match, movies with that actor). In the response\'s items, the following extra attributes are returned to further describe or disambiguate the result: - `reason`: The reason for the result, if not because of a direct search term match; can be either: - `section`: There are multiple identical results from different sections. - `originalTitle`: There was a search term match from the original title field (sometimes those can be very different or in a foreign language). - ``: If the reason for the result is due to a result in another hub, the source hub identifier is returned. For example, if the search is for \"dylan\" then Bob Dylan may be returned as an artist result, an a few of his albums returned as album results with a reason code of `artist` (the identifier of that particular hub). Or if the search is for \"arnold\", there might be movie results returned with a reason of `actor` - `reasonTitle`: The string associated with the reason code. For a section reason, it\'ll be the section name; For a hub identifier, it\'ll be a string associated with the match (e.g. `Arnold Schwarzenegger` for movies which were returned because the search was for \"arnold\"). - `reasonID`: The ID of the item associated with the reason for the result. This might be a section ID, a tag ID, an artist ID, or a show ID. This request is intended to be very fast, and called as the user types. + * @summary Perform a search + * @param {any} query The query term + * @param {any} [sectionId] This gives context to the search, and can result in re-ordering of search result hubs + * @param {any} [limit] The number of items to return per hub + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + performSearch: function (query, sectionId, limit, axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + // verify required parameter 'query' is not null or undefined + (0, common_1.assertParamExists)('performSearch', 'query', query); + localVarPath = "/hubs/search"; + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + if (query !== undefined) { + localVarQueryParameter['query'] = query; + } + if (sectionId !== undefined) { + localVarQueryParameter['sectionId'] = sectionId; + } + if (limit !== undefined) { + localVarQueryParameter['limit'] = limit; + } + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + /** + * This endpoint performs a search specifically tailored towards voice or other imprecise input which may work badly with the substring and spell-checking heuristics used by the `/hubs/search` endpoint. It uses a [Levenshtein distance](https://en.wikipedia.org/wiki/Levenshtein_distance) heuristic to search titles, and as such is much slower than the other search endpoint. Whenever possible, clients should limit the search to the appropriate type. Results, as well as their containing per-type hubs, contain a `distance` attribute which can be used to judge result quality. + * @summary Perform a voice search + * @param {any} query The query term + * @param {any} [sectionId] This gives context to the search, and can result in re-ordering of search result hubs + * @param {any} [limit] The number of items to return per hub + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + performVoiceSearch: function (query, sectionId, limit, axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + // verify required parameter 'query' is not null or undefined + (0, common_1.assertParamExists)('performVoiceSearch', 'query', query); + localVarPath = "/hubs/search/voice"; + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + if (query !== undefined) { + localVarQueryParameter['query'] = query; + } + if (sectionId !== undefined) { + localVarQueryParameter['sectionId'] = sectionId; + } + if (limit !== undefined) { + localVarQueryParameter['limit'] = limit; + } + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + }; +}; +exports.SearchApiAxiosParamCreator = SearchApiAxiosParamCreator; +/** + * SearchApi - functional programming interface + * @export + */ +var SearchApiFp = function (configuration) { + var localVarAxiosParamCreator = (0, exports.SearchApiAxiosParamCreator)(configuration); + return { + /** + * This endpoint performs a search across all library sections, or a single section, and returns matches as hubs, split up by type. It performs spell checking, looks for partial matches, and orders the hubs based on quality of results. In addition, based on matches, it will return other related matches (e.g. for a genre match, it may return movies in that genre, or for an actor match, movies with that actor). In the response\'s items, the following extra attributes are returned to further describe or disambiguate the result: - `reason`: The reason for the result, if not because of a direct search term match; can be either: - `section`: There are multiple identical results from different sections. - `originalTitle`: There was a search term match from the original title field (sometimes those can be very different or in a foreign language). - ``: If the reason for the result is due to a result in another hub, the source hub identifier is returned. For example, if the search is for \"dylan\" then Bob Dylan may be returned as an artist result, an a few of his albums returned as album results with a reason code of `artist` (the identifier of that particular hub). Or if the search is for \"arnold\", there might be movie results returned with a reason of `actor` - `reasonTitle`: The string associated with the reason code. For a section reason, it\'ll be the section name; For a hub identifier, it\'ll be a string associated with the match (e.g. `Arnold Schwarzenegger` for movies which were returned because the search was for \"arnold\"). - `reasonID`: The ID of the item associated with the reason for the result. This might be a section ID, a tag ID, an artist ID, or a show ID. This request is intended to be very fast, and called as the user types. + * @summary Perform a search + * @param {any} query The query term + * @param {any} [sectionId] This gives context to the search, and can result in re-ordering of search result hubs + * @param {any} [limit] The number of items to return per hub + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + performSearch: function (query, sectionId, limit, axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.performSearch(query, sectionId, limit, axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + /** + * This endpoint performs a search specifically tailored towards voice or other imprecise input which may work badly with the substring and spell-checking heuristics used by the `/hubs/search` endpoint. It uses a [Levenshtein distance](https://en.wikipedia.org/wiki/Levenshtein_distance) heuristic to search titles, and as such is much slower than the other search endpoint. Whenever possible, clients should limit the search to the appropriate type. Results, as well as their containing per-type hubs, contain a `distance` attribute which can be used to judge result quality. + * @summary Perform a voice search + * @param {any} query The query term + * @param {any} [sectionId] This gives context to the search, and can result in re-ordering of search result hubs + * @param {any} [limit] The number of items to return per hub + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + performVoiceSearch: function (query, sectionId, limit, axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.performVoiceSearch(query, sectionId, limit, axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + }; +}; +exports.SearchApiFp = SearchApiFp; +/** + * SearchApi - factory interface + * @export + */ +var SearchApiFactory = function (configuration, basePath, axios) { + var localVarFp = (0, exports.SearchApiFp)(configuration); + return { + /** + * This endpoint performs a search across all library sections, or a single section, and returns matches as hubs, split up by type. It performs spell checking, looks for partial matches, and orders the hubs based on quality of results. In addition, based on matches, it will return other related matches (e.g. for a genre match, it may return movies in that genre, or for an actor match, movies with that actor). In the response\'s items, the following extra attributes are returned to further describe or disambiguate the result: - `reason`: The reason for the result, if not because of a direct search term match; can be either: - `section`: There are multiple identical results from different sections. - `originalTitle`: There was a search term match from the original title field (sometimes those can be very different or in a foreign language). - ``: If the reason for the result is due to a result in another hub, the source hub identifier is returned. For example, if the search is for \"dylan\" then Bob Dylan may be returned as an artist result, an a few of his albums returned as album results with a reason code of `artist` (the identifier of that particular hub). Or if the search is for \"arnold\", there might be movie results returned with a reason of `actor` - `reasonTitle`: The string associated with the reason code. For a section reason, it\'ll be the section name; For a hub identifier, it\'ll be a string associated with the match (e.g. `Arnold Schwarzenegger` for movies which were returned because the search was for \"arnold\"). - `reasonID`: The ID of the item associated with the reason for the result. This might be a section ID, a tag ID, an artist ID, or a show ID. This request is intended to be very fast, and called as the user types. + * @summary Perform a search + * @param {any} query The query term + * @param {any} [sectionId] This gives context to the search, and can result in re-ordering of search result hubs + * @param {any} [limit] The number of items to return per hub + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + performSearch: function (query, sectionId, limit, axiosOptions) { + return localVarFp.performSearch(query, sectionId, limit, axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + /** + * This endpoint performs a search specifically tailored towards voice or other imprecise input which may work badly with the substring and spell-checking heuristics used by the `/hubs/search` endpoint. It uses a [Levenshtein distance](https://en.wikipedia.org/wiki/Levenshtein_distance) heuristic to search titles, and as such is much slower than the other search endpoint. Whenever possible, clients should limit the search to the appropriate type. Results, as well as their containing per-type hubs, contain a `distance` attribute which can be used to judge result quality. + * @summary Perform a voice search + * @param {any} query The query term + * @param {any} [sectionId] This gives context to the search, and can result in re-ordering of search result hubs + * @param {any} [limit] The number of items to return per hub + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + performVoiceSearch: function (query, sectionId, limit, axiosOptions) { + return localVarFp.performVoiceSearch(query, sectionId, limit, axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + }; +}; +exports.SearchApiFactory = SearchApiFactory; +/** + * SearchApi - object-oriented interface + * @export + * @class SearchApi + * @extends {BaseAPI} + */ +var SearchApi = /** @class */ (function (_super) { + __extends(SearchApi, _super); + function SearchApi() { + return _super !== null && _super.apply(this, arguments) || this; + } + /** + * This endpoint performs a search across all library sections, or a single section, and returns matches as hubs, split up by type. It performs spell checking, looks for partial matches, and orders the hubs based on quality of results. In addition, based on matches, it will return other related matches (e.g. for a genre match, it may return movies in that genre, or for an actor match, movies with that actor). In the response\'s items, the following extra attributes are returned to further describe or disambiguate the result: - `reason`: The reason for the result, if not because of a direct search term match; can be either: - `section`: There are multiple identical results from different sections. - `originalTitle`: There was a search term match from the original title field (sometimes those can be very different or in a foreign language). - ``: If the reason for the result is due to a result in another hub, the source hub identifier is returned. For example, if the search is for \"dylan\" then Bob Dylan may be returned as an artist result, an a few of his albums returned as album results with a reason code of `artist` (the identifier of that particular hub). Or if the search is for \"arnold\", there might be movie results returned with a reason of `actor` - `reasonTitle`: The string associated with the reason code. For a section reason, it\'ll be the section name; For a hub identifier, it\'ll be a string associated with the match (e.g. `Arnold Schwarzenegger` for movies which were returned because the search was for \"arnold\"). - `reasonID`: The ID of the item associated with the reason for the result. This might be a section ID, a tag ID, an artist ID, or a show ID. This request is intended to be very fast, and called as the user types. + * @summary Perform a search + * @param {SearchApiPerformSearchRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof SearchApi + */ + SearchApi.prototype.performSearch = function (requestParameters, axiosOptions) { + var _this = this; + return (0, exports.SearchApiFp)(this.configuration).performSearch(requestParameters.query, requestParameters.sectionId, requestParameters.limit, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + /** + * This endpoint performs a search specifically tailored towards voice or other imprecise input which may work badly with the substring and spell-checking heuristics used by the `/hubs/search` endpoint. It uses a [Levenshtein distance](https://en.wikipedia.org/wiki/Levenshtein_distance) heuristic to search titles, and as such is much slower than the other search endpoint. Whenever possible, clients should limit the search to the appropriate type. Results, as well as their containing per-type hubs, contain a `distance` attribute which can be used to judge result quality. + * @summary Perform a voice search + * @param {SearchApiPerformVoiceSearchRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof SearchApi + */ + SearchApi.prototype.performVoiceSearch = function (requestParameters, axiosOptions) { + var _this = this; + return (0, exports.SearchApiFp)(this.configuration).performVoiceSearch(requestParameters.query, requestParameters.sectionId, requestParameters.limit, axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + return SearchApi; +}(base_1.BaseAPI)); +exports.SearchApi = SearchApi; /** * SecurityApi - axios parameter creator * @export @@ -1394,6 +3489,43 @@ exports.SecurityApi = SecurityApi; var ServerApiAxiosParamCreator = function (configuration) { var _this = this; return { + /** + * Get Server Preferences + * @summary Get Server Preferences + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getServerPreferences: function (axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + localVarPath = "/:/prefs"; + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, /** * Server Capabilities * @summary Server Capabilities @@ -1441,6 +3573,25 @@ exports.ServerApiAxiosParamCreator = ServerApiAxiosParamCreator; var ServerApiFp = function (configuration) { var localVarAxiosParamCreator = (0, exports.ServerApiAxiosParamCreator)(configuration); return { + /** + * Get Server Preferences + * @summary Get Server Preferences + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getServerPreferences: function (axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.getServerPreferences(axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, /** * Server Capabilities * @summary Server Capabilities @@ -1470,6 +3621,15 @@ exports.ServerApiFp = ServerApiFp; var ServerApiFactory = function (configuration, basePath, axios) { var localVarFp = (0, exports.ServerApiFp)(configuration); return { + /** + * Get Server Preferences + * @summary Get Server Preferences + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getServerPreferences: function (axiosOptions) { + return localVarFp.getServerPreferences(axiosOptions).then(function (request) { return request(axios, basePath); }); + }, /** * Server Capabilities * @summary Server Capabilities @@ -1493,6 +3653,17 @@ var ServerApi = /** @class */ (function (_super) { function ServerApi() { return _super !== null && _super.apply(this, arguments) || this; } + /** + * Get Server Preferences + * @summary Get Server Preferences + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof ServerApi + */ + ServerApi.prototype.getServerPreferences = function (axiosOptions) { + var _this = this; + return (0, exports.ServerApiFp)(this.configuration).getServerPreferences(axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; /** * Server Capabilities * @summary Server Capabilities @@ -1507,6 +3678,202 @@ var ServerApi = /** @class */ (function (_super) { return ServerApi; }(base_1.BaseAPI)); exports.ServerApi = ServerApi; +/** + * SessionsApi - axios parameter creator + * @export + */ +var SessionsApiAxiosParamCreator = function (configuration) { + var _this = this; + return { + /** + * This will Retrieve a listing of all history views. + * @summary Get Session History + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getSessionHistory: function (axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + localVarPath = "/status/sessions/history/all"; + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + /** + * This will retrieve the \"Now Playing\" Information of the PMS. + * @summary Get Active Sessions + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getSessions: function (axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + localVarPath = "/status/sessions"; + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + }; +}; +exports.SessionsApiAxiosParamCreator = SessionsApiAxiosParamCreator; +/** + * SessionsApi - functional programming interface + * @export + */ +var SessionsApiFp = function (configuration) { + var localVarAxiosParamCreator = (0, exports.SessionsApiAxiosParamCreator)(configuration); + return { + /** + * This will Retrieve a listing of all history views. + * @summary Get Session History + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getSessionHistory: function (axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.getSessionHistory(axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + /** + * This will retrieve the \"Now Playing\" Information of the PMS. + * @summary Get Active Sessions + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getSessions: function (axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.getSessions(axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + }; +}; +exports.SessionsApiFp = SessionsApiFp; +/** + * SessionsApi - factory interface + * @export + */ +var SessionsApiFactory = function (configuration, basePath, axios) { + var localVarFp = (0, exports.SessionsApiFp)(configuration); + return { + /** + * This will Retrieve a listing of all history views. + * @summary Get Session History + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getSessionHistory: function (axiosOptions) { + return localVarFp.getSessionHistory(axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + /** + * This will retrieve the \"Now Playing\" Information of the PMS. + * @summary Get Active Sessions + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getSessions: function (axiosOptions) { + return localVarFp.getSessions(axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + }; +}; +exports.SessionsApiFactory = SessionsApiFactory; +/** + * SessionsApi - object-oriented interface + * @export + * @class SessionsApi + * @extends {BaseAPI} + */ +var SessionsApi = /** @class */ (function (_super) { + __extends(SessionsApi, _super); + function SessionsApi() { + return _super !== null && _super.apply(this, arguments) || this; + } + /** + * This will Retrieve a listing of all history views. + * @summary Get Session History + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof SessionsApi + */ + SessionsApi.prototype.getSessionHistory = function (axiosOptions) { + var _this = this; + return (0, exports.SessionsApiFp)(this.configuration).getSessionHistory(axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + /** + * This will retrieve the \"Now Playing\" Information of the PMS. + * @summary Get Active Sessions + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof SessionsApi + */ + SessionsApi.prototype.getSessions = function (axiosOptions) { + var _this = this; + return (0, exports.SessionsApiFp)(this.configuration).getSessions(axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + return SessionsApi; +}(base_1.BaseAPI)); +exports.SessionsApi = SessionsApi; /** * UpdaterApi - axios parameter creator * @export @@ -1801,4 +4168,124 @@ var UpdaterApi = /** @class */ (function (_super) { return UpdaterApi; }(base_1.BaseAPI)); exports.UpdaterApi = UpdaterApi; +/** + * UserApi - axios parameter creator + * @export + */ +var UserApiAxiosParamCreator = function (configuration) { + var _this = this; + return { + /** + * Get Logged in User + * @summary Get Logged in User + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getCurrentUserDetails: function (axiosOptions) { + if (axiosOptions === void 0) { axiosOptions = {}; } + return __awaiter(_this, void 0, void 0, function () { + var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + localVarPath = "/user"; + localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL); + if (configuration) { + baseOptions = configuration.baseOptions; + } + localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), axiosOptions); + localVarHeaderParameter = {}; + localVarQueryParameter = {}; + // authentication PlexToken required + return [4 /*yield*/, (0, common_1.setApiKeyToObject)(localVarHeaderParameter, "X-Plex-Token", configuration)]; + case 1: + // authentication PlexToken required + _a.sent(); + (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter); + headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), axiosOptions.headers); + return [2 /*return*/, { + url: (0, common_1.toPathString)(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }]; + } + }); + }); + }, + }; +}; +exports.UserApiAxiosParamCreator = UserApiAxiosParamCreator; +/** + * UserApi - functional programming interface + * @export + */ +var UserApiFp = function (configuration) { + var localVarAxiosParamCreator = (0, exports.UserApiAxiosParamCreator)(configuration); + return { + /** + * Get Logged in User + * @summary Get Logged in User + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getCurrentUserDetails: function (axiosOptions) { + return __awaiter(this, void 0, void 0, function () { + var localVarAxiosArgs; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: return [4 /*yield*/, localVarAxiosParamCreator.getCurrentUserDetails(axiosOptions)]; + case 1: + localVarAxiosArgs = _a.sent(); + return [2 /*return*/, (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)]; + } + }); + }); + }, + }; +}; +exports.UserApiFp = UserApiFp; +/** + * UserApi - factory interface + * @export + */ +var UserApiFactory = function (configuration, basePath, axios) { + var localVarFp = (0, exports.UserApiFp)(configuration); + return { + /** + * Get Logged in User + * @summary Get Logged in User + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getCurrentUserDetails: function (axiosOptions) { + return localVarFp.getCurrentUserDetails(axiosOptions).then(function (request) { return request(axios, basePath); }); + }, + }; +}; +exports.UserApiFactory = UserApiFactory; +/** + * UserApi - object-oriented interface + * @export + * @class UserApi + * @extends {BaseAPI} + */ +var UserApi = /** @class */ (function (_super) { + __extends(UserApi, _super); + function UserApi() { + return _super !== null && _super.apply(this, arguments) || this; + } + /** + * Get Logged in User + * @summary Get Logged in User + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof UserApi + */ + UserApi.prototype.getCurrentUserDetails = function (axiosOptions) { + var _this = this; + return (0, exports.UserApiFp)(this.configuration).getCurrentUserDetails(axiosOptions).then(function (request) { return request(_this.axios, _this.basePath); }); + }; + return UserApi; +}(base_1.BaseAPI)); +exports.UserApi = UserApi; //# sourceMappingURL=api.js.map \ No newline at end of file diff --git a/dist/sdk-output/api.js.map b/dist/sdk-output/api.js.map index aba8a6d9..4ade57a7 100644 --- a/dist/sdk-output/api.js.map +++ b/dist/sdk-output/api.js.map @@ -1 +1 @@ -{"version":3,"file":"api.js","sourceRoot":"","sources":["../../sdk-output/api.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"api.js","sourceRoot":"","sources":["../../sdk-output/api.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/sdk-output/api.ts b/sdk-output/api.ts index 8cb90deb..0ea1cc67 100644 --- a/sdk-output/api.ts +++ b/sdk-output/api.ts @@ -21,6 +21,202 @@ import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObj // @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from './base'; +/** + * + * @export + * @interface GetAvailableClients200Response + */ +export interface GetAvailableClients200Response { + /** + * + * @type {GetAvailableClients200ResponseMediaContainer} + * @memberof GetAvailableClients200Response + */ + 'MediaContainer'?: GetAvailableClients200ResponseMediaContainer; +} +/** + * + * @export + * @interface GetAvailableClients200ResponseMediaContainer + */ +export interface GetAvailableClients200ResponseMediaContainer { + /** + * + * @type {any} + * @memberof GetAvailableClients200ResponseMediaContainer + */ + 'size'?: any; + /** + * + * @type {any} + * @memberof GetAvailableClients200ResponseMediaContainer + */ + 'Server'?: any; +} +/** + * + * @export + * @interface GetAvailableClients401Response + */ +export interface GetAvailableClients401Response { + /** + * + * @type {any} + * @memberof GetAvailableClients401Response + */ + 'errors'?: any; +} +/** + * + * @export + * @interface GetDevices200Response + */ +export interface GetDevices200Response { + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'name'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'product'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'productVersion'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'platform'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'platformVersion'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'device'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'clientIdentifier'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'createdAt'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'lastSeenAt'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'provides'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'ownerId'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'sourceTitle'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'publicAddress'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'accessToken'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'owned'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'home'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'synced'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'relay'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'presence'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'httpsRequired'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'publicAddressMatches'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'dnsRebindingProtection'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'natLoopbackSupported'?: any; + /** + * + * @type {any} + * @memberof GetDevices200Response + */ + 'connections'?: any; +} /** * * @export @@ -898,19 +1094,19 @@ export class ButlerApi extends BaseAPI { /** - * LibraryApi - axios parameter creator + * DevicesApi - axios parameter creator * @export */ -export const LibraryApiAxiosParamCreator = function (configuration?: Configuration) { +export const DevicesApiAxiosParamCreator = function (configuration?: Configuration) { return { /** - * This endpoint will return a list of libraries - * @summary Get All Libraries + * Get Available Clients + * @summary Get Available Clients * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ - getLibraries: async (axiosOptions: AxiosRequestConfig = {}): Promise => { - const localVarPath = `/library/sections`; + getAvailableClients: async (axiosOptions: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/clients`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -937,23 +1133,535 @@ export const LibraryApiAxiosParamCreator = function (configuration?: Configurati }; }, /** - * This endpoint will return a list of library items filtered by the filter and type provided - * @summary Get Library Items + * Get Devices + * @summary Get Devices + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getDevices: async (axiosOptions: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/resources`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + } +}; + +/** + * DevicesApi - functional programming interface + * @export + */ +export const DevicesApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = DevicesApiAxiosParamCreator(configuration) + return { + /** + * Get Available Clients + * @summary Get Available Clients + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async getAvailableClients(axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getAvailableClients(axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Get Devices + * @summary Get Devices + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async getDevices(axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getDevices(axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * DevicesApi - factory interface + * @export + */ +export const DevicesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = DevicesApiFp(configuration) + return { + /** + * Get Available Clients + * @summary Get Available Clients + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAvailableClients(axiosOptions?: any): AxiosPromise { + return localVarFp.getAvailableClients(axiosOptions).then((request) => request(axios, basePath)); + }, + /** + * Get Devices + * @summary Get Devices + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getDevices(axiosOptions?: any): AxiosPromise { + return localVarFp.getDevices(axiosOptions).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * DevicesApi - object-oriented interface + * @export + * @class DevicesApi + * @extends {BaseAPI} + */ +export class DevicesApi extends BaseAPI { + /** + * Get Available Clients + * @summary Get Available Clients + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof DevicesApi + */ + public getAvailableClients(axiosOptions?: AxiosRequestConfig) { + return DevicesApiFp(this.configuration).getAvailableClients(axiosOptions).then((request) => request(this.axios, this.basePath)); + } + + /** + * Get Devices + * @summary Get Devices + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof DevicesApi + */ + public getDevices(axiosOptions?: AxiosRequestConfig) { + return DevicesApiFp(this.configuration).getDevices(axiosOptions).then((request) => request(this.axios, this.basePath)); + } +} + + +/** + * HashesApi - axios parameter creator + * @export + */ +export const HashesApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * This resource returns hash values for local files + * @summary Get Hash Value + * @param {any} url This is the path to the local file, must be prefixed by `file://` + * @param {any} [type] Item type + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getFileHash: async (url: any, type?: any, axiosOptions: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'url' is not null or undefined + assertParamExists('getFileHash', 'url', url) + const localVarPath = `/library/hashes` + .replace(`{${"url"}}`, encodeURIComponent(String(url))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + if (type !== undefined) { + localVarQueryParameter['type'] = type; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + } +}; + +/** + * HashesApi - functional programming interface + * @export + */ +export const HashesApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = HashesApiAxiosParamCreator(configuration) + return { + /** + * This resource returns hash values for local files + * @summary Get Hash Value + * @param {any} url This is the path to the local file, must be prefixed by `file://` + * @param {any} [type] Item type + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async getFileHash(url: any, type?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getFileHash(url, type, axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * HashesApi - factory interface + * @export + */ +export const HashesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = HashesApiFp(configuration) + return { + /** + * This resource returns hash values for local files + * @summary Get Hash Value + * @param {any} url This is the path to the local file, must be prefixed by `file://` + * @param {any} [type] Item type + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getFileHash(url: any, type?: any, axiosOptions?: any): AxiosPromise { + return localVarFp.getFileHash(url, type, axiosOptions).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * Request parameters for getFileHash operation in HashesApi. + * @export + * @interface HashesApiGetFileHashRequest + */ +export interface HashesApiGetFileHashRequest { + /** + * This is the path to the local file, must be prefixed by `file://` + * @type {any} + * @memberof HashesApiGetFileHash + */ + readonly url: any + + /** + * Item type + * @type {any} + * @memberof HashesApiGetFileHash + */ + readonly type?: any +} + +/** + * HashesApi - object-oriented interface + * @export + * @class HashesApi + * @extends {BaseAPI} + */ +export class HashesApi extends BaseAPI { + /** + * This resource returns hash values for local files + * @summary Get Hash Value + * @param {HashesApiGetFileHashRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof HashesApi + */ + public getFileHash(requestParameters: HashesApiGetFileHashRequest, axiosOptions?: AxiosRequestConfig) { + return HashesApiFp(this.configuration).getFileHash(requestParameters.url, requestParameters.type, axiosOptions).then((request) => request(this.axios, this.basePath)); + } +} + + +/** + * HubsApi - axios parameter creator + * @export + */ +export const HubsApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * + * @summary Get Global Hubs + * @param {any} [count] The number of items to return with each hub. + * @param {any} [onlyTransient] Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getGlobalHubs: async (count?: any, onlyTransient?: any, axiosOptions: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/hubs`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + if (count !== undefined) { + localVarQueryParameter['count'] = count; + } + + if (onlyTransient !== undefined) { + localVarQueryParameter['onlyTransient'] = onlyTransient; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + /** + * This endpoint will return a list of library specific hubs + * @summary Get library specific hubs + * @param {any} sectionId the Id of the library to query + * @param {any} [count] The number of items to return with each hub. + * @param {any} [onlyTransient] Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getLibraryHubs: async (sectionId: any, count?: any, onlyTransient?: any, axiosOptions: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'sectionId' is not null or undefined + assertParamExists('getLibraryHubs', 'sectionId', sectionId) + const localVarPath = `/hubs/sections/{sectionId}` + .replace(`{${"sectionId"}}`, encodeURIComponent(String(sectionId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + if (count !== undefined) { + localVarQueryParameter['count'] = count; + } + + if (onlyTransient !== undefined) { + localVarQueryParameter['onlyTransient'] = onlyTransient; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + } +}; + +/** + * HubsApi - functional programming interface + * @export + */ +export const HubsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = HubsApiAxiosParamCreator(configuration) + return { + /** + * + * @summary Get Global Hubs + * @param {any} [count] The number of items to return with each hub. + * @param {any} [onlyTransient] Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async getGlobalHubs(count?: any, onlyTransient?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getGlobalHubs(count, onlyTransient, axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * This endpoint will return a list of library specific hubs + * @summary Get library specific hubs + * @param {any} sectionId the Id of the library to query + * @param {any} [count] The number of items to return with each hub. + * @param {any} [onlyTransient] Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async getLibraryHubs(sectionId: any, count?: any, onlyTransient?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getLibraryHubs(sectionId, count, onlyTransient, axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * HubsApi - factory interface + * @export + */ +export const HubsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = HubsApiFp(configuration) + return { + /** + * + * @summary Get Global Hubs + * @param {any} [count] The number of items to return with each hub. + * @param {any} [onlyTransient] Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getGlobalHubs(count?: any, onlyTransient?: any, axiosOptions?: any): AxiosPromise { + return localVarFp.getGlobalHubs(count, onlyTransient, axiosOptions).then((request) => request(axios, basePath)); + }, + /** + * This endpoint will return a list of library specific hubs + * @summary Get library specific hubs + * @param {any} sectionId the Id of the library to query + * @param {any} [count] The number of items to return with each hub. + * @param {any} [onlyTransient] Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getLibraryHubs(sectionId: any, count?: any, onlyTransient?: any, axiosOptions?: any): AxiosPromise { + return localVarFp.getLibraryHubs(sectionId, count, onlyTransient, axiosOptions).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * Request parameters for getGlobalHubs operation in HubsApi. + * @export + * @interface HubsApiGetGlobalHubsRequest + */ +export interface HubsApiGetGlobalHubsRequest { + /** + * The number of items to return with each hub. + * @type {any} + * @memberof HubsApiGetGlobalHubs + */ + readonly count?: any + + /** + * Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @type {any} + * @memberof HubsApiGetGlobalHubs + */ + readonly onlyTransient?: any +} + +/** + * Request parameters for getLibraryHubs operation in HubsApi. + * @export + * @interface HubsApiGetLibraryHubsRequest + */ +export interface HubsApiGetLibraryHubsRequest { + /** + * the Id of the library to query + * @type {any} + * @memberof HubsApiGetLibraryHubs + */ + readonly sectionId: any + + /** + * The number of items to return with each hub. + * @type {any} + * @memberof HubsApiGetLibraryHubs + */ + readonly count?: any + + /** + * Only return hubs which are \"transient\", meaning those which are prone to changing after media playback or addition (e.g. On Deck, or Recently Added). + * @type {any} + * @memberof HubsApiGetLibraryHubs + */ + readonly onlyTransient?: any +} + +/** + * HubsApi - object-oriented interface + * @export + * @class HubsApi + * @extends {BaseAPI} + */ +export class HubsApi extends BaseAPI { + /** + * + * @summary Get Global Hubs + * @param {HubsApiGetGlobalHubsRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof HubsApi + */ + public getGlobalHubs(requestParameters: HubsApiGetGlobalHubsRequest = {}, axiosOptions?: AxiosRequestConfig) { + return HubsApiFp(this.configuration).getGlobalHubs(requestParameters.count, requestParameters.onlyTransient, axiosOptions).then((request) => request(this.axios, this.basePath)); + } + + /** + * This endpoint will return a list of library specific hubs + * @summary Get library specific hubs + * @param {HubsApiGetLibraryHubsRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof HubsApi + */ + public getLibraryHubs(requestParameters: HubsApiGetLibraryHubsRequest, axiosOptions?: AxiosRequestConfig) { + return HubsApiFp(this.configuration).getLibraryHubs(requestParameters.sectionId, requestParameters.count, requestParameters.onlyTransient, axiosOptions).then((request) => request(this.axios, this.basePath)); + } +} + + +/** + * LibraryApi - axios parameter creator + * @export + */ +export const LibraryApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * This endpoint will return a list of all library items filtered by the filter and type provided + * @summary Get All Library Items * @param {any} sectionId the Id of the library to query - * @param {any} category the category to retrieve from the library * @param {any} [type] item type * @param {any} [filter] the filter parameter * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ - getLibraryItems: async (sectionId: any, category: any, type?: any, filter?: any, axiosOptions: AxiosRequestConfig = {}): Promise => { + getAllLibraryItems: async (sectionId: any, type?: any, filter?: any, axiosOptions: AxiosRequestConfig = {}): Promise => { // verify required parameter 'sectionId' is not null or undefined - assertParamExists('getLibraryItems', 'sectionId', sectionId) - // verify required parameter 'category' is not null or undefined - assertParamExists('getLibraryItems', 'category', category) - const localVarPath = `/library/sections/{sectionId}/{category}` - .replace(`{${"sectionId"}}`, encodeURIComponent(String(sectionId))) - .replace(`{${"category"}}`, encodeURIComponent(String(category))); + assertParamExists('getAllLibraryItems', 'sectionId', sectionId) + const localVarPath = `/library/sections/{sectionId}/all` + .replace(`{${"sectionId"}}`, encodeURIComponent(String(sectionId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -978,6 +1686,249 @@ export const LibraryApiAxiosParamCreator = function (configuration?: Configurati + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + /** + * Represents a \"Common\" item. It contains only the common attributes of the items selected by the provided filter + * @summary Get Common Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} type item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getCommonLibraryItems: async (sectionId: any, type: any, filter?: any, axiosOptions: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'sectionId' is not null or undefined + assertParamExists('getCommonLibraryItems', 'sectionId', sectionId) + // verify required parameter 'type' is not null or undefined + assertParamExists('getCommonLibraryItems', 'type', type) + const localVarPath = `/library/sections/{sectionId}/common` + .replace(`{${"sectionId"}}`, encodeURIComponent(String(sectionId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + if (type !== undefined) { + localVarQueryParameter['type'] = type; + } + + if (filter !== undefined) { + localVarQueryParameter['filter'] = filter; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + /** + * This endpoint will return a list of the latest library items filtered by the filter and type provided + * @summary Get Latest Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} type item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getLatestLibraryItems: async (sectionId: any, type: any, filter?: any, axiosOptions: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'sectionId' is not null or undefined + assertParamExists('getLatestLibraryItems', 'sectionId', sectionId) + // verify required parameter 'type' is not null or undefined + assertParamExists('getLatestLibraryItems', 'type', type) + const localVarPath = `/library/sections/{sectionId}/latest` + .replace(`{${"sectionId"}}`, encodeURIComponent(String(sectionId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + if (type !== undefined) { + localVarQueryParameter['type'] = type; + } + + if (filter !== undefined) { + localVarQueryParameter['filter'] = filter; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + /** + * A library section (commonly referred to as just a library) is a collection of media. Libraries are typed, and depending on their type provide either a flat or a hierarchical view of the media. For example, a music library has an artist > albums > tracks structure, whereas a movie library is flat. Libraries have features beyond just being a collection of media; for starters, they include information about supported types, filters and sorts. \\This allows a client to provide a rich interface around the media (e.g. allow sorting movies by release year). + * @summary Get All Libraries + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getLibraries: async (axiosOptions: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/library/sections`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + /** + * Returns details for the library. This can be thought of as an interstitial endpoint because it contains information about the library, rather than content itself. These details are: - A list of `Directory` objects: These used to be used by clients to build a menuing system. There are four flavors of directory found here: - Primary: (e.g. all, On Deck) These are still used in some clients to provide \"shortcuts\" to subsets of media. However, with the exception of On Deck, all of them can be created by media queries, and the desire is to allow these to be customized by users. - Secondary: These are marked with `secondary=\"1\"` and were used by old clients to provide nested menus allowing for primative (but structured) navigation. - Special: There is a By Folder entry which allows browsing the media by the underlying filesystem structure, and there\'s a completely obsolete entry marked `search=\"1\"` which used to be used to allow clients to build search dialogs on the fly. - A list of `Type` objects: These represent the types of things found in this library, and for each one, a list of `Filter` and `Sort` objects. These can be used to build rich controls around a grid of media to allow filtering and organizing. Note that these filters and sorts are optional, and without them, the client won\'t render any filtering controls. The `Type` object contains: - `key`: This provides the root endpoint returning the actual media list for the type. - `type`: This is the metadata type for the type (if a standard Plex type). - `title`: The title for for the content of this type (e.g. \"Movies\"). - Each `Filter` object contains a description of the filter. Note that it is not an exhaustive list of the full media query language, but an inportant subset useful for top-level API. - `filter`: This represents the filter name used for the filter, which can be used to construct complex media queries with. - `filterType`: This is either `string`, `integer`, or `boolean`, and describes the type of values used for the filter. - `key`: This provides the endpoint where the possible range of values for the filter can be retrieved (e.g. for a \"Genre\" filter, it returns a list of all the genres in the library). This will include a `type` argument that matches the metadata type of the Type element. - `title`: The title for the filter. - Each `Sort` object contains a description of the sort field. - `defaultDirection`: Can be either `asc` or `desc`, and specifies the default direction for the sort field (e.g. titles default to alphabetically ascending). - `descKey` and `key`: Contains the parameters passed to the `sort=...` media query for each direction of the sort. - `title`: The title of the field. + * @summary Get Library Details + * @param {any} sectionId the Id of the library to query + * @param {any} [includeDetails] Whether or not to include details for a section (types, filters, and sorts). Only exists for backwards compatibility, media providers other than the server libraries have it on always. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getLibraryDetails: async (sectionId: any, includeDetails?: any, axiosOptions: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'sectionId' is not null or undefined + assertParamExists('getLibraryDetails', 'sectionId', sectionId) + const localVarPath = `/library/sections/{sectionId}` + .replace(`{${"sectionId"}}`, encodeURIComponent(String(sectionId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + if (includeDetails !== undefined) { + localVarQueryParameter['includeDetails'] = includeDetails; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + /** + * This endpoint will return the on deck content. + * @summary Get On Deck + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getOnDeck: async (axiosOptions: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/library/onDeck`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + /** + * This endpoint Refreshes the library. + * @summary Refresh Library + * @param {any} sectionId the Id of the library to refresh + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + refreshLibrary: async (sectionId: any, axiosOptions: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'sectionId' is not null or undefined + assertParamExists('refreshLibrary', 'sectionId', sectionId) + const localVarPath = `/library/sections/{sectionId}/refresh` + .replace(`{${"sectionId"}}`, encodeURIComponent(String(sectionId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; @@ -998,7 +1949,46 @@ export const LibraryApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = LibraryApiAxiosParamCreator(configuration) return { /** - * This endpoint will return a list of libraries + * This endpoint will return a list of all library items filtered by the filter and type provided + * @summary Get All Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} [type] item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async getAllLibraryItems(sectionId: any, type?: any, filter?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getAllLibraryItems(sectionId, type, filter, axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Represents a \"Common\" item. It contains only the common attributes of the items selected by the provided filter + * @summary Get Common Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} type item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async getCommonLibraryItems(sectionId: any, type: any, filter?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getCommonLibraryItems(sectionId, type, filter, axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * This endpoint will return a list of the latest library items filtered by the filter and type provided + * @summary Get Latest Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} type item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async getLatestLibraryItems(sectionId: any, type: any, filter?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getLatestLibraryItems(sectionId, type, filter, axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * A library section (commonly referred to as just a library) is a collection of media. Libraries are typed, and depending on their type provide either a flat or a hierarchical view of the media. For example, a music library has an artist > albums > tracks structure, whereas a movie library is flat. Libraries have features beyond just being a collection of media; for starters, they include information about supported types, filters and sorts. \\This allows a client to provide a rich interface around the media (e.g. allow sorting movies by release year). * @summary Get All Libraries * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} @@ -1008,17 +1998,36 @@ export const LibraryApiFp = function(configuration?: Configuration) { return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** - * This endpoint will return a list of library items filtered by the filter and type provided - * @summary Get Library Items + * Returns details for the library. This can be thought of as an interstitial endpoint because it contains information about the library, rather than content itself. These details are: - A list of `Directory` objects: These used to be used by clients to build a menuing system. There are four flavors of directory found here: - Primary: (e.g. all, On Deck) These are still used in some clients to provide \"shortcuts\" to subsets of media. However, with the exception of On Deck, all of them can be created by media queries, and the desire is to allow these to be customized by users. - Secondary: These are marked with `secondary=\"1\"` and were used by old clients to provide nested menus allowing for primative (but structured) navigation. - Special: There is a By Folder entry which allows browsing the media by the underlying filesystem structure, and there\'s a completely obsolete entry marked `search=\"1\"` which used to be used to allow clients to build search dialogs on the fly. - A list of `Type` objects: These represent the types of things found in this library, and for each one, a list of `Filter` and `Sort` objects. These can be used to build rich controls around a grid of media to allow filtering and organizing. Note that these filters and sorts are optional, and without them, the client won\'t render any filtering controls. The `Type` object contains: - `key`: This provides the root endpoint returning the actual media list for the type. - `type`: This is the metadata type for the type (if a standard Plex type). - `title`: The title for for the content of this type (e.g. \"Movies\"). - Each `Filter` object contains a description of the filter. Note that it is not an exhaustive list of the full media query language, but an inportant subset useful for top-level API. - `filter`: This represents the filter name used for the filter, which can be used to construct complex media queries with. - `filterType`: This is either `string`, `integer`, or `boolean`, and describes the type of values used for the filter. - `key`: This provides the endpoint where the possible range of values for the filter can be retrieved (e.g. for a \"Genre\" filter, it returns a list of all the genres in the library). This will include a `type` argument that matches the metadata type of the Type element. - `title`: The title for the filter. - Each `Sort` object contains a description of the sort field. - `defaultDirection`: Can be either `asc` or `desc`, and specifies the default direction for the sort field (e.g. titles default to alphabetically ascending). - `descKey` and `key`: Contains the parameters passed to the `sort=...` media query for each direction of the sort. - `title`: The title of the field. + * @summary Get Library Details * @param {any} sectionId the Id of the library to query - * @param {any} category the category to retrieve from the library - * @param {any} [type] item type - * @param {any} [filter] the filter parameter + * @param {any} [includeDetails] Whether or not to include details for a section (types, filters, and sorts). Only exists for backwards compatibility, media providers other than the server libraries have it on always. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ - async getLibraryItems(sectionId: any, category: any, type?: any, filter?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getLibraryItems(sectionId, category, type, filter, axiosOptions); + async getLibraryDetails(sectionId: any, includeDetails?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getLibraryDetails(sectionId, includeDetails, axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * This endpoint will return the on deck content. + * @summary Get On Deck + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async getOnDeck(axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getOnDeck(axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * This endpoint Refreshes the library. + * @summary Refresh Library + * @param {any} sectionId the Id of the library to refresh + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async refreshLibrary(sectionId: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.refreshLibrary(sectionId, axiosOptions); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } @@ -1032,7 +2041,43 @@ export const LibraryApiFactory = function (configuration?: Configuration, basePa const localVarFp = LibraryApiFp(configuration) return { /** - * This endpoint will return a list of libraries + * This endpoint will return a list of all library items filtered by the filter and type provided + * @summary Get All Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} [type] item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAllLibraryItems(sectionId: any, type?: any, filter?: any, axiosOptions?: any): AxiosPromise { + return localVarFp.getAllLibraryItems(sectionId, type, filter, axiosOptions).then((request) => request(axios, basePath)); + }, + /** + * Represents a \"Common\" item. It contains only the common attributes of the items selected by the provided filter + * @summary Get Common Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} type item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getCommonLibraryItems(sectionId: any, type: any, filter?: any, axiosOptions?: any): AxiosPromise { + return localVarFp.getCommonLibraryItems(sectionId, type, filter, axiosOptions).then((request) => request(axios, basePath)); + }, + /** + * This endpoint will return a list of the latest library items filtered by the filter and type provided + * @summary Get Latest Library Items + * @param {any} sectionId the Id of the library to query + * @param {any} type item type + * @param {any} [filter] the filter parameter + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getLatestLibraryItems(sectionId: any, type: any, filter?: any, axiosOptions?: any): AxiosPromise { + return localVarFp.getLatestLibraryItems(sectionId, type, filter, axiosOptions).then((request) => request(axios, basePath)); + }, + /** + * A library section (commonly referred to as just a library) is a collection of media. Libraries are typed, and depending on their type provide either a flat or a hierarchical view of the media. For example, a music library has an artist > albums > tracks structure, whereas a movie library is flat. Libraries have features beyond just being a collection of media; for starters, they include information about supported types, filters and sorts. \\This allows a client to provide a rich interface around the media (e.g. allow sorting movies by release year). * @summary Get All Libraries * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} @@ -1041,56 +2086,157 @@ export const LibraryApiFactory = function (configuration?: Configuration, basePa return localVarFp.getLibraries(axiosOptions).then((request) => request(axios, basePath)); }, /** - * This endpoint will return a list of library items filtered by the filter and type provided - * @summary Get Library Items + * Returns details for the library. This can be thought of as an interstitial endpoint because it contains information about the library, rather than content itself. These details are: - A list of `Directory` objects: These used to be used by clients to build a menuing system. There are four flavors of directory found here: - Primary: (e.g. all, On Deck) These are still used in some clients to provide \"shortcuts\" to subsets of media. However, with the exception of On Deck, all of them can be created by media queries, and the desire is to allow these to be customized by users. - Secondary: These are marked with `secondary=\"1\"` and were used by old clients to provide nested menus allowing for primative (but structured) navigation. - Special: There is a By Folder entry which allows browsing the media by the underlying filesystem structure, and there\'s a completely obsolete entry marked `search=\"1\"` which used to be used to allow clients to build search dialogs on the fly. - A list of `Type` objects: These represent the types of things found in this library, and for each one, a list of `Filter` and `Sort` objects. These can be used to build rich controls around a grid of media to allow filtering and organizing. Note that these filters and sorts are optional, and without them, the client won\'t render any filtering controls. The `Type` object contains: - `key`: This provides the root endpoint returning the actual media list for the type. - `type`: This is the metadata type for the type (if a standard Plex type). - `title`: The title for for the content of this type (e.g. \"Movies\"). - Each `Filter` object contains a description of the filter. Note that it is not an exhaustive list of the full media query language, but an inportant subset useful for top-level API. - `filter`: This represents the filter name used for the filter, which can be used to construct complex media queries with. - `filterType`: This is either `string`, `integer`, or `boolean`, and describes the type of values used for the filter. - `key`: This provides the endpoint where the possible range of values for the filter can be retrieved (e.g. for a \"Genre\" filter, it returns a list of all the genres in the library). This will include a `type` argument that matches the metadata type of the Type element. - `title`: The title for the filter. - Each `Sort` object contains a description of the sort field. - `defaultDirection`: Can be either `asc` or `desc`, and specifies the default direction for the sort field (e.g. titles default to alphabetically ascending). - `descKey` and `key`: Contains the parameters passed to the `sort=...` media query for each direction of the sort. - `title`: The title of the field. + * @summary Get Library Details * @param {any} sectionId the Id of the library to query - * @param {any} category the category to retrieve from the library - * @param {any} [type] item type - * @param {any} [filter] the filter parameter + * @param {any} [includeDetails] Whether or not to include details for a section (types, filters, and sorts). Only exists for backwards compatibility, media providers other than the server libraries have it on always. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ - getLibraryItems(sectionId: any, category: any, type?: any, filter?: any, axiosOptions?: any): AxiosPromise { - return localVarFp.getLibraryItems(sectionId, category, type, filter, axiosOptions).then((request) => request(axios, basePath)); + getLibraryDetails(sectionId: any, includeDetails?: any, axiosOptions?: any): AxiosPromise { + return localVarFp.getLibraryDetails(sectionId, includeDetails, axiosOptions).then((request) => request(axios, basePath)); + }, + /** + * This endpoint will return the on deck content. + * @summary Get On Deck + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getOnDeck(axiosOptions?: any): AxiosPromise { + return localVarFp.getOnDeck(axiosOptions).then((request) => request(axios, basePath)); + }, + /** + * This endpoint Refreshes the library. + * @summary Refresh Library + * @param {any} sectionId the Id of the library to refresh + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + refreshLibrary(sectionId: any, axiosOptions?: any): AxiosPromise { + return localVarFp.refreshLibrary(sectionId, axiosOptions).then((request) => request(axios, basePath)); }, }; }; /** - * Request parameters for getLibraryItems operation in LibraryApi. + * Request parameters for getAllLibraryItems operation in LibraryApi. * @export - * @interface LibraryApiGetLibraryItemsRequest + * @interface LibraryApiGetAllLibraryItemsRequest */ -export interface LibraryApiGetLibraryItemsRequest { +export interface LibraryApiGetAllLibraryItemsRequest { /** * the Id of the library to query * @type {any} - * @memberof LibraryApiGetLibraryItems + * @memberof LibraryApiGetAllLibraryItems */ readonly sectionId: any - /** - * the category to retrieve from the library - * @type {any} - * @memberof LibraryApiGetLibraryItems - */ - readonly category: any - /** * item type * @type {any} - * @memberof LibraryApiGetLibraryItems + * @memberof LibraryApiGetAllLibraryItems */ readonly type?: any /** * the filter parameter * @type {any} - * @memberof LibraryApiGetLibraryItems + * @memberof LibraryApiGetAllLibraryItems */ readonly filter?: any } +/** + * Request parameters for getCommonLibraryItems operation in LibraryApi. + * @export + * @interface LibraryApiGetCommonLibraryItemsRequest + */ +export interface LibraryApiGetCommonLibraryItemsRequest { + /** + * the Id of the library to query + * @type {any} + * @memberof LibraryApiGetCommonLibraryItems + */ + readonly sectionId: any + + /** + * item type + * @type {any} + * @memberof LibraryApiGetCommonLibraryItems + */ + readonly type: any + + /** + * the filter parameter + * @type {any} + * @memberof LibraryApiGetCommonLibraryItems + */ + readonly filter?: any +} + +/** + * Request parameters for getLatestLibraryItems operation in LibraryApi. + * @export + * @interface LibraryApiGetLatestLibraryItemsRequest + */ +export interface LibraryApiGetLatestLibraryItemsRequest { + /** + * the Id of the library to query + * @type {any} + * @memberof LibraryApiGetLatestLibraryItems + */ + readonly sectionId: any + + /** + * item type + * @type {any} + * @memberof LibraryApiGetLatestLibraryItems + */ + readonly type: any + + /** + * the filter parameter + * @type {any} + * @memberof LibraryApiGetLatestLibraryItems + */ + readonly filter?: any +} + +/** + * Request parameters for getLibraryDetails operation in LibraryApi. + * @export + * @interface LibraryApiGetLibraryDetailsRequest + */ +export interface LibraryApiGetLibraryDetailsRequest { + /** + * the Id of the library to query + * @type {any} + * @memberof LibraryApiGetLibraryDetails + */ + readonly sectionId: any + + /** + * Whether or not to include details for a section (types, filters, and sorts). Only exists for backwards compatibility, media providers other than the server libraries have it on always. + * @type {any} + * @memberof LibraryApiGetLibraryDetails + */ + readonly includeDetails?: any +} + +/** + * Request parameters for refreshLibrary operation in LibraryApi. + * @export + * @interface LibraryApiRefreshLibraryRequest + */ +export interface LibraryApiRefreshLibraryRequest { + /** + * the Id of the library to refresh + * @type {any} + * @memberof LibraryApiRefreshLibrary + */ + readonly sectionId: any +} + /** * LibraryApi - object-oriented interface * @export @@ -1099,7 +2245,43 @@ export interface LibraryApiGetLibraryItemsRequest { */ export class LibraryApi extends BaseAPI { /** - * This endpoint will return a list of libraries + * This endpoint will return a list of all library items filtered by the filter and type provided + * @summary Get All Library Items + * @param {LibraryApiGetAllLibraryItemsRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof LibraryApi + */ + public getAllLibraryItems(requestParameters: LibraryApiGetAllLibraryItemsRequest, axiosOptions?: AxiosRequestConfig) { + return LibraryApiFp(this.configuration).getAllLibraryItems(requestParameters.sectionId, requestParameters.type, requestParameters.filter, axiosOptions).then((request) => request(this.axios, this.basePath)); + } + + /** + * Represents a \"Common\" item. It contains only the common attributes of the items selected by the provided filter + * @summary Get Common Library Items + * @param {LibraryApiGetCommonLibraryItemsRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof LibraryApi + */ + public getCommonLibraryItems(requestParameters: LibraryApiGetCommonLibraryItemsRequest, axiosOptions?: AxiosRequestConfig) { + return LibraryApiFp(this.configuration).getCommonLibraryItems(requestParameters.sectionId, requestParameters.type, requestParameters.filter, axiosOptions).then((request) => request(this.axios, this.basePath)); + } + + /** + * This endpoint will return a list of the latest library items filtered by the filter and type provided + * @summary Get Latest Library Items + * @param {LibraryApiGetLatestLibraryItemsRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof LibraryApi + */ + public getLatestLibraryItems(requestParameters: LibraryApiGetLatestLibraryItemsRequest, axiosOptions?: AxiosRequestConfig) { + return LibraryApiFp(this.configuration).getLatestLibraryItems(requestParameters.sectionId, requestParameters.type, requestParameters.filter, axiosOptions).then((request) => request(this.axios, this.basePath)); + } + + /** + * A library section (commonly referred to as just a library) is a collection of media. Libraries are typed, and depending on their type provide either a flat or a hierarchical view of the media. For example, a music library has an artist > albums > tracks structure, whereas a movie library is flat. Libraries have features beyond just being a collection of media; for starters, they include information about supported types, filters and sorts. \\This allows a client to provide a rich interface around the media (e.g. allow sorting movies by release year). * @summary Get All Libraries * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} @@ -1110,15 +2292,38 @@ export class LibraryApi extends BaseAPI { } /** - * This endpoint will return a list of library items filtered by the filter and type provided - * @summary Get Library Items - * @param {LibraryApiGetLibraryItemsRequest} requestParameters Request parameters. + * Returns details for the library. This can be thought of as an interstitial endpoint because it contains information about the library, rather than content itself. These details are: - A list of `Directory` objects: These used to be used by clients to build a menuing system. There are four flavors of directory found here: - Primary: (e.g. all, On Deck) These are still used in some clients to provide \"shortcuts\" to subsets of media. However, with the exception of On Deck, all of them can be created by media queries, and the desire is to allow these to be customized by users. - Secondary: These are marked with `secondary=\"1\"` and were used by old clients to provide nested menus allowing for primative (but structured) navigation. - Special: There is a By Folder entry which allows browsing the media by the underlying filesystem structure, and there\'s a completely obsolete entry marked `search=\"1\"` which used to be used to allow clients to build search dialogs on the fly. - A list of `Type` objects: These represent the types of things found in this library, and for each one, a list of `Filter` and `Sort` objects. These can be used to build rich controls around a grid of media to allow filtering and organizing. Note that these filters and sorts are optional, and without them, the client won\'t render any filtering controls. The `Type` object contains: - `key`: This provides the root endpoint returning the actual media list for the type. - `type`: This is the metadata type for the type (if a standard Plex type). - `title`: The title for for the content of this type (e.g. \"Movies\"). - Each `Filter` object contains a description of the filter. Note that it is not an exhaustive list of the full media query language, but an inportant subset useful for top-level API. - `filter`: This represents the filter name used for the filter, which can be used to construct complex media queries with. - `filterType`: This is either `string`, `integer`, or `boolean`, and describes the type of values used for the filter. - `key`: This provides the endpoint where the possible range of values for the filter can be retrieved (e.g. for a \"Genre\" filter, it returns a list of all the genres in the library). This will include a `type` argument that matches the metadata type of the Type element. - `title`: The title for the filter. - Each `Sort` object contains a description of the sort field. - `defaultDirection`: Can be either `asc` or `desc`, and specifies the default direction for the sort field (e.g. titles default to alphabetically ascending). - `descKey` and `key`: Contains the parameters passed to the `sort=...` media query for each direction of the sort. - `title`: The title of the field. + * @summary Get Library Details + * @param {LibraryApiGetLibraryDetailsRequest} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof LibraryApi */ - public getLibraryItems(requestParameters: LibraryApiGetLibraryItemsRequest, axiosOptions?: AxiosRequestConfig) { - return LibraryApiFp(this.configuration).getLibraryItems(requestParameters.sectionId, requestParameters.category, requestParameters.type, requestParameters.filter, axiosOptions).then((request) => request(this.axios, this.basePath)); + public getLibraryDetails(requestParameters: LibraryApiGetLibraryDetailsRequest, axiosOptions?: AxiosRequestConfig) { + return LibraryApiFp(this.configuration).getLibraryDetails(requestParameters.sectionId, requestParameters.includeDetails, axiosOptions).then((request) => request(this.axios, this.basePath)); + } + + /** + * This endpoint will return the on deck content. + * @summary Get On Deck + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof LibraryApi + */ + public getOnDeck(axiosOptions?: AxiosRequestConfig) { + return LibraryApiFp(this.configuration).getOnDeck(axiosOptions).then((request) => request(this.axios, this.basePath)); + } + + /** + * This endpoint Refreshes the library. + * @summary Refresh Library + * @param {LibraryApiRefreshLibraryRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof LibraryApi + */ + public refreshLibrary(requestParameters: LibraryApiRefreshLibraryRequest, axiosOptions?: AxiosRequestConfig) { + return LibraryApiFp(this.configuration).refreshLibrary(requestParameters.sectionId, axiosOptions).then((request) => request(this.axios, this.basePath)); } } @@ -1406,6 +2611,1213 @@ export class LogApi extends BaseAPI { } +/** + * PlaylistsApi - axios parameter creator + * @export + */ +export const PlaylistsApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Adds a generator to a playlist, same parameters as the POST above. With a dumb playlist, this adds the specified items to the playlist. With a smart playlist, passing a new `uri` parameter replaces the rules for the playlist. Returns the playlist. + * @summary Adding to a Playlist + * @param {any} playlistID the ID of the playlist + * @param {any} uri the content URI for the playlist + * @param {any} playQueueID the play queue to add to a playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + addPlaylistContent: async (playlistID: any, uri: any, playQueueID: any, axiosOptions: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'playlistID' is not null or undefined + assertParamExists('addPlaylistContent', 'playlistID', playlistID) + // verify required parameter 'uri' is not null or undefined + assertParamExists('addPlaylistContent', 'uri', uri) + // verify required parameter 'playQueueID' is not null or undefined + assertParamExists('addPlaylistContent', 'playQueueID', playQueueID) + const localVarPath = `/playlists/{playlistID}/items` + .replace(`{${"playlistID"}}`, encodeURIComponent(String(playlistID))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + if (uri !== undefined) { + localVarQueryParameter['uri'] = uri; + } + + if (playQueueID !== undefined) { + localVarQueryParameter['playQueueID'] = playQueueID; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + /** + * Clears a playlist, only works with dumb playlists. Returns the playlist. + * @summary Delete Playlist Contents + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + clearPlaylistContent: async (playlistID: any, axiosOptions: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'playlistID' is not null or undefined + assertParamExists('clearPlaylistContent', 'playlistID', playlistID) + const localVarPath = `/playlists/{playlistID}/items` + .replace(`{${"playlistID"}}`, encodeURIComponent(String(playlistID))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + /** + * Create a new playlist. By default the playlist is blank. To create a playlist along with a first item, pass: - `uri` - The content URI for what we\'re playing (e.g. `library://...`). - `playQueueID` - To create a playlist from an existing play queue. + * @summary Create a Playlist + * @param {any} title name of the playlist + * @param {any} type type of playlist to create + * @param {any} smart whether the playlist is smart or not + * @param {any} [uri] the content URI for the playlist + * @param {any} [playQueueID] the play queue to copy to a playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + createAPlaylist: async (title: any, type: any, smart: any, uri?: any, playQueueID?: any, axiosOptions: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'title' is not null or undefined + assertParamExists('createAPlaylist', 'title', title) + // verify required parameter 'type' is not null or undefined + assertParamExists('createAPlaylist', 'type', type) + // verify required parameter 'smart' is not null or undefined + assertParamExists('createAPlaylist', 'smart', smart) + const localVarPath = `/playlists`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + if (title !== undefined) { + localVarQueryParameter['title'] = title; + } + + if (type !== undefined) { + localVarQueryParameter['type'] = type; + } + + if (smart !== undefined) { + localVarQueryParameter['smart'] = smart; + } + + if (uri !== undefined) { + localVarQueryParameter['uri'] = uri; + } + + if (playQueueID !== undefined) { + localVarQueryParameter['playQueueID'] = playQueueID; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + /** + * This endpoint will delete a playlist + * @summary Deletes a Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + deletePlaylist: async (playlistID: any, axiosOptions: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'playlistID' is not null or undefined + assertParamExists('deletePlaylist', 'playlistID', playlistID) + const localVarPath = `/playlists/{playlistID}` + .replace(`{${"playlistID"}}`, encodeURIComponent(String(playlistID))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + /** + * + * @summary Get All Playlists + * @param {any} [playlistType] limit to a type of playlist. + * @param {any} [smart] type of playlists to return (default is all). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAllPlaylists: async (playlistType?: any, smart?: any, axiosOptions: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/playlists/all`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + if (playlistType !== undefined) { + localVarQueryParameter['playlistType'] = playlistType; + } + + if (smart !== undefined) { + localVarQueryParameter['smart'] = smart; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + /** + * Gets detailed metadata for a playlist. A playlist for many purposes (rating, editing metadata, tagging), can be treated like a regular metadata item: Smart playlist details contain the `content` attribute. This is the content URI for the generator. This can then be parsed by a client to provide smart playlist editing. + * @summary Retrieve Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getPlaylist: async (playlistID: any, axiosOptions: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'playlistID' is not null or undefined + assertParamExists('getPlaylist', 'playlistID', playlistID) + const localVarPath = `/playlists/{playlistID}` + .replace(`{${"playlistID"}}`, encodeURIComponent(String(playlistID))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + /** + * Gets the contents of a playlist. Should be paged by clients via standard mechanisms. By default leaves are returned (e.g. episodes, movies). In order to return other types you can use the `type` parameter. For example, you could use this to display a list of recently added albums vis a smart playlist. Note that for dumb playlists, items have a `playlistItemID` attribute which is used for deleting or moving items. + * @summary Retrieve Playlist Contents + * @param {any} playlistID the ID of the playlist + * @param {any} type the metadata type of the item to return + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getPlaylistContent: async (playlistID: any, type: any, axiosOptions: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'playlistID' is not null or undefined + assertParamExists('getPlaylistContent', 'playlistID', playlistID) + // verify required parameter 'type' is not null or undefined + assertParamExists('getPlaylistContent', 'type', type) + const localVarPath = `/playlists/{playlistID}/items` + .replace(`{${"playlistID"}}`, encodeURIComponent(String(playlistID))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + if (type !== undefined) { + localVarQueryParameter['type'] = type; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + /** + * From PMS version 1.9.1 clients can also edit playlist metadata using this endpoint as they would via `PUT /library/metadata/{playlistID}` + * @summary Update a Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + updatePlaylist: async (playlistID: any, axiosOptions: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'playlistID' is not null or undefined + assertParamExists('updatePlaylist', 'playlistID', playlistID) + const localVarPath = `/playlists/{playlistID}` + .replace(`{${"playlistID"}}`, encodeURIComponent(String(playlistID))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PUT', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + /** + * Imports m3u playlists by passing a path on the server to scan for m3u-formatted playlist files, or a path to a single playlist file. + * @summary Upload Playlist + * @param {any} path absolute path to a directory on the server where m3u files are stored, or the absolute path to a playlist file on the server. If the `path` argument is a directory, that path will be scanned for playlist files to be processed. Each file in that directory creates a separate playlist, with a name based on the filename of the file that created it. The GUID of each playlist is based on the filename. If the `path` argument is a file, that file will be used to create a new playlist, with the name based on the filename of the file that created it. The GUID of each playlist is based on the filename. + * @param {any} force force overwriting of duplicate playlists. By default, a playlist file uploaded with the same path will overwrite the existing playlist. The `force` argument is used to disable overwriting. If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + uploadPlaylist: async (path: any, force: any, axiosOptions: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'path' is not null or undefined + assertParamExists('uploadPlaylist', 'path', path) + // verify required parameter 'force' is not null or undefined + assertParamExists('uploadPlaylist', 'force', force) + const localVarPath = `/playlists/upload`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + if (path !== undefined) { + localVarQueryParameter['path'] = path; + } + + if (force !== undefined) { + localVarQueryParameter['force'] = force; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + } +}; + +/** + * PlaylistsApi - functional programming interface + * @export + */ +export const PlaylistsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = PlaylistsApiAxiosParamCreator(configuration) + return { + /** + * Adds a generator to a playlist, same parameters as the POST above. With a dumb playlist, this adds the specified items to the playlist. With a smart playlist, passing a new `uri` parameter replaces the rules for the playlist. Returns the playlist. + * @summary Adding to a Playlist + * @param {any} playlistID the ID of the playlist + * @param {any} uri the content URI for the playlist + * @param {any} playQueueID the play queue to add to a playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async addPlaylistContent(playlistID: any, uri: any, playQueueID: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.addPlaylistContent(playlistID, uri, playQueueID, axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Clears a playlist, only works with dumb playlists. Returns the playlist. + * @summary Delete Playlist Contents + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async clearPlaylistContent(playlistID: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.clearPlaylistContent(playlistID, axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Create a new playlist. By default the playlist is blank. To create a playlist along with a first item, pass: - `uri` - The content URI for what we\'re playing (e.g. `library://...`). - `playQueueID` - To create a playlist from an existing play queue. + * @summary Create a Playlist + * @param {any} title name of the playlist + * @param {any} type type of playlist to create + * @param {any} smart whether the playlist is smart or not + * @param {any} [uri] the content URI for the playlist + * @param {any} [playQueueID] the play queue to copy to a playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async createAPlaylist(title: any, type: any, smart: any, uri?: any, playQueueID?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createAPlaylist(title, type, smart, uri, playQueueID, axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * This endpoint will delete a playlist + * @summary Deletes a Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async deletePlaylist(playlistID: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deletePlaylist(playlistID, axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * + * @summary Get All Playlists + * @param {any} [playlistType] limit to a type of playlist. + * @param {any} [smart] type of playlists to return (default is all). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async getAllPlaylists(playlistType?: any, smart?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getAllPlaylists(playlistType, smart, axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Gets detailed metadata for a playlist. A playlist for many purposes (rating, editing metadata, tagging), can be treated like a regular metadata item: Smart playlist details contain the `content` attribute. This is the content URI for the generator. This can then be parsed by a client to provide smart playlist editing. + * @summary Retrieve Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async getPlaylist(playlistID: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getPlaylist(playlistID, axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Gets the contents of a playlist. Should be paged by clients via standard mechanisms. By default leaves are returned (e.g. episodes, movies). In order to return other types you can use the `type` parameter. For example, you could use this to display a list of recently added albums vis a smart playlist. Note that for dumb playlists, items have a `playlistItemID` attribute which is used for deleting or moving items. + * @summary Retrieve Playlist Contents + * @param {any} playlistID the ID of the playlist + * @param {any} type the metadata type of the item to return + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async getPlaylistContent(playlistID: any, type: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getPlaylistContent(playlistID, type, axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * From PMS version 1.9.1 clients can also edit playlist metadata using this endpoint as they would via `PUT /library/metadata/{playlistID}` + * @summary Update a Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async updatePlaylist(playlistID: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updatePlaylist(playlistID, axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * Imports m3u playlists by passing a path on the server to scan for m3u-formatted playlist files, or a path to a single playlist file. + * @summary Upload Playlist + * @param {any} path absolute path to a directory on the server where m3u files are stored, or the absolute path to a playlist file on the server. If the `path` argument is a directory, that path will be scanned for playlist files to be processed. Each file in that directory creates a separate playlist, with a name based on the filename of the file that created it. The GUID of each playlist is based on the filename. If the `path` argument is a file, that file will be used to create a new playlist, with the name based on the filename of the file that created it. The GUID of each playlist is based on the filename. + * @param {any} force force overwriting of duplicate playlists. By default, a playlist file uploaded with the same path will overwrite the existing playlist. The `force` argument is used to disable overwriting. If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async uploadPlaylist(path: any, force: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.uploadPlaylist(path, force, axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * PlaylistsApi - factory interface + * @export + */ +export const PlaylistsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = PlaylistsApiFp(configuration) + return { + /** + * Adds a generator to a playlist, same parameters as the POST above. With a dumb playlist, this adds the specified items to the playlist. With a smart playlist, passing a new `uri` parameter replaces the rules for the playlist. Returns the playlist. + * @summary Adding to a Playlist + * @param {any} playlistID the ID of the playlist + * @param {any} uri the content URI for the playlist + * @param {any} playQueueID the play queue to add to a playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + addPlaylistContent(playlistID: any, uri: any, playQueueID: any, axiosOptions?: any): AxiosPromise { + return localVarFp.addPlaylistContent(playlistID, uri, playQueueID, axiosOptions).then((request) => request(axios, basePath)); + }, + /** + * Clears a playlist, only works with dumb playlists. Returns the playlist. + * @summary Delete Playlist Contents + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + clearPlaylistContent(playlistID: any, axiosOptions?: any): AxiosPromise { + return localVarFp.clearPlaylistContent(playlistID, axiosOptions).then((request) => request(axios, basePath)); + }, + /** + * Create a new playlist. By default the playlist is blank. To create a playlist along with a first item, pass: - `uri` - The content URI for what we\'re playing (e.g. `library://...`). - `playQueueID` - To create a playlist from an existing play queue. + * @summary Create a Playlist + * @param {any} title name of the playlist + * @param {any} type type of playlist to create + * @param {any} smart whether the playlist is smart or not + * @param {any} [uri] the content URI for the playlist + * @param {any} [playQueueID] the play queue to copy to a playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + createAPlaylist(title: any, type: any, smart: any, uri?: any, playQueueID?: any, axiosOptions?: any): AxiosPromise { + return localVarFp.createAPlaylist(title, type, smart, uri, playQueueID, axiosOptions).then((request) => request(axios, basePath)); + }, + /** + * This endpoint will delete a playlist + * @summary Deletes a Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + deletePlaylist(playlistID: any, axiosOptions?: any): AxiosPromise { + return localVarFp.deletePlaylist(playlistID, axiosOptions).then((request) => request(axios, basePath)); + }, + /** + * + * @summary Get All Playlists + * @param {any} [playlistType] limit to a type of playlist. + * @param {any} [smart] type of playlists to return (default is all). + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getAllPlaylists(playlistType?: any, smart?: any, axiosOptions?: any): AxiosPromise { + return localVarFp.getAllPlaylists(playlistType, smart, axiosOptions).then((request) => request(axios, basePath)); + }, + /** + * Gets detailed metadata for a playlist. A playlist for many purposes (rating, editing metadata, tagging), can be treated like a regular metadata item: Smart playlist details contain the `content` attribute. This is the content URI for the generator. This can then be parsed by a client to provide smart playlist editing. + * @summary Retrieve Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getPlaylist(playlistID: any, axiosOptions?: any): AxiosPromise { + return localVarFp.getPlaylist(playlistID, axiosOptions).then((request) => request(axios, basePath)); + }, + /** + * Gets the contents of a playlist. Should be paged by clients via standard mechanisms. By default leaves are returned (e.g. episodes, movies). In order to return other types you can use the `type` parameter. For example, you could use this to display a list of recently added albums vis a smart playlist. Note that for dumb playlists, items have a `playlistItemID` attribute which is used for deleting or moving items. + * @summary Retrieve Playlist Contents + * @param {any} playlistID the ID of the playlist + * @param {any} type the metadata type of the item to return + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getPlaylistContent(playlistID: any, type: any, axiosOptions?: any): AxiosPromise { + return localVarFp.getPlaylistContent(playlistID, type, axiosOptions).then((request) => request(axios, basePath)); + }, + /** + * From PMS version 1.9.1 clients can also edit playlist metadata using this endpoint as they would via `PUT /library/metadata/{playlistID}` + * @summary Update a Playlist + * @param {any} playlistID the ID of the playlist + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + updatePlaylist(playlistID: any, axiosOptions?: any): AxiosPromise { + return localVarFp.updatePlaylist(playlistID, axiosOptions).then((request) => request(axios, basePath)); + }, + /** + * Imports m3u playlists by passing a path on the server to scan for m3u-formatted playlist files, or a path to a single playlist file. + * @summary Upload Playlist + * @param {any} path absolute path to a directory on the server where m3u files are stored, or the absolute path to a playlist file on the server. If the `path` argument is a directory, that path will be scanned for playlist files to be processed. Each file in that directory creates a separate playlist, with a name based on the filename of the file that created it. The GUID of each playlist is based on the filename. If the `path` argument is a file, that file will be used to create a new playlist, with the name based on the filename of the file that created it. The GUID of each playlist is based on the filename. + * @param {any} force force overwriting of duplicate playlists. By default, a playlist file uploaded with the same path will overwrite the existing playlist. The `force` argument is used to disable overwriting. If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + uploadPlaylist(path: any, force: any, axiosOptions?: any): AxiosPromise { + return localVarFp.uploadPlaylist(path, force, axiosOptions).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * Request parameters for addPlaylistContent operation in PlaylistsApi. + * @export + * @interface PlaylistsApiAddPlaylistContentRequest + */ +export interface PlaylistsApiAddPlaylistContentRequest { + /** + * the ID of the playlist + * @type {any} + * @memberof PlaylistsApiAddPlaylistContent + */ + readonly playlistID: any + + /** + * the content URI for the playlist + * @type {any} + * @memberof PlaylistsApiAddPlaylistContent + */ + readonly uri: any + + /** + * the play queue to add to a playlist + * @type {any} + * @memberof PlaylistsApiAddPlaylistContent + */ + readonly playQueueID: any +} + +/** + * Request parameters for clearPlaylistContent operation in PlaylistsApi. + * @export + * @interface PlaylistsApiClearPlaylistContentRequest + */ +export interface PlaylistsApiClearPlaylistContentRequest { + /** + * the ID of the playlist + * @type {any} + * @memberof PlaylistsApiClearPlaylistContent + */ + readonly playlistID: any +} + +/** + * Request parameters for createAPlaylist operation in PlaylistsApi. + * @export + * @interface PlaylistsApiCreateAPlaylistRequest + */ +export interface PlaylistsApiCreateAPlaylistRequest { + /** + * name of the playlist + * @type {any} + * @memberof PlaylistsApiCreateAPlaylist + */ + readonly title: any + + /** + * type of playlist to create + * @type {any} + * @memberof PlaylistsApiCreateAPlaylist + */ + readonly type: any + + /** + * whether the playlist is smart or not + * @type {any} + * @memberof PlaylistsApiCreateAPlaylist + */ + readonly smart: any + + /** + * the content URI for the playlist + * @type {any} + * @memberof PlaylistsApiCreateAPlaylist + */ + readonly uri?: any + + /** + * the play queue to copy to a playlist + * @type {any} + * @memberof PlaylistsApiCreateAPlaylist + */ + readonly playQueueID?: any +} + +/** + * Request parameters for deletePlaylist operation in PlaylistsApi. + * @export + * @interface PlaylistsApiDeletePlaylistRequest + */ +export interface PlaylistsApiDeletePlaylistRequest { + /** + * the ID of the playlist + * @type {any} + * @memberof PlaylistsApiDeletePlaylist + */ + readonly playlistID: any +} + +/** + * Request parameters for getAllPlaylists operation in PlaylistsApi. + * @export + * @interface PlaylistsApiGetAllPlaylistsRequest + */ +export interface PlaylistsApiGetAllPlaylistsRequest { + /** + * limit to a type of playlist. + * @type {any} + * @memberof PlaylistsApiGetAllPlaylists + */ + readonly playlistType?: any + + /** + * type of playlists to return (default is all). + * @type {any} + * @memberof PlaylistsApiGetAllPlaylists + */ + readonly smart?: any +} + +/** + * Request parameters for getPlaylist operation in PlaylistsApi. + * @export + * @interface PlaylistsApiGetPlaylistRequest + */ +export interface PlaylistsApiGetPlaylistRequest { + /** + * the ID of the playlist + * @type {any} + * @memberof PlaylistsApiGetPlaylist + */ + readonly playlistID: any +} + +/** + * Request parameters for getPlaylistContent operation in PlaylistsApi. + * @export + * @interface PlaylistsApiGetPlaylistContentRequest + */ +export interface PlaylistsApiGetPlaylistContentRequest { + /** + * the ID of the playlist + * @type {any} + * @memberof PlaylistsApiGetPlaylistContent + */ + readonly playlistID: any + + /** + * the metadata type of the item to return + * @type {any} + * @memberof PlaylistsApiGetPlaylistContent + */ + readonly type: any +} + +/** + * Request parameters for updatePlaylist operation in PlaylistsApi. + * @export + * @interface PlaylistsApiUpdatePlaylistRequest + */ +export interface PlaylistsApiUpdatePlaylistRequest { + /** + * the ID of the playlist + * @type {any} + * @memberof PlaylistsApiUpdatePlaylist + */ + readonly playlistID: any +} + +/** + * Request parameters for uploadPlaylist operation in PlaylistsApi. + * @export + * @interface PlaylistsApiUploadPlaylistRequest + */ +export interface PlaylistsApiUploadPlaylistRequest { + /** + * absolute path to a directory on the server where m3u files are stored, or the absolute path to a playlist file on the server. If the `path` argument is a directory, that path will be scanned for playlist files to be processed. Each file in that directory creates a separate playlist, with a name based on the filename of the file that created it. The GUID of each playlist is based on the filename. If the `path` argument is a file, that file will be used to create a new playlist, with the name based on the filename of the file that created it. The GUID of each playlist is based on the filename. + * @type {any} + * @memberof PlaylistsApiUploadPlaylist + */ + readonly path: any + + /** + * force overwriting of duplicate playlists. By default, a playlist file uploaded with the same path will overwrite the existing playlist. The `force` argument is used to disable overwriting. If the `force` argument is set to 0, a new playlist will be created suffixed with the date and time that the duplicate was uploaded. + * @type {any} + * @memberof PlaylistsApiUploadPlaylist + */ + readonly force: any +} + +/** + * PlaylistsApi - object-oriented interface + * @export + * @class PlaylistsApi + * @extends {BaseAPI} + */ +export class PlaylistsApi extends BaseAPI { + /** + * Adds a generator to a playlist, same parameters as the POST above. With a dumb playlist, this adds the specified items to the playlist. With a smart playlist, passing a new `uri` parameter replaces the rules for the playlist. Returns the playlist. + * @summary Adding to a Playlist + * @param {PlaylistsApiAddPlaylistContentRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + public addPlaylistContent(requestParameters: PlaylistsApiAddPlaylistContentRequest, axiosOptions?: AxiosRequestConfig) { + return PlaylistsApiFp(this.configuration).addPlaylistContent(requestParameters.playlistID, requestParameters.uri, requestParameters.playQueueID, axiosOptions).then((request) => request(this.axios, this.basePath)); + } + + /** + * Clears a playlist, only works with dumb playlists. Returns the playlist. + * @summary Delete Playlist Contents + * @param {PlaylistsApiClearPlaylistContentRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + public clearPlaylistContent(requestParameters: PlaylistsApiClearPlaylistContentRequest, axiosOptions?: AxiosRequestConfig) { + return PlaylistsApiFp(this.configuration).clearPlaylistContent(requestParameters.playlistID, axiosOptions).then((request) => request(this.axios, this.basePath)); + } + + /** + * Create a new playlist. By default the playlist is blank. To create a playlist along with a first item, pass: - `uri` - The content URI for what we\'re playing (e.g. `library://...`). - `playQueueID` - To create a playlist from an existing play queue. + * @summary Create a Playlist + * @param {PlaylistsApiCreateAPlaylistRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + public createAPlaylist(requestParameters: PlaylistsApiCreateAPlaylistRequest, axiosOptions?: AxiosRequestConfig) { + return PlaylistsApiFp(this.configuration).createAPlaylist(requestParameters.title, requestParameters.type, requestParameters.smart, requestParameters.uri, requestParameters.playQueueID, axiosOptions).then((request) => request(this.axios, this.basePath)); + } + + /** + * This endpoint will delete a playlist + * @summary Deletes a Playlist + * @param {PlaylistsApiDeletePlaylistRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + public deletePlaylist(requestParameters: PlaylistsApiDeletePlaylistRequest, axiosOptions?: AxiosRequestConfig) { + return PlaylistsApiFp(this.configuration).deletePlaylist(requestParameters.playlistID, axiosOptions).then((request) => request(this.axios, this.basePath)); + } + + /** + * + * @summary Get All Playlists + * @param {PlaylistsApiGetAllPlaylistsRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + public getAllPlaylists(requestParameters: PlaylistsApiGetAllPlaylistsRequest = {}, axiosOptions?: AxiosRequestConfig) { + return PlaylistsApiFp(this.configuration).getAllPlaylists(requestParameters.playlistType, requestParameters.smart, axiosOptions).then((request) => request(this.axios, this.basePath)); + } + + /** + * Gets detailed metadata for a playlist. A playlist for many purposes (rating, editing metadata, tagging), can be treated like a regular metadata item: Smart playlist details contain the `content` attribute. This is the content URI for the generator. This can then be parsed by a client to provide smart playlist editing. + * @summary Retrieve Playlist + * @param {PlaylistsApiGetPlaylistRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + public getPlaylist(requestParameters: PlaylistsApiGetPlaylistRequest, axiosOptions?: AxiosRequestConfig) { + return PlaylistsApiFp(this.configuration).getPlaylist(requestParameters.playlistID, axiosOptions).then((request) => request(this.axios, this.basePath)); + } + + /** + * Gets the contents of a playlist. Should be paged by clients via standard mechanisms. By default leaves are returned (e.g. episodes, movies). In order to return other types you can use the `type` parameter. For example, you could use this to display a list of recently added albums vis a smart playlist. Note that for dumb playlists, items have a `playlistItemID` attribute which is used for deleting or moving items. + * @summary Retrieve Playlist Contents + * @param {PlaylistsApiGetPlaylistContentRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + public getPlaylistContent(requestParameters: PlaylistsApiGetPlaylistContentRequest, axiosOptions?: AxiosRequestConfig) { + return PlaylistsApiFp(this.configuration).getPlaylistContent(requestParameters.playlistID, requestParameters.type, axiosOptions).then((request) => request(this.axios, this.basePath)); + } + + /** + * From PMS version 1.9.1 clients can also edit playlist metadata using this endpoint as they would via `PUT /library/metadata/{playlistID}` + * @summary Update a Playlist + * @param {PlaylistsApiUpdatePlaylistRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + public updatePlaylist(requestParameters: PlaylistsApiUpdatePlaylistRequest, axiosOptions?: AxiosRequestConfig) { + return PlaylistsApiFp(this.configuration).updatePlaylist(requestParameters.playlistID, axiosOptions).then((request) => request(this.axios, this.basePath)); + } + + /** + * Imports m3u playlists by passing a path on the server to scan for m3u-formatted playlist files, or a path to a single playlist file. + * @summary Upload Playlist + * @param {PlaylistsApiUploadPlaylistRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof PlaylistsApi + */ + public uploadPlaylist(requestParameters: PlaylistsApiUploadPlaylistRequest, axiosOptions?: AxiosRequestConfig) { + return PlaylistsApiFp(this.configuration).uploadPlaylist(requestParameters.path, requestParameters.force, axiosOptions).then((request) => request(this.axios, this.basePath)); + } +} + + +/** + * SearchApi - axios parameter creator + * @export + */ +export const SearchApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * This endpoint performs a search across all library sections, or a single section, and returns matches as hubs, split up by type. It performs spell checking, looks for partial matches, and orders the hubs based on quality of results. In addition, based on matches, it will return other related matches (e.g. for a genre match, it may return movies in that genre, or for an actor match, movies with that actor). In the response\'s items, the following extra attributes are returned to further describe or disambiguate the result: - `reason`: The reason for the result, if not because of a direct search term match; can be either: - `section`: There are multiple identical results from different sections. - `originalTitle`: There was a search term match from the original title field (sometimes those can be very different or in a foreign language). - ``: If the reason for the result is due to a result in another hub, the source hub identifier is returned. For example, if the search is for \"dylan\" then Bob Dylan may be returned as an artist result, an a few of his albums returned as album results with a reason code of `artist` (the identifier of that particular hub). Or if the search is for \"arnold\", there might be movie results returned with a reason of `actor` - `reasonTitle`: The string associated with the reason code. For a section reason, it\'ll be the section name; For a hub identifier, it\'ll be a string associated with the match (e.g. `Arnold Schwarzenegger` for movies which were returned because the search was for \"arnold\"). - `reasonID`: The ID of the item associated with the reason for the result. This might be a section ID, a tag ID, an artist ID, or a show ID. This request is intended to be very fast, and called as the user types. + * @summary Perform a search + * @param {any} query The query term + * @param {any} [sectionId] This gives context to the search, and can result in re-ordering of search result hubs + * @param {any} [limit] The number of items to return per hub + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + performSearch: async (query: any, sectionId?: any, limit?: any, axiosOptions: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'query' is not null or undefined + assertParamExists('performSearch', 'query', query) + const localVarPath = `/hubs/search`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + if (query !== undefined) { + localVarQueryParameter['query'] = query; + } + + if (sectionId !== undefined) { + localVarQueryParameter['sectionId'] = sectionId; + } + + if (limit !== undefined) { + localVarQueryParameter['limit'] = limit; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + /** + * This endpoint performs a search specifically tailored towards voice or other imprecise input which may work badly with the substring and spell-checking heuristics used by the `/hubs/search` endpoint. It uses a [Levenshtein distance](https://en.wikipedia.org/wiki/Levenshtein_distance) heuristic to search titles, and as such is much slower than the other search endpoint. Whenever possible, clients should limit the search to the appropriate type. Results, as well as their containing per-type hubs, contain a `distance` attribute which can be used to judge result quality. + * @summary Perform a voice search + * @param {any} query The query term + * @param {any} [sectionId] This gives context to the search, and can result in re-ordering of search result hubs + * @param {any} [limit] The number of items to return per hub + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + performVoiceSearch: async (query: any, sectionId?: any, limit?: any, axiosOptions: AxiosRequestConfig = {}): Promise => { + // verify required parameter 'query' is not null or undefined + assertParamExists('performVoiceSearch', 'query', query) + const localVarPath = `/hubs/search/voice`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + if (query !== undefined) { + localVarQueryParameter['query'] = query; + } + + if (sectionId !== undefined) { + localVarQueryParameter['sectionId'] = sectionId; + } + + if (limit !== undefined) { + localVarQueryParameter['limit'] = limit; + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + } +}; + +/** + * SearchApi - functional programming interface + * @export + */ +export const SearchApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = SearchApiAxiosParamCreator(configuration) + return { + /** + * This endpoint performs a search across all library sections, or a single section, and returns matches as hubs, split up by type. It performs spell checking, looks for partial matches, and orders the hubs based on quality of results. In addition, based on matches, it will return other related matches (e.g. for a genre match, it may return movies in that genre, or for an actor match, movies with that actor). In the response\'s items, the following extra attributes are returned to further describe or disambiguate the result: - `reason`: The reason for the result, if not because of a direct search term match; can be either: - `section`: There are multiple identical results from different sections. - `originalTitle`: There was a search term match from the original title field (sometimes those can be very different or in a foreign language). - ``: If the reason for the result is due to a result in another hub, the source hub identifier is returned. For example, if the search is for \"dylan\" then Bob Dylan may be returned as an artist result, an a few of his albums returned as album results with a reason code of `artist` (the identifier of that particular hub). Or if the search is for \"arnold\", there might be movie results returned with a reason of `actor` - `reasonTitle`: The string associated with the reason code. For a section reason, it\'ll be the section name; For a hub identifier, it\'ll be a string associated with the match (e.g. `Arnold Schwarzenegger` for movies which were returned because the search was for \"arnold\"). - `reasonID`: The ID of the item associated with the reason for the result. This might be a section ID, a tag ID, an artist ID, or a show ID. This request is intended to be very fast, and called as the user types. + * @summary Perform a search + * @param {any} query The query term + * @param {any} [sectionId] This gives context to the search, and can result in re-ordering of search result hubs + * @param {any} [limit] The number of items to return per hub + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async performSearch(query: any, sectionId?: any, limit?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.performSearch(query, sectionId, limit, axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * This endpoint performs a search specifically tailored towards voice or other imprecise input which may work badly with the substring and spell-checking heuristics used by the `/hubs/search` endpoint. It uses a [Levenshtein distance](https://en.wikipedia.org/wiki/Levenshtein_distance) heuristic to search titles, and as such is much slower than the other search endpoint. Whenever possible, clients should limit the search to the appropriate type. Results, as well as their containing per-type hubs, contain a `distance` attribute which can be used to judge result quality. + * @summary Perform a voice search + * @param {any} query The query term + * @param {any} [sectionId] This gives context to the search, and can result in re-ordering of search result hubs + * @param {any} [limit] The number of items to return per hub + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async performVoiceSearch(query: any, sectionId?: any, limit?: any, axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.performVoiceSearch(query, sectionId, limit, axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * SearchApi - factory interface + * @export + */ +export const SearchApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = SearchApiFp(configuration) + return { + /** + * This endpoint performs a search across all library sections, or a single section, and returns matches as hubs, split up by type. It performs spell checking, looks for partial matches, and orders the hubs based on quality of results. In addition, based on matches, it will return other related matches (e.g. for a genre match, it may return movies in that genre, or for an actor match, movies with that actor). In the response\'s items, the following extra attributes are returned to further describe or disambiguate the result: - `reason`: The reason for the result, if not because of a direct search term match; can be either: - `section`: There are multiple identical results from different sections. - `originalTitle`: There was a search term match from the original title field (sometimes those can be very different or in a foreign language). - ``: If the reason for the result is due to a result in another hub, the source hub identifier is returned. For example, if the search is for \"dylan\" then Bob Dylan may be returned as an artist result, an a few of his albums returned as album results with a reason code of `artist` (the identifier of that particular hub). Or if the search is for \"arnold\", there might be movie results returned with a reason of `actor` - `reasonTitle`: The string associated with the reason code. For a section reason, it\'ll be the section name; For a hub identifier, it\'ll be a string associated with the match (e.g. `Arnold Schwarzenegger` for movies which were returned because the search was for \"arnold\"). - `reasonID`: The ID of the item associated with the reason for the result. This might be a section ID, a tag ID, an artist ID, or a show ID. This request is intended to be very fast, and called as the user types. + * @summary Perform a search + * @param {any} query The query term + * @param {any} [sectionId] This gives context to the search, and can result in re-ordering of search result hubs + * @param {any} [limit] The number of items to return per hub + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + performSearch(query: any, sectionId?: any, limit?: any, axiosOptions?: any): AxiosPromise { + return localVarFp.performSearch(query, sectionId, limit, axiosOptions).then((request) => request(axios, basePath)); + }, + /** + * This endpoint performs a search specifically tailored towards voice or other imprecise input which may work badly with the substring and spell-checking heuristics used by the `/hubs/search` endpoint. It uses a [Levenshtein distance](https://en.wikipedia.org/wiki/Levenshtein_distance) heuristic to search titles, and as such is much slower than the other search endpoint. Whenever possible, clients should limit the search to the appropriate type. Results, as well as their containing per-type hubs, contain a `distance` attribute which can be used to judge result quality. + * @summary Perform a voice search + * @param {any} query The query term + * @param {any} [sectionId] This gives context to the search, and can result in re-ordering of search result hubs + * @param {any} [limit] The number of items to return per hub + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + performVoiceSearch(query: any, sectionId?: any, limit?: any, axiosOptions?: any): AxiosPromise { + return localVarFp.performVoiceSearch(query, sectionId, limit, axiosOptions).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * Request parameters for performSearch operation in SearchApi. + * @export + * @interface SearchApiPerformSearchRequest + */ +export interface SearchApiPerformSearchRequest { + /** + * The query term + * @type {any} + * @memberof SearchApiPerformSearch + */ + readonly query: any + + /** + * This gives context to the search, and can result in re-ordering of search result hubs + * @type {any} + * @memberof SearchApiPerformSearch + */ + readonly sectionId?: any + + /** + * The number of items to return per hub + * @type {any} + * @memberof SearchApiPerformSearch + */ + readonly limit?: any +} + +/** + * Request parameters for performVoiceSearch operation in SearchApi. + * @export + * @interface SearchApiPerformVoiceSearchRequest + */ +export interface SearchApiPerformVoiceSearchRequest { + /** + * The query term + * @type {any} + * @memberof SearchApiPerformVoiceSearch + */ + readonly query: any + + /** + * This gives context to the search, and can result in re-ordering of search result hubs + * @type {any} + * @memberof SearchApiPerformVoiceSearch + */ + readonly sectionId?: any + + /** + * The number of items to return per hub + * @type {any} + * @memberof SearchApiPerformVoiceSearch + */ + readonly limit?: any +} + +/** + * SearchApi - object-oriented interface + * @export + * @class SearchApi + * @extends {BaseAPI} + */ +export class SearchApi extends BaseAPI { + /** + * This endpoint performs a search across all library sections, or a single section, and returns matches as hubs, split up by type. It performs spell checking, looks for partial matches, and orders the hubs based on quality of results. In addition, based on matches, it will return other related matches (e.g. for a genre match, it may return movies in that genre, or for an actor match, movies with that actor). In the response\'s items, the following extra attributes are returned to further describe or disambiguate the result: - `reason`: The reason for the result, if not because of a direct search term match; can be either: - `section`: There are multiple identical results from different sections. - `originalTitle`: There was a search term match from the original title field (sometimes those can be very different or in a foreign language). - ``: If the reason for the result is due to a result in another hub, the source hub identifier is returned. For example, if the search is for \"dylan\" then Bob Dylan may be returned as an artist result, an a few of his albums returned as album results with a reason code of `artist` (the identifier of that particular hub). Or if the search is for \"arnold\", there might be movie results returned with a reason of `actor` - `reasonTitle`: The string associated with the reason code. For a section reason, it\'ll be the section name; For a hub identifier, it\'ll be a string associated with the match (e.g. `Arnold Schwarzenegger` for movies which were returned because the search was for \"arnold\"). - `reasonID`: The ID of the item associated with the reason for the result. This might be a section ID, a tag ID, an artist ID, or a show ID. This request is intended to be very fast, and called as the user types. + * @summary Perform a search + * @param {SearchApiPerformSearchRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof SearchApi + */ + public performSearch(requestParameters: SearchApiPerformSearchRequest, axiosOptions?: AxiosRequestConfig) { + return SearchApiFp(this.configuration).performSearch(requestParameters.query, requestParameters.sectionId, requestParameters.limit, axiosOptions).then((request) => request(this.axios, this.basePath)); + } + + /** + * This endpoint performs a search specifically tailored towards voice or other imprecise input which may work badly with the substring and spell-checking heuristics used by the `/hubs/search` endpoint. It uses a [Levenshtein distance](https://en.wikipedia.org/wiki/Levenshtein_distance) heuristic to search titles, and as such is much slower than the other search endpoint. Whenever possible, clients should limit the search to the appropriate type. Results, as well as their containing per-type hubs, contain a `distance` attribute which can be used to judge result quality. + * @summary Perform a voice search + * @param {SearchApiPerformVoiceSearchRequest} requestParameters Request parameters. + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof SearchApi + */ + public performVoiceSearch(requestParameters: SearchApiPerformVoiceSearchRequest, axiosOptions?: AxiosRequestConfig) { + return SearchApiFp(this.configuration).performVoiceSearch(requestParameters.query, requestParameters.sectionId, requestParameters.limit, axiosOptions).then((request) => request(this.axios, this.basePath)); + } +} + + /** * SecurityApi - axios parameter creator * @export @@ -1640,6 +4052,39 @@ export class SecurityApi extends BaseAPI { */ export const ServerApiAxiosParamCreator = function (configuration?: Configuration) { return { + /** + * Get Server Preferences + * @summary Get Server Preferences + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getServerPreferences: async (axiosOptions: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/:/prefs`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, /** * Server Capabilities * @summary Server Capabilities @@ -1683,6 +4128,16 @@ export const ServerApiAxiosParamCreator = function (configuration?: Configuratio export const ServerApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = ServerApiAxiosParamCreator(configuration) return { + /** + * Get Server Preferences + * @summary Get Server Preferences + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async getServerPreferences(axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getServerPreferences(axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, /** * Server Capabilities * @summary Server Capabilities @@ -1703,6 +4158,15 @@ export const ServerApiFp = function(configuration?: Configuration) { export const ServerApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { const localVarFp = ServerApiFp(configuration) return { + /** + * Get Server Preferences + * @summary Get Server Preferences + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getServerPreferences(axiosOptions?: any): AxiosPromise { + return localVarFp.getServerPreferences(axiosOptions).then((request) => request(axios, basePath)); + }, /** * Server Capabilities * @summary Server Capabilities @@ -1722,6 +4186,17 @@ export const ServerApiFactory = function (configuration?: Configuration, basePat * @extends {BaseAPI} */ export class ServerApi extends BaseAPI { + /** + * Get Server Preferences + * @summary Get Server Preferences + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof ServerApi + */ + public getServerPreferences(axiosOptions?: AxiosRequestConfig) { + return ServerApiFp(this.configuration).getServerPreferences(axiosOptions).then((request) => request(this.axios, this.basePath)); + } + /** * Server Capabilities * @summary Server Capabilities @@ -1735,6 +4210,170 @@ export class ServerApi extends BaseAPI { } +/** + * SessionsApi - axios parameter creator + * @export + */ +export const SessionsApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * This will Retrieve a listing of all history views. + * @summary Get Session History + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getSessionHistory: async (axiosOptions: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/status/sessions/history/all`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + /** + * This will retrieve the \"Now Playing\" Information of the PMS. + * @summary Get Active Sessions + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getSessions: async (axiosOptions: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/status/sessions`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + } +}; + +/** + * SessionsApi - functional programming interface + * @export + */ +export const SessionsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = SessionsApiAxiosParamCreator(configuration) + return { + /** + * This will Retrieve a listing of all history views. + * @summary Get Session History + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async getSessionHistory(axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getSessionHistory(axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + /** + * This will retrieve the \"Now Playing\" Information of the PMS. + * @summary Get Active Sessions + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async getSessions(axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getSessions(axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * SessionsApi - factory interface + * @export + */ +export const SessionsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = SessionsApiFp(configuration) + return { + /** + * This will Retrieve a listing of all history views. + * @summary Get Session History + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getSessionHistory(axiosOptions?: any): AxiosPromise { + return localVarFp.getSessionHistory(axiosOptions).then((request) => request(axios, basePath)); + }, + /** + * This will retrieve the \"Now Playing\" Information of the PMS. + * @summary Get Active Sessions + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getSessions(axiosOptions?: any): AxiosPromise { + return localVarFp.getSessions(axiosOptions).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * SessionsApi - object-oriented interface + * @export + * @class SessionsApi + * @extends {BaseAPI} + */ +export class SessionsApi extends BaseAPI { + /** + * This will Retrieve a listing of all history views. + * @summary Get Session History + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof SessionsApi + */ + public getSessionHistory(axiosOptions?: AxiosRequestConfig) { + return SessionsApiFp(this.configuration).getSessionHistory(axiosOptions).then((request) => request(this.axios, this.basePath)); + } + + /** + * This will retrieve the \"Now Playing\" Information of the PMS. + * @summary Get Active Sessions + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof SessionsApi + */ + public getSessions(axiosOptions?: AxiosRequestConfig) { + return SessionsApiFp(this.configuration).getSessions(axiosOptions).then((request) => request(this.axios, this.basePath)); + } +} + + /** * UpdaterApi - axios parameter creator * @export @@ -2020,3 +4659,104 @@ export class UpdaterApi extends BaseAPI { } +/** + * UserApi - axios parameter creator + * @export + */ +export const UserApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Get Logged in User + * @summary Get Logged in User + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getCurrentUserDetails: async (axiosOptions: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/user`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication PlexToken required + await setApiKeyToObject(localVarHeaderParameter, "X-Plex-Token", configuration) + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; + + return { + url: toPathString(localVarUrlObj), + axiosOptions: localVarRequestOptions, + }; + }, + } +}; + +/** + * UserApi - functional programming interface + * @export + */ +export const UserApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = UserApiAxiosParamCreator(configuration) + return { + /** + * Get Logged in User + * @summary Get Logged in User + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + async getCurrentUserDetails(axiosOptions?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getCurrentUserDetails(axiosOptions); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * UserApi - factory interface + * @export + */ +export const UserApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = UserApiFp(configuration) + return { + /** + * Get Logged in User + * @summary Get Logged in User + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + */ + getCurrentUserDetails(axiosOptions?: any): AxiosPromise { + return localVarFp.getCurrentUserDetails(axiosOptions).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * UserApi - object-oriented interface + * @export + * @class UserApi + * @extends {BaseAPI} + */ +export class UserApi extends BaseAPI { + /** + * Get Logged in User + * @summary Get Logged in User + * @param {*} [axiosOptions] Override http request option. + * @throws {RequiredError} + * @memberof UserApi + */ + public getCurrentUserDetails(axiosOptions?: AxiosRequestConfig) { + return UserApiFp(this.configuration).getCurrentUserDetails(axiosOptions).then((request) => request(this.axios, this.basePath)); + } +} + +