{"id":28652303,"url":"https://github.com/codesoap/preq","last_synced_at":"2025-07-25T20:15:05.428Z","repository":{"id":213158603,"uuid":"733182009","full_name":"codesoap/preq","owner":"codesoap","description":"an http requester for the httpipe format","archived":false,"fork":false,"pushed_at":"2024-04-01T09:23:09.000Z","size":13,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-05-17T09:11:25.347Z","etag":null,"topics":["httpipe"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/codesoap.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2023-12-18T18:41:35.000Z","updated_at":"2024-02-26T22:41:00.000Z","dependencies_parsed_at":"2023-12-20T15:44:53.841Z","dependency_job_id":"0de8d18d-adb1-46fb-969a-16f1d6902938","html_url":"https://github.com/codesoap/preq","commit_stats":null,"previous_names":["codesoap/preq"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/codesoap/preq","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codesoap%2Fpreq","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codesoap%2Fpreq/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codesoap%2Fpreq/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codesoap%2Fpreq/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/codesoap","download_url":"https://codeload.github.com/codesoap/preq/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codesoap%2Fpreq/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259592262,"owners_count":22881267,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["httpipe"],"created_at":"2025-06-13T06:07:20.463Z","updated_at":"2025-06-13T06:08:06.890Z","avatar_url":"https://github.com/codesoap.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"preq is an HTTP requester for the [httpipe\nformat](https://github.com/codesoap/httpipe). It takes httpipe input via\nstandard input, makes the given requests and prints httpipe to standard\noutput.\n\npreq is designed to be used with HTTP 1.1 requests only and does not\nsupport the CONNECT method.\n\n# Examples\n```console\n$ echo '{\"host\":\"x.com\",\"req\":\"GET / HTTP/1.1\\\\r\\\\nHost: x.com\\\\r\\\\n\\\\r\\\\n\"}' | preq\n{\"host\":\"x.com\",\"port\":443,\"req\":\"GET / HTTP/1.1\\r\\nHost: x.com\\r\\n\\r\\n\",\"resp\":\"HTTP/1.1 302 Moved Temporarily\\r\\n ... \"}\n\n$ # Using pfuzz to generate requests and drip to limit the request rate:\n$ pfuzz -w /path/to/wordlist -u 'https://foo.com/FUZZ' | drip 500ms | preq -p 20\n...\n```\n\n# Installation\nYou can download precompiled binaries from the [releases\npage](https://github.com/codesoap/preq/releases) or install it with\n`go install github.com/codesoap/preq@latest`.\n\n# Usage\n```console\n$ preq -h\nUsage of preq:\n  -p int\n        Number of parallel requests. (default 1)\n  -t duration\n        Timeout for requests. (default 5s)\n\npreq expects input via standard input in the httpipe format. At least\nthe \"host\" and \"req\" fields must be present. If the \"tls\" field is\nmissing, TLS (HTTPS) will be used. If the \"port\" field is missing, port\n80 will be used if TLS is not used and port 443 otherwise.\n\npreq will make requests in the order they arrived via standard input.\nHowever, if the value of the -p flag is greater than 1, the order of the\noutput lines may not match the input.\n\nExample:\necho '{\"host\":\"x.com\",\"req\":\"GET / HTTP/1.1\\\\r\\\\nHost: x.com\\\\r\\\\n\\\\r\\\\n\"}' | preq\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodesoap%2Fpreq","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcodesoap%2Fpreq","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodesoap%2Fpreq/lists"}