Http client export to postman/curl collection
Answered
1) how can we export as postman collection?
2) how can we export as curl requests?
https://www.jetbrains.com/help/idea/http-client-in-product-code-editor.html
In this tutorial, it is only explain how we can import from postman. But not how we can export as postman collection.
Please sign in to leave a comment.
Hello Aleksander,
1. Currently it's not possible https://youtrack.jetbrains.com/issue/IJPL-150186
2. Please use “Convert to cURL and Copy” action: https://www.jetbrains.com/help/idea/http-client-in-product-code-editor.html#http-to-curl
Export to Postman isn't built into the HTTP Client yet (tracked in IJPL-150186), but you don't have to wait for it. I ran into exactly this — I keep my requests in `src/test/http`, and a teammate needed them in Postman — so I wrote a small offline converter: https://github.com/salitaba/http2postman (disclosure: I'm the author).
```
pip install http2postman
http2postman src/test/http/
# ✓ 12 requests | 3 folders | 5 variables | 2 scripts → postman_collection.json
```
It emits a Collection **v2.1** JSON that imports via Postman → Import:
- requests, names, methods, headers, and raw/JSON/form/multipart bodies
- `@variable` file variables → collection variables; `{{$dotenv}}` refs resolved from `.env`
- `## Folder` headings / `@group` tags → Postman folders
- `< {% %}` / `> {% %}` scripts → Pre-request / Tests tabs, with `client.test` → `pm.test`, `client.global.set` → `pm.collectionVariables.set`, etc.
- Bearer/Basic/OAuth2 (client-credentials token flow) → real Postman auth objects
- JetBrains dynamic variables mapped over: `$uuid` → `{{$guid}}`, `$random.email` → `{{$randomEmail}}`, …
With `--prefer-env dev` it also bakes your `http-client.env.json` values in as the collection variable defaults. Pure stdlib Python, nothing leaves your machine, and anything Postman can't express (WebSocket/gRPC) is reported with a `file:line` instead of being silently dropped.