Search results

Step 2: The info object (OpenAPI tutorial)

Keep current with the latest trends in technical communication by subscribing to the I'd Rather Be Writing newsletter. 5,000+ subscribers

I'm giving an API documentation workshop in Los Angeles, California, on January 23, 2020. Check it out on EventBrite and register today to receive a $100 early bird discount.

The info object contains basic information about your API, including the title, a description, version, link to the license, link to the terms of service, and contact information. Many of the properties are optional.

Sample info object

Here’s an example of the info object and its properties:

openapi: "3.0.2"
  title: "OpenWeatherMap API"
  description: "Get the current weather, daily forecast for 16 days, and a three-hour-interval forecast for 5 days for your city. Helpful stats, graphics, and this day in history charts are available for your reference. Interactive maps show precipitation, clouds, pressure, wind around your location stations. Data is available in JSON, XML, or HTML format. **Note**: This sample Swagger file covers the `current` endpoint only from the OpenWeatherMap API. <br/><br/> **Note**: All parameters are optional, but you must select at least one parameter. Calling the API by city ID (using the `id` parameter) will provide the most precise location results."
  version: "2.5"
  termsOfService: ""
    name: "OpenWeatherMap API"
    url: ""
    email: "[email protected]"
    name: "CC Attribution-ShareAlike 4.0 (CC BY-SA 4.0)"
    url: ""

In any description property, you can use CommonMark Markdown, which is much more precise, unambiguous, and robust than the original Markdown. For example, CommonMark markdown offers some backslash escapes, and it specifies exactly how many spaces you need in lists and other punctuation. You can also break to new lines with \n and escape problematic characters like quotation marks or colons with a backslash.

As you write content in description properties, note that colons are problematic in YAML because they signify new levels. Either escape colons with a backslash or enclose the description value in quotation marks. You can use single or double quotation marks for the property values. (If you enclose the values in quotation marks, syntax highlighters in text editors can display better color coding between the properties and values.)

View the Appearance in Swagger UI

At this point, go ahead and paste this above code along with the openapi object from the previous step into the Swagger Editor. You’ll see some rendering errors (because the specification document doesn’t yet have any path objects), but the content will still appear. (Just hide the errors section at the top for now).

In the Swagger UI display, the info object’s information appears at the top:

In the description property, in addition to describing your overall API, you might want to provide some basic instructions to users on how to use Swagger UI. If there’s a test account they should use, you can provide the information they need in this space.

67% Complete

67/150 pages complete. Only 83 more pages to go.


Want to buy me lunch? Click the Donate button below to donate any amount through Paypal.