The preceding example uses a standard called OpenAPI (formerly Swagger). At the time of writing, there are two other popular API specification languages out there, namely RAML and API Blueprint. Before we go any further, it's important to note that each language has its own set of limitations in terms of how accurately it can describe an existing API, or the comprehensiveness of the tooling surrounding it. Out of the three, however, OpenAPI is the most mature and has the best community support, and it's what we will be using in this chapter.