{"id":19502638,"url":"https://github.com/midnqp/postman-cli","last_synced_at":"2026-01-30T22:07:33.053Z","repository":{"id":50669436,"uuid":"515262567","full_name":"midnqp/postman-cli","owner":"midnqp","description":"A complete, minimalist command-line for Postman collections. (unfortunately the development is stale, because i use web ui these days) ","archived":false,"fork":false,"pushed_at":"2023-03-09T14:21:00.000Z","size":179,"stargazers_count":10,"open_issues_count":15,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-26T00:33:15.114Z","etag":null,"topics":["cli","curl","minimal","nodejs","postman","postman-collection","terminal"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/midnqp.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2022-07-18T16:33:41.000Z","updated_at":"2024-12-31T11:22:20.000Z","dependencies_parsed_at":"2025-04-26T00:32:24.524Z","dependency_job_id":"2b311d42-d8e1-4d7d-a8a1-0d18cb6d16b9","html_url":"https://github.com/midnqp/postman-cli","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/midnqp/postman-cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/midnqp%2Fpostman-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/midnqp%2Fpostman-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/midnqp%2Fpostman-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/midnqp%2Fpostman-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/midnqp","download_url":"https://codeload.github.com/midnqp/postman-cli/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/midnqp%2Fpostman-cli/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28920708,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-30T20:25:28.696Z","status":"ssl_error","status_checked_at":"2026-01-30T20:25:13.426Z","response_time":66,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","curl","minimal","nodejs","postman","postman-collection","terminal"],"created_at":"2024-11-10T22:17:42.306Z","updated_at":"2026-01-30T22:07:33.038Z","avatar_url":"https://github.com/midnqp.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=center\u003e\u003cimg src=\"https://img.shields.io/badge/postman%20cli-an%20elegant%20command--line%20for%20postman%20collection-white?style=for-the-badge\u0026logo=postman\"\u003e\u003c/p\u003e\u003cbr\u003e\u003cbr\u003e\n\n\n\u003cp align=center\u003e\n\u003c!--img src=\"https://user-images.githubusercontent.com/50658760/179565718-d6bed09d-86f8-4096-bcd8-03b610cd5624.png\"/--\u003e\n\u003cimg height=20px src=\"https://badges.aleen42.com/src/node_flat_square.svg\"\u003e\n\u0026emsp;\n\u003cimg height=20px src=\"https://badges.aleen42.com/src/cli_flat_square.svg\"\u003e\n\u0026emsp;\n\u003cimg height=20px src=\"https://badges.aleen42.com/src/npm_flat_square.svg\"\u003e\n\u0026emsp;\n\n\u003cimg height=20px src=\"https://img.shields.io/badge/License-MIT-brightgreen.svg?style=for-the-badge\"\u003e\n\u0026emsp;\n\u003cimg height=20px src=\"https://img.shields.io/github/languages/code-size/midnqp/postman-cli?style=for-the-badge\"\u003e\n\u0026emsp;\n\u003ca href=\"https://github.com/midnqp/postman-cli/actions/workflows/build.yml\"\u003e\n\u003cimg height=20px src=\"https://img.shields.io/github/actions/workflow/status/MidnQP/postman-cli/build.yml?branch=main\u0026logo=github\u0026style=for-the-badge\"\u003e\n\u003c/a\u003e\n\u003c/p\u003e\n\n[Postman](https://www.postman.com) is a wondrous tool for backend developers. A friend. A single point of truth. Something that stays open alongside our code editor. However, using a graphical interface in a fast-moving work environment may not be productive. Most of us enjoy the most productivity with our keyboard, at our Terminal. So, why not bring Postman as a commandline interface? The project is pretty much in pre-release stage. Ideas/feedbacks are welcome!\n\nDownload for [Linux](https://github.com/MidnQP/postman-cli/releases/download/0.0.3/pcli), [Mac](https://github.com/MidnQP/postman-cli/releases/download/0.0.3/pcli-macos-x64), or [Windows](https://github.com/MidnQP/postman-cli/releases/download/0.0.3/pcli.exe) - and get started right away!\n\n\n## Usage\n\n```\nUsage: pcli [options] [command]\n\npostman command-line interface\n\nOptions:\n  --version                         output the version number\n  -c, --collection \u003cstring\u003e         path to collection\n  -h, --headers \u003cstring\u003e            header for all requests\n  -v, --variables \u003cstring\u003e          variable for all requests\n  --help                            display help for command\n\nCommands:\n  show [options] \u003cresources...\u003e     show details of a resource\n  list [options] [resources...]     list resources recursively\n  run [options] \u003cresources...\u003e      runs a request\n  move [options]                    move a resource under another parent\n  rename [options] \u003cresources...\u003e   rename a resource\n  reorder [options] \u003cresources...\u003e  reorder a resource under the same parent\n  delete \u003cresources...\u003e             remove a resource\n  help [command]                    display help for command\n```\n\n## Getting Started\nDownload postman-cli for your platform: [Linux](https://github.com/MidnQP/postman-cli/releases/download/0.0.3/pcli), [Mac](https://github.com/MidnQP/postman-cli/releases/download/0.0.3/pcli-macos-x64), or [Windows](https://github.com/MidnQP/postman-cli/releases/download/0.0.3/pcli.exe). Then let's download/export an example collection, which we can experiment with. You can copy and save [this collection json](https://api.postman.com/collections/17618914-61ab9b2b-4d20-46fb-bf0e-2952a69aae1b?access_key=PMAT-01GP5G11PGPYX8TMMQJVTZ96AC) in a file named `collection.json`, or you can have your own postman collection json file.\n\n\n#### Outline\nThis command prints the outline of a collection. The `--depth` option controls the recursive depth, and it is `Infinity` by default.\n```\n$ pcli -c collection.json list             \n$ pcli -c collection.json list --depth 2 \n\n      col  pcli example\n          fol  users\n              req  register\n              req  login\n              req  update\n              req  list\n              req  remove\n          fol  orders\n              req  checkout\n              req  list\n              req  remove\n```\n\n#### Show\nThis command prints details of a folder, request, or example. Note that, for brevity, a \"resource\" refers to a folder, request, or example within a Postman collection. An example of pinpointing a nested resource is `$ pcli show users register muadh`. Here, `users` is a folder, `register` is a request, and `muadh` is an example. So, the command shows the details of the example named `muadh`.\n\n\n```\n$ pcli -c collection.json show users register muadh\n                                                   \n200 OK\n{\n  url: { method: 'POST', path: '/users/register' },  \n  headers: {\n    date: 'Sun, 17 Jul 2022 17:34:51 GMT',\n    server: 'Apache/2.4.48 (Ubuntu)',\n    'content-length': '271',\n    'keep-alive': 'timeout=5, max=100',\n    connection: 'Keep-Alive',\n    'content-type': 'text/html; charset=iso-8859-1'\n  },\n  body: {\n    user: { id: '7a96cbb8045a56d23dc1', fullName: 'Muadh Bin Jabaal' }\n  },\n  size: { body: 82, header: 210, total: 292 },\n  time: null\n}\n```\n\n#### Rename\nThis command renames a folder, requst, or example. In this example, we're renaming the request `login` to `log-in`.\n\n```\n$ pcli -c collection.json rename users login --name log-in\n```\n\n#### Move\nThis command moves a folder, request, or example within a collection. In this example, we're moving the request named `register` from folder `users` to folder `orders`.\n\n```\n$ pcli -c collection.json move --from users register --to orders\n```\n\n#### Delete\nThis command deletes a folder, request, or example.\n\n```\n$ pcli -c collection.json delete users update\n```\n\n#### Reorder\nThis command reorders a folder, request, or example by 1-based index.\n\n```\n$ pcli -c collection.json reorder users list --index 1\n```\n\n#### Run\nThis command runs a HTTP request or example. Usually postman variables e.g. `{{baseURL}}` or `{{auth-token}}` are used in headers or URLs. Values for them can be provided through the `--variables` option. Make sure you have an active backend server to process a HTTP request and provide a response. For the purposes of this demo, a simple static backend server is provided in `test/server.ts`, which you can run by `npm run test:backend`.\n\n```\n$ pcli -c collection.json run users register muadh\n$ pcli --variables '{\"server\":\"localhost:8080\"}' -c collection.json run users register          # running request, resolving {{server}}\n$ pcli --variables '{\"server\":\"localhost:8080\"}' -c collection.json run users register muadh    # running example, resolving {{server}}\n\n200 OK\n{\n  url: { method: 'POST', path: '/users/register' },  \n  headers: {\n    date: 'Sun, 17 Jul 2022 17:34:51 GMT',\n    server: 'Apache/2.4.48 (Ubuntu)',\n    'content-length': '271',\n    'keep-alive': 'timeout=5, max=100',\n    connection: 'Keep-Alive',\n    'content-type': 'text/html; charset=iso-8859-1'\n  },\n  body: {\n    user: { id: '7a96cbb8045a56d23dc1', fullName: 'Muadh Bin Jabaal' }\n  },\n  size: { body: 82, header: 210, total: 292 },\n  time: null\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmidnqp%2Fpostman-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmidnqp%2Fpostman-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmidnqp%2Fpostman-cli/lists"}