What happens to arrays inside my JSON?
The builder handles arrays natively! Under standard HTTP query patterns, an array like `{"id":[1,2]}` expands dynamically to multiple keys within the query string: `id=1&id=2`.
Query String Builder reverses the parsing process, taking a standard JSON object and instantly compiling it into a perfectly formatted, web-safe URL parameter sequence (e.g., `?key=value&foo=bar`). When manually building cURL commands, mocking API HTTP `GET` requests, or configuring webhooks with deep data payloads, formatting parameters by hand and managing percent-encoding is painfully error-prone.
Because standard URL paths only accept basic ASCII specifications, any dynamic data must be strictly serialized before transmission. This engine traverses the supplied JSON document structure, applies a rigid `encodeURIComponent()` sweep against all keys and values, joins the isolated strings with equal signs `=`, and concatenates the resulting payload with the standard query delimiter `&`.
The builder handles arrays natively! Under standard HTTP query patterns, an array like `{"id":[1,2]}` expands dynamically to multiple keys within the query string: `id=1&id=2`.
Yes! Safe percent-encoding is foundational. If your JSON value contains spaces ("New York"), it correctly encodes to `New%20York`. It also inherently protects unsafe characters like `+`, `/`, and `?`.
URL query strings aren't natively designed for deep object nesting (unlike GraphQL). If it encounters a deep object, the builder serializes the sub-object deeply by formatting keys with bracket notation (e.g., `user[name]=John`), ensuring backend frameworks like Express or Laravel can easily read the context.
The output strictly provides the serialized key-value data stream. You simply append a `?` prefix when attaching it directly to a base domain.
No. The serialization pipeline runs entirely natively in the JavaScript memory context within your browser.
Yes, it is totally open and free.
Tool workspace
Free Query String Builder online — instantly convert a JSON object into a perfectly formatted, URL-encoded query string for REST APIs and GET requests. No login.
Output
Input
{"q": "shoes sale", "filters": ["red", "blue"]}Output
q=shoes%20sale&filters=red&filters=blue