Live data from Hacker News

Paw – Advanced API tool for Mac

paw.cloud

91–100 of 133 posts

Re: Paw – Advanced API tool for Mac

#91
Paw is engineered by a top notch team in France. They care about quality and details. We at Mashape have partnered with them in the past and they are super responsive and always focused on the best experience for the developer.

Re: Paw – Advanced API tool for Mac

#92

I can't believe some of the comments in this thread. Paw is an advanced developer tool with serious functionality for testing APIs, and many of the most upvoted comments are basically just posting links to similar tools, with substantially less functionality, that are free. How many of these commenters make thousands of dollars every month as professional software engineers? How many make thousands each week? Paw is…

Fair point, but I also think that a fair number of HN readers who are the target audience for Paw are not necessarily high paid engineers and are likely home hobbyists or students etc. who are building stuff on the side on a ramen budget. As someone who is trying to bootstrap a SaaS app myself that is currently costing me a around $1000/mth, spending yet another $60 (converted to AU$) is something to think long and h…

I agree with this. I tried paw with the hope to replace postman (because of chromium / electron) but just couldn't convince myself to jump ship.

Paw users, what are things that Paw can do (better) than Postman?

Re: Paw – Advanced API tool for Mac

#93
post #42

As a (somewhat stubborn) adherent to httpie | jq, what do I gain from my $50 going to Paw?

I'm a pretty heavy RESTful API user (feels like what I spend most of my day doing a lot of times), a pretty heavy Paw user and pretty well versed with its feature set, and on the CLI side, curl | jq. So I think I can actually probably answer this pretty well.

Paw helps me compose arbitrary calls faster. It also helps me just keep track of and search API calls really easily, just by searching the request list. I have an API call right there, with the JSON body, and I don't have to pull up the API docs. It's just way better than having a bunch of little shell scripts for these API calls, and better than having a big, ugly, stupid text file full of API calls, because I can execute them, and it really helps in composing them.

It just helps with a lot of little random stuff. Like, if you tell it you're doing a JSON-body form post, and you've got quote marks in there, it'll get those quotes escaped right to get it embedded in the JSON.

If you're a heavy RESTful API user, I'd say just give it a try for a month and see if you feel like it's worth it. I thought it was.

There's command history, and if you're executing calls multiple times in a row and might want to see what changed between them later, the history is great. You can scroll back in your terminal, sure, but you tend to close terminal windows and lose the output. It just keeps everything glued together, it's really much more coherent than trying to throw around a lot of disparate API calls in a terminal with curl (or httpie.)

That being said, I do find it to be complementary to curl | jq. For one, the "keypath" filter in the http exchange pane of Paw doesn't take anything close to a full jq-like syntax. I pretty frequently use the "curl" code generator (it's got an httpie code generator as well, but it doesn't seem that one is as good at shell-quoting edge cases. Not sure who maintains that extension and if it's open-source, but if you love it, you might be able to help fix it if it interferes with your workflow) to copy out the call I composed, and even executed in Paw, so that I can do some jq mangling. (Or i could just copy out the json body if I didn't want to re-execute the call.)

If slinging RESTful API calls is a significant part of your day, you're almost certainly going to find value in something like Paw. It's got a 1 month free trial. I tried it, and didn't really plan to buy it, but a month ended, and I was using it and liked it.

Re: Paw – Advanced API tool for Mac

#94
As someone who just spent 30 minutes setting Paw up for my needs, here is my review. Unfortunately, it is not worth $50. It's not the price point itself, it's the fact that the app is too unpolished to pay any amount. After the first 30 minutes, I won't be continuing - and would not even if it were free.

The application hijacks mouse events for custom widgets that don't function as expected. It takes far too much pointer precision to manage the request list and the groups. Half the time the drag-and-drop glitches so that you are highlighting rows without actually having the item with the cursor. You also cannot drop a group to the end of the list. Similar problem in the environments config window: add a second environment for a variable; the column widths are too short to see the variable's value, so you try to resize the columns and it doesn't work even though the resize icon appears on hover.

The "JSON" response format is hideous and for some reason the default. The "JSON Text" format is what I want and switch to, but this fact is not remembered and every single new response resets back to the ugly xml-tree-like format.

By the way, trying to click the help icon for dynamic values opens the documentation to a page[1] that doesn't load due to an encoded '#' symbol (%23). Again, a sign of a final product with very little QA, being sold at a fairly premium price for which one expects quality.

The UI and interactions are far from seamless. The constant harassment of a popup trying to get me to upgrade is the last straw. When a user is on trial, you don't interrupt their workflow every few minutes.

[1] https://paw.cloud/docs/dynamic-values/response%23Response_Bo...

Re: Paw – Advanced API tool for Mac

#95

I can't believe some of the comments in this thread. Paw is an advanced developer tool with serious functionality for testing APIs, and many of the most upvoted comments are basically just posting links to similar tools, with substantially less functionality, that are free. How many of these commenters make thousands of dollars every month as professional software engineers? How many make thousands each week? Paw is…

Fair point, but I also think that a fair number of HN readers who are the target audience for Paw are not necessarily high paid engineers and are likely home hobbyists or students etc. who are building stuff on the side on a ramen budget. As someone who is trying to bootstrap a SaaS app myself that is currently costing me a around $1000/mth, spending yet another $60 (converted to AU$) is something to think long and h…

I agree, before I buy software or start using something I will search on HN for threads like this to see what criticisms others have and what alternatives other people use. Many times I will find something with the same features but cheaper or open source.

If people stopped making comments recommending alternatives, similar things, and criticisms I probably wouldn't even look at the comments. I don't know if other people use HN like this, but it's the main reason the comments on here are valuable for me.

Re: Paw – Advanced API tool for Mac

#96

As someone who just spent 30 minutes setting Paw up for my needs, here is my review. Unfortunately, it is not worth $50. It's not the price point itself, it's the fact that the app is too unpolished to pay any amount. After the first 30 minutes, I won't be continuing - and would not even if it were free. The application hijacks mouse events for custom widgets that don't function as expected. It takes far too much poi…

For what it's worth, I've been using this app for over a year and I haven't been noticing the issues you're talking about. My request list probably contains hundreds of requests from different projects grouped into folders.

I've tried using postman but it just isn't the same. Paw is much more efficient with screen space, and I love being able to copy any request from Chrome directly into paw and being able to tinker with it right away.

Re: Paw – Advanced API tool for Mac

#97
post #92

Earlier quoted context omitted.

Fair point, but I also think that a fair number of HN readers who are the target audience for Paw are not necessarily high paid engineers and are likely home hobbyists or students etc. who are building stuff on the side on a ramen budget. As someone who is trying to bootstrap a SaaS app myself that is currently costing me a around $1000/mth, spending yet another $60 (converted to AU$) is something to think long and h…

I agree with this. I tried paw with the hope to replace postman (because of chromium / electron) but just couldn't convince myself to jump ship. Paw users, what are things that Paw can do (better) than Postman?

As the founder of Paw, I'm certainly biased, so I'll stick to the facts. Paw has "dynamic values" which lets you inline computed components in any field of your request: useful for pointing to values from other requests, previous responses (parsing is done on the fly, no need to refresh), which is useful if you want to send back an auth token returned by a previous request. Dynamic values can do also stuff like MD5/SHA hashes, HMAC, URL/hex/base64 encode, timestamps, randomizers (Chance.js, JSON schema faker) with no code required (you can write custom JS snippets too if ever needed). For example, we once demo'ed the Algolia guys that their custom HMAC-based signature for client-side search was doable with no code. So, if you have the need, you can do custom stuff easily.

Also, extensions (many are built by users) are bringing lots of extra features we would have not thought about ourselves: https://paw.cloud/extensions/

Environment variables in Paw can be nested or computed (with "dynamic values" described above). It can be useful, for example, to have an "Auth" variable that contains a pointer that accesses the "user.access_token" JSON path from inside the latest Login request, so you can later simply point to the "Auth" variable everywhere else. One other thing about envs, is that you can have independent groups of environments: a typical example is you have a "Server" group with envs called "Prod", "Staging", "Local" and independently a setup with user credentials or variables that are more like static globals (AWS Keys, etc.)…

Now regarding to the team syncing service, "Paw for Teams". It has branches, snapshots and full history. In a dev team, it means one dev can experiment stuff on the schema for API v2 while others are fixing bugs on API v1, and when API v2 is ready they can seamlessly merge the new updates back to the v1 branch. Also, we've made the choice not to be real-time synced, because it doesn't fit well to software development: when I'm experimenting stuff with an API I don't want others to be polluted by my temporary garbage. So instead you "commit" changes only when ready. More about Teams here: https://paw.cloud/teams

Last but not least, Paw locally encrypts with a randomly generated symmetric passphrase all credentials you enter in your projects, that means your server keys, access tokens, etc. are a lot safer. And now that you can (optionally) sync with Paw's backend, we certainly don't want to have your secrets in cleartext on our infra. As passphrases are never uploaded (obviously! but by default stored in OS X Keychain), it's the users responsibility to safeguard them and share them with their team (on 1Password or similar).

Re: Paw – Advanced API tool for Mac

#98
I understand that ISVs pick Mac because that's where most of the paying customers are but the OSX monoculture oozing from Bay Area today is even more tiresome than the Wintel monoculture of yesteryear.

Ask authors of Macaw what good it did them or did Web flow actually eat their lunch.

As far as I am concerned if a dev tool isn't three platforms crossplatform it didn't need to exist at all. Don't be surprised if it's another "yeah I remember them" niche thing in a couple of years. Existence of Postman and Insomnia is already a burden for this product, being OSX only will likely limit it's eeach to Starbucks dwelling hipsters from SoCa.

Re: Paw – Advanced API tool for Mac

#99
post #53

Earlier quoted context omitted.

AFAIK its import/export features are plugin based. Write it!

That's very true :) You can write custom extensions for Paw, and they can be then shared with the community. But anyway, there's already a HAR importer, you can install it here as an extension https://paw.cloud/extensions/HARImporter Also, we're working on a powerful API format transformer that we will release more officially soon, but it's already on GitHub: https://github.com/luckymarmot/api-flow That will allow us…

Extension APIs mostly are a minus. It's mostly used as an excuse for not shipping features.

Re: Paw – Advanced API tool for Mac

#100

This is an honest question, I'm not trying to be negative but I'm really confused. It would seem like best practices is that all of this is part of your automated tests. Tests that are checked in to your repo and written in code and part of your CI. How does a native app that is OSX only fit in that scenario? Or maybe I'm not understanding it?

As ing33k mentioned, Paw isn't an automated testing tool (at least not yet), but rather an app where you can experiment with your or others APIs to check if things are working, and have a visual feedback/confirmation of what you're doing.

But that's actually a great question. We are asking ourselves the same here at Paw: should our app offer a testing/assertions feature?

Our own server backend is in Django using the Django REST Framework (it's an amazing tool btw) and clearly unit testing done inside the web framework is the right thing to do. Good frameworks have mocking libraries, and unit tests allows you to exercice all parts of the code (not only API facing). So why testing in an app like Paw? And should we encourage "bad practices" with a new feature that encourages users to have request/response assertions in our app instead proper unit tests?

First, everyone isn't writing tests ;) And sometimes maybe for good reasons (quickly putting together an MVP…). Assertions can be a quick alternative before writing proper unit tests. But mostly, we were thinking about assertions in Paw as a great way to do quick integration testing. For example, we've released Paw 3 recently, pushed server updates on an hourly basis, and we had no way to verify after a deploy that all the website's pages were up and that API endpoints were behaving as expected. Sure, the CI was saying that tests are passing, but who knows if someone has changed settings on AWS or on 3rd party tools (Stripe, Algolia…)? We would have loved to have assertions ourselves…

Post reply on HN