All tools

URL Parser

Network

Parse URLs into components and build/modify URLs with query params

Paste a URL and see it broken down into protocol, host, path, query parameters, and fragment, with each query param editable individually so you can add, remove, or change one and get a correctly re-encoded URL back. It uses the browser's native WHATWG URL parser for absolute URLs, falling back to manual parsing for relative paths, so behavior matches what `new URL()` would do in real code rather than a hand-rolled approximation. Duplicate query keys are preserved as a list of values rather than silently overwritten, which matters when debugging a webhook or redirect URL with a malformed or unexpectedly repeated parameter. It only parses structure; it never makes a network request, which is a different job from URL Encode/Decode, which just escapes or unescapes a string rather than splitting it into parts.

urlparsequeryparamsbuild

How to use URL Parser

  • 1.Paste any URL to instantly break it down into protocol, host, path, query parameters, and fragment.
  • 2.Edit individual query parameters in the parsed view and get a correctly re-encoded URL back, instead of hand-editing a query string.
  • 3.Use it to debug a redirect or webhook URL that isn't working by checking whether a parameter is missing or malformed.

Frequently asked questions

Does it validate whether a URL is reachable?
No, this tool only parses the URL's structure — it doesn't make any network request, so a syntactically valid but dead URL will still parse fine.
Does it handle URLs with duplicate query parameter names?
Yes, duplicate keys (like `?tag=a&tag=b`) are preserved as a list of values rather than overwriting each other.
Is my URL sent anywhere?
No, parsing and building happen entirely client-side in your browser.
Does it decode percent-encoded characters automatically?
Yes, encoded characters in the path and query are decoded for display, and re-encoded correctly when you build a new URL from edited parts.

Use via API, SDK, or MCP

Installnpm install @utilix-tech/sdk
Usageimport { api } from '@utilix-tech/sdk'
const parsed = api.parseUrl('https://example.com:8080/path?foo=bar&baz=1#section')
console.log(parsed.hostname)  // example.com
console.log(parsed.params)    // [{ key: 'foo', value: 'bar' }, { key: 'baz', value: '1' }]
console.log(parsed.hash)      // #section

Runs locally · no API key · no rate limits · Node.js SDK docs →