Binary Post Request Node
Send raw audio and video bytes to your API, the whole point of this pack
- body
- headers
- RETRY_SETTING
- text
- response_bytes
- json
- status_code
- response_headers
This is the node the fork exists for. The original ComfyUI-RequestNodes only knew how to upload images; the Binary Post Request Node is what lets you push raw audio and video bytes to an API as application/octet-stream. Feed it the output of an Audio To Blob Node, Video To Blob Node, or Image To Blob Node, and it POSTs those bytes to your endpoint - no multipart wrapping, no JSON encoding, just the raw file body. It's the node you want for voice-conversion services, TTS backends, and anything that accepts a bare audio or video upload.
Look at the default target_url - http://127.0.0.1:8000/rvc/default - and you can see exactly what the author built it for: talking to a local RVC voice-conversion server from inside a ComfyUI workflow. The pack even ships an svc-all-endpoints example workflow in that spirit, wiring list-roles, train-voice, and voice-conversion calls together.
What you set
target_urlandbody(BYTES) are required.bodyaccepts raw bytes or anio.BytesIOand normalizes it internally.method- POST, PUT, or PATCH.content_type- defaults toapplication/octet-stream; change it toaudio/wavorvideo/mp4if your API insists on a real MIME type.headers(KEY_VALUE) - extra headers merged on top.RETRY_SETTING- same retry machinery as the Rest Api Node, minus the status-code conditions: justmax_retry(default 3) andretry_intervalin ms. Unlike the plain Post Request Node, this one gives the request a 300-second timeout, which is what a video encode on the far side actually needs.
The outputs
Five of them, and this is the rare request node that returns everything you'd want: text (response body), response_bytes (the response as raw bytes - unlike the BytesIO this pack's older nodes return, so you can feed it straight into Blob To Audio Node or Blob To Video Node for a round trip), json (parsed, or {"raw": ...} if the server didn't return JSON), status_code, and response_headers. The node is also marked as an output node, so its results show up as final preview values.
If every retry fails, you get the last error message in text and json, a 0 status code, and empty bytes - it won't crash your run, it just tells you it failed.
Install
ComfyUI Manager → search ComfyUI-HttpRequestNodes → Install, restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/ahkimkoo/ComfyUI-HttpRequestNodes
pip install soundfile imageio imageio-ffmpeg
Category: RequestNode/REST API. The pip packages are what the blob converters need upstream of this node (soundfile for WAV, imageio/imageio-ffmpeg for video), so install them even though this node itself only needs requests. No models, no keys.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| target_url | STRING | http://127.0.0.1:8000/rvc/default | — |
| body | BYTES | — | |
| methodopt | COMBO | POST | 3 options: POST, PUT, PATCH |
| content_typeopt | STRING | application/octet-stream | — |
| headersopt | KEY_VALUE | — | |
| RETRY_SETTINGopt | RETRY_SETTING | — |
Outputs (5)
| Name | Type | Description |
|---|---|---|
| text | STRING | — |
| response_bytes | BYTES | — |
| json | JSON | — |
| status_code | INT | — |
| response_headers | DICT | — |