{"uid":"cap_R1ECBZjrCgjf7Azr1N1SP","slug":"cheap-utilities-url-normalizer-84c796d4","name":"Cheap Utilities URL Normalizer","description":"Normalize a URL: lowercase host, default port and fragment removed, sorted query, tracking parameters stripped.","url":"https://cheap-utilities.x402tookit.com/url-normalize?utm_source=zero.xyz","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET"],"type":"string"},"queryParams":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"URL to normalize (not fetched)"}}}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"asOf":{"type":["null","string"]},"host":{"type":["null","string"]},"path":{"type":["null","string"]},"port":{},"query":{"type":["array","null"],"items":{"type":"object","properties":{"key":{"type":["null","string"]},"value":{"type":["null","string"]}}}},"scheme":{"type":["null","string"]},"source":{"type":["null","string"]},"reasons":{"type":["array","null"]},"summary":{"type":["null","string"]},"verdict":{"type":["null","string"]},"degraded":{"type":["boolean","null"]},"disclaimer":{"type":["null","string"]},"normalized":{"type":["null","string"]},"notChecked":{"type":["array","null"],"items":{"type":"string"}},"strippedParameters":{"type":["array","null"],"items":{"type":"string"}}}}}}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.02","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.02/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.02","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.02","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_sG9wQd3QHxvngh7uu6rpO","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.02","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Normalizes a URL by lowercasing the host, removing default ports and fragments, sorting query parameters, and stripping known tracking parameters.","exampleAgentPrompt":"Can you normalize this URL for me — strip any tracking params and sort the query string so it's in canonical form: https://Example.COM:80/path?utm_source=email&b=2&a=1#section?","exampleUseCases":[{"title":"Deduplicate links before indexing","prompt":"I'm about to store a bunch of URLs in my database and I want to deduplicate them. Can you normalize this URL first so it's in canonical form with tracking params stripped and the query sorted: https://Shop.Example.com:80/product?color=red&utm_campaign=summer&utm_source=newsletter&size=M#reviews"},{"title":"Strip UTM parameters from a shared link","prompt":"Someone sent me this link with a bunch of UTM tracking junk in it — can you clean it up and give me just the canonical URL without all the tracking parameters? https://blog.example.com/post?utm_medium=social&utm_source=twitter&utm_campaign=launch&ref=homepage"},{"title":"Compare two URLs for equivalence","prompt":"Are these two URLs actually the same page? Can you normalize both of them — lowercase host, remove default port, sort query params, strip trackers — so I can compare them properly: https://EXAMPLE.com:443/search?z=3&a=1 and https://example.com/search?a=1&z=3"}],"resultDescription":"Returns a structured object containing the normalized URL string, broken-down components (scheme, host, path, port, sorted query parameter array), a list of stripped tracking parameters, a verdict and summary of what was changed, an 'asOf' timestamp, and a degraded flag indicating if the normalization was partial.","failureModes":["Missing or empty 'url' query parameter returns an error","Malformed or unparseable URL may return a null normalized field or degraded=true","Non-HTTP/HTTPS schemes may return null or unsupported verdict","Network timeout if the service is temporarily unavailable","Payment failure (402) if USDC balance is insufficient"],"whenToPreferThis":"Use this endpoint when you need a purely structural, client-side URL normalization — no DNS lookup, no HTTP fetch, just deterministic cleaning of the URL string. Prefer it over full crawl-based deduplication when you want fast, cheap canonical forms for comparison, storage, or display. It's especially useful for stripping tracking parameters (UTM, fbclid, gclid) and sorting query strings before indexing or deduplication.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-29T13:13:43.171Z","isFirstParty":false,"canonicalSlug":"cheap-utilities-url-normalizer-84c796d4"}