Search code examples
c#asp.net-coreswaggerswashbuckle

How do you add a swagger comment to the "Request and Response Model"?


You can add a comment on the methods like the example below but what about adding comments to the request and response model?

/// <summary>
/// my summary
/// </summary>
/// <remarks>
/// remark goes here.
/// </remarks>
/// <param name="somepara">Required parameter: Example: </param>
/// <return>Returns comment</return>
/// <response code="200">Ok</response>

Solution

  • Yes just like Dimitar said, you can add comments to the responses with SwaggerResponse, the request is a bit different, just like you added xml comments to your action you should add to the parameters, here is an example:

    using Swagger.Net.Annotations;
    using System;
    using System.Collections.Generic;
    using System.Net;
    using System.Web.Http;
    using System.Web.Http.Results;
    
    namespace Swagger_Test.Controllers
    {
        public class IHttpActionResultController : ApiController
        {
    
            [SwaggerResponse(HttpStatusCode.OK, "List of customers", typeof(IEnumerable<int>))]
            [SwaggerResponse(HttpStatusCode.NotFound, Type = typeof(NotFoundResult))]
            public IHttpActionResult Post(MyData data)
            {
                throw new NotImplementedException();
            }
        }
    
        /// <summary>My super duper data</summary>
        public class MyData
        {
            /// <summary>The unique identifier</summary>
            public int id { get; set; }
    
            /// <summary>Everyone needs a name</summary>
            public string name { get; set; }
        }
    }
    

    And in swagger that will look like: enter image description here