Step 2: The info object (OpenAPI tutorial)
I'm giving an API documentation workshop in Mountain View, California on August 30, 2019. If you're interested, you can register on EventBrite.
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" info: 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: "https://openweathermap.org/terms" contact: name: "OpenWeatherMap API" url: "https://openweathermap.org/api" email: "[email protected]" license: name: "CC Attribution-ShareAlike 4.0 (CC BY-SA 4.0)" url: "https://openweathermap.org/price"
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:
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.
41/122 pages complete. Only 81 more pages to go.
Want to buy me lunch? Click the Donate button below to donate $10 through Paypal.