Tell HN: Postman update removes all your stuff if you refuse to create account

365 points by drunner ↗ HN
I have been using postman offline without an account for a long time. Today when I opened the program it asked me to create an account. When I declined, it wiped all my collections and everything else.

All I have is a 'history' to work with and try to piece back together all the variables and collections that I had setup.

I relented and created an account, but it did not recover anything. Beware!

Update: I was able to manually import/restore using a backup I found in ~/.config/Postman but I have no trust for continued use of this tool. Any alternatives that I can migrate to?

180 comments

[ 1.9 ms ] story [ 271 ms ] thread
This happened to me 2 years ago, I think it has always been a bit of an issue.
So they quickly followed what their competitor Insomnia did recently https://news.ycombinator.com/item?id=37680126

Related "Ask HN: Alternatives to Insomnia?" https://news.ycombinator.com/item?id=37691914 and https://news.ycombinator.com/item?id=37725326

Postman did it first, unless I'm missing something.
yep, Insomnia was the alternative to Postman, now the cycle continues...
Which is kinda interesting, in that I know folks who started using Insomnia because postman started enshittification first...

Sad Insomnia made it a race

Is there a duopoly play happening here?
Reminds me of Dark - "The end is the beginning and the beginning is the end." – Adam

Hope Bruno will deliver us from this never-ending cycle.

Postman is rolling out updates over time, for many people they only saw the changes now, a couple weeks after the roll-out started.
Insomnia doesn’t wipe out your stuff if you don’t create an account though.
Plenty of users reported that updating, being prompted to create an account, and then refusing denied them access to their requests.
Postman doesn't either, but it doesn't tell you where the backup is. Same deceptive shite.
Your Scratch Pad data is safe and accessible. It can be Migrated to a new Workspace, once you create an account, using the 'Cog Icon > Settings > Data > Migrate data' menu option.

Alternatively, it can be Exported from the Lightweight API Client(signed out version) using the 'Cog Icon > Settings > Data > Export data' menu options.

I'm assuming you work for Postman. I hope you know that because of this, as well as the account requirement, other REST tools are going to eat your lunch. I don't think this was a good move.
If you updated to v8 and missed the one small text link to export your data before creating an account, then all of your data was gone. Fortunately you could go to Github and download an old version.

If you created an account all of the data was still there. By default the "scratchpad" that did not require an account would not show anything.

(comment deleted)
It effectively does. You can't access it on the latest version without an account. So either downgrade or make an account.
I have found Bruno (https://github.com/usebruno/bruno) to be a decent basic alternative with a nice bonus of being version control friendly, keep in mind that it's fresh and relatively unpolished though - for instance it doesn't ask you to save changes before closing the app.
This one is free from VC funding and promises to stay away from it. So it should not suffer from enshittification.

See https://github.com/usebruno/bruno/discussions/269

The one thing I'm afraid of is that it's a single maintainer project, and while they are active now, I'm not sure how this is going to fare in a few months or so.
I've been at this for 2 years. The project got visibility very recently.

The code is MIT. I look forward to do this for a long long time.

Glad to see alternatives but disappointed that Bruno does not support OpenAPI specification.

At my company, we hand-edit OpenAPI specs in YAML and it gets consumed by many tools that generate types[0], static analysis and dynamic checks[1]. The OpenAPI spec itself is linted[2]. And of course, Postman consumes OpenAPI.

Tools that are built on open standards will naturally see greater adoption over those that use proprietary formats.

[0]: https://openapi-ts.pages.dev [1]: https://openapi-enforcer.com [2]: https://stoplight.io/open-source/spectral

We will be adding support for openapi import and design very soon.
We just released v0.22.0 where we nudge the users to save their requests before closing the tab.

Also, Bruno now supports collection level headers, auth, scripts and tests

Learn and use curl, then you won’t have any issues like this. You can make some scripts in Python or something, too.

I say this because the last three tools I used for this all got shitty (postman, insomnia, and thunder client).

I would rather cycle thorough tools than deal with piss poor user experience of something like that.
Seriously, python with the requests lib in a jupyter notebook is always a nicer user experience than any REST API GUI, most importantly once it's grown a bit.
That sounds interesting. Can you post some example? How do you share 'collections'?
One nice thing about FOSS CLI tools is they're easy to script. While it's pretty tough to script general cases, I often find my workflows orbit around a handful of commands, and scripting often can improve the UX by a large margin. It does require tinkering a bit though.
Curl is not sufficient for rapid experimentation against an API.
Depends how comfortable you are with curl and your workflow. I'm much more productive using curl vs any GUI you give me. Still have OpenAPI specs in my projects but curl is much faster initially.
It falls apart instantly when you need to pass data from one endpoint to another or add any sort of logic like filtering through data - so any time you have non-trivial workloads where you don't want to spend half your time fighting against jq or shell.
You don’t have to fight tools if you learn them, but I understand— as a fellow programmer— that you don’t always have time to learn them. However, it’s pretty easy to use pipes and tools like jq to do complex stuff.
While jq is powerful and I use it in scripts, it's one of the least intuitive languages I use, to the point I have to look up basically everything non-trivial.
> pass data from one endpoint to another

`curl ... > out.json` then `curl ... -d out.json`. Wrap it in a shell script for quick iterations.

> filtering through data

`curl ... | jq | grep`. I don't know of any tool that will find what I'm after faster than the shell.

For bootstrapping and quick experiments curl is right there at my fingertips, no need to spin up an electron app, make a bunch of definitions and all that. When I want something more usable OpenAPI serves as stateful and interactive test environment and documentation at the same time.

I do agree curl can get a little verbose but create an alias: `alias jc='curl -H Content-Type: application/json` and using it is as simple as `jc $URL` for GET or `jc -X POST -d '{ ... }' $URL` for the rest of the methods.

I really recommend getting comfortable in the shell, it's amazing how productive it can be and becoming a bit of a lost art these days. All the tools are composable and working together it's so zen.

for individual users, i've not quite got the appeal of postman.

in larger teams, I did see groups of people collaboratively creating various urls/scripts/tests, and putting some docs with them, to help with the dev and testing (mostly qa/test folks). that was, imo, a relatively legitimate use for a full tool like postman.

But is there a VS Code extension for curl?!!? Does it work with ChatGPT?
I think you're joking, but I actually want to know these things when adopting tools now to the extent that it's applicable.
im just making fun of web devs
What's wrong with thunder client?
Weird pricing BS they just started.
Wow, just visited the pricing page https://www.thunderclient.com/pricing

Hadn't noticed this change (I am not a heavy user) but it does look like its heading the postman way. I moved from Postman to Insomnia to Thunder Client. Time for yet another alternative.

Httpyac, to install the VS Code extension, just do:

ext install anweber.vscode-httpyac

I love HttpYac. I use it all day every day.

I stopped using Postman years ago because it got too bloated an "enterprisy".

Also the fact that it syncs all my stuff to the cloud across many consulting clients is a no go. Passwords and other stuff means it is a target for hackers.

Postman is a great product don't get me wrong but my specific use case are around HTTP testing and I want to check everything into version control

We’re building an open-source Postman alternative.

1.6m+ users, 100k+ monthly active users, 55k+ GitHub stars.

Web app: https://hoppscotch.io GitHub: https://github.com/hoppscotch/hoppscotch

But you raised VC funding right?

Insomnia was an alternative to Postman, raised VC funds, eventually needed to justify that, and suddenly accounts mattered more. They're currently on the same trajectory.

Insomnia is open source but just like OP experienced, a single update can do damage and it takes time for the community to react.

Is this the same company that raised? If so, are you exempt from that? Have you figured out some monetization scheme for what is essentially a glorified curl UI that doesn't incentivize account sign ups?

Postman is also open source lol. Unless its donation driven without funding its all going to be the same.
Did you read my comment? (Also Postman is not open source, it just has some open source pieces)
If it's just a "glorified curl UI" what's the problem? Just use curl, or build your own, if it's so trivial.

You are kicking the tires awfully hard for a solution to a problem you claim is easy.

That’s actually what I do and did. I have a whole bunch of scripts that allow me to replicate a lot of what Postman did for me.

The problem with these VC companies is that they enter the market with a whole bunch of lies and I was convinced that building on my ad hoc scripts wasn’t very useful since there were multiple alternatives including open source ones.

It’s taken me a decade however to learn that if these projects are VC backed as opposed to having some sort of govt or heck, even a benevolent dictator, they will screw you.

And while I might have learnt this lesson, which so much of the knowledge ecosystem also being filled with VC backed individuals (including this very forum) a whole another generation of potential OS developers will learn the lesson also too late.

And that’s how Silicon Valley has built a massive eco system to suck money out of everything across the globe, especially open source, but not limited to it (taxis, restaurants, hoteling, everything…).

I think it's fair to criticize them given a fair number of alternatives in this thread (with their own shortcomings). It's kind of silly to post something to hackernews and not expect criticism.
Your defensiveness would be better justified if I was concerned about the curl wrapper... and not the VC firms seeking 10x returns attached to said wrapper
I wish tech product managers could get it through their skulls: creating and maintaining yet-another-account for yet-another-app is high friction and undesirable. If you're going to give me an ultimatum where I need to either create an account or stop using the app. 99% of the time I'm just going to stop using your app.
Disappointing that there isn't a standalone program like Postman. I don't want to install an extension in my browser to handle CORS.
What's the issue with an extension?
I don't particularly enjoy a VC-fueled project having ability to intercept all my browser traffic to handle CORS.
Ah, I follow. I was confused because a small, open-source extension should be sufficient to handle sending test requests. Sounds like they're doing something much bigger than that.

POSTman started as an extension; hence my confusion. I was wondering if there was a technical issue I was unaware of.

Running standalone binaries by a VC-fueled project on your host is even worse.

I guess a separate quarantine browser profile is the best of both worlds?

Having a dedicated browser profile is a good solution to this if you’re ever uncomfortable with a particular extension.
It's a non-starter for me if it requires an extension. I also think it's a matter of time before it goes the Insomnia/Postman route. I'd love to be proven wrong though.
It says on the page the the extension 'enhances the experience ' - it doesn't look like a requirement.
Enhances? Isn't the point to override CORs because the browser will automatically block certain requests. Seems like a pretty critical feature unless all you have are GET requests.
This is how you kill a product. Ill be jumping ship too
Yes, it happened to me as well.

Fortunately I regularly export the collections that still matter.

Now I am no longer a Postman user, as due to NDA's we aren't allowed to store project data on them.

Paying was never an issue, not having a secure alternative is what killed it for us.

I'm sure it's a bug, they have nothing to gain from it, especially if there's no warning about this.

It's also a good reminder for everyone to back up everything!

It's not a bug to release a version which removed a massive chunk of functionality. It's intentionally fucking over their users who are not willing to create an account.
Same. Quite a surprise. I switched to IntelliJ http requests and am seeing how that does for me.
As one of the creators, I can recommmend https://kreya.app. It is not open source (like Postman), but has a strong focus on privacy and also stores the data locally.

As it has more powerful features (IMO) than most alternatives listed here, I am a little disappointed that it isn't mentioned more often.

Kreya is the only alternative I've used that prioritizes gRPC support (along with REST). Regardless of source availability, thank you for creating this!
There's also gRPC support in Postman's signed out version.
Any chance this can be made available via homebrew? Also, are there telemetry settings I can configure? I frequently work in HIPAA and DoD environments, so the less telemetry tools send the happier those sysadmins are.
another alternative: RapidAPI https://rapidapi.com/

it's a good api client, and it's free for individual use and they have some sort of nifty marketplace integration catalog...thing with remote API servers that makes it easy to find and try API services that offer data / functionality you want to connect to.

It was great before it got acquired, (and was called Paw back then) now the product development has virtually stopped.
I’ve used that for years, from back when it was the paid Paw app, and I’ve been happy with it.
I've really been enjoying HTTPie: https://httpie.io/

Postman has long been too bloated to be useful.

On windows I even got to enjoy using Invoke-WebRequest directly. Extremely useful since powershell has structured output and input.
I also found it surprisingly how pleasant this was. For all Powershell’s quirks, this is one of those features that just makes sense to me.
(comment deleted)
I almost ignored HTTPie as a Postman alternative because I thought it was CLI only but learned that it has a GUI now. Unfortunately the GUI seems to be proprietary.

Also we were looking for HTTP/2 support which neither Postman not HTTPie have and found xh which is a HTTPie clone in Rust.

i really like httpie, i didn't know they had an application coming out. This is good stuff.
The GUI is not under an open source license.
I wonder what it is about API client GUIs that warrants such cut-throat competition and practices..
After the whiffs of enshittification caught my nose I did some research and switched over to Insomnia. I don’t make use of any advanced features, just a pre request authentication call that was a little bit of a pain to set up. But it’s working exactly how I was using postman so it’s a suitable replacement for me
Didn't they just push a similar update where they require an account? And pushed all data into their cloud sync without asking?
When I switched over they made it clear they were getting rid of offline mode. So I said whiffs but at that point there was a turd halfway up my nose
There are some extensions for VSCode that let you define your requests in a text file and has ways to run the file and show the data.

Here's one I just found: https://marketplace.visualstudio.com/items?itemName=humao.re...

Syntax looks like:

    GET https://example.com/comments/1 HTTP/1.1

    ###

    GET https://example.com/topics/1 HTTP/1.1

    ###

    POST https://example.com/comments HTTP/1.1
    content-type: application/json

    {
        "name": "sample",
        "time": "Wed, 21 Oct 2015 18:27:50 GMT"
    }
I use it too - it’s excellent, I’d think most developers don’t need more than this.
Yep, me to. Since it's just textfiles I can have them checked into git and share them. Credentials stays in a separate environments file (not checked in). I'm pretty happy with this setup.
I use the VS Code REST extension a lot but it does lack some of the aspects that make Postman easier for teams and larger projects. It's super easy to define a "collection" as an .http page for smaller and one-off needs though.
I use this one for tests on microservices endpoints. Very good at least for my use case. I recommend it.
Is it much better over bash file and curl?
It supports curl inside as well as its custom syntax so this provides the same thing.
Paw (now RapidAPI) is a very good alternative, though I can't say they wont be under the same capitalist pressures as Postman. I paid $50, one time.

https://paw.cloud/

Edit: To be clear it's an app (downloadable client), despite the url.

I'm not sure why you're downvoted. I still use paw/rapidapi and I think it's great. Maybe downvoters can explain.
the mac client probably wont, as they were already bought by rapidapi.com and made web-based client that looks like PAW but has the same issues as other web-based solution
What a joke. Great reason to find a replacement tool.
> Any alternatives that I can migrate to?

If it works for your use case: writing integration tests.

I used Postman in the past but I never really got the point of "storing" queries beyond the history.

I think if you have that need it means it's time to write a frontend to call your endpoints, or use integration tests.

I’ve used alternatives to explore under-documented APIs interactively and suss out their behavior. Then I could use the app’s codegen to turn the query I’d manually crafted into my chosen language’s code.

You can do all that directly in the language, of course, but by the time you go through the trouble of pretty printing the output, parametrizing the input, etc, you’ve reimplemented a less ergonomic version of Postman-and-similar.

(Not saying you’re wrong for doing it your way, but explaining why others might choose a different approach.)

Yes it's definitely not ideal for all situations, this is more for when you own the API.
I’ve been using https://insomnia.rest/ and it has everything you need and does not require you to log in
Sorry, but they pulled a Postman already:

https://news.ycombinator.com/item?id=37680126

No reason to trust them at all at this point.

Is it pulling a Postman if Insomnia did it first?
I lost everything in a update with them too. And not a create-account update. Just a regular update one day, and poof gone.
(comment deleted)
Highly recommend the HTTP client in the JetBrains IDEs. I looked carefully at the standalones in this category and IMHO it’s the best. Text based so you can seamlessly manage everything with your repo, with automatic features built in from parsing the text.
Yes! Postman is git-hostile i.e developer unfriendly.
Bruno is 'git-friendly' as well 'git-pr-flow-friendly' as well as 'developer-friendly'

Checkout things that you can do in scripting in Bruno which no other client does - https://github.com/usebruno/bruno/discussions/385

You'll love it.

This looks great. The JetBrains HTTP client also supports scripting, including pulling in npm packages.
Am I crazy for using curl and editing the shell cmdline with vim when I need to work with lots of headers?
No, but unless portability is a concern or you're massively familiar with curl, you might want to consider xh. It's much more intuitive.

https://github.com/ducaale/xh

I’m not a curl pro but devtools ‘copy as curl’ gets me 95% there most of the time.

That said, thanks! Didn’t know about this. Definitely adding to the toolbox.

xh is based on HTTPie CLI, which I would recommend over xh since it has better docs and more features.
No, I use curl similarly and a lot. Where I find Postman convenient is when using it against services that use OAuth2. You authenticate once, it fetches the token and you are good to go. Could I script this with curl? Sure. Do I want to? Nah.
This can get old fast when debugging things and when piping through jless or something. Having a nice app that stores the request make it easier to come back too after a few days away. But Insomnia and others went wayyyyy overboard with all the sub sub sub projects. I'd like to have something in the middle.
Is this all stuff that you had kept in your Scratchpad? I think Postman had been warning users for months that Scratchpad would be going away, and that you should migrate everything to a workspace.

I'm not saying the decision is right; personally I much preferred the scratch, because it didn't require a freaking network request every time I want to look at my API collections. I'm just saying, this didn't come out of nowhere.