Skip to main content
Encoding and API Debugging

URL Query Parser

Parse full URLs or raw query strings into decoded parameters, duplicate key arrays, UTM fields, and copy-ready JSON. This is useful for OAuth callbacks, analytics links, webhooks, API clients, and bug reports.

Safety note: use redacted or test URLs when sharing results. Do not paste real production auth codes, bearer tokens, session IDs, secrets, or private customer URLs into public reports or screenshots.

Waiting for a URL or query string.

Decoded parameters

KeyValueNotes
Run the parser to inspect query parameters.

Best for

Best for decoding query strings, inspecting duplicate parameters, checking UTM fields, debugging OAuth callback URLs, and copying query parameters as JSON.

Not for

Not for crawling websites, validating full URL security, expanding shortened links, or making network requests to remote pages.

Common debugging workflow

Paste the full callback URL or query string, parse duplicate keys into arrays, decode encoded values, copy the JSON output, then inspect JWT or JSON values in the next local tool.

How to use this tool

  1. Paste a full URL, callback URL, or raw query string.
  2. Run Parse query to decode parameters and group duplicate keys.
  3. Copy JSON output or follow up in URL Encoder when you need percent-encoding.

Real examples

Sample input/output: use these examples to check how the parser decodes values, preserves duplicate keys, and keeps edge cases visible.

  • OAuth callback: https://app.example/callback?code=REDACTED&state=abc&redirect_uri=https%3A%2F%2Fapp.example%2Fdone shows code, state, and a decoded redirect_uri field.
  • UTM campaign with duplicate keys: ?utm_source=docs&utm_campaign=launch&tag=api&tag=json labels UTM fields and outputs tag as an array.
  • Encoded JSON value: ?filter=%7B%22status%22%3A%22open%22%7D decodes the value as JSON-like text you can copy into JSON Formatter.
  • Empty value and hash fragment: ?debug=&mode=test#step=2 preserves debug as an empty string and keeps the fragment visible in the original input.

Common use cases

Use it for OAuth redirect debugging, UTM campaign review, webhook callback inspection, support tickets, API examples, and checking whether repeated query keys were preserved.

Common errors and fixes

IssueWhy it happensFix
No question markThe input may be a raw query string.The parser accepts either ?a=1 or a=1.
Encoded values look unreadableValues may contain percent-encoded characters such as %2F, %3A, or %20.Run the parser to decode them before copying JSON output.
Duplicate keys are confusingAPIs and forms can repeat parameters.Duplicate values are grouped into arrays instead of overwriting the first value.
Full URL pasted with fragmentOAuth and SPA callbacks sometimes keep data after #.Check both visible query parameters and the preserved fragment when debugging redirects.

Edge cases table

CaseResult
Empty valuePreserved as an empty string.
Hash fragmentIgnored for query parsing, but kept visible in the original input.
Encoded JSON parameterDecoded as text, then can be sent to JSON Formatter if valid.

URL Query Parser FAQ

Does this upload URLs?

No. Parsing runs in your browser and the pasted URL stays in the current page.

Can it parse raw query strings?

Yes. Paste either a full URL or only the part after the question mark.

What are UTM fields?

UTM fields are common analytics campaign parameters such as utm_source, utm_medium, and utm_campaign.

Can I decode OAuth callbacks?

Yes, but avoid sharing real authorization codes or production tokens in public reports.