3 best tools for describing RESTful API
The interaction of various services using the API, from innovation turns into everyday life. The number of free and paid APIs is already in the thousands, and every day their number is actively growing. Why not? Selling remote requests to your innovative service can bring more profit than distributing services through your site. And let, in this case, your customers are already racking their brains and spending money on attracting an audience. Using my experience, I offer a brief overview of the best API implementation solutions to date.
In this segment, startups are just beginning their rapid movement towards popularity. New software solutions appear regularly. Existing products, working in beta testing mode, still lure new users with the help of free services.
Nevertheless, clear race leaders have already appeared, which will be discussed in more detail below.
This project is different from many others. Its main task is not a description, but selling an API through a catalog of ready-made solutions. The service creates a subdomain for each client and hides the real path to the API behind proxying. Mashape places the API in its directory. Each user has the opportunity to use the tariff designer and start making money on every request. Thanks to proxying requests, Mashape can keep records and limit access to the API.
Mashape has no actual markup language, everything is configured in a browser window. A convenient testing function of the created API is available.
The project developed a basic SDK for requests and responses and published as a separate project www.unirest.io .
Here is an example of the API of the popular Pinterest site:www.mashape.com/ismaelc/pinterest-1
A convenient generator allows you to immediately get the code for a simplified request to the API for programming languages: PHP, Java, Node.js, Python, Objective-C, Ruby, .NET.
Swagger has been developing for quite some time. This software solution for generating documentation is a de facto leader. But I had a different opinion.
JSON is used as markup. The project has its own editor ( http://editor.swagger.io/ ). Version 2.0 editor is now available.
An example of the display can be seen at the link: petstore.swagger.io
The advantages of the viewer include the ability to play documentation from remote links.
When displaying the documentation, there is a form for sending a test request with its parameters.
Apiary uses the blueprint API, developed based on Markdown syntax, as markup. The documentation file is supported by editors for Markdown.
The project has a good online editor. There are noticeable bugs with the layout of the site, in some places it is not well thought out. Nevertheless, it looks much nicer Swagger (but this is my subjective assessment).
Bonus: do you write your project and post it on github? Then your RESTful API and SDK for it are already available at www.sdks.io. This service regularly monitors the emergence of new files with the RESTful API and automatically generates SDK libraries for them.
Today, there are at least 20 different software solutions with different functionality for the RESTful API. The essence of this article was to give a brief overview of the leaders in this segment. If you are interested in exploring this topic more deeply, you can read my other articles on this topic: