Voiden REST API Plugin
The Voiden REST API Plugin is a complete, extensible toolkit for building, testing, and visualizing HTTP/REST API requests within Voiden. It provides a powerful request pipeline system, custom block types, environment variable support, cURL import, and full control over request configuration.
Key Features
HTTP Request Building
- Supports all HTTP methods: GET, POST, PUT, DELETE, PATCH, and more.
- URL builder with path parameters and query string management.
- Autocomplete-enabled header editor.
- Body types:
- JSON
- XML
- Form-data
- URL-encoded
- Multipart (with file upload support)
- Binary Files
Response Visualization
- Status code display
- Response headers panel
- Pretty-printed body viewer
- Syntax highlighting (JSON & XML)
- Collapsible response sections
- Response body language override
Productivity Features
- Environment variables (e.g.,
{{base_url}}) - Built-in cURL import through paste
- Full integration into Voiden’s request/response pipeline
- Slash commands for quick insertion
Capabilities
Block Ownership
This plugin owns 13 custom block types, enabling structured API request creation and response visualization:
Request Blocks
endpoint ↗headers-table ↗query-table ↗path-table ↗url-table ↗multipart-table ↗json_body ↗xml_body ↗
Response Panel
Response BodyResponse HeadersRequest HeadersRequest Summary/Security
The plugin also allows block extensions, enabling future customization and community add-ons.
Response Body Language Override
Voiden normally figures out how to render the response body on its own — it reads the Content-Type header, sees application/json, and gives you nicely formatted JSON. Simple.
But servers aren't always that cooperative. Sometimes you get text/plain back even though the body is perfectly valid JSON. Sometimes the content type is just wrong. Now you can tell Voiden exactly how you want the body rendered, no matter what the server says.
How to Use It
In the response panel, there's a language selector sitting at the top of the response body section. Click it, pick what you want, and Voiden re-renders the body instantly.
- Auto — Voiden decides based on
Content-Type(this is the default) - JSON — pretty-print with JSON syntax highlighting
- XML — format as XML
- HTML — render as HTML markup
- Plain Text — raw output, no formatting
This is purely a display thing — it changes how the body looks, not what it actually is. The real response data is untouched, and the override doesn't carry over to your next request.
When It Comes in Handy
- The server sends
Content-Type: text/plainbut the body is JSON — flip it to JSON and actually read it - You're dealing with an API that returns inconsistent content types
- You just want to eyeball the raw output without any formatting getting in the way
Paste Handling
cURL Import
Pattern: /^curl\s+/i
Automatically parses cURL commands and converts them into:
- Endpoints
- Headers
- Auth
- Query parameters
- Body
Dependencies
{
"core": "^1.0.0",
"sdk": "^1.0.0"
}