postman-cli 1.59.0 → 1.62.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/man/postman.1 +670 -101
  2. package/package.json +6 -6
package/man/postman.1 CHANGED
@@ -1,4 +1,4 @@
1
- .TH POSTMAN 1 "2026-09-18" "v1.59.0" "Postman CLI Manual"
1
+ .TH POSTMAN 1 "2026-09-22" "v1.62.0" "Postman CLI Manual"
2
2
  .SH NAME
3
3
  postman \- Command\-line companion utility for Postman
4
4
  .SH SYNOPSIS
@@ -8,6 +8,13 @@ postman \- Command\-line companion utility for Postman
8
8
  The Postman CLI is a command\-line companion utility that brings the power of Postman platform directly to your terminal. It enables you to run collections, lint APIs, manage monitors, and integrate API testing into CI/CD pipelines.
9
9
  .br
10
10
  Note: All commands support the --help option for more information..
11
+ .SH CLAUDE CODE PLUGIN
12
+ Claude Code users and agents can use the Postman Plugin for Claude Code for full API lifecycle management including documentation, collections, workspaces, environments, mocks, monitors right from your repository.
13
+ .br
14
+ Install it with: claude plugin install postman@claude\-plugins\-official
15
+ .br
16
+ Then start Claude Code and run: /postman:setup
17
+ .br
11
18
  .SH OPTIONS
12
19
  .TP
13
20
  .B \-v, \-\-version
@@ -48,14 +55,8 @@ Sign up to keep the work you created as a guest (claims your guest workspace). W
48
55
 
49
56
  .B Options:
50
57
  .TP
51
- .B \-\-browser
52
- Always open the sign\-up URL in a browser here, rather than printing it.
53
- .TP
54
- .B \-\-wait
55
- Wait for the sign\-up to complete even if no local browser is detected.
56
- .TP
57
- .B \-\-no\-wait
58
- Print the sign\-up URL and exit without waiting. Leaves this CLI a guest.
58
+ .B \-\-guest
59
+ Start working as an anonymous guest instead of signing up — no account or browser needed, so it works anywhere. Your work is saved to a temporary workspace you can keep later by running `postman signup`.
59
60
  .TP
60
61
  .B \-\-json
61
62
  Print the sign\-up details as machine\-readable JSON.
@@ -144,12 +145,34 @@ Show the Postman account or guest session this CLI session is using.
144
145
  .B \-\-json
145
146
  Print current identity as machine\-readable JSON.
146
147
 
148
+ .SS "feedback"
149
+ Submit feedback about CLI usability, gaps, and improvement suggestions.
150
+
151
+ .B Usage:
152
+ [options] <text>
153
+
154
+ .B Options:
155
+ .TP
156
+ .B \-\-type <type>
157
+ Feedback type: cli_gap, improvement_suggestion, bug_report, feature_request, general (default: general)
158
+ .TP
159
+ .B \-\-context <context>
160
+ Command or feature context this feedback is about
161
+ .TP
162
+ .B \-\-json
163
+ Print result as machine\-readable JSON
164
+
147
165
  .SS "update"
148
166
  Update Postman CLI using the original installation method.
149
167
 
150
168
  .B Usage:
151
169
  [options]
152
170
 
171
+ .B Options:
172
+ .TP
173
+ .B \-\-check
174
+ Check whether a Postman CLI update is available.
175
+
153
176
  .SS "skills"
154
177
  Check and update the agent skills in this repository.
155
178
 
@@ -260,6 +283,9 @@ Score a Postman collection for AI readiness by ID, local file path, or local\-mo
260
283
  .B collection get
261
284
  Fetch a Postman collection in the V3 format and print it.
262
285
  .TP
286
+ .B collection request
287
+ Add, update, or remove requests in a local v3 collection.
288
+ .TP
263
289
  .B collection list
264
290
  List collections: your local project's collections by default, or a Postman cloud workspace's collections with \-\-workspace.
265
291
  .TP
@@ -296,8 +322,8 @@ Examples:
296
322
  Without \-\-workspace this writes postman/collections/<name>/.resources/definition.yaml
297
323
  in the current directory, which must be a local Postman workspace (a directory holding
298
324
  \&.postman/ or postman/). Add requests as <request\-name>.request.yaml files beside it, then
299
- publish with `postman workspace push`. Creating a collection in a workspace requires
300
- authentication.
325
+ publish with `postman workspace push`. Creating a collection in a workspace works with a
326
+ signed\-in credential or with the guest session `postman init` mints.
301
327
 
302
328
 
303
329
 
@@ -371,6 +397,156 @@ Eg. postman collection get 12345\-33823532ab9e41c9b6fd12d0fd459b8b
371
397
  postman collection get 0123456789abcdef01234567 \-\-json
372
398
 
373
399
 
400
+ .SS "collection request"
401
+ Add, update, or remove requests in a local v3 collection.
402
+
403
+ .B Usage:
404
+ [options] [command]
405
+
406
+ .B Subcommands:
407
+ .TP
408
+ .B collection request add
409
+ Add an empty request to a local v3 collection (set its details later with `update`).
410
+ .TP
411
+ .B collection request update
412
+ Update a request in a v3 collection (only the fields you pass).
413
+ .TP
414
+ .B collection request rm
415
+ Remove a request (any type) from a v3 collection.
416
+
417
+ .SS "collection request add"
418
+ Add an empty request to a local v3 collection (set its details later with `update`).
419
+
420
+ .B Usage:
421
+ [options] [request\-name]
422
+
423
+ .B Options:
424
+ .TP
425
+ .B \-\-collection <id|name>
426
+ Target collection: name, directory, id, cloud id, or path. Required.
427
+ .TP
428
+ .B \-\-folder <id|name|path>
429
+ Folder within the collection, e.g. "Users/Admin". Defaults to the root.
430
+ .TP
431
+ .B \-\-type <type>
432
+ Request type: http, graphql, grpc, websocket, socketio. (default: http)
433
+ .TP
434
+ .B \-w, \-\-workspace <id>
435
+ Target a Postman cloud workspace by id (cloud mode).
436
+ .TP
437
+ .B \-\-json
438
+ JSON output.
439
+
440
+ .TP Examples:
441
+
442
+ Creates an empty request (name + type only). Configure it with `collection request update`.
443
+
444
+ Examples:
445
+ postman collection request add "Get user" \-\-collection "My API"
446
+ postman collection request add \-\-collection "My API" # named "New request"
447
+ postman collection request add "List" \-\-collection "My API" \-\-folder Users \-\-type http
448
+
449
+
450
+
451
+ .SS "collection request update"
452
+ Update a request in a v3 collection (only the fields you pass).
453
+
454
+ .B Usage:
455
+ [options] <request>
456
+
457
+ .B Options:
458
+ .TP
459
+ .B \-\-collection <id|name>
460
+ Target collection: name, directory, id, cloud id, or path (cloud: id only). Required.
461
+ .TP
462
+ .B \-\-folder <id|name|path>
463
+ Folder to scope the request selector, e.g. "Users/Admin" (local: name/path; cloud: id).
464
+ .TP
465
+ .B \-\-rename <name>
466
+ Rename the request (moves its file). Any request type.
467
+ .TP
468
+ .B \-\-url <url>
469
+ Request URL. Any request type.
470
+ .TP
471
+ .B \-\-method <method>
472
+ HTTP method (http requests only).
473
+ .TP
474
+ .B \-\-param <key:value>
475
+ Replace query parameters. Repeatable (http requests only). (default: )
476
+ .TP
477
+ .B \-d, \-\-body <body>
478
+ Request payload (inline, @file, or \- for stdin), interpreted by request type. For http, an optional "<type>:" prefix picks the content type: json/text/xml/html/javascript, file:<path>, urlencoded:key=v&k2=v2, or formdata:key=v&file=@path.
479
+ .TP
480
+ .B \-\-variables <json>
481
+ GraphQL variables JSON (graphql requests only).
482
+ .TP
483
+ .B \-\-description <text>
484
+ Request description.
485
+ .TP
486
+ .B \-\-headers <key:value>
487
+ Replace request headers. Repeatable; any request type with headers. (default: )
488
+ .TP
489
+ .B \-\-auth <spec>
490
+ Request auth: none, inherit, bearer:TOKEN, basic:USER:PASS, apikey:KEY:VALUE[:header|query], oauth2:TOKEN. Any request type.
491
+ .TP
492
+ .B \-\-scripts <event:script>
493
+ Replace scripts. event is prerequest or test; script is @file, \- for stdin, or inline. Repeatable; any request type. (default: )
494
+ .TP
495
+ .B \-w, \-\-workspace <id>
496
+ Target a Postman cloud workspace by id (cloud mode).
497
+ .TP
498
+ .B \-\-type <type>
499
+ Request type for cloud mode: http, graphql, grpc, websocket, socketio. (default: http)
500
+ .TP
501
+ .B \-\-json
502
+ JSON output.
503
+
504
+ .TP Examples:
505
+
506
+ Works on any request type; \-\-rename/\-\-url/\-\-description/\-\-headers/\-\-auth/\-\-scripts apply to all, while \-\-method/\-\-param/\-\-body are http\-only. Select the request by the <request> selector: local — a name or "Folder/Name" path (or \-\-folder to scope a bare name); cloud (\-\-workspace) — a request id, with \-\-collection an id too.
507
+
508
+ Examples:
509
+ postman collection request update "Get user" \-\-collection "My API" \-\-url "{{baseUrl}}/users/:id"
510
+ postman collection request update "Get user" \-\-collection "My API" \-\-folder Users \-\-rename "Fetch user"
511
+ postman collection request update "Get user" \-\-collection "My API" \-\-headers "Authorization:Bearer x" \-\-auth bearer:TOKEN \-\-scripts "test:@check.js"
512
+ postman collection request update <requestId> \-\-collection <collectionId> \-\-url "..." \-w <workspaceId>
513
+
514
+
515
+
516
+ .SS "collection request rm"
517
+ Remove a request (any type) from a v3 collection.
518
+
519
+ .B Usage:
520
+ [options] <request>
521
+
522
+ .B Options:
523
+ .TP
524
+ .B \-\-collection <id|name>
525
+ Target collection: name, directory, id, cloud id, or path (cloud: id only). Required.
526
+ .TP
527
+ .B \-\-folder <id|name|path>
528
+ Folder to scope the request selector, e.g. "Users/Admin" (local: name/path; cloud: id).
529
+ .TP
530
+ .B \-w, \-\-workspace <id>
531
+ Target a Postman cloud workspace by id (cloud mode).
532
+ .TP
533
+ .B \-\-type <type>
534
+ Request type for cloud mode: http, graphql, grpc, websocket, socketio. (default: http)
535
+ .TP
536
+ .B \-\-json
537
+ JSON output.
538
+
539
+ .TP Examples:
540
+
541
+ Select the request by the <request> selector: local — a name or "Folder/Name" path (or \-\-folder to scope a bare name); cloud (\-\-workspace) — a request id, with \-\-collection an id too.
542
+
543
+ Examples:
544
+ postman collection request rm "Get user" \-\-collection "My API"
545
+ postman collection request rm "Get user" \-\-collection "My API" \-\-folder Users
546
+ postman collection request rm <requestId> \-\-collection <collectionId> \-w <workspaceId>
547
+
548
+
549
+
374
550
  .SS "collection list"
375
551
  List collections: your local project's collections by default, or a Postman cloud workspace's collections with \-\-workspace.
376
552
 
@@ -914,7 +1090,7 @@ Eg. postman api publish <apiId> \-\-name v1\e
914
1090
 
915
1091
 
916
1092
  .SS "runner"
917
- Where your monitors execute: run and inspect your own self\-hosted runners, and list the Postman\-operated regions available to your team
1093
+ Where your monitors execute: run and inspect your own self\-hosted runners, and list the Postman\-operated regions available to your team.
918
1094
 
919
1095
  .B Usage:
920
1096
  [options] [command]
@@ -922,16 +1098,16 @@ Where your monitors execute: run and inspect your own self\-hosted runners, and
922
1098
  .B Subcommands:
923
1099
  .TP
924
1100
  .B runner start
925
- Start a runner
1101
+ Start a self\-hosted runner in your own network.
926
1102
  .TP
927
1103
  .B runner list
928
- List the team's registered self\-hosted runners
1104
+ List the team's registered self\-hosted runners.
929
1105
  .TP
930
1106
  .B runner regions
931
- List the region and private\-runner values valid for monitor create/update \-\-runner, including a static IP where configured
1107
+ List the region and private\-runner values valid for monitor create/update \-\-runner, with the static IP Postman runs each one from, where your team has access to it.
932
1108
 
933
1109
  .SS "runner start"
934
- Start a runner
1110
+ Start a self\-hosted runner in your own network.
935
1111
 
936
1112
  .B Usage:
937
1113
  [options]
@@ -945,10 +1121,10 @@ The ID of the runner to execute
945
1121
  The secret key for the runner
946
1122
  .TP
947
1123
  .B \-\-region <region>
948
- Specify the region for the runner. Use "eu" for EU region.
1124
+ Region this runner reports to \-\- use "eu" for the EU region
949
1125
  .TP
950
1126
  .B \-\-proxy <url>
951
- External proxy URL (e.g., http://proxy.com or http://proxy.com:8080)
1127
+ External proxy URL, for example http://proxy.com or http://proxy.com:8080
952
1128
  .TP
953
1129
  .B \-\-egress\-proxy
954
1130
  Enable built\-in egress proxy
@@ -959,6 +1135,9 @@ Custom egress proxy authorization service base URL
959
1135
  .B \-\-ssl\-extra\-ca\-certs <path>
960
1136
  Additional trusted CA certificates (PEM file, can contain multiple certs)
961
1137
  .TP
1138
+ .B \-\-dataset\-jdbc\-driver\-dir <path>
1139
+ Folder on this machine holding the JDBC driver .jar files you put there. Required to run a dataset that uses a JDBC source. Drivers are loaded only from this folder and matched by file name; driver paths saved in the dataset are ignored
1140
+ .TP
962
1141
  .B \-\-metrics
963
1142
  Enable the metrics server for health checks
964
1143
  .TP
@@ -966,13 +1145,13 @@ Enable the metrics server for health checks
966
1145
  Port for the metrics server (default: 9090)
967
1146
  .TP
968
1147
  .B \-\-report\-events
969
- Accepted for compatibility; analytics are sent by default
1148
+ Accepted for compatibility; run events are reported by default
970
1149
  .TP
971
1150
  .B \-\-no\-report\-events
972
- Do not send analytics to Postman
1151
+ Do not report run events to Postman
973
1152
 
974
1153
  .SS "runner list"
975
- List the team's registered self\-hosted runners
1154
+ List the team's registered self\-hosted runners.
976
1155
 
977
1156
  .B Usage:
978
1157
  [options]
@@ -989,7 +1168,7 @@ Filter to runners in this workspace
989
1168
  Output the runner list as JSON instead of a table
990
1169
 
991
1170
  .SS "runner regions"
992
- List the region and private\-runner values valid for monitor create/update \-\-runner, including a static IP where configured
1171
+ List the region and private\-runner values valid for monitor create/update \-\-runner, with the static IP Postman runs each one from, where your team has access to it.
993
1172
 
994
1173
  .B Usage:
995
1174
  [options]
@@ -1349,7 +1528,7 @@ Invoke a monitor run and display results.
1349
1528
  .B Options:
1350
1529
  .TP
1351
1530
  .B \-\-api\-key <key>
1352
- Postman API key (defaults to the `postman login` session)
1531
+ Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session, then a guest session)
1353
1532
  .TP
1354
1533
  .B \-x, \-\-suppress\-exit\-code
1355
1534
  Specify whether or not to override the default exit code for the current run
@@ -1377,7 +1556,7 @@ Collection to monitor \-\- accepts the id shown in the Postman app, prefixed or
1377
1556
  .B \-\-name <name>
1378
1557
  Monitor name (defaults to the linked collection's own name)
1379
1558
  .TP
1380
- .B \-\-environment <id>
1559
+ .B \-e, \-\-environment <id>
1381
1560
  Environment to run the monitored collection with
1382
1561
  .TP
1383
1562
  .B \-w, \-\-workspace <id>
@@ -1387,7 +1566,7 @@ Workspace to create the monitor in (defaults to the workspace named in the local
1387
1566
  Cron expression for the monitor's schedule
1388
1567
  .TP
1389
1568
  .B \-\-timezone <tz>
1390
- Time zone for \-\-schedule, e.g. America/New_York (defaults to the host machine's own zone)
1569
+ Time zone for \-\-schedule, for example America/New_York (defaults to the host machine's own zone)
1391
1570
  .TP
1392
1571
  .B \-\-runner <value>
1393
1572
  A Postman region name (see `postman runner regions`) or the id of a self\-hosted runner created in Postman (list existing ones with `postman runner list`) to run from (repeatable) (default: )
@@ -1396,10 +1575,10 @@ A Postman region name (see `postman runner regions`) or the id of a self\-hosted
1396
1575
  Email to notify on a run failure or error (repeatable) (default: )
1397
1576
  .TP
1398
1577
  .B \-\-notification\-limit <n>
1399
- Cap consecutive notifications before they are muted (service range: 1\-99)
1578
+ Consecutive failure notifications to send before muting them
1400
1579
  .TP
1401
1580
  .B \-\-retry <n>
1402
- Retries on a failed run (service caps this at 2)
1581
+ Times to retry a failed run
1403
1582
  .TP
1404
1583
  .B \-\-timeout <ms>
1405
1584
  Request timeout in milliseconds
@@ -1429,13 +1608,13 @@ Dataset view to iterate (used together with \-\-dataset\-id)
1429
1608
  Number of iterations to run
1430
1609
  .TP
1431
1610
  .B \-\-iteration\-strategy <strategy>
1432
- How iteration data is consumed, e.g. round_robin, repeat_last, stop_at_end (requires \-\-iteration\-count, \-\-dataset\-id and \-\-dataset\-view\-id)
1611
+ How iteration data is consumed, for example round_robin, repeat_last or stop_at_end (requires \-\-iteration\-count, \-\-dataset\-id and \-\-dataset\-view\-id)
1433
1612
  .TP
1434
1613
  .B \-\-no\-run\-now
1435
1614
  Do not trigger an immediate run after creating the monitor
1436
1615
  .TP
1437
1616
  .B \-\-api\-key <key>
1438
- Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session)
1617
+ Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session, then a guest session)
1439
1618
  .TP
1440
1619
  .B \-\-json
1441
1620
  Output as JSON instead of a table
@@ -1465,7 +1644,7 @@ New monitor name
1465
1644
  New cron expression for the monitor's schedule
1466
1645
  .TP
1467
1646
  .B \-\-timezone <tz>
1468
- Time zone for \-\-schedule, e.g. America/New_York (defaults to the host machine's own zone)
1647
+ Time zone for \-\-schedule, for example America/New_York (defaults to the host machine's own zone)
1469
1648
  .TP
1470
1649
  .B \-\-runner <value>
1471
1650
  A Postman region name (see `postman runner regions`) or the id of a self\-hosted runner created in Postman (list existing ones with `postman runner list`) to run from (repeatable; replaces the current set) (default: )
@@ -1476,11 +1655,17 @@ Email to notify on a run failure or error (repeatable; replaces the current list
1476
1655
  .B \-\-clear\-notifications
1477
1656
  Remove every notification recipient
1478
1657
  .TP
1658
+ .B \-e, \-\-environment <id>
1659
+ Environment to run the monitored collection with (replaces the current one)
1660
+ .TP
1661
+ .B \-\-clear\-environment
1662
+ Run the monitored collection with no environment
1663
+ .TP
1479
1664
  .B \-\-notification\-limit <n>
1480
- Cap consecutive notifications before they are muted (service range: 1\-99)
1665
+ Consecutive failure notifications to send before muting them
1481
1666
  .TP
1482
1667
  .B \-\-retry <n>
1483
- Retries on a failed run (service caps this at 2)
1668
+ Times to retry a failed run
1484
1669
  .TP
1485
1670
  .B \-\-timeout <ms>
1486
1671
  Request timeout in milliseconds
@@ -1510,10 +1695,10 @@ Dataset view to iterate (used together with \-\-dataset\-id)
1510
1695
  Number of iterations to run
1511
1696
  .TP
1512
1697
  .B \-\-iteration\-strategy <strategy>
1513
- How iteration data is consumed, e.g. round_robin, repeat_last, stop_at_end (requires \-\-iteration\-count, \-\-dataset\-id and \-\-dataset\-view\-id)
1698
+ How iteration data is consumed, for example round_robin, repeat_last or stop_at_end (requires \-\-iteration\-count, \-\-dataset\-id and \-\-dataset\-view\-id)
1514
1699
  .TP
1515
1700
  .B \-\-api\-key <key>
1516
- Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session)
1701
+ Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session, then a guest session)
1517
1702
  .TP
1518
1703
  .B \-\-json
1519
1704
  Output as JSON instead of a table
@@ -1525,8 +1710,9 @@ Examples:
1525
1710
  postman monitor update <id> \-\-notify\-email a@example.com \-\-notify\-email b@example.com
1526
1711
  postman monitor update <id> \-\-clear\-notifications
1527
1712
  postman monitor update <id> \-\-runner us\-east \-\-runner <self\-hosted\-runner\-id>
1713
+ postman monitor update <id> \-\-environment 12345678\-90ab\-cdef\-1234\-567890abcdef
1528
1714
 
1529
- This command cannot change a monitor's linked collection or environment \-\- delete and recreate the monitor instead \-\- and does not pause or resume it; use `monitor pause`/`monitor resume` for that.
1715
+ This command cannot change a monitor's linked collection \-\- that is fixed when the monitor is created, so run a different collection by creating a new monitor. It does not pause or resume a monitor either; use `monitor pause`/`monitor resume` for that.
1530
1716
 
1531
1717
 
1532
1718
  .SS "monitor delete"
@@ -1541,7 +1727,7 @@ Permanently delete a monitor. Prompts for confirmation unless \-\-yes is passed.
1541
1727
  Skip the confirmation prompt
1542
1728
  .TP
1543
1729
  .B \-\-api\-key <key>
1544
- Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session)
1730
+ Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session, then a guest session)
1545
1731
  .TP
1546
1732
  .B \-\-json
1547
1733
  Output the outcome, including any failure, as JSON instead of a plain message
@@ -1578,13 +1764,13 @@ List a monitor's recent jobs.
1578
1764
  .B Options:
1579
1765
  .TP
1580
1766
  .B \-\-api\-key <key>
1581
- Postman API key (defaults to the `postman login` session)
1767
+ Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session)
1582
1768
  .TP
1583
1769
  .B \-\-result <value>
1584
- Filter by outcome, e.g. success, failure, error, abort (server\-validated, not a fixed list)
1770
+ Filter by outcome, for example success, failure, error or abort
1585
1771
  .TP
1586
1772
  .B \-\-trigger <value>
1587
- Filter by trigger, e.g. api, schedule, webhook, postman\-cli (server\-validated, not a fixed list)
1773
+ Filter by trigger, for example api, schedule, webhook or postman\-cli
1588
1774
  .TP
1589
1775
  .B \-\-since <dateTime>
1590
1776
  Only jobs that finished at or after this ISO 8601 date\-time
@@ -1607,7 +1793,7 @@ Report one job's terminal state and its per\-region run outcomes.
1607
1793
  .B Options:
1608
1794
  .TP
1609
1795
  .B \-\-api\-key <key>
1610
- Postman API key (defaults to the `postman login` session)
1796
+ Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session)
1611
1797
  .TP
1612
1798
  .B \-\-json
1613
1799
  Output as JSON instead of a table
@@ -1632,10 +1818,10 @@ Report which test assertions ran during one attempt of a run, which failed, and
1632
1818
  .B Options:
1633
1819
  .TP
1634
1820
  .B \-\-api\-key <key>
1635
- Postman API key (defaults to the `postman login` session)
1821
+ Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session)
1636
1822
  .TP
1637
1823
  .B \-\-attempt <n>
1638
- Which attempt of the run to show, counting from 0 (default: the latest)
1824
+ Which attempt of the run to show, where 0 is the first (default: the most recent)
1639
1825
  .TP
1640
1826
  .B \-\-failed\-only
1641
1827
  Show only failed assertions
@@ -1652,7 +1838,7 @@ List the monitors visible to you.
1652
1838
  .B Options:
1653
1839
  .TP
1654
1840
  .B \-\-api\-key <key>
1655
- Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session)
1841
+ Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session, then a guest session)
1656
1842
  .TP
1657
1843
  .B \-w, \-\-workspace <id>
1658
1844
  Filter to monitors in this workspace
@@ -1660,11 +1846,11 @@ Filter to monitors in this workspace
1660
1846
  .B \-c, \-\-collection <id>
1661
1847
  Filter to monitors on this collection
1662
1848
  .TP
1663
- .B \-\-environment <id>
1849
+ .B \-e, \-\-environment <id>
1664
1850
  Filter to monitors on this environment
1665
1851
  .TP
1666
1852
  .B \-\-runner <id>
1667
- Filter to a Self\-Hosted Runner ID (not a Postman Region). Cannot be combined with \-\-workspace, \-\-collection, \-\-environment, \-\-owner, \-\-team or \-\-active.
1853
+ Filter to a self\-hosted runner id, not a Postman region. Cannot be combined with \-\-workspace, \-\-collection, \-\-environment, \-\-owner, \-\-team or \-\-active
1668
1854
  .TP
1669
1855
  .B \-\-owner <id>
1670
1856
  Filter to monitors created by this user id (shown in the Owner column)
@@ -1676,16 +1862,13 @@ Filter to monitors owned by your own team
1676
1862
  Filter by active state
1677
1863
  .TP
1678
1864
  .B \-\-limit <n>
1679
- Max monitors to return. The service caps page size and rejects a value above it with its own error.
1680
- .TP
1681
- .B \-\-offset <n>
1682
- Not supported: the service accepts this parameter and silently ignores it. Refused locally. Use \-\-cursor instead.
1865
+ Maximum number of monitors to return (Postman caps the page size and rejects a larger value)
1683
1866
  .TP
1684
1867
  .B \-\-cursor <token>
1685
- Pagination cursor from a previous page's response.
1868
+ Pagination cursor from a previous page's response
1686
1869
  .TP
1687
1870
  .B \-\-columns <names>
1688
- Comma\-separated columns to show. Defaults to Name, Status, ID, Schedule, Owner, Collection. Also available: State, Notifications, Environment, Runners.
1871
+ Comma\-separated columns to show. Defaults to Name, Status, ID, Schedule, Owner, Collection. Also available: State, Notifications, Environment, Runners
1689
1872
  .TP
1690
1873
  .B \-\-no\-headers
1691
1874
  Omit the header row
@@ -1718,7 +1901,7 @@ Show a monitor's configuration.
1718
1901
  .B Options:
1719
1902
  .TP
1720
1903
  .B \-\-api\-key <key>
1721
- Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session)
1904
+ Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session, then a guest session)
1722
1905
  .TP
1723
1906
  .B \-\-json
1724
1907
  Output as JSON instead of a table
@@ -1738,19 +1921,19 @@ Show per\-request latency and outcome history for a monitor.
1738
1921
  .B Options:
1739
1922
  .TP
1740
1923
  .B \-\-api\-key <key>
1741
- Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session)
1924
+ Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session, then a guest session)
1742
1925
  .TP
1743
1926
  .B \-\-since <dateTime>
1744
- Only executions at or after this ISO 8601 date\-time. Defaults to 7 days ago.
1927
+ Only executions at or after this ISO 8601 date\-time (defaults to 7 days ago)
1745
1928
  .TP
1746
1929
  .B \-\-until <dateTime>
1747
- Only executions at or before this ISO 8601 date\-time. Defaults to now.
1930
+ Only executions at or before this ISO 8601 date\-time (defaults to now)
1748
1931
  .TP
1749
1932
  .B \-f, \-\-filter <text>
1750
1933
  Show only requests whose name contains this text (case\-insensitive)
1751
1934
  .TP
1752
1935
  .B \-\-limit <n>
1753
- Cap the number of rows shown: executions (newest first) under \-\-json, or table rows (worst\-behaving request first) otherwise. Not honoured by the service \-\- there is no server\-side pagination on this route.
1936
+ Maximum number of rows to show: executions, newest first, under \-\-json, or requests, worst\-behaving first, in the table. Applied to the results after they are fetched, so it does not make the command faster
1754
1937
  .TP
1755
1938
  .B \-\-json
1756
1939
  Output as JSON instead of a table
@@ -1772,7 +1955,7 @@ Pause a monitor, so it stops firing on schedule.
1772
1955
  .B Options:
1773
1956
  .TP
1774
1957
  .B \-\-api\-key <key>
1775
- Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session)
1958
+ Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session, then a guest session)
1776
1959
  .TP
1777
1960
  .B \-\-json
1778
1961
  Output as JSON instead of a table
@@ -1786,7 +1969,7 @@ Resume a paused monitor, so it fires on schedule again.
1786
1969
  .B Options:
1787
1970
  .TP
1788
1971
  .B \-\-api\-key <key>
1789
- Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session)
1972
+ Postman API key (defaults to POSTMAN_API_KEY, then the `postman login` session, then a guest session)
1790
1973
  .TP
1791
1974
  .B \-\-json
1792
1975
  Output as JSON instead of a table
@@ -1811,6 +1994,9 @@ Push local workspace entities (collections, environments, specifications, mocks
1811
1994
  .B workspace lint
1812
1995
  Lint the current local Postman workspace: its configuration (.postman/resources.yaml) plus every discovered entity. Use \-\-meta to lint only the configuration.
1813
1996
  .TP
1997
+ .B workspace get
1998
+ Read a workspace's metadata, and optionally the ids of what it holds.
1999
+ .TP
1814
2000
  .B workspace create
1815
2001
  Create a Postman workspace and bind it to this git repository.
1816
2002
  .TP
@@ -1916,6 +2102,34 @@ The workspace ID to use for fetching governance rulesets. Defaults to the id in
1916
2102
  .B \-\-fix
1917
2103
  Apply safe autofixes to repairable workspace lint issues.
1918
2104
 
2105
+ .SS "workspace get"
2106
+ Read a workspace's metadata, and optionally the ids of what it holds.
2107
+
2108
+ .B Usage:
2109
+ [options] [id]
2110
+
2111
+ .B Options:
2112
+ .TP
2113
+ .B \-\-elements
2114
+ Also report the resources the workspace holds.
2115
+ .TP
2116
+ .B \-\-json
2117
+ Print the workspace as machine\-readable JSON.
2118
+ .TP
2119
+ .B \-\-timeout <ms>
2120
+ Milliseconds to wait for the API (default 30000).
2121
+
2122
+ .TP Examples:
2123
+
2124
+ Examples:
2125
+ postman workspace get 00a50319\-1262\-49d2\-83e5\-551e3c5dba00
2126
+ postman workspace get <id> \-\-elements
2127
+ postman workspace get <id> \-\-json
2128
+
2129
+ Exit codes: 0 ok, 1 not found or API failure, 2 bad usage, 3 auth.
2130
+
2131
+
2132
+
1919
2133
  .SS "workspace create"
1920
2134
  Create a Postman workspace and bind it to this git repository.
1921
2135
 
@@ -1925,7 +2139,7 @@ Create a Postman workspace and bind it to this git repository.
1925
2139
  .B Options:
1926
2140
  .TP
1927
2141
  .B \-\-visibility <status>
1928
- Required. Workspace visibility, e.g. personal or team
2142
+ Required. One of: personal, private, team, public, partner.
1929
2143
  .TP
1930
2144
  .B \-\-name <name>
1931
2145
  Workspace name (defaults to owner/repo from the git remote)
@@ -1933,6 +2147,12 @@ Workspace name (defaults to owner/repo from the git remote)
1933
2147
  .B \-\-summary <text>
1934
2148
  Optional workspace summary
1935
2149
  .TP
2150
+ .B \-\-team\-id <id>
2151
+ The team inside your organisation the workspace belongs to. Required for a team workspace when your organisation has teams inside it. Find it with `postman team list`.
2152
+ .TP
2153
+ .B \-\-team\-role <level>
2154
+ What a team or public workspace grants: view or edit. Applies to the team named by \-\-team\-id, or to your whole organisation when none is named. Defaults to your team's configured default.
2155
+ .TP
1936
2156
  .B \-\-path <dir>
1937
2157
  Directory to bind (defaults to the current directory)
1938
2158
  .TP
@@ -1950,6 +2170,8 @@ Refuses to run on CI: create once locally and commit the binding.
1950
2170
  Examples:
1951
2171
  $ postman workspace create \-\-visibility personal
1952
2172
  $ postman workspace create \-\-visibility team \-\-name "acme/orders"
2173
+ $ postman workspace create \-\-visibility team \-\-team\-id 451
2174
+ $ postman workspace create \-\-visibility team \-\-team\-role view
1953
2175
  $ postman workspace create \-\-visibility personal \-\-no\-connect
1954
2176
 
1955
2177
 
@@ -2046,6 +2268,58 @@ Examples:
2046
2268
 
2047
2269
 
2048
2270
 
2271
+ .SS "team"
2272
+ Work with the teams inside your organisation.
2273
+
2274
+ .B Usage:
2275
+ [options] [command]
2276
+
2277
+ .TP Examples:
2278
+
2279
+ These are the teams inside an organisation, which the Postman app shows
2280
+ under "Teams". The organisation itself is what `postman whoami` reports
2281
+ as your team. A Postman team that is not an organisation has none.
2282
+
2283
+
2284
+
2285
+ .B Subcommands:
2286
+ .TP
2287
+ .B team list
2288
+ List the teams inside your organisation.
2289
+
2290
+ .SS "team list"
2291
+ List the teams inside your organisation.
2292
+
2293
+ .B Usage:
2294
+ [options]
2295
+
2296
+ .B Options:
2297
+ .TP
2298
+ .B \-\-can\-create\-workspace
2299
+ Only list teams you could create a workspace in.
2300
+ .TP
2301
+ .B \-\-json
2302
+ Print the list as machine\-readable JSON.
2303
+ .TP
2304
+ .B \-\-timeout <ms>
2305
+ Abort the run after this many milliseconds. Defaults to 30000.
2306
+
2307
+ .TP Examples:
2308
+
2309
+ Requires a login (`postman login`) or POSTMAN_API_KEY.
2310
+ These are the teams inside your organisation. The organisation itself is
2311
+ what `postman whoami` reports as your team. `postman workspace create
2312
+ \-\-team\-id <id>` takes the id from this list.
2313
+
2314
+ A Postman team that is not an organisation has no teams inside it, so this
2315
+ lists nothing and exits 0.
2316
+
2317
+ Examples:
2318
+ $ postman team list
2319
+ $ postman team list \-\-can\-create\-workspace
2320
+ $ postman team list \-\-json
2321
+
2322
+
2049
2323
  .SS "performance"
2050
2324
  Manage performance tests on your collections.
2051
2325
 
@@ -2057,7 +2331,7 @@ Manage performance tests on your collections.
2057
2331
  .B performance run
2058
2332
  Run a performance test on a collection
2059
2333
  .TP
2060
- .B performance runs
2334
+ .B performance list
2061
2335
  List past performance runs for a collection, newest first.
2062
2336
 
2063
2337
  .SS "performance run"
@@ -2104,6 +2378,9 @@ How rows map to VUs: round\-robin (default), fixed, random
2104
2378
  .B \-\-postman\-api\-key <apiKey>
2105
2379
  API Key used to load the resources from the Postman API (Only supported in the US region, use 'postman login \-\-region' to authenticate instead)
2106
2380
  .TP
2381
+ .B \-\-output <format>
2382
+ Output format for live results: auto (default, interactive dashboard) or ndjson (one JSON object per line on stdout, ending with a "summary" event — for CI or other non\-interactive use) (default: auto)
2383
+ .TP
2107
2384
  .B \-\-runner <runner>
2108
2385
  Runner to execute the performance test on: local, postman\-cloud, or postman\-cloud\-static\-ip (egress from your account region's static\-IP cluster) (default: )
2109
2386
  .TP
@@ -2126,7 +2403,7 @@ Examples:
2126
2403
  postman performance run 123456\-45159473\-1e45\-1f34\-5678\-1234567890ab \-\-runner postman\-cloud\-static\-ip
2127
2404
 
2128
2405
 
2129
- .SS "performance runs"
2406
+ .SS "performance list"
2130
2407
  List past performance runs for a collection, newest first.
2131
2408
 
2132
2409
  .B Usage:
@@ -2149,9 +2426,9 @@ Milliseconds to wait for the service before failing (default: 30000)
2149
2426
  .TP Examples:
2150
2427
 
2151
2428
  Examples:
2152
- postman performance runs \-\-collection\-id 1402295\-45159473\-1e45\-1f34\-5678\-1234567890ab
2153
- postman performance runs \-c 1402295\-45159473\-1e45\-1f34\-5678\-1234567890ab \-\-json
2154
- postman performance runs \-c 1402295\-45159473\-1e45\-1f34\-5678\-1234567890ab \-\-cursor eyJpZCI6...
2429
+ postman performance list \-\-collection\-id 1402295\-45159473\-1e45\-1f34\-5678\-1234567890ab
2430
+ postman performance list \-c 1402295\-45159473\-1e45\-1f34\-5678\-1234567890ab \-\-json
2431
+ postman performance list \-c 1402295\-45159473\-1e45\-1f34\-5678\-1234567890ab \-\-cursor eyJpZCI6...
2155
2432
 
2156
2433
  The newest 25 runs are returned. A `\-` in Duration means the run has not finished yet.
2157
2434
  A page shorter than 25 does not mean the end of the list: use the printed \-\-cursor
@@ -3666,7 +3943,7 @@ Start mocks with fault\-injection scenarios defined in a .sim.yaml file
3666
3943
  .B Usage:
3667
3944
  [options] <filepath>
3668
3945
 
3669
- .SS "context"
3946
+ .SS "describe"
3670
3947
  [Beta] Get API context for AI coding agents directly from the command line.
3671
3948
 
3672
3949
 
@@ -3675,7 +3952,7 @@ Start mocks with fault\-injection scenarios defined in a .sim.yaml file
3675
3952
 
3676
3953
  .B Subcommands:
3677
3954
  .TP
3678
- .B context instructions
3955
+ .B describe instructions
3679
3956
  Get agent instructions for using Postman Context with AI coding agents.
3680
3957
 
3681
3958
  Topics:
@@ -3685,25 +3962,25 @@ Topics:
3685
3962
  maintenance — Agent instructions for maintaining and updating client code
3686
3963
 
3687
3964
  .TP
3688
- .B context collection
3965
+ .B describe collection
3689
3966
  Collection commands
3690
3967
  .TP
3691
- .B context request
3968
+ .B describe request
3692
3969
  Request commands
3693
3970
  .TP
3694
- .B context folder
3971
+ .B describe folder
3695
3972
  Folder commands
3696
3973
  .TP
3697
- .B context response
3974
+ .B describe response
3698
3975
  Response commands
3699
3976
  .TP
3700
- .B context workspace
3977
+ .B describe workspace
3701
3978
  Workspace commands
3702
3979
  .TP
3703
- .B context environment
3980
+ .B describe environment
3704
3981
  Environment commands
3705
3982
 
3706
- .SS "context instructions"
3983
+ .SS "describe instructions"
3707
3984
  Get agent instructions for using Postman Context with AI coding agents.
3708
3985
 
3709
3986
  Topics:
@@ -3716,7 +3993,7 @@ Topics:
3716
3993
  .B Usage:
3717
3994
  [options] [topic]
3718
3995
 
3719
- .SS "context collection"
3996
+ .SS "describe collection"
3720
3997
  Collection commands
3721
3998
 
3722
3999
  .B Usage:
@@ -3724,13 +4001,13 @@ Collection commands
3724
4001
 
3725
4002
  .B Subcommands:
3726
4003
  .TP
3727
- .B context collection get
4004
+ .B describe collection get
3728
4005
  Get a collection's metadata and a map of its folders and requests.
3729
4006
 
3730
4007
  Returns collection info (name, description, variables, auth) plus a
3731
4008
  recursive tree of folders and requests.
3732
4009
 
3733
- .SS "context collection get"
4010
+ .SS "describe collection get"
3734
4011
  Get a collection's metadata and a map of its folders and requests.
3735
4012
 
3736
4013
  Returns collection info (name, description, variables, auth) plus a
@@ -3744,7 +4021,7 @@ recursive tree of folders and requests.
3744
4021
  .B \-c, \-\-collection\-id <id>
3745
4022
  Collection ID
3746
4023
 
3747
- .SS "context request"
4024
+ .SS "describe request"
3748
4025
  Request commands
3749
4026
 
3750
4027
  .B Usage:
@@ -3752,10 +4029,10 @@ Request commands
3752
4029
 
3753
4030
  .B Subcommands:
3754
4031
  .TP
3755
- .B context request get
4032
+ .B describe request get
3756
4033
  Get a request from a collection
3757
4034
  .TP
3758
- .B context request context
4035
+ .B describe request context
3759
4036
  Fetch all context about a request and return it as a Markdown document.
3760
4037
 
3761
4038
  Returns: collection metadata, request details (method, URL, headers, body,
@@ -3763,9 +4040,9 @@ auth, docs), parent folder documentation, response examples, and
3763
4040
  environment variables.
3764
4041
 
3765
4042
  Examples:
3766
- postman context request context \-c <collection\-id> \-r <request\-id>
4043
+ postman describe request context \-c <collection\-id> \-r <request\-id>
3767
4044
 
3768
- .SS "context request get"
4045
+ .SS "describe request get"
3769
4046
  Get a request from a collection
3770
4047
 
3771
4048
  .B Usage:
@@ -3779,7 +4056,7 @@ Request ID
3779
4056
  .B \-c, \-\-collection\-id <id>
3780
4057
  Collection ID
3781
4058
 
3782
- .SS "context request context"
4059
+ .SS "describe request context"
3783
4060
  Fetch all context about a request and return it as a Markdown document.
3784
4061
 
3785
4062
  Returns: collection metadata, request details (method, URL, headers, body,
@@ -3787,7 +4064,7 @@ auth, docs), parent folder documentation, response examples, and
3787
4064
  environment variables.
3788
4065
 
3789
4066
  Examples:
3790
- postman context request context \-c <collection\-id> \-r <request\-id>
4067
+ postman describe request context \-c <collection\-id> \-r <request\-id>
3791
4068
 
3792
4069
  .B Usage:
3793
4070
  [options]
@@ -3800,7 +4077,7 @@ Collection ID
3800
4077
  .B \-r, \-\-request\-id <id>
3801
4078
  Request ID
3802
4079
 
3803
- .SS "context folder"
4080
+ .SS "describe folder"
3804
4081
  Folder commands
3805
4082
 
3806
4083
  .B Usage:
@@ -3808,10 +4085,10 @@ Folder commands
3808
4085
 
3809
4086
  .B Subcommands:
3810
4087
  .TP
3811
- .B context folder get
4088
+ .B describe folder get
3812
4089
  Get a folder from a collection
3813
4090
 
3814
- .SS "context folder get"
4091
+ .SS "describe folder get"
3815
4092
  Get a folder from a collection
3816
4093
 
3817
4094
  .B Usage:
@@ -3825,7 +4102,7 @@ Folder ID
3825
4102
  .B \-c, \-\-collection\-id <id>
3826
4103
  Collection ID
3827
4104
 
3828
- .SS "context response"
4105
+ .SS "describe response"
3829
4106
  Response commands
3830
4107
 
3831
4108
  .B Usage:
@@ -3833,10 +4110,10 @@ Response commands
3833
4110
 
3834
4111
  .B Subcommands:
3835
4112
  .TP
3836
- .B context response get
4113
+ .B describe response get
3837
4114
  Get a saved response example from a collection
3838
4115
 
3839
- .SS "context response get"
4116
+ .SS "describe response get"
3840
4117
  Get a saved response example from a collection
3841
4118
 
3842
4119
  .B Usage:
@@ -3853,7 +4130,7 @@ Collection ID
3853
4130
  .B \-r, \-\-request\-id <id>
3854
4131
  Request ID
3855
4132
 
3856
- .SS "context workspace"
4133
+ .SS "describe workspace"
3857
4134
  Workspace commands
3858
4135
 
3859
4136
  .B Usage:
@@ -3861,10 +4138,10 @@ Workspace commands
3861
4138
 
3862
4139
  .B Subcommands:
3863
4140
  .TP
3864
- .B context workspace get
4141
+ .B describe workspace get
3865
4142
  Get a workspace by ID
3866
4143
 
3867
- .SS "context workspace get"
4144
+ .SS "describe workspace get"
3868
4145
  Get a workspace by ID
3869
4146
 
3870
4147
  .B Usage:
@@ -3875,7 +4152,7 @@ Get a workspace by ID
3875
4152
  .B \-w, \-\-workspace\-id <id>
3876
4153
  Workspace ID
3877
4154
 
3878
- .SS "context environment"
4155
+ .SS "describe environment"
3879
4156
  Environment commands
3880
4157
 
3881
4158
  .B Usage:
@@ -3883,10 +4160,10 @@ Environment commands
3883
4160
 
3884
4161
  .B Subcommands:
3885
4162
  .TP
3886
- .B context environment get
4163
+ .B describe environment get
3887
4164
  Get a single environment by ID
3888
4165
 
3889
- .SS "context environment get"
4166
+ .SS "describe environment get"
3890
4167
  Get a single environment by ID
3891
4168
 
3892
4169
  .B Usage:
@@ -4856,6 +5133,9 @@ Inspect and manage a dataset's datasources.
4856
5133
  .TP
4857
5134
  .B dataset view
4858
5135
  Inspect and manage saved views on a dataset.
5136
+ .TP
5137
+ .B dataset jdbc
5138
+ Inspect JDBC drivers before attaching one to a dataset.
4859
5139
 
4860
5140
  .SS "dataset list"
4861
5141
  List local dataset YAMLs under a path, or (no path) a workspace's cloud datasets.
@@ -5028,6 +5308,9 @@ Remove a datasource from a dataset (local YAML path or cloud id).
5028
5308
  .TP
5029
5309
  .B dataset source update
5030
5310
  Update fields on an existing datasource. Only the flags you provide are changed.
5311
+ .TP
5312
+ .B dataset source test
5313
+ Open and close a real connection using a source's stored configuration.
5031
5314
 
5032
5315
  .SS "dataset source list"
5033
5316
  List the datasources defined on a dataset (local YAML path or cloud id).
@@ -5074,8 +5357,8 @@ Override the generated source id (local dataset only)
5074
5357
  .B \-\-format <csv|json|mysql|postgres|sqlserver>
5075
5358
  Use this format instead of extension/type inference; file contents are not sniffed
5076
5359
  .TP
5077
- .B \-\-type <local|mysql|postgresql|sqlserver>
5078
- Source kind; local is inferred when \-\-file is provided
5360
+ .B \-\-type <local|mysql|postgresql|sqlserver|jdbc>
5361
+ Source kind; local is inferred from \-\-file, jdbc from \-\-driver\-jar
5079
5362
  .TP
5080
5363
  .B \-\-file <path>
5081
5364
  Path to a local CSV/JSON file (absolute or cwd\-relative)
@@ -5089,6 +5372,45 @@ When copying, overwrite an existing file at the destination (local dataset)
5089
5372
  .B \-\-upload
5090
5373
  Cloud dataset only: upload \-\-file as a postmancloudfile source (runs via /exec). Without \-\-upload, \-\-file is registered as a local_filesystem csv/json source read by the local engine.
5091
5374
  .TP
5375
+ .B \-\-driver\-jar <path...>
5376
+ JDBC driver JAR(s). Repeatable, or pass several after one flag
5377
+ .TP
5378
+ .B \-\-driver\-class <fqcn>
5379
+ Driver class. Auto\-resolved when the JAR contains exactly one
5380
+ .TP
5381
+ .B \-\-driver\-name <label>
5382
+ Label for this driver type (defaults to the JAR filename)
5383
+ .TP
5384
+ .B \-\-url\-template <template>
5385
+ JDBC URL with {{placeholders}}, e.g. jdbc:postgresql://{{host}}:{{port}}/{{database}}
5386
+ .TP
5387
+ .B \-\-var <name=value...>
5388
+ Value for a {{placeholder}}. Repeatable. Use vault:<vaultId>/<secretId> for a secret. WARNING: a literal value is visible in `ps` output and shell history, and is stored in clear text in the dataset YAML (local) or sent in the request body (cloud). Prefer a Shared Vault reference.
5389
+ .TP
5390
+ .B \-\-prop <name=value...>
5391
+ Driver connection property. Repeatable. Same vault: syntax as \-\-var
5392
+ .TP
5393
+ .B \-\-vars\-file <path>
5394
+ JSON object of \-\-var values; "\-" reads stdin. Supports {"$vaultId":..,"$secretId":..} objects, and keeps secrets out of argv entirely
5395
+ .TP
5396
+ .B \-\-from\-source <name>
5397
+ Reuse another source's driver JAR, class and URL template
5398
+ .TP
5399
+ .B \-\-java\-path <path>
5400
+ Java runtime to use. Machine\-local only \- never written to the dataset. Also read from POSTMAN_JDBC_JAVA_PATH
5401
+ .TP
5402
+ .B \-\-no\-test
5403
+ Skip the pre\-write connection test. Note that resolving the driver class still starts a JVM — on a machine with no Java, pass \-\-driver\-class (or \-\-from\-source) too
5404
+ .TP
5405
+ .B \-\-ssh\-target\-host\-variable <name>
5406
+ Template variable holding the tunnelled host (inferred when omitted)
5407
+ .TP
5408
+ .B \-\-ssh\-target\-port\-variable <name>
5409
+ Template variable holding the tunnelled port (inferred when omitted)
5410
+ .TP
5411
+ .B \-\-json
5412
+ Emit the result as JSON instead of prose
5413
+ .TP
5092
5414
  .B \-\-host <host>
5093
5415
  DB host (mysql/postgresql/sqlserver)
5094
5416
  .TP
@@ -5096,10 +5418,10 @@ DB host (mysql/postgresql/sqlserver)
5096
5418
  DB port (defaults to 1433 for sqlserver)
5097
5419
  .TP
5098
5420
  .B \-\-user <user>
5099
- DB user (warning: stored as plaintext in the YAML).
5421
+ DB user. WARNING: a literal value is visible in `ps` output and shell history, and is stored in clear text in the dataset YAML (local) or sent in the request body (cloud). Prefer a Shared Vault reference.
5100
5422
  .TP
5101
5423
  .B \-\-password <password>
5102
- DB password. WARNING: passing it here exposes it in `ps` output and shell history, and it is stored as plaintext in the dataset YAML (local) or sent in the request body (cloud). Prefer a restricted DB user; secure input (prompt / stdin / env) is planned.
5424
+ DB password. WARNING: a literal value is visible in `ps` output and shell history, and is stored in clear text in the dataset YAML (local) or sent in the request body (cloud). Prefer a Shared Vault reference.
5103
5425
  .TP
5104
5426
  .B \-\-database <db>
5105
5427
  DB database name
@@ -5166,6 +5488,60 @@ Format selection:
5166
5488
  Execution:
5167
5489
  \-\-upload runs file\-backed queries in the cloud service. Without \-\-upload, the local engine reads the file.
5168
5490
 
5491
+ JDBC:
5492
+ Start with `postman dataset jdbc inspect <jar>`. Its output maps onto these
5493
+ flags directly: suggestedUrlTemplate \-> \-\-url\-template, templateVariables \->
5494
+ \-\-var, connectionProperties \-> \-\-prop, driverClass \-> \-\-driver\-class.
5495
+
5496
+ postman dataset jdbc inspect ./drivers/postgresql\-42.7.4.jar
5497
+ postman dataset source add \-d ./orders.dataset.yaml \-n orders \-\-type jdbc \e
5498
+ \-\-driver\-jar ./drivers/postgresql\-42.7.4.jar \e
5499
+ \-\-url\-template 'jdbc:postgresql://{{host}}:{{port}}/{{database}}' \e
5500
+ \-\-var host=db.internal \-\-var port=5432 \-\-var database=shop \e
5501
+ \-\-var user=vault:acme/pg\-user \-\-var password=vault:acme/pg\-pass
5502
+
5503
+ Reuse that driver for a second source, no rediscovery needed:
5504
+ postman dataset source add \-d ./orders.dataset.yaml \-n refunds \-\-type jdbc \e
5505
+ \-\-from\-source orders \-\-var host=db.internal \-\-var port=5432 \-\-var database=refunds
5506
+
5507
+ Secrets:
5508
+ \-\-var <k>=vault:<vaultId>/<secretId> reference a Shared Vault secret (preferred)
5509
+ \-\-var <k>=<literal> plaintext: visible in `ps` output and shell
5510
+ history, and stored in clear text in the
5511
+ dataset YAML. Warned about at run time.
5512
+ A secret written directly into \-\-url\-template is rejected: a literal has no
5513
+ {{name}} to route through \-\-var, so it can never be a Vault reference and
5514
+ nothing masks it. Use a placeholder plus \-\-var instead.
5515
+ \-\-vars\-file <path|\-> JSON object; "\-" reads stdin, keeping
5516
+ secrets out of argv entirely. Accepts
5517
+ {"$vaultId":..,"$secretId":..} values.
5518
+ Local Vault secrets are not supported by Postman CLI; use a Shared Vault.
5519
+
5520
+ Connection test:
5521
+ Runs before the source is written, so a source that cannot connect is never
5522
+ persisted. Needs a local JRE and a loadable driver. Pass \-\-no\-test to skip it.
5523
+ \-\-no\-test alone still needs Java to resolve the driver class; on a machine with
5524
+ no Java at all, add \-\-driver\-class or \-\-from\-source so nothing has to load it.
5525
+
5526
+ JSON output (\-\-json):
5527
+ Success: {"ok":true,"source":{"id","name","target","format","driver",
5528
+ "urlTemplate","connectionTest"},"warnings":[...]}
5529
+ Failure: {"ok":false,"error":{"code","message","remediation",...context}}
5530
+ Both go to stdout, so `\-\-json 2>/dev/null | jq .` parses either way.
5531
+ Error codes: DRIVER_FILE_NOT_FOUND, DRIVER_CLASS_NOT_FOUND,
5532
+ DRIVER_CLASS_AMBIGUOUS (with candidates[]), URL_TEMPLATE_INVALID,
5533
+ CONFIG_VALUE_MISSING (with missing[]), URL_TEMPLATE_LITERAL_SECRET,
5534
+ VAULT_REFERENCE_INVALID,
5535
+ VARS_FILE_UNREADABLE, VARS_FILE_INVALID, SOURCE_NOT_FOUND, SOURCE_NOT_JDBC,
5536
+ JAVA_NOT_FOUND, JAVA_UNSUPPORTED, DRIVER_LOAD_FAILED, CONNECTION_FAILED,
5537
+ CONNECTION_TIMEOUT, SECRET_RESOLUTION_FAILED, INVALID_ARGUMENT
5538
+ Warning codes: PLAINTEXT_SECRET, CONNECTION_NOT_TESTED, NO_VARIABLES,
5539
+ EMPTY_VARIABLE_VALUE, NAME_NOT_SQL_SAFE, TRUST_SERVER_CERTIFICATE,
5540
+ SSH_VALUES_IN_ARGV, SSH_HOST_KEY_UNVERIFIED
5541
+ LOCAL_VAULT_UNSUPPORTED, SOURCE_NAME_CONFLICT, SOURCE_ID_CONFLICT and
5542
+ DATASET_FILE_CHANGED are also possible; DATASET_COMMAND_FAILED is the
5543
+ fallback for anything unclassified.
5544
+
5169
5545
 
5170
5546
 
5171
5547
  .SS "dataset source remove"
@@ -5217,6 +5593,42 @@ With \-\-file, reference in place instead of copying (local dataset only)
5217
5593
  .B \-\-force
5218
5594
  With \-\-file, overwrite the copied destination (local dataset only)
5219
5595
  .TP
5596
+ .B \-\-driver\-jar <path...>
5597
+ Replace the JDBC driver JAR(s)
5598
+ .TP
5599
+ .B \-\-driver\-class <fqcn>
5600
+ Replace the JDBC driver class
5601
+ .TP
5602
+ .B \-\-driver\-name <label>
5603
+ Rename the JDBC driver type label
5604
+ .TP
5605
+ .B \-\-url\-template <template>
5606
+ Replace the JDBC URL template
5607
+ .TP
5608
+ .B \-\-var <name=value...>
5609
+ Set a JDBC template variable. Merges onto the existing values. Use vault:<vaultId>/<secretId> for a secret. WARNING: a literal value is visible in `ps` output and shell history, and is stored in clear text in the dataset YAML (local) or sent in the request body (cloud). Prefer a Shared Vault reference.
5610
+ .TP
5611
+ .B \-\-prop <name=value...>
5612
+ Set a JDBC connection property. Merges, same vault: syntax
5613
+ .TP
5614
+ .B \-\-unset\-var <name...>
5615
+ Remove a JDBC template variable. Merging alone can never remove a key
5616
+ .TP
5617
+ .B \-\-unset\-prop <name...>
5618
+ Remove a JDBC connection property
5619
+ .TP
5620
+ .B \-\-vars\-file <path>
5621
+ JSON object of \-\-var values; "\-" reads stdin
5622
+ .TP
5623
+ .B \-\-ssh\-target\-host\-variable <name>
5624
+ Template variable holding the tunnelled host (JDBC)
5625
+ .TP
5626
+ .B \-\-ssh\-target\-port\-variable <name>
5627
+ Template variable holding the tunnelled port (JDBC)
5628
+ .TP
5629
+ .B \-\-java\-path <path>
5630
+ Java runtime for JDBC operations. Machine\-local only
5631
+ .TP
5220
5632
  .B \-\-host <host>
5221
5633
  Update DB host (mysql/postgresql/sqlserver)
5222
5634
  .TP
@@ -5224,10 +5636,10 @@ Update DB host (mysql/postgresql/sqlserver)
5224
5636
  Update DB port
5225
5637
  .TP
5226
5638
  .B \-\-user <user>
5227
- Update DB user (warning: stored as plaintext in the YAML).
5639
+ Update DB user. WARNING: a literal value is visible in `ps` output and shell history, and is stored in clear text in the dataset YAML (local) or sent in the request body (cloud). Prefer a Shared Vault reference.
5228
5640
  .TP
5229
5641
  .B \-\-password <password>
5230
- Update DB password. WARNING: passing it here exposes it in `ps` output and shell history, and it is stored as plaintext in the dataset YAML (local) or sent in the request body (cloud). Prefer a restricted DB user; secure input (prompt / stdin / env) is planned.
5642
+ Update DB password. WARNING: a literal value is visible in `ps` output and shell history, and is stored in clear text in the dataset YAML (local) or sent in the request body (cloud). Prefer a Shared Vault reference.
5231
5643
  .TP
5232
5644
  .B \-\-database <db>
5233
5645
  Update DB database name
@@ -5279,6 +5691,9 @@ Update SQL Server minimum TLS version
5279
5691
  .TP
5280
5692
  .B \-\-api\-key <key>
5281
5693
  Postman API key (defaults to the `postman login` session)
5694
+ .TP
5695
+ .B \-\-json
5696
+ Emit the result as JSON instead of prose
5282
5697
 
5283
5698
  .TP Examples:
5284
5699
 
@@ -5288,6 +5703,73 @@ Examples:
5288
5703
  postman dataset source update orders\-db \e
5289
5704
  \-d 14e30f6c\-1234\-1234\-1234\-cafef00dc0de \-\-host db.internal.example
5290
5705
 
5706
+ JDBC:
5707
+ Rotate one credential, leaving everything else alone:
5708
+ postman dataset source update orders \-d ./orders.dataset.yaml \e
5709
+ \-\-var password=vault:acme/pg\-pass\-2024\-11
5710
+
5711
+ Remove a variable the template no longer uses:
5712
+ postman dataset source update orders \-d ./orders.dataset.yaml \e
5713
+ \-\-url\-template 'jdbc:postgresql://{{host}}:{{port}}/{{database}}' \-\-unset\-var schema
5714
+
5715
+ Merge semantics: \-\-var and \-\-prop add to what is already stored, so you need
5716
+ not restate the whole connection. \-\-unset\-var and \-\-unset\-prop exist because
5717
+ merging alone can never remove a key. The template is validated against the
5718
+ MERGED values, so removing one the URL still needs fails here rather than at
5719
+ connect time.
5720
+
5721
+ Run `postman dataset source test \-d <dataset> \-n <name>` afterwards to check
5722
+ the change actually connects.
5723
+
5724
+
5725
+
5726
+ .SS "dataset source test"
5727
+ Open and close a real connection using a source's stored configuration.
5728
+
5729
+ .B Usage:
5730
+ [options]
5731
+
5732
+ .B Options:
5733
+ .TP
5734
+ .B \-d, \-\-dataset <datasetPathOrId>
5735
+ Dataset the source belongs to — a local .dataset.yaml path or a cloud dataset id
5736
+ .TP
5737
+ .B \-n, \-\-name <name>
5738
+ Source to test
5739
+ .TP
5740
+ .B \-\-java\-path <path>
5741
+ Java runtime to use for a JDBC source. Machine\-local only; also read from POSTMAN_JDBC_JAVA_PATH
5742
+ .TP
5743
+ .B \-\-api\-key <key>
5744
+ Postman API key (defaults to the `postman login` session)
5745
+ .TP
5746
+ .B \-\-json
5747
+ Emit the result as JSON instead of prose
5748
+
5749
+ .TP Examples:
5750
+
5751
+ Examples:
5752
+ postman dataset source test \-d ./orders.dataset.yaml \-n orders
5753
+ postman dataset source test \-d 14e30f6c\-1234\-1234\-1234\-cafef00dc0de \-n orders \-\-json
5754
+
5755
+ What it is for:
5756
+ When a query fails, this separates "the source is broken" from "the SQL is
5757
+ wrong". It uses the stored configuration, resolving any Vault references the
5758
+ same way a real query would.
5759
+
5760
+ Applies to database and JDBC sources. File and URL sources have no connection
5761
+ to test and report SOURCE_NOT_TESTABLE.
5762
+
5763
+ JSON output (\-\-json):
5764
+ Success: {"ok":true,"source":{"name","format"},"connectionTest":{"status":"passed"},
5765
+ "warnings":[]}
5766
+ Failure: {"ok":false,"error":{"code","message","remediation"}}
5767
+ Both go to stdout, so `\-\-json 2>/dev/null | jq .` parses either way.
5768
+ Error codes: SOURCE_NOT_FOUND (with available[]), SOURCE_NOT_TESTABLE,
5769
+ SOURCE_NOT_JDBC, SOURCE_CONFIG_UNAVAILABLE, CONNECTION_FAILED,
5770
+ CONN_AUTH_FAILED, CONNECTION_TIMEOUT, JAVA_NOT_FOUND, DRIVER_LOAD_FAILED,
5771
+ HOST_PROTOCOL_ERROR, SECRET_RESOLUTION_FAILED, DATASET_COMMAND_FAILED
5772
+
5291
5773
 
5292
5774
 
5293
5775
  .SS "dataset view"
@@ -5389,9 +5871,15 @@ View name
5389
5871
  .B \-q, \-\-query <sql>
5390
5872
  SQL query the view executes
5391
5873
  .TP
5874
+ .B \-s, \-\-source <nameOrIdOrSlug>
5875
+ Bind the view to one datasource and run the query natively against it, instead of through the federated SQLite layer. Same reference `dataset query \-s` takes
5876
+ .TP
5392
5877
  .B \-\-view\-id <uuid>
5393
5878
  Override the generated view id (local only; cloud assigns its own)
5394
5879
  .TP
5880
+ .B \-\-json
5881
+ Emit the result as JSON instead of prose
5882
+ .TP
5395
5883
  .B \-\-api\-key <key>
5396
5884
  Postman API key (defaults to the `postman login` session)
5397
5885
 
@@ -5403,6 +5891,22 @@ Examples:
5403
5891
  postman dataset view create \-d 14e30f6c\-1234\-1234\-1234\-cafef00dc0de \e
5404
5892
  \-n "Active Users" \-q "SELECT * FROM users WHERE active = true"
5405
5893
 
5894
+ Native view against one source (JDBC, MySQL, Postgres, SQL Server):
5895
+ postman dataset view create \-d ./orders.dataset.yaml \-n recent \e
5896
+ \-\-source orders \-q "SELECT * FROM orders WHERE created_at > now() \- interval '1 day'"
5897
+
5898
+ Federated vs native:
5899
+ Without \-\-source the query runs through the federated SQLite layer and can
5900
+ join across sources. With \-\-source it is sent to that one datasource in its
5901
+ own SQL dialect, which is what JDBC sources need. Mirrors `dataset query \-s`.
5902
+
5903
+ JSON output (\-\-json):
5904
+ Success: {"ok":true,"view":{"id","name","target","datasourceId","viewType"},
5905
+ "warnings":[]}
5906
+ Failure: {"ok":false,"error":{"code","message","remediation"}}
5907
+ Error codes: SOURCE_NOT_FOUND (with available[]), DATASET_FILE_CHANGED,
5908
+ DATASET_FILE_UNWRITABLE, DATASET_COMMAND_FAILED
5909
+
5406
5910
 
5407
5911
 
5408
5912
  .SS "dataset view delete"
@@ -5457,6 +5961,71 @@ Examples:
5457
5961
 
5458
5962
 
5459
5963
 
5964
+ .SS "dataset jdbc"
5965
+ Inspect JDBC drivers before attaching one to a dataset.
5966
+
5967
+ .B Usage:
5968
+ [options] [command]
5969
+
5970
+ .B Subcommands:
5971
+ .TP
5972
+ .B dataset jdbc inspect
5973
+ Detect Java, list driver classes, suggest a URL template and read driver properties.
5974
+
5975
+ .SS "dataset jdbc inspect"
5976
+ Detect Java, list driver classes, suggest a URL template and read driver properties.
5977
+
5978
+ .B Usage:
5979
+ [options] [jar...]
5980
+
5981
+ .B Options:
5982
+ .TP
5983
+ .B \-\-driver\-class <fqcn>
5984
+ Introspect this class instead of auto\-selecting
5985
+ .TP
5986
+ .B \-\-url\-template <template>
5987
+ Use this URL template instead of the one inferred from the JAR filename
5988
+ .TP
5989
+ .B \-\-java\-path <path>
5990
+ Java runtime to use. Machine\-local only — never written to a dataset. Also read from POSTMAN_JDBC_JAVA_PATH.
5991
+ .TP
5992
+ .B \-\-json
5993
+ Emit the discovery result as JSON
5994
+
5995
+ .TP Examples:
5996
+
5997
+ Examples:
5998
+ postman dataset jdbc inspect ./drivers/postgresql\-42.7.3.jar
5999
+ postman dataset jdbc inspect ./drivers/mysql\-connector\-j\-8.4.0.jar \-\-json
6000
+ postman dataset jdbc inspect ./a.jar ./b.jar \-\-driver\-class com.acme.Driver
6001
+
6002
+ What it reports:
6003
+ The Java runtime it found, every java.sql.Driver class in the artifacts,
6004
+ a suggested URL template, that template's {{variables}}, and the
6005
+ connection properties the driver accepts.
6006
+
6007
+ Feeding the result into `source add`:
6008
+ suggestedUrlTemplate \-> \-\-url\-template
6009
+ templateVariables[] \-> \-\-var <name>=<value>
6010
+ connectionProperties[] \-> \-\-prop <name>=<value>
6011
+ driverClass \-> \-\-driver\-class (only needed when ambiguous)
6012
+
6013
+ JSON output (\-\-json):
6014
+ Success: {"ok":true,"java":{...},"drivers":[...],"suggestedUrlTemplate":"...",
6015
+ "templateVariables":[...],"connectionProperties":[...],"warnings":[...]}
6016
+ Failure: {"ok":false,"error":{"code":...,"message":...,"remediation":...}}
6017
+ Error codes: JAVA_NOT_FOUND, JAVA_UNSUPPORTED, DRIVER_FILE_NOT_FOUND,
6018
+ DRIVER_FILE_UNREADABLE, DRIVER_INCOMPATIBLE, DRIVER_LOAD_FAILED,
6019
+ DRIVER_CLASS_NOT_FOUND, URL_TEMPLATE_INVALID, HOST_START_FAILED
6020
+ Warning codes: DRIVER_CLASS_AMBIGUOUS, DRIVER_PROPERTIES_EMPTY,
6021
+ DRIVER_PROPERTIES_UNAVAILABLE, URL_TEMPLATE_INVALID
6022
+ `minimumJavaMajorVersion` is present when the artifacts declare one.
6023
+
6024
+ Several driver classes in one JAR is reported, not an error. Re\-run with
6025
+ \-\-driver\-class to read that driver's connection properties.
6026
+
6027
+
6028
+
5460
6029
  .SS "dependency"
5461
6030
  Manage workspace dependencies (Postman entities reused from other workspaces).
5462
6031
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "postman-cli",
3
- "version": "1.59.0",
3
+ "version": "1.62.0",
4
4
  "description": "Official Postman CLI - Command-line companion for API development, testing, and automation",
5
5
  "keywords": [
6
6
  "postman",
@@ -58,10 +58,10 @@
58
58
  "man/"
59
59
  ],
60
60
  "optionalDependencies": {
61
- "@postman/pm-bin-macos-arm64": "1.59.0",
62
- "@postman/pm-bin-macos-x64": "1.59.0",
63
- "@postman/pm-bin-linux-x64": "1.59.0",
64
- "@postman/pm-bin-linux-arm64": "1.59.0",
65
- "@postman/pm-bin-windows-x64": "1.59.0"
61
+ "@postman/pm-bin-macos-arm64": "1.62.0",
62
+ "@postman/pm-bin-macos-x64": "1.62.0",
63
+ "@postman/pm-bin-linux-x64": "1.62.0",
64
+ "@postman/pm-bin-linux-arm64": "1.62.0",
65
+ "@postman/pm-bin-windows-x64": "1.62.0"
66
66
  }
67
67
  }