The API Tooling Crisis: Why developers are abandoning Postman and its clones?
Posted by Successful_Bowl2564@reddit | programming | View on Reddit | 159 comments
Conscious_Meal_7766@reddit
For me the breaking point was when Postman killed the offline scratchpad and started requiring a sign-in just to fire a GET. Made .http files in VS Code my home that same week and haven't looked back.
Empanatacion@reddit
Insomnia did the same thing and jacked around with their UI repeatedly until it's this unintuitive mess.
azsqueeze@reddit
The creator of insomnia is back and created yaak. It's free for personal use
orygin@reddit
It's also unusable with enough requests. The UI goes to a crawl because it must serialize everything to JS land
azsqueeze@reddit
Aw damn, I just started using it for some simple stuff. So for it's been aight for my needs
travelinzac@reddit
Just use curl
pjmlp@reddit
The only reason I still have Insomia installed is that our IT hasn't yet forbidded it, like with Postman.
However there are plenty of alternatives, it is just me being lazy, as I already do most of the stuff with HTTP files, and other alternatives.
GBcrazy@reddit
You don't need to sign-in to fire any request in Postman.
There is a 'continue without signing in' button, you just need to have good eyes to see it
4r73m190r0s@reddit
https://justuse.org/curl/
nick898@reddit
I saw a colleague using postman to test some restful apis once and all I saw was a GUI wrapper around curl
Kendos-Kenlen@reddit
It's a GUI over a CLI, which makes copy/pasting, editing payload, syntax highlighting & general UX by not having to remember every options by hearth much easier. It's also easier to navigate visually when you don't have to scroll twice the size of your terminal to see the headers you sent after receiving a lengthy response.
There is a reason so many devs use UIs over CLI. Yes CLI is powerful, but the UX is generally shit for about everyone compared to a nice UI.
turbothy@reddit
What on earth are you on about? (Are you a frontend dev?) I'll always prefer the command line over some clickops shit, and I'm very much not alone.
IntelligentSpite6364@reddit
Your anecdote, even in plurality, does not add up to data
turbothy@reddit
Neither does the comment I'm replying to.
look@reddit
You are right, but the gui children are out in force on this thread today, downvoting anything that scares them.
lelanthran@reddit
Yeah, but all of those (other than command line flags) I do inside of Vim or Emacs connected to the inferior program.
You use thunderbird to read email? I use Emacs/Vim.
You use gitkraken? I use Emacs/Vim.
Need to administer a PostgreSQL instance? Emacs/Vim.
Play Tetris? Solve Towers of Hanoi? Play Snake? Emacs, Emacs and (you guessed it) Emacs.
You think that makes me in need of therapy? Well,
M-x doctorsolves that noe too, without leaving Emacs.arpan3t@reddit
-hor man pageYou know shells have variables that you can store the headers and response in? You don’t have to scroll.
A little ironic, you apparently not knowing much about shell and dismissing the tool, in response to someone being dismissive towards a GUI-based tool they seem to not know much about.
unicodemonkey@reddit
I'm mostly working with the insides of some data processing thingy or another so I'm not really up to date about the HTTP request wrapper drama. Jupyter + convenience wrappers for requests/curl are enough for me currently. I mean, why scroll if you can retrieve the response, dissect it to retrieve the exact piece you need, and then save/share the dialog history and the result.
AlternativePaint6@reddit
Unless you're manually toggling transistors on and off, then everything is just a wrapper around something else.
Serird@reddit
I'm down here manually coaxing electrons into existence, one at a time
dangderr@reddit
Electrons are just wrappers for perturbations of the electric field.
jonathancast@reddit
*Electron field.
Photons are perturbations of the electric field.
roygbivasaur@reddit
What do you do with all of the positrons though?
ThisIsMyCouchAccount@reddit
Oh....I have some ideas.
noViableSolution@reddit
that's on the backlog waiting to be refined
Eksekk@reddit
Real programmers move electrons manually using electronic needle.
lelanthran@reddit
Noob! I use butterflies.
arpan3t@reddit
That’s cute! Us actual programmers are down here manipulating qubits
OMG_A_CUPCAKE@reddit
Relevant XKCD
Tzukkeli@reddit
How do you multienv with curl? Pipe env= down the line? I know Linux, but there is no way I know how to that, and dont get me started on scripts based on another response (e.g passing bearer). There was a place for Postman in the past that curl just couldn't solve (enough easily).
tooclosetocall82@reddit
The gui is nice for twiddling with things and looking at the output. Also it’s didn’t use to be the monstrosity it’s become. I tend to use it mostly out of habit now.
HedonistMomus@reddit
I get it, you can of course, but that does not mean better UX. The guy mentions
jq, lol. Hard to grasp.j1436go@reddit
And write integration tests for your own API with all the power that comes with your programming language of choice. Problem solved.
RScrewed@reddit
Damn, reminds me of Maddox. Awesome.
AuroraFireflash@reddit
I rather use something slightly higher level like Python / PowerShell 7. Bash/zsh are nice, but working with full blown objects is nicer.
Inf3rn0_munkee@reddit
That have me a good chuckle. It's essentially what I've been trying to tell my team and the company but they got too used to postman from when it was free.
f1da@reddit
Running Postman in Citrix made me just use curl instead.
Successful_Bowl2564@reddit (OP)
og one.
Worth_Trust_3825@reddit
what the fuck is an api tooling, let alone its crisis? abi going away?
hotl3@reddit
Hey I've been working on an local first alternative called Nidra.dev if anyone wanted to try it out. It's free except for the team sharing and testing functions. I was going to wait until I got my code signing cert to expose it to the public but I guess this is a good time if anyone wants to try it out and give it a spin
orygin@reddit
Not open source?
donatj@reddit
If you are on Mac, https://paw.cloud/ Rapid API (Used to be called Paw) is unbeatable and free now. Used to be a paid app.
orygin@reddit
Is it open source?
eibrahim@reddit
What pushed me away wasn't just login walls, it was losing plain diffable artifacts in the workflow.
A checked-in .http file or curl script gives you reviewability, reproducibility, and a paper trail when an endpoint changes. GUI clients are nice for exploration, but once a request matters, I want it living next to the codebase so anyone on the team can rerun it without importing some mystery collection.
unknown_r00t@reddit
Or Resterm (TUI):
https://github.com/unkn0wn-root/resterm
sojuz151@reddit
Best experience for me had been the built into Intelij http client
No_Kaleidoscope7022@reddit
Is that good? I mean can it add certificates an also does it show output in better way?
sime@reddit
This is exactly why Free and Open Source Software matters.
zzbzq@reddit
Because it’s all rug pull bait and switch scams?
lunacraz@reddit
i mean, when OS projects become a second job without any sort of income, i can empathize when people try to actually make it their worthwhile
this attitude of OSS being this faceless stream of free software for all is pretty toxic and people are being taken advantage of
i'm never going to fault that
Ghi102@reddit
I have been a victim of enshitification far more in the closed source world compared to FOSS.
Romanmir@reddit
But were those closed source applications *ever* open source?
It’s been my experience that the first step towards enshittication is usually moving to closed source.
svish@reddit
Because you can fork it and do what you want when they rug pull?
imforit@reddit
This is exactly why Free and Open Source Software matters
kingslayerer@reddit
We use bruno. I can commit it to git. No stupid sign ups.
CaptainIncredible@reddit
I've used Yaak. It worked for what I needed.
Apofis@reddit
I use curl and Invoke-WebRequest.
reddit_clone@reddit
Why is this down voted? I use curl and Perl (now perl6) too.
Scripts I wrote 20 years ago still work, everywhere.
GuaranteePotential90@reddit
Built Voiden. But don't mind saying that Yaak is great. In fact I think that Yaak and Voiden are the two tools that share a few similar ideas in the sense that they are not trying to be a better or cheaper postman but are something on their own. :)
Suggest anyone who likes Yaak to try Voiden, not to switch but to try and have them both in their arsenal.
miversen33@reddit
I just found Yaak and omfg it's exactly what I need.
I toyed with EchoAPI a bit, it's really slick too (offering automated API testing and the ability to heavily document an API endpoint), but the inability to set folder vars made it just not work.
Played with kulala and it works well but I just couldn't get used to it. Found Yaak and I've basically begun building everything around it
Arkanta@reddit
I like yaak way better!
1RedOne@reddit
Bruno is starting to offer Bruno premium which has me just feeling tired
ryosen@reddit
Funny thing about that. That came from the community a couple of years ago when Bruno was first launched. Folks wanted to make sure that the guy that created the platform could work on it full time and persuaded him to introduce a paid tier. it was to ensure that the program would be able to survive and grow. You absolutely don't need it and they are keeping to the original goal of a free, full-featured replacement for Postman.
ThisIsMyCouchAccount@reddit
It's wild how so many people expect something for nothing.
ohx@reddit
Never forget corejs guy
svix_ftw@reddit
we've been spoiled by awesome open source for decades.
pretzelfisch@reddit
No they are on the same path as postman and every other api tool. The have a paid product with a free version.
lelanthran@reddit
That path is "closing down"; the value offered by a tool that sends a request and tests the responses against an expected response is minimal.
There is no value-add to these API endpoint testing tools.
ZZartin@reddit
Honestly I don't really care about any of the automation or testing in these tools. I just want something with a reasonable UI that covers the whole scope of api requests and let's me save collections.
lelanthran@reddit
Well testing is incidental to my product, so I had Claude whip up a Python script to do exactly what I needed; there's no reason that you can't do the same either.
My need was to allow an LLM to fuzz my endpoints in addition to testing the happy path; to do that I wanted an easy-for-llm-to-generate format, so that is what I generated.
My focus was not the testing tool, it was my application. It was faster to generate a testing tool than it was to work out the correct incantation for Bruno, Postman, Hurl, etc.
Successful_Bowl2564@reddit (OP)
That is a good observation !
lppedd@reddit
I use IJ's HTTP client. I can version those files and I don't have to leave the IDE.
saint1997@reddit
Until you get a stupid netty java exception with some cryptic error message that you couldn't possibly debug yourself, like I did yesterday (header size > 8192K when literally all I had was
Content-Type: application/json)wildjokers@reddit
Did you report your issue to their issue tracker?
saint1997@reddit
It's been there for 2 years https://youtrack.jetbrains.com/issue/IJPL-65392
wildjokers@reddit
There is a workaround mentioned in one of the comments (a plugin). Have you tried that? Also, it appears it is the server responding with a header that is very long. Have you looked into why your server is responding with a long header value? (RFC doesn't set a hard limit, just says headers should be of "reasonable" size).
lppedd@reddit
IJPL-234767 has been fixed yesterday, so it might be out with 2026.1.2+.
saint1997@reddit
Nice. I ended up just using the "copy as cURL" button as a workaround, hopefully I won't have to much longer!
lppedd@reddit
Never had it happen honestly, but would be nice if you could report it on YouTrack.
Sarkos@reddit
I've been using IntelliJ for years and only recently got sufficiently fed up with Postman to check out their HTTP client. It's a little bare bones but honestly a pleasure to use.
wildjokers@reddit
Does more than you might think.
lppedd@reddit
Yup that's why I use it. It's simple enough to not get in the way, and it supports import and export to cURL.
ericl666@reddit
I love Bruno. And it can import postman collections. Win-win
coyoteazul2@reddit
We don't talk about Bruno, no, no, no
We don't talk about Bruno, but...
lelanthran@reddit
Enchanting...
Aridez@reddit
When I copy requests that have a session from the browser as curl, for some reason on bruno those doesn't work, while they do on postman... If anyone has any insight on this I'd love to jump away
holeydood3@reddit
I like it, but don't do anything with large payloads or responses or you'll discover it's gigantic memory leak that compound very quickly.
battlecities@reddit
I've moved one of our collections to their new YAML format and it's a lot faster than the .bru format. Pain in the ass to do, though they're supposedly coming up with a native tool to convert it soon. I think there are a few 3rd party scripts floating around to do the conversion, but my employer is pretty strict on not using outside scripts.
the_rizzler@reddit
Even importing large collections or large anything really...
AuroraFireflash@reddit
This was one of my chief complaints with Postman. Especially when we tried to use it for testing. No easy way to put the scripts and tests in the same repo as the code.
CmdrSausageSucker@reddit
yes, I can confirm this. I introduced Bruno to all projects I manage, everybody is happy and the requests + some documentation even can be added to the repos. I like.
Successful_Bowl2564@reddit (OP)
In the article it says:
Bruno is the name coming up most often. It’s open source and stores collections as plain-text files on your drive, which means I can version-control my API tests right alongside the source code in the same repo (unbelievable, right?)
It’s far from perfect, Bruno’s UI lacks polish, and migrating is a headache – scripts often break because the JavaScript sandbox isn’t the same as Postman’s. It also lacks some heavy-hitting enterprise features, such as advanced proxy support. But it’s promising to respect you – the user. At least for now.
AlternativePaint6@reddit
No it doesn't. It's fine. Better than postman's cluttered weird mega app.
A newer, smaller, open source alternative still lacks some advanced enterprise features compared to an older, now paid app?? No way!
aa-b@reddit
I like Bruno, but my company hasn't bought licenses and it's annoying how relatively basic features are paywalled. Like, running the same request in a loop to generate traffic on a dashboard is not a super advanced power-user feature. And I keep running into issues where the "copy as cURL" feature breaks for no reason, that's annoying.
Otherwise it's good, but I wish there was an actually free and completely open version. For a not-really-free product, I think it'd be nice if importing from postman actually worked without needing so much fixing. Oh well, maybe one day.
yup_its_me_again@reddit
I don't like Bruno. It's slow to load my collections and the paradigm to first save a new request, instead of trying and then saving, annoys me
dietibol@reddit
Postman also supports this these days with the most recent release
MelodicTelephone5388@reddit
curl is life
WhitelabelDnB@reddit
When I got fed up with Postman, I got on a call with one of my coworkers and we looked at every option on the market. We could not believe how much competition there was for such a simple product.
My needs were simple: File based collections, external secret management, git friendly, sharable and collaborative.
Literally everyone gates at least one of those behind a paywall. Bruno were the closest, and even they gate using an external key vault behind a subscription. They had to edit their company mission statement when they announced this change. And their vscode extension doesn't support OAuth? What!?
So we made Missio. It's a minimal REST client for vscode. It's 100% FOSS forever. You can connect to a key vault without a paywall. It's not got feature parity with Postman or Bruno yet, but it's enough to cover my use cases as an integration developer, and we're adding more and more features as we need them.
Some cool stuff that Missio does that other apps don't do.
Auth tokens are environment scoped, so if you change environment it will reauth oauth and not use a token for the wrong environment. Postman fails this test.
You can auth with a CLI command, eg using az to get a user scoped token so you don't need an app registration to test. This is all automated too.
You can integrate with key vaults that resolve using environment variables, so you can have separate key vaults per environment. This means you never need secrets in the collections, and anyone can clone the repo and just run them if they have RBAC assignments for the vaults.
It uses the Bruno Open Collection standard, which is completely open and file based. Git friendly.
Again, totally free. We will never paywall any of this. It's not done yet but we are working on it and we would welcome submissions, contributions, and feedback.
wellanticipated@reddit
I had a bad interviewing experience with them and no longer feel bad. 💁♀️
Free_Basil_6506@reddit
Interesting read. The shift away from Postman-style tools is real. I've seen teams move to:
curl + scripts - Simple, reproducible, no GUI overhead
HTTP files in IDEs - JetBrains and VS Code have native support now
OpenAPI specs + codegen - Generate clients directly from API definitions
The main pain points with Postman clones: - Collections are hard to version control properly - Environment variables get messy across teams - The "sync" features often break or create conflicts - Heavy Electron apps eating RAM
For internal APIs, a simple HTTP file or curl script in the repo is often enough. No need for a full GUI client.
shifting_drifting@reddit
Crisis?
FredTillson@reddit
Logging in is a crisis and a betrayal. Apparently.
hm9408@reddit
Gotta make you click on the article somehow
cupcakeheavy@reddit
The built in HTTP client in IntelliJ is pretty nice. Not free, but nice.
rangorn@reddit
Visual Studio has an integrated http tester sp sometimes I use that. Also with AI it is so much easier to generate E2E-tests.
flanger001@reddit
Because they keep adding fucking paywalls! So many of these things are finished products and then they get investors.
CpnStumpy@reddit
I must be the outlier, I just build a stupid client class with a function for each API call and axios.. it's like 1-2 lines of code per API call. A CLI can run it to do whatever I want and it's infinitely easier to maintain than digging through postman's endless complexity
coder-of-the-web@reddit
Why even use axios instead of native fetch?
flanger001@reddit
NATIVE FETCH GANG
fill-me-up-scotty@reddit
supply chain adrenaline rush
CpnStumpy@reddit
Probably just old habit, native API request library used to be more complicated and messy vs axios, modern fetch API is probably just as simple as axios 🤷
fill-me-up-scotty@reddit
I do the same but using Go’s http client. Pretty trivial to write.
ThisIsMyCouchAccount@reddit
Okay. But here's the thing.
I don't want to.
CpnStumpy@reddit
Yeah, I've done it with go also for a go team to be able to use it, I've done it with python similarly as well.. again, anyone who can program can trivially do this and it will be far easier to deal with than postmadness
w3npigsfly@reddit
ApiQuest open source UI and newman like ci runner
maxip89@reddit
Bruno. No server sending bs.
Successful_Bowl2564@reddit (OP)
in the article the author is super critical of it though.
really_not_unreal@reddit
The author is disingenuous at best in their review. Bruno is fine.
ifitiw@reddit
I will need to give Bruno a try again, but last time I tried it (a year and a half ago) it was absolutely terrible for my brain. Seemed made by someone who clearly had a very different mental model to mine with regards to how UX should work. Nothing clicked, it felt like I was using software from an alternative timeline of UX development, or perhaps the planet ZorgIdork
I really hope it’s better because I’d love to get the team off the Postman subscription and throw some of that money at an open-source project instead.
GuaranteePotential90@reddit
What I can say is that this space is indeed filled with "clones", which one the one hand shows how powerful Postman was. The main problem with these SaaS tools is that as every SaaS, their mandate is to keep people spending time inside their app and of course eventually also pay. I think that something that has played a role here is AI and how much one can produce. So in a way, testing an API can not be more expensive than building actual code.
Anyway, I think that devs will and do figure things out in this weird space. From my side, with my team we built over 1K APIs in the past 2 years and tried almost every tool. Th result is that we built something of our own that we initially used for us and now open sourced for the world to see: https://github.com/VoidenHQ/voiden
jejacks00n@reddit
Voiden is on my list of things to check out. Thanks for the reminder!
GuaranteePotential90@reddit
awesome, happy to remind you :) actually this is a good time because we had a big release that includes our take on the collection runner + the ability to run multiple requests in the same file. (for example in an order flow (create - pay - confirm), or a full CRUD cycle in one place). The file effectively becomes an executable flow that you can use to run one request, or the entire sequence end-to-end.
curious what you think when you have the chance to try out.
jejacks00n@reddit
That sounds cool. I’ve written a bunch of tests (specs) over the years to do this kind of thing using VCR (a recording and replaying kind of tool for network requests/responses). I’ve always kicked around the idea of having these concepts of defining the requests and then being able to use them in practice and in specs too. Anyway, side topic. Thanks for your project, I look forward to checking it out.
really_not_unreal@reddit
I used to use insomnia, which has become very bloated, and found that Bruno's UI mostly made sense to me. A few buttons are in weird places, but after a few days I got used to it.
fiskfisk@reddit
How do you manage to get to "supercritical" from what they wrote? They had a few points they thought of as missing from Bruno, but other than that, where's the part where they're "super critical"?
cd7k@reddit
Except their rug-pulling nonsense.
Laicbeias@reddit
Because its broken. I cna access all of my fucking links anymore. The login doesnt work. Like its not working properly and its bullshit. No one needs this shit to be in the cloud. When you started using it no one said. Oh would be great if thst crap is all in the cloud not on my local pc where i work. And oh it needs login
Ghi102@reddit
I personally have started using Hoppscotch as a replacement. But all we really need is a fancy UI curl, Bruno's git features are just overkill for us.
mtetrode@reddit
Because an executable of 0,5 Gb to execute an http request is a bit much.
mascotbeaver104@reddit
Basically all postman functionality I can think of can be directly replaced by a single file and a script- if you have curl on your system, the core functionality of Postman (including the test suites) can be 100% emulated and then some with like, 5 lines of bash
dvhh@reddit
basically curl everything
Absolute_Enema@reddit
Haha, random babashka repl files go brr.
SoCalThrowAway7@reddit
I just use python requests do everything I used to use postman for
pjmlp@reddit
Electron crap, followed by SaaS only, without any control of what they do with company critical data used to test private APIs.
Nowdays I use a mix of IDE tooling, HTTP files, curl, or plain scripting.
lood9phee2Ri@reddit
because people keep trying to make them into closed-source nonsense subscription profit centres
skidmark_zuckerberg@reddit
I always used the HTTP client in IntelliJ. Was a pretty big user of Postman until I started doing that a few years back.
swoleherb@reddit
Why wouldn't you write proper intergration tests in your lanaguage/framework of choice?
lelanthran@reddit
I prompted claude for my own testing tool. The input format for API testing needs to be a little closer to plain text if I want an LLM to generate the tests.
Works very well thus far; test files for workflows are plain text, stored in git.
For my web framework, two years ago was a pain to test signup/email verification/sign-in flows. With this new tool+format it's now all automated (including testing the verification link).
TistelTech@reddit
I like Jupyter notebooks with the python `requests` library. docs and runnable code. open source.
chucker23n@reddit
The only "crisis" here is that Postman was once valued at $5.6B. That's not a typo. I realize Postman has some nice features like collaboration, but at the end of the day, it's just an HTTP client.
As for what I use, it depends a lot on the scope.
curlorhttpwill do. Pipe them tojq, and you get some basic JSON parsing..httpsupport. JetBrains, for example, will even do things like render image results inline.First_Chain_6222@reddit
I created browser extension for rest and graphql tracing, mocking and testing. Available for chrome and Firefox https://github.com/mhdzumair/APIlot
sailing67@reddit
tbh postman just got too bloated, switched to bruno and never looked back
duy0699cat@reddit
Am i the only one just having AI use curl for me?
hungry4pie@reddit
Is there any reason why you can’t just use: curl, powershell (invoke rest method), whatever python or node do?
Empanatacion@reddit
Pro tip: Claude code or copilot can just call curl however you like. Things like swapping in variables or going out and acquiring tokens to reuse across requests are things it can just do. Give it a skill that remembers all the particular details of URLs and paths and then you just tell it "get a token from the QA environment and call the order API for customer x, then look up the items in the order in the inventory API"
SETHW@reddit
is this an efficient use of tokens when you're essentially asking it to copy/paste?
kaoD@reddit
Obligatory Hurl link
https://hurl.dev/
sligit@reddit
Am I the only one that finds it weird that humans are regularly interacting directly with APIs except for testing?
wildjokers@reddit
Well, APIs need to be tested, so you need a http client of some kind.
mtranda@reddit
Are there that many humans directly interacting with APIs? Because it's new to me.
quisatz_haderah@reddit
wait, isn't postman for testing?
wildjokers@reddit
BloatMan is the single worse rest test client in existence.
I use IntelliJ ‘s ditto based HTTP client and then can commit the requests to version control.
turbothy@reddit
https://hurl.dev/
Easy to use for both test scripts and ad-hoc API exploration.
cedric005@reddit
We use dothttp
w3npigsfly@reddit
That’s why i made https://apiquest.net ui and standalone runner to replace postman Hopefully other people find it useful too. I’d love some honest feedback
AsterYujano@reddit
Bruno is really good and integrates well with agentic coding. AI can edit the yaml files easily
DropTheBeatAndTheBas@reddit
cant developers just build their own tools with AI quickly now and even more bespoke for their job
johnnygalat@reddit
When you use tools to build things, you just want tools to work - you don't want to have another layer of complexity to pay attention to and maintain.
And AI generated slop is hard to maintain.
SaltMaker23@reddit
All of that don't matter, in the AI era, it's faster to spin a frontend that actually calls the API than to setup all of that postmarn nonsense.
It's also better to test internally with actual calls to your endpoints, integrating with an external thirdparty tool to do such a basic and core testing capability doesn't make sense either.
Postman made sense in an era where calling API was a hurdle and a tool to call API was valuable, that time is long gone, a jupyter notebook is already a local selfhosted replacement for postman.