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.

  • Stopher@reddthat.com
    link
    fedilink
    English
    arrow-up
    4
    ·
    1 year ago

    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

    • MaungaHikoi@lemmy.nzM
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      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?

  • alchemist_dev@programming.dev
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    1 year ago

    xh and tiny shell scripts.

    Example: sign-up-forbidden-username.req

    #!/bin/bash
    xh POST http://0.0.0.0:2884/sign-up usename=admin password=pw
    

    to run ./sign-up-forbidden-username.req

    This returns 403 and “Username is unavailable”

    https://github.com/ducaale/xh

    xh is a rust implementation of httpie. They’re going for full parity, and works really well for what I need it for so far You can also read input from a file. Which IMO makes GUI API testing seem silly.

  • snowe@programming.devM
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 year ago

    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.

  • Earl Turlet@lemmy.zip
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I use Hurl. Everything is just a text file:

    POST https://example.org/api/tests
    {
        "id": "4568",
        "evaluate": true
    }
    
    HTTP 200
    [Asserts]
    header "X-Frame-Options" == "SAMEORIGIN"
    jsonpath "$.status" == "RUNNING"    # Check the status code
    jsonpath "$.tests" count == 25      # Check the number of items
    jsonpath "$.id" matches /\d{4}/     # Check the format of the id
    
  • Gushys@programming.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    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

      • Icarus@lemmy.ml
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        can you elaborate a bit on that ? I’ve only used curl from cli and never used .curlrc. and what’s curlie ?

        • pfrost@sh.itjust.works
          link
          fedilink
          English
          arrow-up
          2
          ·
          1 year ago

          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.

  • abhibeckert@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    1 year ago

    I recommend Visual Studio Code and one of the following two extensions:


    Either one isn’t really the full picture - you’ll ned to combine it with other extensions - such as a good JSON language extension (which will give you syntax highlighting, error checking, code folding/etc.

    The most important extension is CoPilot. That’s the killer feature which makes Visual Studio Code vastly better than Postman.


    Thunder is very similar to Postman. Not much to say other than it works well, it’s free, millions of people use it.

    It’s not really my cup of tea, but I do think it’s better than Postman because you can use your own version control servers to collaborate with colleagues, which is generally better (and cheaper) than Postman’s collaboration service in my opinion (you get diffs, code review, pull requests, history, etc etc for all your most important API tests).


    Personally I prefer REST Client (also free, and has even more users than Thunder).

    REST Client is really simple. It adds a new “HTTP” text file type. You simply type a HTTP request into the file and hit a hotkey (or click a button) to execute the request. And it shows you the response. Easy.

    HTTP requests and responses are just plain text, and you can simply save those as files in your project. REST Client also has basic support for variables, API credentials, etc. Not quite as user friendly as Postman or Thunder Client, but it makes up for that by being straightforward and flexible.


    CoPilot Chat, works with both, but having everything in plain text gives it more control over REST Client than Thunder Clinet you can write (and edit) your requests with a series of simple plain english prompts. E.g. “JSON request with a blog post body” will give you:

    POST https://example.com/blog/posts
    Content-Type: application/json
    
    {
        "title": "My First Blog Post",
        "body": "This is the content of my first blog post. It's not very long, but it's a start!",
        "author": "John Doe",
        "tags": ["blogging", "first post"]
    }
    

    You might follow that up with “Add a UUID” or “Add a JWT auth header”.

    Copilot can answer questions too - e.g. “How do I unsubscribe a user with the Mailchimp API?” They use the “HTTP PATCH” request type - WTF.

  • johntash@eviltoast.org
    link
    fedilink
    English
    arrow-up
    0
    ·
    1 year ago

    Another vote for Insomnia if you want something postman-like (sortof). But also check out hurl if you’re looking for something more test-oriented.

    • prwnr@programming.devOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      I see that Hurl is much alike the Jetbrains HTTP Client. maybe I could give that one another try or the Hurl as this way of writing requests is more “developer-like” and looks neat

    • prwnr@programming.devOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      real madman. I remember using JMeter few years ago and it was a nightmare. Did it improve over the last 5 years?

  • pimterry@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    1 year ago

    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 😁

    • abhibeckert@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      1 year ago

      The big three for me are:

      1. For a given project, maintain a list of HTTP requests I often need to send
      2. Some way to save responses, so I can compare how the server does respond to how it previously responded.
      3. 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).