Postman Meetup And Learnings

Postman organised a developer’s meetup at it’s main office at Bangalore on 31st August 2017. Started as a chrome app to facilitate API calls (no more CLI and no more tedious cURL) postman has come a long way. Postman has features for the entire api development life cycle. From creating mock end points, pipeline to sending/receiving/inspecting requests in an environment which supports environment and global variables like Operating Systems do, pre-request and test scripts in a powerful javascript sandbox, managing collections, creating groups for collaboration, documentation of APIs and hosting them, running collections on cloud as periodically for monitoring purpose. They also have a powerful CLI tool called Newman to run collections. This could be handy when your api provider has some whitelisted IPs and you can’t test those API locally in your system. Well, just export your collections to a json and run that collection in your server using Newman. It’s hassle free and lightweight. The list goes on and on.

As a software developer my work is pretty API intensive and have to deal with them on a daily basis. Postman has always been the goto app to prototype API development as well as Integration. But we all know the Pareto Principle: 80% of the people use 20% of the features of the product. In my current workspace, I know developers who don’t even use collections and use Postman as glorified GUI cURL tool. Well, the meetup was certainly an eye opener and hit me with the fact that it’s very important to become a power user of whatever tools you use as a developer, Aim to automate maximum stuff possible and set up a pipeline for the execution of the tasks at hand.

left: Abhinav (Postman CEO) during the meetup

Stories and use cases of postman have gotten more and more interesting and evolving overtime.

Insights

  • Write code around API(design first) : APIs are everywhere and they have enabled a plethora of possibilities to innovate product wise by consuming various services and coordinating them well. Write API specification first (input-output, etc) and create mock end points (Postman allows to do just that, you also just could hard code but it would not be as effective). Desktop, mobile, web developers can start consuming API before they are written halving the production life cycle. No one has to wait.
  • How postman dev team uses postman for their own dev cycle. Checking CI/CD status, Monitoring cloud AWS health, maintaining that all api end points are up and also functioning ‘correctly’, thanks to scripts (pre-request and test (post-request) )

Here is my short guide to becoming a Postman power user:

  • Start making collections. Categorise your APIs accordingly. All end points request bodies, are saved and stay synced.
  • Use Environment variables and Global variables so that you can update everything at a go. No need to go over each request in your collection and change the auth key for example.
  • Write Test scripts (check response code, response body message, string containment)
  • Write pre-request scripts to perform tasks just before sending request. One way I used this feature recently was something like:
  • Export collection (json) and run it via Newman cli (faster,easier and lightweight)
  • Run collection in cloud (monitor), get notifications on email (periodic)
  • Inspect entire request and response in postman console

How people are using?

This one comes from the postman blog. Sikka has hosted all their public api with documentation using Postman. All dev has to do with import it to postman and the working prototype is ready without almost any effort. Now dev can go about incorporating those api into his/her own product. Further, there is no worry about updating end points and API specs since all are synced by postman. This is already a big step up for execution of API driven products.

Help and Support

Postman dev team is very supportive and so is the user community around it. Postman slack is a pretty good place to get help from postman dev and professionals as well as request new features.

one of my queries turned out to be a major wip feature-request