5 million developers use Postman. You should too!
Download the free app today
Native apps
Choose your platform:
Postman for Mac
for OS X Yosemite or later
Postman for Windows
for Windows 7 or later
Postman for Linux

If you want to be first in line to experience new features, download our latest Canary builds.

Download Add-Ons

Automated testing with Newman

Postman's command-line companion lets you do amazing things! With Newman, you can integrate Postman collections with your build system. Or you can run automated tests for your API through a cron job.

Capture and inspect with Interceptor

Postman interceptor brings the power of your Chrome window to Postman! You can set custom headers (including cookies) from within Postman, and view cookies already set on the domain. You can also capture requests being sent from Chrome and import them into Postman. This makes building APIs a breeze!

Features and updates
3.7.510 Jul, 2017
  • Bumped Collection SDK to v2.0.2, which contains ProxyConfig improvements (#1110)
  • Ensured that failed fetches from resource URLs result in a non-zero exit code (#1115)
  • Fixed a backward compatibility bug related to Buffer construction in the HTML reporter (#1105)
3.7.429 Jun, 2017
  • Corrected response.body reference in the HTML reporter (#1099)
3.7.328 Jun, 2017
  • Restored response.body in the data supplied to the HTML reporter template. (#1098)
3.7.223 Jun, 2017
  • Updated postman-runtime to v6.2.1, which contains a critical bugfix for authorization with variables
3.7.119 Jun, 2017
  • Updated postman-collection-transformer to v2.1.4 (#1082)
3.7.019 Jun, 2017
  • Fixed a bug that caused empty results in response.json() / response.text() (#1080)
  • Support for second generation scripting sandbox with support for limited require
  • Addition of assertion functions on request and response
  • Added MomentJS to the sandbox
  • Added support for authorization mechanisms and IO events
3.6.19 Jun, 2017
  • Ensured that process.stdout is flushed in CLI mode (#1026)
  • Fixed HTML reporter TypeError for failed requests (#1062)
  • Updated JUnit reporter to add time attribute to testsuites and testcase elements (#1039)
3.6.012 May, 2017
  • Introduced the all new pm.* API
3.5.217 Mar, 2017
  • Update postman-runtime to v5.0.0, which uses CertificateList for client side SSL
3.5.114 Mar, 2017
  • Fixed a bug which caused some test results to not be displayed (#949)
  • Merged aggregation partial into base HTML reporter template
  • Allowed options.iterationData to be specified as an array of objects in programmatic usage
3.5.07 Mar, 2017
  • Added support for multi level folders in the cli, html and junit reporters
  • Updated postman-collection to v1.0.0, which contains helper methods for dealing with multi-level folders
3.4.331 Jan, 2017
  • Updated postman-runtime to v4.0.3, which contains bugfixes for URL parameter encoding
  • Updated postman-collection to v0.5.11, which contains bugfixes for UTF-8 encoded responses, and variables in URL hosts
3.4.29 Jan, 2017
  • Fixed a bug in the CLI reporter for Newman programmatic usage (#859)
3.4.16 Jan, 2017
  • Fixed Buffer compatibility issue for Node v4
  • HTML reporter works correctly for failed requests
3.4.029 Dec, 2016
  • Updated `postman-runtime` to v4.0, which has a lot of memory usage improvements
  • HTML reporter now contains folder information
  • Added `--color` option to force colored output in non-TTY environments
3.3.114 Dec, 2016
  • Added more details to the HTML reporter
  • Updated `postman-collection` to the latest version which contains a bugfix for OAuth1 with realms
  • Updated `postman-runtime` which has a few fixes for browser based workflows
3.3.021 Nov, 2016
  • Added options to provide client-side SSL certificates on the command line
  • Updated the versions of `postman-runtime` and `postman-collection` libraries
3.2.018 Oct, 2016
  • Ensure that environment exports are consistent with the app
  • Simplified the importing logic for environment and globals
3.1.23 Oct, 2016
  • Updated `postman-runtime`, `postman-collection` and `postman-collection-transformer` dependencies
3.1.121 Sep, 2016
  • Fixed a bug which caused HTML reporter statistics to be incorrect
  • Added an option `--disable-unicode` to forcibly disable unicode symbols in the output
  • File based options in newman.run (environments, data, globals) can now be specified as JSON objects as well
  • Updated to the latest version of Postman Runtime, which contains a number of memory optimizations
  • Specifying an iteration data file now results in the correct number of iteration runs
3.1.025 Aug, 2016
  • Fixed issue with environment and globals export format was using wrong property names (GH:553)
  • Fixed issue where `--export-*` CLI option did not work with no parameters
  • Added support for `postman.getResponseCookie` in the script sandbox
  • Prettified HTML report template
  • Added support for custom HTML report templates via `--reporter-html-template` flag
  • Added file upload support
  • Fixed a bug in the timeout request flag: #547
  • Updated runtime dependency to 2.4.4
  • Fixed a bug that caused incorrect iterationCount detection
  • Better error messages
  • Fixed a bug that caused incorrect exports of environment and global values
  • The export parameters now default to `/newman/*`
  • Added a new CLI option, `--silent` which ensures Newman does not write anything to the terminal
3.0.110 Aug, 2016
  • Fixed an issue with CLI exit codes not behaving as expected
  • Addressed issues with URL query parameter parsing
2.1.230 Jun, 2016
  • Latest version of the Postman Collection Transfomer - v2.1.2
  • [Bugfix] Requests containing file fields from the Cloud API are now handled correctly
2.1.17 Jun, 2016
  • Updated the version of the Postman Collection Transfomer
  • [Bugfix] Newman no longer breaks if "header" is empty in a collection
  • Updated the lodash version
  • Pinned the version of underscore library
2.1.026 May, 2016
  • Added support for the Postman Cloud API
2.0.922 Apr, 2016
  • Fixed a bug where OAuth1 helper failed with URLs containing variables. (postman-app-support#2011)
2.0.818 Apr, 2016
  • Better handling of Request timeouts (@ramblinwreck35)
  • Fixed errors with HEAD requests on Node v5
  • Support for "deflate" encoding
2.0.713 Apr, 2016
  • Fixed #377 (Function variables in the request body not being replaced)
2.0.65 Apr, 2016
  • Fixed redirect behavior (redirects on POST requests are now followed by default)
  • Added an option to replace Unicode symbols with text (for older terminals)
2.0.524 Mar, 2016
  • Fixed Postman.GH#1903 (request.data object inside the sandbox)
  • Fixed #361 (Better formatting of HTML report)
  • Fixed a bug in Hawk Auth, where nonce generation resulted in an error
2.0.424 Mar, 2016
  • Allow PATCH and DELETE requests to have a request body, fixes GH#360
2.0.318 Mar, 2016
  • Fixed listeners not being removed after a collection
  • Added support for postman.setNextRequest
2.0.215 Mar, 2016
  • Removed check for empty strings from CSV to be consistent with Postman (by @bwolski)
  • Fixed AWS Auth with raw body (Github #345)
2.0.11 Mar, 2016
  • Added support for custom ports in AWS Signature v4 auth (by @harshavardhana)
  • Updated postman-collection-transformer version
1.3.017 Feb, 2016
  • Added support for console.* functions (error, warn)
  • Fixed a bug which caused a crash when the request data is empty
1.2.292 Feb, 2016
  • Fixed #310 (Better error messages)
  • Fixed #311 (Response body logging in verbose output)
  • Fixed #320 (Variable replacement for special variables "{{$guid}}" etc)
1.2.288 Jan, 2016
  • Fixed handling of null values to be compatible with Postman
  • Fixed a bug in handling of OAuth
1.2.2718 Dec, 2015
  • Set default service name to API Gateway for AWS Authentication
1.2.2618 Dec, 2015
  • Fixed json traversal https://github.com/postmanlabs/newman/issues/301
  • Added support for AWS Signature v4 authentication
1.2.251 Dec, 2015
  • Added support for Hawk Authentication
1.2.2427 Nov, 2015
  • Added `name` and `description` to request object in the Sandbox
  • Fixed null OAuth params https://github.com/postmanlabs/postman-app-support/issues/1543
  • Fixed a bug where GZip requests failed for no reason
1.2.2320 Oct, 2015
  • Empty data array fields don't cause errors
1.2.2218 Oct, 2015
  • Adding option to limit recursive resolution depth
1.2.2124 Sep, 2015
  • Adding --whiteScreen flag
  • Adding option to print all requests and responses in a file
1.2.2024 Sep, 2015
  • Adding -R option to block redirects
  • Adding sugarJS number prototype
  • Adding clearVariables sandbox function
1.2.1914 Sep, 2015
  • Fix for https://github.com/postmanlabs/postman-app-support/issues/1329 (Backslashes in variables)
  • JSON.parse shows parsing errors, if any
1.2.187 Aug, 2015
  • When used as a library, the callback returns the exit code correctly
  • Form fields that are disabled are not sent
  • CryptoJS (https://code.google.com/p/crypto-js/) available in the test/pre-request script sandbox
  • Repository link updated in CLI
1.2.171 Jul, 2015
  • -x / --exitCode works correctly in standalone/library mode
1.2.1618 Jun, 2015
  • Custom paths to export environment/global files after the run
  • Support for custom request timeouts
  • Jenkins-compatible JUnit output
1.2.1519 Mar, 2015
  • Support for authentication helpers (Basic, Digest, OAuth1.0)
1.2.1413 Mar, 2015
  • Removing dead code for BOM-removal. This also fixes zero-length body cases
  • Adding support for commas in data file fields, and double-quotes to surround fields (in line with Postman)
1.2.1324 Feb, 2015
  • Set Jsdom version to 3.x.x for NodeJS-compatibility
1.2.11/1213 Feb, 2015
  • Node v0.12.0 supported
1.2.1013 Feb, 2015
  • Incorrect rawModeData being handled properly
  • New sandbox method - xml2Json added. Compatible with POSTMAN
  • Envs and Globals set in scripts are available in the env and global arrays instantly
1.2.92 Feb, 2015
  • SugarJS object definitions working as expected - https://github.com/a85/Newman/issues/176
1.2.830 Jan, 2015
  • Spaces in variable names working
1.2.720 Jan, 2015
  • Accepting truthy/falsy values as test results
1.2.617 Jan, 2015
  • Fixing tests for different names across iterations
1.2.514 Jan, 2015
  • Correcting jUnit export format
  • Test results are now parsed consistently (truthy/falsy values are accepted)
1.2.420 Dec, 2014
  • Fixed command-line flag for HTML report
1.2.316 Dec, 2014
  • Fixed jQuery dependency issue
1.2.18 Dec, 2014
  • Added HTML reporting capability
1.2.02 Dec, 2014
  • Adding option for jUnit-style output of test runs - Courtesy @pal-thomassen (BETA)
  • Configurable SSL/TLS behavior while running collections - Courtesy @gituser4
1.1.94 Nov, 2014
  • Summary correctly shown for folder-only runs
1.1.84 Nov, 2014
  • Iteration-wise summary is shown by default
1.1.723 Oct, 2014
  • postman.clearEnvironmentVariables() and postman.clearGlobalVariables() available to clear environment and global variables
  • postman.getResponseHeader(headerKey) available to get response headers in a case-insensitive manner
1.1.630 Sep, 2014
  • Postman backup files can now be imported
1.1.522 Sep, 2014
  • Test cases with semicolons in them work properly
  • HttpStatusCodes and descriptions are in-line with Postman
1.1.418 Sep, 2014
  • Corrected version number
1.1.317 Sep, 2014
  • {{$randomInt}} works as expected
  • {{$guid}} functionality added
  • atob and btoa functions now available in tests and pre-request scripts
  • Added an option to exit with code=1 if any test in the collection fails
1.1.213 Sep, 2014
  • Ability to add a delay between requests
1.1.12 Sep, 2014
  • Newman handles the latest version of Postman collections
1.1.019 Aug, 2014
  • If used as a library, the exit code is now passed to the callback function
1.0.929 Jul, 2014
  • Header names are now converted to title case (Content-Type, instead of content-type)
  • An explicit iteration count overrides the data-file
  • No separate global file is needed to use global variables
1.0.77 Jul, 2014
  • Https requests are now handled by newman.
  • Form data can now be taken from data files
  • No separate environment file needs to be specified to use env. variables
  • Wrong env file paths print a human-readable error message
  • "http://" is prefixed to urls without (if not already present)
  • Data files do not overwrite all env properties
  • Can run only folders by specifying -f
  • Pre-Request scripting