porticol-cli runs collections, flows and performance tests in CI, and lints and diffs OpenAPI documents. This page is its help, as porticol-cli help prints it.
breaking (the default), potentially-breaking, none
-f, --format text|json
what to print; the default is text
-r, --reporter text|json
the same as --format
Lint options
Option
What it does
--rule <names>
rule names to run, comma-separated
--rules <names|config>
rule names, or a YAML or JSON rule configuration file: a value that names a file is read as one
-f, --format text|json
what to print; the default is text
-r, --reporter text|json
the same as --format
A collection file is a Porticol export, a Postman collection or the plain-text format. A flow file is a flow as the app keeps it, in JSON.
Sources
Option
What it does
--server <url>
a Porticol Cloud or Team Server, or PORTICOL_SERVER
--token <token>
an API token for it, or PORTICOL_TOKEN, or the file named by PORTICOL_TOKEN_FILE
--collection <id|name>
the server's collection to run
--folder <name|id>
run this folder's requests alone
-e, --environment <file|name>
an environment file, or the name or id of one of the server's environments
--remote
run on the server rather than here (run only)
Run options
Option
What it does
-d, --data <file>
a CSV or JSON dataset, one row per iteration
-n, --iterations <n>
how many times to run the collection
--concurrency <n>
requests in flight at once
--delay <ms>
the wait before each request but the first
--timeout <ms>
the request timeout where the collection sets none
--bail
stop at the first failing request
--schema <document>
check every response against an OpenAPI document
Perf options
Option
What it does
-u, --users <n>
virtual users, 1 to 200 (default 10)
--duration <time>
how long the load lasts, as 1500ms, 90s, 5m or 1h, from 1s to 1h (default 60s)
--ramp-up <time>
the users start spread across this (default 0s)
--threshold <measure=n>
the run fails unless this holds: p50, p90, p95, p99, max and mean in ms, and error_rate in percent, at most n; requests_per_second at least n. Repeatable
--timeout <ms>
as for run
Flow options
Option
What it does
--bail
stop the flow at the first failing request
Mcp options
Option
What it does
--data-dir <path>
the workspace to serve: PORTICOL_DATA_DIR, or the desktop's data folder
--write
offer the tools that change the workspace; without it every write tool is refused
Reports
Option
What it does
-r, --reporter <name[:path]>
cli, junit, json or html, to standard output or to the file at path; repeat for several. perf reports as cli, json or html
--junit <path>
the same as -r junit:<path>
--json <path>
the same as -r json:<path>
--html <path>
the same as -r html:<path>
--no-color
plain output even on a terminal
porticol-cli never prompts. Only mcp reads standard input, speaking MCP over it. A server does not give out the values of secret variables, so a run names each one it leaves unresolved.
Exit codes
Code
Meaning
0
every request, assertion and threshold passed
1
an assertion, a schema check or a threshold failed, or a flow stopped
2
a request could not be made
3
the command line, a file, the configuration or the token is wrong
4
the licence refused the run
5
the head document breaks the base document, at the level --fail-on names