API Documentation
Summary for API Docs tool
Problem
Currently, I have an existing project. It's written in Go, and don't have any useful API Docs. So I tried to have a look.
What are current world-wise tools for API docs?
Swagger http://swagger.io
APIDoc http://apidocjs.com
Postman https://www.getpostman.com
Swagger
Tools for implementing the OpenAPI specification
Starting from scratch?
Use the Swagger Editor to create your OAS definition and then use Swagger Codegen to generate server implementation.
Use the Swagger UI to visualize and document your OAS definition
Design, document and develop APIs as a team using SwaggerHub
Creating the OAS file from an existing API?
Finding an easy way to generate the OpenAPI definition from an existing API can be challenging. You have to reverse engineer the API and get acquainted with the process of generating the OAS from existing APIs. The good news is that Swagger tools can help you do this with ease.
Use Swagger Core open source project to create the OAS from your existing Java APIs. Swagger Core supports frameworks like JAX-RS or node.js.
Have a look at this example to see how Swagger Core can help your JAX-RS implemented API - https://github.com/swagger-api/swagger-core/wiki/Swagger-Core-JAX-RS-Project-Setup-1.5.X
Swagger Inspector allows you to easily and quickly auto-generate an OAS definition from any API endpoint right from your browser
If on the other hand you're an API Consumer who wants to integrate with an API that has an OpenAPI definition you can use Swagger Inspector or the online version of Swagger UI to explore the API (given that you have a URL to the APIs Swagger definition) - and then use Swagger Codegen to generate the client library of your choice. In either case - be sure to check out the long list of open source projects and our commercial offering, SwaggerHub.
Pros
Lots of documentation
Large community
Strong framework
Cons
Require a lot of effort, especially for existing project
APIDoc
Inline documentation for RESTful web APIs. Generate docs for annotations in source code
Pros
Simple to use
Good documentation
Cons
Can't run spec
Docs can be out of date without testing
Postman
Postman is a collaboration platform for API development.
Have 3 tires, focus on limiting team size.
Pros
Simple to use
Enviroment variable
Example
Public document
Cons
Input/Update API Docs manunally for each API
Price is based on memebers in team.
Conclusion
In my situation, I chose Postman, because it's simplest. I don't have enough resource to write a full docs with APIDocs, and it's hard with Swagger too.
In the next project, I will try Swagger, or at least APIDoc
Last updated