//------------------------------------------------------------------------------
// <auto-generated>
// 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.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Requests
{
    using LukeHagar.PlexAPI.SDK.Utils;
    
    public class GetMediaMetaDataRequest
    {

        /// <summary>
        /// the id of the library item to return the children of.
        /// </summary>
        [SpeakeasyMetadata("pathParam:style=simple,explode=false,name=ratingKey")]
        public long RatingKey { get; set; } = default!;

        /// <summary>
        /// Include concerts data if set to true.
        /// </summary>
        [SpeakeasyMetadata("queryParam:style=form,explode=true,name=includeConcerts")]
        public bool? IncludeConcerts { get; set; }

        /// <summary>
        /// Include extra content (e.g. bonus features).
        /// </summary>
        [SpeakeasyMetadata("queryParam:style=form,explode=true,name=includeExtras")]
        public bool? IncludeExtras { get; set; }

        /// <summary>
        /// Include on-deck items.
        /// </summary>
        [SpeakeasyMetadata("queryParam:style=form,explode=true,name=includeOnDeck")]
        public bool? IncludeOnDeck { get; set; }

        /// <summary>
        /// Include popular leaves (episodes/chapters).
        /// </summary>
        [SpeakeasyMetadata("queryParam:style=form,explode=true,name=includePopularLeaves")]
        public bool? IncludePopularLeaves { get; set; }

        /// <summary>
        /// Include preferences information.
        /// </summary>
        [SpeakeasyMetadata("queryParam:style=form,explode=true,name=includePreferences")]
        public bool? IncludePreferences { get; set; }

        /// <summary>
        /// Include reviews for the content.
        /// </summary>
        [SpeakeasyMetadata("queryParam:style=form,explode=true,name=includeReviews")]
        public bool? IncludeReviews { get; set; }

        /// <summary>
        /// Include chapter details.
        /// </summary>
        [SpeakeasyMetadata("queryParam:style=form,explode=true,name=includeChapters")]
        public bool? IncludeChapters { get; set; }

        /// <summary>
        /// Include station data.
        /// </summary>
        [SpeakeasyMetadata("queryParam:style=form,explode=true,name=includeStations")]
        public bool? IncludeStations { get; set; }

        /// <summary>
        /// Include external media data.
        /// </summary>
        [SpeakeasyMetadata("queryParam:style=form,explode=true,name=includeExternalMedia")]
        public bool? IncludeExternalMedia { get; set; }

        /// <summary>
        /// Trigger asynchronous metadata augmentation.
        /// </summary>
        [SpeakeasyMetadata("queryParam:style=form,explode=true,name=asyncAugmentMetadata")]
        public bool? AsyncAugmentMetadata { get; set; }

        /// <summary>
        /// Trigger asynchronous file checking.
        /// </summary>
        [SpeakeasyMetadata("queryParam:style=form,explode=true,name=asyncCheckFiles")]
        public bool? AsyncCheckFiles { get; set; }

        /// <summary>
        /// Trigger asynchronous refresh of analysis.
        /// </summary>
        [SpeakeasyMetadata("queryParam:style=form,explode=true,name=asyncRefreshAnalysis")]
        public bool? AsyncRefreshAnalysis { get; set; }

        /// <summary>
        /// Trigger asynchronous refresh of the local media agent.
        /// </summary>
        [SpeakeasyMetadata("queryParam:style=form,explode=true,name=asyncRefreshLocalMediaAgent")]
        public bool? AsyncRefreshLocalMediaAgent { get; set; }
    }
}