Have You Heard of Swagger Documents?

Ejime Oghenefejiro - Sep 6 - - Dev Community

Swagger documents are incredibly helpful **for anyone working with APIs. They simplify the process of **designing, developing, and documenting APIs(Application Programming Interface), ensuring that everything is consistent and easy to understand, even for non-technical people. Let's break it down in simple terms, using an example and an image to make it clearer.

What Are Swagger Documents?

Swagger is a tool that helps you describe and document your API(Application Programming Interface). If you're unfamiliar with APIs, think of them as a way for different applications to communicate with each other. For example, if you're building an online store for pets, your API will let other systems or users add new pets, update pet details, or search for specific pets.

Now, imagine having all this information neatly laid out in a way that everyone can understand. That’s what Swagger does! It creates an interactive webpage where all the details of your API are explained. This makes it easier for developers, testers, and even non-technical people to understand what each part of the API does.

Image description
Example: Pet Store API (See Image Above)

In the image above, you can see an example of a Swagger UI for a Pet Store API. Let's walk through what each part does, step by step.

Key API Actions:
Add a Pet to the Store (POST /pet)
This option lets you add a new pet to the store. In the Swagger UI, you can click on this and enter details like the pet's name, breed, or category. Once you fill in the information, the API creates a new pet in the system.

  1. Update an Existing Pet (PUT /pet) Have a pet that's already in the system? You can update their information here. For example, if the pet has been sold or their status changes, this is where you update it.

  2. Find Pets by Status (GET /pet/findByStatus) This part lets you filter pets by their status, like "available" or "sold." It helps users quickly find pets based on their availability.

  3. Find a Pet by ID (GET /pet/{petId}) If you have a specific pet in mind and know their ID, you can use this function to get detailed information about that pet.

  4. Delete a Pet (DELETE /pet/{petId}) If a pet is no longer available or needs to be removed from the system, you can use this endpoint to delete it.

How Swagger Helps
Swagger not only shows you what your API can do, but it also makes it easy to test it. Each section of the API, like "Add a Pet" or "Delete a Pet," comes with a button that lets you try it out right from the web page. You don’t need to write any code to do this, which is why even non-technical users find it useful.

Benefits:

  • User-Friendly Interface: The visual interface (as shown in the image) is easy to navigate, with each action color-coded based on what it does.
   1. Green for adding a pet (POST) 
   2.  Blue for getting pet details (GET)
   3. Red for deleting a pet (DELETE)
Enter fullscreen mode Exit fullscreen mode
  • Interactive: You can test everything directly from the webpage. For example, if you want to check if the "Find Pets by Status" option works, you can input a status like "available" and see the results immediately.

  • Collaboration: Swagger helps teams work together. Developers, testers, and even non-technical users can understand what each API endpoint does, making it easier to collaborate on building or testing APIs.

Why is Swagger Useful for Non-Technical People?
Even if you're not a developer, Swagger can still be useful. It explains each function of an API in simple terms and allows you to test the API without needing to know how to code. This is especially helpful for:

  • Project managers who need to understand what the API can do.
  • QA testers who want to test the API's functionality.
  • API users who just need to know how to interact with the API.

In Conclusion

Swagger documents make it easy for everyone, not just developers, to understand and interact with APIs. Whether you’re adding a new pet to a store, updating existing information, or deleting old records, Swagger simplifies the process by providing clear, interactive documentation.

Image description

The image example from the Pet Store API shows how user-friendly Swagger is, with its clean interface and ability to test everything in one place. Whether you're a developer or someone with no coding experience, Swagger makes working with APIs a whole lot easier.

. . .