All Downloads are FREE. Search and download functionalities are using the official Maven repository.

commonMain.org.jellyfin.sdk.api.operations.TvShowsApi.kt Maven / Gradle / Ivy

There is a newer version: 1.6.3
Show newest version
// !!        WARNING
// !! DO NOT EDIT THIS FILE
//
// This file is generated by the openapi-generator module and is not meant for manual changes.
// Please read the README.md file in the openapi-generator module for additional information.
package org.jellyfin.sdk.api.operations

import kotlin.Any
import kotlin.Boolean
import kotlin.Int
import kotlin.String
import kotlin.collections.Collection
import kotlin.collections.emptyList
import kotlin.collections.emptyMap
import kotlin.collections.mutableMapOf
import org.jellyfin.sdk.api.client.ApiClient
import org.jellyfin.sdk.api.client.Response
import org.jellyfin.sdk.api.client.extensions.`get`
import org.jellyfin.sdk.model.DateTime
import org.jellyfin.sdk.model.UUID
import org.jellyfin.sdk.model.api.BaseItemDtoQueryResult
import org.jellyfin.sdk.model.api.ImageType
import org.jellyfin.sdk.model.api.ItemFields

public class TvShowsApi(
	private val api: ApiClient,
) : Api {
	/**
	 * Gets episodes for a tv season.
	 *
	 * @param seriesId The series id.
	 * @param userId The user id.
	 * @param fields Optional. Specify additional fields of information to return in the output. This
	 * allows multiple, comma delimited. Options: Budget, Chapters, DateCreated, Genres, HomePageUrl,
	 * IndexOptions, MediaStreams, Overview, ParentId, Path, People, ProviderIds, PrimaryImageAspectRatio,
	 * Revenue, SortName, Studios, Taglines, TrailerUrls.
	 * @param season Optional filter by season number.
	 * @param seasonId Optional. Filter by season id.
	 * @param isMissing Optional. Filter by items that are missing episodes or not.
	 * @param adjacentTo Optional. Return items that are siblings of a supplied item.
	 * @param startItemId Optional. Skip through the list until a given item is found.
	 * @param startIndex Optional. The record index to start at. All items with a lower index will be
	 * dropped from the results.
	 * @param limit Optional. The maximum number of records to return.
	 * @param enableImages Optional, include image information in output.
	 * @param imageTypeLimit Optional, the max number of images to return, per image type.
	 * @param enableImageTypes Optional. The image types to include in the output.
	 * @param enableUserData Optional. Include user data.
	 * @param sortBy Optional. Specify one or more sort orders, comma delimited. Options: Album,
	 * AlbumArtist, Artist, Budget, CommunityRating, CriticRating, DateCreated, DatePlayed, PlayCount,
	 * PremiereDate, ProductionYear, SortName, Random, Revenue, Runtime.
	 */
	public suspend fun getEpisodes(
		seriesId: UUID,
		userId: UUID? = null,
		fields: Collection? = emptyList(),
		season: Int? = null,
		seasonId: UUID? = null,
		isMissing: Boolean? = null,
		adjacentTo: String? = null,
		startItemId: UUID? = null,
		startIndex: Int? = null,
		limit: Int? = null,
		enableImages: Boolean? = null,
		imageTypeLimit: Int? = null,
		enableImageTypes: Collection? = emptyList(),
		enableUserData: Boolean? = null,
		sortBy: String? = null,
	): Response {
		val pathParameters = mutableMapOf()
		pathParameters["seriesId"] = seriesId
		val queryParameters = mutableMapOf()
		queryParameters["userId"] = userId
		queryParameters["fields"] = fields
		queryParameters["season"] = season
		queryParameters["seasonId"] = seasonId
		queryParameters["isMissing"] = isMissing
		queryParameters["adjacentTo"] = adjacentTo
		queryParameters["startItemId"] = startItemId
		queryParameters["startIndex"] = startIndex
		queryParameters["limit"] = limit
		queryParameters["enableImages"] = enableImages
		queryParameters["imageTypeLimit"] = imageTypeLimit
		queryParameters["enableImageTypes"] = enableImageTypes
		queryParameters["enableUserData"] = enableUserData
		queryParameters["sortBy"] = sortBy
		val data = null
		val response = api.`get`("/Shows/{seriesId}/Episodes", pathParameters,
				queryParameters, data)
		return response
	}

	/**
	 * Gets a list of next up episodes.
	 *
	 * @param userId The user id of the user to get the next up episodes for.
	 * @param startIndex Optional. The record index to start at. All items with a lower index will be
	 * dropped from the results.
	 * @param limit Optional. The maximum number of records to return.
	 * @param fields Optional. Specify additional fields of information to return in the output.
	 * @param seriesId Optional. Filter by series id.
	 * @param parentId Optional. Specify this to localize the search to a specific item or folder. Omit
	 * to use the root.
	 * @param enableImages Optional. Include image information in output.
	 * @param imageTypeLimit Optional. The max number of images to return, per image type.
	 * @param enableImageTypes Optional. The image types to include in the output.
	 * @param enableUserData Optional. Include user data.
	 * @param nextUpDateCutoff Optional. Starting date of shows to show in Next Up section.
	 * @param enableTotalRecordCount Whether to enable the total records count. Defaults to true.
	 * @param disableFirstEpisode Whether to disable sending the first episode in a series as next up.
	 * @param enableRewatching Whether to include watched episode in next up results.
	 */
	public suspend fun getNextUp(
		userId: UUID? = null,
		startIndex: Int? = null,
		limit: Int? = null,
		fields: Collection? = emptyList(),
		seriesId: String? = null,
		parentId: UUID? = null,
		enableImages: Boolean? = null,
		imageTypeLimit: Int? = null,
		enableImageTypes: Collection? = emptyList(),
		enableUserData: Boolean? = null,
		nextUpDateCutoff: DateTime? = null,
		enableTotalRecordCount: Boolean? = true,
		disableFirstEpisode: Boolean? = false,
		enableRewatching: Boolean? = false,
	): Response {
		val pathParameters = emptyMap()
		val queryParameters = mutableMapOf()
		queryParameters["userId"] = userId
		queryParameters["startIndex"] = startIndex
		queryParameters["limit"] = limit
		queryParameters["fields"] = fields
		queryParameters["seriesId"] = seriesId
		queryParameters["parentId"] = parentId
		queryParameters["enableImages"] = enableImages
		queryParameters["imageTypeLimit"] = imageTypeLimit
		queryParameters["enableImageTypes"] = enableImageTypes
		queryParameters["enableUserData"] = enableUserData
		queryParameters["nextUpDateCutoff"] = nextUpDateCutoff
		queryParameters["enableTotalRecordCount"] = enableTotalRecordCount
		queryParameters["disableFirstEpisode"] = disableFirstEpisode
		queryParameters["enableRewatching"] = enableRewatching
		val data = null
		val response = api.`get`("/Shows/NextUp", pathParameters, queryParameters,
				data)
		return response
	}

	/**
	 * Gets seasons for a tv series.
	 *
	 * @param seriesId The series id.
	 * @param userId The user id.
	 * @param fields Optional. Specify additional fields of information to return in the output. This
	 * allows multiple, comma delimited. Options: Budget, Chapters, DateCreated, Genres, HomePageUrl,
	 * IndexOptions, MediaStreams, Overview, ParentId, Path, People, ProviderIds, PrimaryImageAspectRatio,
	 * Revenue, SortName, Studios, Taglines, TrailerUrls.
	 * @param isSpecialSeason Optional. Filter by special season.
	 * @param isMissing Optional. Filter by items that are missing episodes or not.
	 * @param adjacentTo Optional. Return items that are siblings of a supplied item.
	 * @param enableImages Optional. Include image information in output.
	 * @param imageTypeLimit Optional. The max number of images to return, per image type.
	 * @param enableImageTypes Optional. The image types to include in the output.
	 * @param enableUserData Optional. Include user data.
	 */
	public suspend fun getSeasons(
		seriesId: UUID,
		userId: UUID? = null,
		fields: Collection? = emptyList(),
		isSpecialSeason: Boolean? = null,
		isMissing: Boolean? = null,
		adjacentTo: String? = null,
		enableImages: Boolean? = null,
		imageTypeLimit: Int? = null,
		enableImageTypes: Collection? = emptyList(),
		enableUserData: Boolean? = null,
	): Response {
		val pathParameters = mutableMapOf()
		pathParameters["seriesId"] = seriesId
		val queryParameters = mutableMapOf()
		queryParameters["userId"] = userId
		queryParameters["fields"] = fields
		queryParameters["isSpecialSeason"] = isSpecialSeason
		queryParameters["isMissing"] = isMissing
		queryParameters["adjacentTo"] = adjacentTo
		queryParameters["enableImages"] = enableImages
		queryParameters["imageTypeLimit"] = imageTypeLimit
		queryParameters["enableImageTypes"] = enableImageTypes
		queryParameters["enableUserData"] = enableUserData
		val data = null
		val response = api.`get`("/Shows/{seriesId}/Seasons", pathParameters,
				queryParameters, data)
		return response
	}

	/**
	 * Gets a list of upcoming episodes.
	 *
	 * @param userId The user id of the user to get the upcoming episodes for.
	 * @param startIndex Optional. The record index to start at. All items with a lower index will be
	 * dropped from the results.
	 * @param limit Optional. The maximum number of records to return.
	 * @param fields Optional. Specify additional fields of information to return in the output.
	 * @param parentId Optional. Specify this to localize the search to a specific item or folder. Omit
	 * to use the root.
	 * @param enableImages Optional. Include image information in output.
	 * @param imageTypeLimit Optional. The max number of images to return, per image type.
	 * @param enableImageTypes Optional. The image types to include in the output.
	 * @param enableUserData Optional. Include user data.
	 */
	public suspend fun getUpcomingEpisodes(
		userId: UUID? = null,
		startIndex: Int? = null,
		limit: Int? = null,
		fields: Collection? = emptyList(),
		parentId: UUID? = null,
		enableImages: Boolean? = null,
		imageTypeLimit: Int? = null,
		enableImageTypes: Collection? = emptyList(),
		enableUserData: Boolean? = null,
	): Response {
		val pathParameters = emptyMap()
		val queryParameters = mutableMapOf()
		queryParameters["userId"] = userId
		queryParameters["startIndex"] = startIndex
		queryParameters["limit"] = limit
		queryParameters["fields"] = fields
		queryParameters["parentId"] = parentId
		queryParameters["enableImages"] = enableImages
		queryParameters["imageTypeLimit"] = imageTypeLimit
		queryParameters["enableImageTypes"] = enableImageTypes
		queryParameters["enableUserData"] = enableUserData
		val data = null
		val response = api.`get`("/Shows/Upcoming", pathParameters,
				queryParameters, data)
		return response
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy