---
title: "URL Parser"
description: "Paste a URL and see its protocol, credentials, host, port, path, query string as a table, and hash, plus a JSON form to copy. Validate it, and require HTTPS on request. Runs in your browser, no signup."
url: https://findutils.com/developers/url-parser/
category: developers
---

# URL Parser

Paste a URL and see its protocol, credentials, host, port, path, query string as a table, and hash, plus a JSON form to copy. Validate it, and require HTTPS on request. Runs in your browser, no signup.

**Use this tool:** [URL Parser](https://findutils.com/developers/url-parser/)

## Programmatic access

- REST id `url-parse`: POST https://api.findutils.com/api/tools/url-parse/execute (reference: https://findutils.com/api/url-parse/)
- MCP tool `url_parse` on https://mcp.findutils.com (reference: https://findutils.com/mcp/url-parse/)

## Why use a URL parser?

A long URL from a log line, an email campaign or a redirect chain hides its parts: the host behind credentials, a port after the host, a query string with repeated keys, a fragment that never reaches the server. This parser splits the URL the way a browser does, shows each part in its own row, lists every query parameter with repeated keys as separate rows, and gives you the whole structure as JSON. A validator with an optional HTTPS requirement tells you whether the string is a URL at all.

## Frequently Asked Questions

### What does the parser split a URL into?

Protocol, username and password if present, host, port, origin, path, the raw query string, and the hash. The query string is also broken into a key and value table, and the whole result is shown as JSON. Percent-encoded characters in keys and values are decoded in the table.

### How are repeated query keys handled?

A key that appears more than once, such as size=42&size=43, becomes one row per value in the table and an array in the JSON. That matches how most servers read repeated parameters.

### Why does the port show as empty for a normal URL?

The parser follows the browser's URL rules: a default port (80 for http, 443 for https) is dropped. A port shows only when it differs from the scheme's default, as in https://host:8443.

### What does Require HTTPS do?

It runs the validator with the require_https option, so an http:// URL is reported as invalid even when it is well formed. Use it when a link must be secure, for example before you store a webhook target or a redirect URL.

### Is the hash sent to the server?

No. The part after # stays in the browser and never reaches the server; the parser shows it so you can see what a client-side router or an anchor link will use.

### Does the URL Parser require a signup?

No. It is available with no signup and no usage limits. The URL is parsed in your browser and is not sent anywhere.

### Can I parse URLs from a script or an AI client?

Yes. The same functions are the REST tools url-parse and url-validate at api.findutils.com and the MCP tools url_parse and url_validate at mcp.findutils.com. Both take a url argument; the validator also takes require_https.

### What makes a URL invalid?

A missing scheme (example.com without https://), spaces or control characters, an unbalanced percent-encoding, a port outside 0 to 65535, or a host that is not a valid domain name or IP address. The validator names the reason it found.

### How do I turn the query back into a URL?

Edit the JSON's query object and pass it to the JSON to URL Params tool, which builds a query string with correct encoding. This page reads URLs; that page writes them.

### Are relative URLs supported?

No. A URL needs a scheme and a host to be parsed, so /path?x=1 is reported as invalid. Prefix it with the site's origin first.

## Related Tools

- [JSON to URL Params](https://findutils.com/developers/json-to-url-params/)
- [JWT Decoder](https://findutils.com/developers/jwt-decoder/)
- [Base64 Encoder](https://findutils.com/developers/base64-encoder/)
- [HTTP Request Builder](https://findutils.com/developers/http-request-builder/)
- [HAR to cURL](https://findutils.com/developers/har-to-curl/)
- [cURL to Code](https://findutils.com/developers/curl-to-code/)
