Docs Automation

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 list shows them.
  • Environments: pick one by name from the backup with -e, or pass a Postman environment file; -g takes a Postman globals file.
  • Secrets in CI: pass them with --env-var key=value.
  • Other options:
    • -n for 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:port to send every request through a SOCKS5 proxy; --no-tunnels to ignore the tunnels saved in a workspace.json.
    • -k to 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, json and junit (JUnit XML is read by Jenkins, GitLab, Azure DevOps and GitHub test reporters). They write httpdash-report.json and httpdash-junit.xml unless --reporter-json-export / --reporter-junit-export name 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: 0 all passed, 1 a test or request failed, 2 bad arguments or input (or the run couldn't start).

Edit this page on GitHub