I would like to hear if any of you are using different app for API testing than Postman.
I’m not telling that Postman is bad, but maybe there’s all that I should check out. Recently I tried RapidApi and even tho the app is kinda cool I missed few options and went back to Postman for now.
I am a fan of Insomnia. As far as I can tell it has most of the features I used in postman without all the paid upgrade nags
Seconding Insomnia. Sleeker interface imo, only thing it’s lacking in feature parity afaik is the cookie sniffer, but you can grab what you need in postman or js console and then plug it into insomnia np.
Also, cURL :]
ducaale/xh is excellent for anybody that likes to use HTTP from a CLI.
Yep, these command line tools seems really cool!
When I was using GUI API Testing tools, I prefer using APIDog, their UI is much easier to use and I can easily migrate my Postman scripts.
Also a websocket test mode would be nice. It’s something I do miss from Postman
Insomnia is really good, never looked back at postman since i use Insomnia!
never heard about it. gonna give it a try for sure. thanks for the suggestion!
The one thing I find difficult in Insomnia is making the auth common across a group of requests. I end up duplicating existing requests which doesn’t help if I need to update the process at all. Is there a way to use common auth routines yet?
Insomnia is pretty cool and open-source
I like Insomnia myself
Yeah it’s called curl lol
This is the way.
No joke, I use curlie, .curlrc and a bunch of scripts
can you elaborate a bit on that ? I’ve only used curl from cli and never used .curlrc. and what’s curlie ?
Curlie is a wrapper on curl that makes more ergonomic to use. I set path to cookie jar in .curlrc. I sync cookies from the browser.
Another vote for Insomnia here. I used to use Insomnia primarily until a lot of my work switched over to gRPC and I’ve found that Postman works a lot better for that. I still prefer Insomnia for the simple UX and speed, just wish it had better gRPC support.
I do have some bugs with Insomnia, for example with the oauth configuration failing. (I think it has something to do with some variable there failing) You can workaround that by just removing oauth, and configuring again, but its annowing.
I still like insomnia overall tho.
Hoppscotch is pretty cool
I completely stopped using all those clients. We now just store the requests alongside the code in an http file and use the built in IntelliJ HTTP Client to make the call. No need for a separate program, integrates with your code, you can save responses to make sure they don’t change, it’s all stored in git. There’s a ton of benefits and not many downsides.
What is an HTTP file?
Once I learned about http files I never went back. It’s so easy to share and use, I primarily use JetBrains but there are extensions for VSCode that do the same thing that I have used as well.
This also exists for VSCode by the way.
yeah looks like it’s in visual studio too. https://learn.microsoft.com/en-us/aspnet/core/test/http-files?view=aspnetcore-8.0
any resources to get the hang of the IntelliJ Client? cause when I tried it I kind of hit a wall not knowing where to start
just create a new file of type HTTP Request, click on the
dropdown in the top right, choose the type of thing you want to do, copy one of the examples, and then paste it into the
.http
file you created. Then hit the play button! dead simple!deleted by creator
anywhere on the project? hmm, that sounds pretty neat.
sorry for bugging you, but do you know if there is some way to import postman collections into this kind of a file? cause I have like 100 files in postman atm
edit: nvm, just tried it out and I can get from postman a HTTP “code” and simply paste it into .request fiel.
no worries. I’m just slow to respond. Got lots going on. Seems like you figured it out though? Do you want some more guidance?
Insomnia, or if you really love the command line and dont need to document or save your API requests, curl (don’t recommend this for anything beyond simple testing).
If you like the command line but want something more user friendly than curl, I suggest httpie.
Oh this looks interesting. I will definitely give it a shot.
I mostly use httpie on the fish shell with autocompletion for quick requests, but it’s no replacement
httpie now also has a postman-like UI! Been using it for a while and I’m liking it for what it is - https://httpie.io/app
I also have been using httpie for a few years - it is really great.
Recently I have started using nushell which has a similar module builtin: https://www.nushell.sh/commands/docs/http_get.html Combined with rest of the nicities in nushell its a pretty good cli experience.
How’s nushell been for you so far? I took a look at it once when it was relatively new and was missing some features I needed, like shell scripts.
I like it. The docs are a bit scattered and I haven’t switched to it completely, but it has proven to be very handy for some scenarios where I scrape some content from external sources and pull them into a local sqlite as a long term structured archive.
Insomnia is great and has an easy, simple interface. But I feel like creating complex collections with different environments is a lot simpler with postman
Insomnia user here too, I’ve found it to be simple,clean and to my taste.
I’m using the vscode extension called Thunderclient
Same. I like this so I don’t need to open a second app. Only used PostMan and ThunderClient, so can’t comment on others.
This. Is the best GUI, via vs code extension
I usually generate an API client in C#, and just use that. For example, and entire integration CRUD test for a user would just be something like:
var user = TestClient.CreateUser(1234, "Bob"); user.Id.ShouldBe(1234); user.Name.ShouldBe("Bob"); var userThroughGet = TestClient.GetUser(1234); userThroughGet.ShouldNotBeNull(); TestClient.EditUser(1234, "John"); userThroughGet = TestClient.GetUser(1234); userThroughGet.Name.ShouldBe("John"); TestClient.DeleteUser(1234); userThroughGet = TestClient.GetUser(1234); userThroughGet.ShouldBeNull();
Trying to set up those kinda scenarios quickly with Postman was getting pretty tedious
I’m saying that Postman is bad. maybe not in terms of functionality, but damn if it doesn’t run like a slug on my work computer, which is just fine handling a dozen Visual Studio and Rider instances. It seems like it works perfectly for about 5 minutes and then goes to crap.
So yeah, I’d be interested in an alternative too. I only really use it for basic functionality (creating, sharing, and running collections of requests with configurable parameters).
deleted by creator
Same for me, I’ll notice my computer is a bit loud, realise I forgot to close postman and it’s just sitting there, doing nothing, minimised, and my 12 core CPU is sat at 20%.
I close postman, within seconds the fans spin down.
I’ve tried a few alternatives but the rest of the team use postman and we’ve got shared collections and pretty extensive pre-request scripts and nothing else I’ve tried really fits the bill.
There is always the web version of postman. It can make localhost calls if you install their desktop agent. Might have better memory management somehow? I dunno.
I’m the maintainer of HTTP Toolkit - it’s not a Postman alternative (it’s an open source project focused on intercepting & debugging traffic, not sending it) but I’m actually working on building a UI for exactly this right now, so this thread is perfectly timed!
Is there anything that any of you really love or hate about any of the tools suggested here?
What core features beyond just “edit method+URL+headers+body, send, view the response status+headers+body” are essential to you?
Anything you wish these tools could do better?
I’m planning on taking the client functionality live within a few weeks max, so if you want to help your perfect Postman alternative come to life now’s the moment 😁
The big three for me are:
- For a given project, maintain a list of HTTP requests I often need to send
- Some way to save responses, so I can compare how the server does respond to how it previously responded.
- Both need to be shared with my colleagues. And this must not share any auth credentials/tokens/etc that are in every request (I want that do be done separately with something more secure).