//------------------------------------------------------------------------------
// <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.Models.Requests;
    using LukeHagar.PlexAPI.SDK.Utils;
    
    public class GetServerResourcesRequest
    {

        /// <summary>
        /// Include Https entries in the results
        /// </summary>
        [SpeakeasyMetadata("queryParam:style=form,explode=true,name=includeHttps")]
        public IncludeHttps? IncludeHttps { get; set; } = LukeHagar.PlexAPI.SDK.Models.Requests.IncludeHttps.Disable;

        /// <summary>
        /// Include Relay addresses in the results <br/>
        /// 
        /// <remarks>
        /// E.g: https://10-0-0-25.bbf8e10c7fa20447cacee74cd9914cde.plex.direct:32400<br/>
        /// 
        /// </remarks>
        /// </summary>
        [SpeakeasyMetadata("queryParam:style=form,explode=true,name=includeRelay")]
        public IncludeRelay? IncludeRelay { get; set; } = LukeHagar.PlexAPI.SDK.Models.Requests.IncludeRelay.Disable;

        /// <summary>
        /// Include IPv6 entries in the results
        /// </summary>
        [SpeakeasyMetadata("queryParam:style=form,explode=true,name=includeIPv6")]
        public IncludeIPv6? IncludeIPv6 { get; set; } = LukeHagar.PlexAPI.SDK.Models.Requests.IncludeIPv6.Disable;

        /// <summary>
        /// An opaque identifier unique to the client (UUID, serial number, or other unique device ID)
        /// </summary>
        [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Client-Identifier")]
        public string ClientID { get; set; } = default!;
    }
}