The interactive shell for HTTP requests.
Set a base URL, add headers once, send requests, and re-run them from history. Pure terminal efficiency, built in Rust.
reqsh
reqsh>basehttps://api.example.com
reqsh>headerAuthorization Bearer tok_abc
reqsh>GET/users
.....>::send
HTTP/1.1 200 OK
content-type: application/json
[
{ "id": 1, "name": "Alice" },
{ "id": 2, "name": "Bob" }
]reqsh>history
base https://api.example.com
header Authorization Bearer tok_abc
GET /users
reqsh>rerun3
HTTP/1.1 200 OK
reqsh>
A persistent REPL.
Stop typing the same host and authentication headers over and over. With reqsh, you set your base URL and headers once in a session. Every subsequent request uses them automatically.
reqsh> base https://api.stripe.com
reqsh> header Authorization Bearer sk_test
reqsh> GET /v1/customers
.....> ::send
reqsh> history
1base https://api.stripe.com
2header Authorization Bearer sk_test
3GET /v1/customers
reqsh> rerun 3
Time-travel with history.
Every command is saved. Type historyto see everything you've done in the current session. Made a typo or need to repeat a request? Just use rerun <id> to execute it instantly.
Built for speed.
Written in Rust, reqsh starts instantly and uses minimal memory. It features blazing fast tab completion for all commands and HTTP methods.
Read the documentationreqsh>POST