I’ve been using Postman client for many years and in all honesty without much thought. It was just what was used when I started to use it and was the best option I knew of at that time to test application programming interfaces (APIs). In recent years I’ve begun to notice Postman changing in ways I do not enjoy and if I think about it Postman does not fit my values. It is an application that is not open source but rather proprietary software and platform. I cannot deny that Postman is a good application, but that doesn’t make up for the fact that it is focused on proprietary methods and not open source. So I’ve decided to venture out in look for an alternative application solution which meetings the following list of criteria.
- Free/Libre open source
- Runs locally
- Graphical user interface
- Doesn’t require the Internet (an account)
- Supports REST and GraphQL APIs
Let’s finally move on to learning what the heck an API client is in the first place.
What is Postman API Client?
An application that allows a software developer to test, explore and debug application programming interfaces (APIs) for requests via HTTP, REST, SOAP, GraphQL and WebSockets.
Now one may ask what is an API client then? Well an API client is an application that allows a software developer to use a set of tools and protocols to interact with another software program or service. It simplifies the interaction between another program or service without having to reinvent the wheel every time. In return this can speed up the development process and allow for the developer to focus on their primary goals.
Alternative API Clients
At first, I was really excited to try Hoppscotch and HTTPie, unfortunately I quickly discovered that at this time these apps require are log in, in order to use them. This to me is just ridiculous. I can understand if I don’t log in I may lose some features, but a login shouldn’t be required to test and debug a simple API that is being developed locally (internally). Hoppscotch has a mention of working towards a self-hosted solution, but will not be available at least until quart 2 or 3 of 2022. At least there is a possible solution in the works that I can look forward.
Thunder Client is an extension for use with Microsoft Visual Studio Code or VSCodium. To me this API client is quite limited in features. Only supports REST API. I am happy to see that one can organize your API endpoints into groups called collections. Saying all this though it’s not ideal to me, and it doesn’t seem to be truly available as open source. I suppose if I had to this would work for the time being, but I feel I would just sooner use Postman instead even though it doesn’t fit my criteria.
As for Advanced REST Client, REST API is only supported and well it just feels so clunky. It would work for the time being for me, but I feel it too is limited beyond the use of REST API.
I was suggested to check out another API client called Insomnia by @ellotheth. The Insomnia API client is indeed open source with support of using REST, SOAP, GraphQL and GRPC requests. As well the interface appears to encourage design using OpenAPI which seems like a good thing to me, but this is not required. Work is organized by project and collections (groups). There is also the option if one chooses to do so, using Insomnia’s platform. I’m quite impressed, so much, so I’m going to start using it as a replacement. This fits all the criteria I was looking for and more. Thus far I highly recommend checking this application out.
Does anyone else have a good API client to recommend that meets my criteria? If so, please contact me.
I’m publishing this as part of 100 Days To Offload. You can join in yourself by visiting 100DaysToOffload.com.
- API, Wikipedia
- Coding Computer Hacker, image by Pexels, published Nov 18, 2016, Pixabay
- GraphQL, Wikipedia
- Representational state transfer, Wikipedia
Changelog - modified
- Add Advanced REST Client GitHub link
- Add Insomnia API client
- Correct grammar for clarity
- Add parentheses around GitHub links