Postman: The Complete Guide - REST API Testing
4.5 (4,489 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
24,355 students enrolled

Postman: The Complete Guide - REST API Testing

Postman API testing for manual and automated tests. Automate with Newman, Jenkins or any other CI tool.
4.5 (4,489 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
24,363 students enrolled
Last updated 7/2020
English [Auto], French [Auto], 6 more
  • German [Auto]
  • Indonesian [Auto]
  • Italian [Auto]
  • Polish [Auto]
  • Portuguese [Auto]
  • Spanish [Auto]
Current price: $27.99 Original price: $39.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 13.5 hours on-demand video
  • 20 articles
  • 18 downloadable resources
  • 2 coding exercises
  • Full lifetime access
  • Access on mobile and TV
  • Assignments
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Create GET, POST, PUT, DELETE request
  • Understand GET vs POST request method
  • Work with real-world APIs (Github API, Trello API)
  • JavaScript basics for tests
  • Write API tests in Postman
  • Use data from Excel files (CSV) or JSON
  • Use Postman variables to create workflows and scenarios
  • Run API tests with Newman in Jenkins, GitLab CI or TeamCity
  • Use OAuth2, API keys, tokens, JWT, basic auth
  • Test file uploads
  • Use mock servers
  • Collaborate using Team Workspaces
Course content
Expand all 135 lectures 13:53:37
+ Introduction and first steps in Postman
5 lectures 35:53

In this lecture, I wanted to give you an overview of the entire course. 

Preview 04:20
About this Postman course

Let's just recap what you have learned in this lecture.

First steps in Postman
6 questions
+ Creating with API requests
7 lectures 50:20
Note about requestbin

In this lecture we look at all the aspects involved when creating a request with Postman. We will cover different HTTP methods, how to manage complex URL parameters  and path variables, different headers and body types.

How to create a request in Postman

This video will show you how to easily create Postman request by importing them directly from your browser.

How to import a request from your browser in Postman

Let's have a closer look at responses in this lecture.

How to inspect HTTP responses in Postman

This lecture discusses how to deal with cookies in Postman.

Handling cookies in Postman

So the API you are calling is not working? Don’t panic and keep calm because in this lecture I will show you a couple of tips on how to troubleshoot the most common problems in Postman.

Troubleshooting Postman issues

Saving requests ensures that you can later run the again or share them. In this lecture we deal with exactly that.

Saving requests to a collection in Postman
In this assignment I have prepared a couple of tasks for you to solve.
Working with API requests
8 questions
+ Writing tests and scripts
7 lectures 34:17

In this section your are going to start writing tests but at the same time explore more features of Postman such as variables and environments for adding a dynamic behaviour to your requests, workflows and scripts for more advanced scenarios.

The Postman Cheat Sheet & Quick Reference Guide

Let's write a simple test together and understand how everything works.

Preview 07:22

In this and the following lectures, you will be testing a real-world API and at the same time discover more and more feature of Postman.

We will take’s API (which is an online tool for managing lists and tasks) and create and test a few requests.

Testing an API
Testing an API - Writing more tests

In this tutorial, I wanted to explain the difference between path params and query params and will exemplify this in Postman.

Recap: Path parameters vs query parameters
Starting from the previous lecture, you will call additional endpoints using the trello API in order to create a complete workflow.
Create additional requests and tests
6 questions

Now let's refactor the tests that we have written so far, so that they are easier to read.

Refactoring Tests
+ Writing tests and scripts using variables
10 lectures 01:04:35

Variables allow you can create more dynamic requests. 

Postman allows you to save repetitive information in a variable (which is very similar to what a variable is in any programming language). The main motivation for using variables would be to not repeat yourself.

Variables in Postman

This lectures explain what are global variables and what is their scope.

Global variables

This lecture discusses environment variables, which are defined inside environments, are quite similar to global variables but they have a more narrower scope, which means they are more specialised.


Postman 6.2 introduces a new feature called sessions, which allows you and your team to work more effectively through the addition of session-specific collection, environment, and global variables also called session variables.

In this video, I will show you how to configure and use session variables.

Session variables (new in Postman 6.2!)

Bulk editing has been removed in Postman 6.2 but in this video I will show you a way on how you can achieve the same result.

Bulk editing removed new in Postman 6.2!)

This lecture deals with pre-request scripts, which are similar to test scripts except as the name implies, pre-request scripts give you a chance to modify the request but before the actual HTTP request is made. 

Pre-request scripts in Postman
We already have a created a few requests which are linked to each other. The goal of this exercise is to practice variables and to reduce the amount of manual work needed in order to test the API.
Make the requests dynamic by taking advantages of variables
4 questions

In case you are confused about the different variable types in Postman (global, collection, environment, local, data variables), this lecture is a good way to get an overview.

Understanding different variable scopes / types

In this video i will show you how to setup different URLs for different servers / environments. 

How to setup different URLs using environments in Postman

This lectures deals with debugging tests and scripts using the Postman Console.

Debugging tests
Notice about the old Postman scripting API
+ Hands-on Practice: Building & Testing an API workflow using Github & Twilio
14 lectures 29:49

This section gives you the opportunity to practice the skills you have learned so far. It uses real-world APIs to help you gain even more practical experience.

In this section lecture we will use the Github API to create a simple workflow.

We will create a new git repository, post an issue with some content, comment on that issue and so on. We will introduce 2FA authentication in the game and work with the Twilio API to receive a text message (SMS).

So if you have the time, this will be a fun project to work on.

About this section
Introduction to the Github API (provide collection and first request)
In this assignment, you will use the Github API to create a simple workflow.
Create a simple workflow using the Github API
2 questions

This lecture briefly explains what Two-Factor Authentication (2FA) is.

Introduction to 2FA
Setting up 2FA on Github
Setting up 2FA in Postman
Automating two-factor authentication (2FA) workflow - overview
Introducing twilio
Get a new Twilio phone number & 2FA setup
Setting up 2FA on Github with Twilio
Troubleshooting why Twilio did not receive the SMS
Assignment: Read the SMS code and replace it in the workflow
Using the Twillio API in Postman
Additional assignment
+ Advanced assertions
7 lectures 48:10

Overview of the assertions section.

Section overview

Let's understand what are the prerequisites for writing assertions. 

Postman assertion basics

Short introduction to the Chai JS assertion library used in Postman.

Chai Assertion Library

Let's make sure you have a good understanding of the basics when using the Chai Assertion Library.

Chai Assertion Library
4 questions

In this lecture we will have a look at an example on how to make assertions on nested JavaScript objects and arrays.

Assertions on arrays

In this lecture we will have a look on how to make assertions on nested JavaScript objects.

Assertions on nested objects

Sometimes it is needed to test headers and cookies as well. This lecture deals with that.

Testing headers and cookies
+ Automatically running tests
20 lectures 01:26:56

In this short lecture I wanted to give you an overview of what you will learn in this entire section. 

What we want to achieve is to run the entire collection (one request after another) and to get an overview of successful or failed tests. There are multiple ways to automate things and next I will give you an overview.

Preview 03:10

The collection runner is included in Postman and facilitates the first step toward automation. It is a useful way to run the entire collection or just a subset of it (by selecting a specific folder) without any other external tools.

Postman collection runner

Postman Monitors allows you to run your collection at regular intervals. While this is a Pro feature, you can still try it out with a free account (currently you can make 1000 API calls per month).

Postman monitors
Automating with Newman (Overview)
Short introduction to NodeJs and NPM
Installing Newman
Troubleshooting Node.js / npm / Newman Problems (for Windows)
Running a collection with Newman

This video shows how you can update fro Newman v3 to Newman v4 and briefly presents what has changed.

Newman v3 to v4 Migration Guide
3 ways to access your Postman collection from Newman
Specifying environments with Newman
Prerequisites for running Newman on Jenkins
Troubleshooting Jenkins Problems (for Windows)
Troubleshooting Jenkins Problems (for macOS, Linux)
Running a collection with Jenkins and generating a report
Creating an HTML report in Jenkins

This lecture explains how you can use a 3rd party reporter to generate nicer HTML reports.

Generating better HTML reports

This lecture looks into customizing HTML reports generated by Newman.

Customizing HTML reports
Troubleshooting HTML reports
Running a collection from a Git repository with Jenkins
+ Running Newman with other CI servers / tools
5 lectures 44:49

In this lecture explains how you can use Gitlab CI to automate the execution of Postman tests. It will be using the official Newman Docker image.

Gitlab CI

This videos deals with running Postman tests in TeamCity with the help of Newman.


Short introduction to Docker.

Short introduction to Docker (optional)
Running Jenkins with Docker
Running Newman with Docker
+ Workflows and Scenarios
4 lectures 13:52
Creating a basic workflow / scenario
Advanced workflows
In the previous sections, you have created a lot of boards what you probably do not need anymore and where you no longer have the IDs in order to delete them. Notice: This step requires some JavaScript know-how to complete. Let's have a look if we can a solution to this problem.
Clearing unused Trello boards
7 questions
Multiple workflows with the same collection
+ Data driven tests: Running a request multiple times with different data sets
4 lectures 34:34

In this video I will show you how you can take advantage or pre-request scripts and workflows to submit the same request over and over again but with different data each time.

Using workflows to create data-sets

In this lecture you can learn the basics of using external data files to generate multiple iterations in Postman.

Using external data files - Basic usage

In this lecture continues the previous lecture and shows how to adapt the tests and scripts when using external data files and data variables.

Using external data files - Writing tests

In this lecture continues the previous lectures and shows more advanced use-cases for data variables and iterations.

Using external data files - Advanced usage
  • Basic programming and/or JavaScript knowledge is required (needed for writing tests)
  • Basic HTTP knowledge required (address, message body, headers, cookies, ...)
  • Basic knowledge about RESTful APIs and JSON
  • Basic Jenkins experience, if an integration with Jenkins is desired
  • Basic NodeJS/NPM experience (needed for test automation)
  • Optional - Basic Docker experience (for Jenkins or Newman)
  • A computer with Windows, macOS or Linux is required for viewing the lectures and installing Postman. Using a mobile phone is not recommended.

RESTful APIs (or simply REST API) are everywhere nowadays but at the same time they are getting more complex to get started with: different HTTP methods,, headers, cookies, dealing with file uploads or authentication with api keys, tokens, OAuth and so much more.

But before you start investing time writing code to retrieve the data the API is offering, why not test the request first to make sure everything is working as expected?

This is where the Postman App comes in! Postman allows you very quickly create a request with the required HTTP method and parameters, submit the request and easily inspect the results.

Postman can help if you are developing APIs as well! I have created this course for testing engineers and well as for software developers.  Postman can help you during the development of your API as well as after the API is completed, by running tests that make sure your API is still working as intended.

In the first part of the course we will start exploring the features of Postman and continue by writing API tests with the intention of integrating them in a CI server where the tests will run on a current basis.

But this is not the normal course you take part in. Because your needs may be different and because I hate leaving you wondering what to do next, the second part of the course will include user questions and answers to problems that were not yet covered in the course or that are more specific and may not interest everybody.

So let’s look at what you are going to learn:

  • Start with simple requests and advance towards more complex scenarios

  • Learn to deal with authentication / authorization mechanisms like Basic Auth, API Keys, or OAuth.

  • Start writing API tests

  • Organize tests in collections and share them with your team

  • Run API tests in Jenkins or any other CI server

  • You ask, I answer

So after this course you will know how to use Postman as a pro.

Excited to learn Postman? Sign-up up today!

Who this course is for:
  • This course is targeted towards testing engineers and developers.