# Microsoft.AspNetCore.Mvc.ApiExplorer

``` diff
 {
     namespace Microsoft.AspNetCore.Mvc.ApiExplorer {
-        public class ApiDescription {
 {
-            public ApiDescription();

-            public ActionDescriptor ActionDescriptor { get; set; }

-            public string GroupName { get; set; }

-            public string HttpMethod { get; set; }

-            public IList<ApiParameterDescription> ParameterDescriptions { get; }

-            public IDictionary<object, object> Properties { get; }

-            public string RelativePath { get; set; }

-            public IList<ApiRequestFormat> SupportedRequestFormats { get; }

-            public IList<ApiResponseType> SupportedResponseTypes { get; }

-        }
-        public class ApiDescriptionProviderContext {
 {
-            public ApiDescriptionProviderContext(IReadOnlyList<ActionDescriptor> actions);

-            public IReadOnlyList<ActionDescriptor> Actions { get; }

-            public IList<ApiDescription> Results { get; }

-        }
-        public class ApiParameterDescription {
 {
-            public ApiParameterDescription();

-            public object DefaultValue { get; set; }

-            public bool IsRequired { get; set; }

-            public ModelMetadata ModelMetadata { get; set; }

-            public string Name { get; set; }

-            public ParameterDescriptor ParameterDescriptor { get; set; }

-            public ApiParameterRouteInfo RouteInfo { get; set; }

-            public BindingSource Source { get; set; }

-            public Type Type { get; set; }

-        }
-        public class ApiParameterRouteInfo {
 {
-            public ApiParameterRouteInfo();

-            public IEnumerable<IRouteConstraint> Constraints { get; set; }

-            public object DefaultValue { get; set; }

-            public bool IsOptional { get; set; }

-        }
-        public class ApiRequestFormat {
 {
-            public ApiRequestFormat();

-            public IInputFormatter Formatter { get; set; }

-            public string MediaType { get; set; }

-        }
-        public class ApiResponseFormat {
 {
-            public ApiResponseFormat();

-            public IOutputFormatter Formatter { get; set; }

-            public string MediaType { get; set; }

-        }
-        public class ApiResponseType {
 {
-            public ApiResponseType();

-            public IList<ApiResponseFormat> ApiResponseFormats { get; set; }

-            public bool IsDefaultResponse { get; set; }

-            public ModelMetadata ModelMetadata { get; set; }

-            public int StatusCode { get; set; }

-            public Type Type { get; set; }

-        }
         public class DefaultApiDescriptionProvider : IApiDescriptionProvider {
-            public DefaultApiDescriptionProvider(IOptions<MvcOptions> optionsAccessor, IInlineConstraintResolver constraintResolver, IModelMetadataProvider modelMetadataProvider);

-            public DefaultApiDescriptionProvider(IOptions<MvcOptions> optionsAccessor, IInlineConstraintResolver constraintResolver, IModelMetadataProvider modelMetadataProvider, IActionResultTypeMapper mapper);

         }
-        public interface IApiDescriptionProvider {
 {
-            int Order { get; }

-            void OnProvidersExecuted(ApiDescriptionProviderContext context);

-            void OnProvidersExecuting(ApiDescriptionProviderContext context);

-        }
     }
 }
```

