mirror of
				https://github.com/jellyfin/jellyfin.git
				synced 2025-11-04 03:27:21 -05:00 
			
		
		
		
	
		
			
				
	
	
		
			66 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
#nullable disable
 | 
						|
using System;
 | 
						|
 | 
						|
namespace MediaBrowser.Model.Services
 | 
						|
{
 | 
						|
    /// <summary>
 | 
						|
    /// Identifies a single API endpoint.
 | 
						|
    /// </summary>
 | 
						|
    [AttributeUsage(AttributeTargets.Property, AllowMultiple = true, Inherited = true)]
 | 
						|
    public class ApiMemberAttribute : Attribute
 | 
						|
    {
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets verb to which applies attribute. By default applies to all verbs.
 | 
						|
        /// </summary>
 | 
						|
        public string Verb { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets parameter type: It can be only one of the following: path, query, body, form, or header.
 | 
						|
        /// </summary>
 | 
						|
        public string ParameterType { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets unique name for the parameter. Each name must be unique, even if they are associated with different paramType values.
 | 
						|
        /// </summary>
 | 
						|
        /// <remarks>
 | 
						|
        /// <para>
 | 
						|
        /// Other notes on the name field:
 | 
						|
        /// If paramType is body, the name is used only for UI and codegeneration.
 | 
						|
        /// If paramType is path, the name field must correspond to the associated path segment from the path field in the api object.
 | 
						|
        /// If paramType is query, the name field corresponds to the query param name.
 | 
						|
        /// </para>
 | 
						|
        /// </remarks>
 | 
						|
        public string Name { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the human-readable description for the parameter.
 | 
						|
        /// </summary>
 | 
						|
        public string Description { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// For path, query, and header paramTypes, this field must be a primitive. For body, this can be a complex or container datatype.
 | 
						|
        /// </summary>
 | 
						|
        public string DataType { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// For path, this is always true. Otherwise, this field tells the client whether or not the field must be supplied.
 | 
						|
        /// </summary>
 | 
						|
        public bool IsRequired { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// For query params, this specifies that a comma-separated list of values can be passed to the API. For path and body types, this field cannot be true.
 | 
						|
        /// </summary>
 | 
						|
        public bool AllowMultiple { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets route to which applies attribute, matches using StartsWith. By default applies to all routes.
 | 
						|
        /// </summary>
 | 
						|
        public string Route { get; set; }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Whether to exclude this property from being included in the ModelSchema.
 | 
						|
        /// </summary>
 | 
						|
        public bool ExcludeInSchema { get; set; }
 | 
						|
    }
 | 
						|
}
 |