Command-line runner (CI and schedulers)
Run collections without opening the app, like Postman's Newman. The runner needs Node.js 22+:
npm install -g github:gethttpdash/httpdash # or, in a clone: npm run cli -- run …
httpdash list backup.json
httpdash run backup.json -c "Orders API" -e "Staging" --env-var password=$API_PASSWORD -r cli,junit
httpdash send '{{orders_url}}/orders' -e Staging # one request through the running app, like curl
- Input: an HttpDash backup (Export → HttpDash backup, ideally with "Leave out secrets"), a Postman collection, or a
workspace.json. When the file has several collections, pick one with-c(name or id);httpdash listshows them. - Environments: pick one by name from the backup with
-e, or pass a Postman environment file;-gtakes a Postman globals file. - Secrets in CI: pass them with
--env-var key=value. - Other options:
-nfor iterations and-d data.csv(or.json) for data-driven runs (see Data files).-f/--folder,--tag(repeat it to require several tags),--bail,--delay-request,--timeout-request,--no-color.--socks5 host:portto send every request through a SOCKS5 proxy;--no-tunnelsto ignore the tunnels saved in aworkspace.json.-kto skip SSL verification.- Client certificates with Newman's flags:
--ssl-client-cert,--ssl-client-key,--ssl-client-passphrase,--ssl-client-cert-list(Newman's JSON format) and--ssl-extra-ca-certs. - Reporters:
cli,jsonandjunit(JUnit XML is read by Jenkins, GitLab, Azure DevOps and GitHub test reporters). They writehttpdash-report.jsonandhttpdash-junit.xmlunless--reporter-json-export/--reporter-junit-exportname another file.
- What carries over from the app: auth dependencies and scripts work exactly as in the app, and each request's health line is printed when a health URL is set.
- Exit codes:
0all passed,1a test or request failed,2bad arguments or input (or the run couldn't start).