Automation
Performance runs
A performance run sends a collection's requests from many virtual users at once and measures how the API holds up. Choose Performance run… on a collection or folder, or type the collection's name after Performance run of in the command palette. Then set:
- Virtual users, from 1 to 200
- Duration, from 1 second to 1 hour
- Ramp-up, the time over which the users start, no longer than the run
- Thresholds, such as a p95 latency or an error rate, which decide whether the run passes
While it runs, a chart shows latency each second and the p50, p90, p95 and p99. When
it ends, export an HTML or JSON report with secret values masked. Performance runs
happen in the desktop app, or with porticol-cli perf.
Flows
A flow chains requests with conditions and loops, and passes values from one step to the next. Choose New flow in the command palette, and Show flows to list them.
A flow is made of steps:
- a request, which can keep a value from the response's body, a header or the status for later steps
- a condition, with steps for when it holds and when it doesn't
- a loop over a list, with a variable for each item
Steps read the flow's variables, kept values, the environment and globals as
{{name}}. Run a flow to follow each step in its trace. A flow has at most 1,000
steps, 16 levels deep, and a run at most 10,000 steps. porticol-cli flow runs a flow
file in CI.
Monitors
A monitor runs a collection on a schedule from the server, and alerts when it fails. Owners and admins set them up in the web client, under Administration > Monitors: the collection, the environment, the schedule, thresholds and where alerts go.
- Alerts go to email, Slack, Microsoft Teams or a signed webhook, and only to destinations an administrator has allowed.
- A monitor alerts once after two failing runs in a row, and once more when it passes again.
- Each monitor's runs and its uptime are kept.
A monitor's requests are sent from the server, as are those of a run started there
through the REST API or porticol-cli --remote. Each goes through a guard that checks
every address the host resolves to, never follows a redirect and caps the size of the
answer. It refuses loopback, private, link-local and cloud metadata addresses, unless
a team server's operator allows private ones. Scripts in a monitored collection run in
a sandbox with time and memory limits.
Continuous integration
porticol-cli runs collections, performance runs and flows from files, Postman exports
or a workspace on the server read with an API token, with the same results as the
app's runner. It writes JUnit, JSON and HTML reports and exits with a code a pipeline
can act on. The command line reference lists every option, and the
REST API reference the operations a token can reach.