In one of my blog posts (sorry, German only!) I introduced Insomnia (now: Insomnia Core) some time ago and I have remained a convinced user of this tool even after several months of practical use. With the Insomnia Designer, another tool was introduced which promotes the collaborative development of APIs according to the specification-first principle. Therefore, I will took a closer look at this one.
Those who already know Insomnia Core will feel at home right from the start. The already known debug mode is no different from what you already know, so you don’t have to learn it again. The new design mode also uses a very intuitive structure, which is easy to understand.
It should be emphasized that the Insomnia Designer comes with a fairly comprehensive example, which makes it even easier to get started and understand.
Collaboration and sharing of specifications is made possible by Git. After setting up the Git repository, you can check in the respective specification immediately from Insomnia Designer. This way, the specifications can be kept safe and easily shared with others. Branching is supported out-of-the-box.
Insomnia Designer uses the widely used and modern OpenAPI Specification.
Besides the text form of the OpenAPI specification, a tree view of the structure is displayed. This provides a good overview and enables quick navigation to the desired places in the specification.
The editor checks the entries for errors and supports the designer during creation.
In addition, you can preview your specification using Swagger UI, so you can check what the final result will look like.
Swagger UI view
Testing und debugging
Once you have created all or part of your specification, you can test it immediately. To do this, just switch from design mode to debug mode.
While you have specified the API in design mode, requests have already been created automatically in the background. These can be executed directly. (You may need to add the base URL – e.g. as environment variable). That’s it! Now you can execute a request against your freshly specified API.
The familiar user interface with the automatically created requests
As in Insomnia Core, Insomnia Designer offers the possibility to add missing functionality through plugins. For example, the kong-bundle plugin can be added, which allows bringing its APIs directly into the Kong Portal, generate a “Kong Declarative” or “Kong for Kubernetes” configuration.
The Insomnia Designer is another step towards a tool that focuses on the collaborative development of APIs and the holistic development of APIs. The built-in Git functionality allows you to version and share your specifications quickly and easily.
The modern OpenAPI specification is still a bit unusual for me, since I have been using RAML almost exclusively, but after a short introduction it is not a problem. I especially like the fact that the requests for my definition are created automatically. So you can’t forget any settings that you have defined before.
Unfortunately, I currently don’t have any project in which I could use the Insomnia Designer productively, so that I can only speak of my experiences while trying it out.
Overall, this extension feels as good as Insomnia Core and I would recommend anyone who is thinking about using OpenAPI or already uses it but hasn’t found a suitable development platform yet to just test the program themselves.
As always, I would be happy to hear about your own experiences with the tool, suggestions and criticism in the comments.