{"ok":true,"tool":"URL Parser","operation":"parse-url","description":"Parse a URL into protocol, host, port, path, query, and fragment.","method":"POST","endpoint":"/api/url-parser","webUrl":"https://toolhub-5eo.pages.dev/tools/url-parser","parameters":{"type":"object","properties":{"url":{"type":"string","description":"The URL to parse (https assumed if no scheme)"}},"required":["url"]},"response":{"type":"object","properties":{"href":{"type":"string"},"protocol":{"type":"string"},"hostname":{"type":"string"},"port":{"type":"string"},"pathname":{"type":"string"},"search":{"type":"string"},"hash":{"type":"string"},"origin":{"type":"string"},"queryParams":{"type":"object"},"hasQuery":{"type":"boolean"},"hasFragment":{"type":"boolean"}}},"example":{"request":{"url":"https://example.com:8080/path?x=1&y=2#frag"},"response_shape":{"type":"object","properties":{"href":{"type":"string"},"protocol":{"type":"string"},"hostname":{"type":"string"},"port":{"type":"string"},"pathname":{"type":"string"},"search":{"type":"string"},"hash":{"type":"string"},"origin":{"type":"string"},"queryParams":{"type":"object"},"hasQuery":{"type":"boolean"},"hasFragment":{"type":"boolean"}}}},"howToCall":"POST a JSON body to https://toolhub-5eo.pages.dev/api/url-parser. Returns {\"ok\":true,\"result\":{...}} on success or {\"ok\":false,\"error\":\"...\"} on failure. No auth, CORS-enabled.","parametersSummary":"  url (string, required) — The URL to parse (https assumed if no scheme)","curlExample":"curl -X POST https://toolhub-5eo.pages.dev/api/url-parser -H \"Content-Type: application/json\" -d '{\"url\":\"https://example.com:8080/path?x=1&y=2#frag\"}'"}