//------------------------------------------------------------------------------
//
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
//
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Requests
{
using LukeHagar.PlexAPI.SDK.Models.Requests;
using LukeHagar.PlexAPI.SDK.Utils;
public class GetWatchListRequest
{
///
/// Filter
///
[SpeakeasyMetadata("pathParam:style=simple,explode=false,name=filter")]
public Filter Filter { get; set; } = default!;
///
/// In the format "field:dir". Available fields are "watchlistedAt" (Added At),
///
///
/// "titleSort" (Title), "originallyAvailableAt" (Release Date), or "rating" (Critic Rating).
/// "dir" can be "asc" or "desc"
///
///
///
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=sort")]
public string? Sort { get; set; }
///
/// The type of library to filter. Can be "movie" or "show", or all if not present.
///
///
///
///
///
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=libtype")]
public Libtype? Libtype { get; set; }
///
/// The number of items to return. If not specified, all items will be returned.
///
///
/// If the number of items exceeds the limit, the response will be paginated.
///
///
///
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=maxresults")]
public int? Maxresults { get; set; }
///
/// include collections in the results
///
///
///
///
///
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=includeCollections")]
public IncludeCollections? IncludeCollections { get; set; }
///
/// include external media in the results
///
///
///
///
///
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=includeExternalMedia")]
public IncludeExternalMedia? IncludeExternalMedia { get; set; }
///
/// The index of the first item to return. If not specified, the first item will be returned.
///
///
/// If the number of items exceeds the limit, the response will be paginated.
/// By default this is 0
///
///
///
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=X-Plex-Container-Start")]
public int? XPlexContainerStart { get; set; } = 0;
///
/// The number of items to return. If not specified, all items will be returned.
///
///
/// If the number of items exceeds the limit, the response will be paginated.
/// By default this is 50
///
///
///
[SpeakeasyMetadata("queryParam:style=form,explode=true,name=X-Plex-Container-Size")]
public int? XPlexContainerSize { get; set; } = 50;
///
/// An authentication token, obtained from plex.tv
///
[SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Token")]
public string XPlexToken { get; set; } = default!;
}
}