JSON PARSE DIAGNOSTIC
Every JSON parse error at the line and column it broke — and what the server sent back
Paste a blob or a URL. Parsehint parses it and, when it fails, points at the exact line and column — not "unexpected token at position 4471". For a URL it also reports what the server actually sent: content-type, whether the body is JSON at all, and whether it's a JSON error object dressed as a success.
01
Pinpoint the break, not the neighbourhood
Every JSON parser tells you something broke. Parsehint tells you where and what was expected — in plain language. "Unexpected token at position 4471" becomes "Line 3, column 15 — expected a comma before this quote."
When the JSON comes from a URL, Parsehint also reports what the server actually sent: the content-type header, whether the body is JSON at all, and whether it's a JSON error object masquerading as a 200 response. A surprising share of "my API is broken" turns out to be an HTML error page with a 200 status and a JSON content-type, and nothing makes that visible until someone looks at the bytes.
For who: anyone staring at a parse error from an API they don't control and can't tell whether the bug is on their side or the server's. API integrators, backend developers, QA engineers, anyone debugging a pipeline where the JSON arrives over the network.
02
Two modes, one result
Paste mode — browser-local
Paste a JSON blob. Parsehint parses it in your browser with JSON.parse
and extracts the exact line and column from the error. The pasted text never leaves
your machine — stated on the page, and enforced by the code path.
URL mode — server fetch
Enter a URL. Parsehint's server fetches it, attempts to parse the response body, and returns a full diagnostic: status code, content-type, whether the body is JSON, the parse error pinpointed to line/column, and whether it detects an error object dressed as a successful response.
Copy the diagnosis
One click copies the full result — verdict, line/column details, server metadata — so you can paste it into a ticket or a message without retyping.
(V8 parens, position, Firefox)
(trailing comma, EOF, control chars)
(loopback, private, credentials, NUL)
03
Less reading, more fixing
A typical parser error means nothing until you count bytes. Parsehint transforms it into actionable information in one line:
"name": "Example"
"count": 42
}
Expected a comma after property name — property names must be followed by a comma before the next one.
Raw: Unexpected token '"' — ';' expected after property name at position 33
The pinpoint is always the same: line, column, and what the parser actually expected there. No scrolling, no counting.
04
Free to diagnose. Paid for the edge cases.
The core tool — paste JSON and URL fetch — is free and always will be. No account, no sign-up, no limits on pastes or fetches per day. The paid tier adds features for teams and high-volume debugging.
- Paste JSON parsing
- URL fetch + parse
- Line/column pinpointing
- Server metadata report
- Error object detection
- Copy result
- Everything in Free
- Saved parse history (localStorage)
- CSV/JSON export of results
- Batch URL checking
- Email alerts (not available — no email sender in this infrastructure)
05
It will not crawl your API. It will not send email.
This tool is deliberately scoped. Knowing what it won't do is as important as knowing what it will.
-
Crawling
Parsehint fetches exactly one URL — the one you type. It never follows redirects, never crawls, and never retries a different endpoint. The redirect mode is set to
manualso you see the redirect rather than its target. - Email There is no email sender in this infrastructure. No alerts, no digests, no scheduled re-checks. If a parse result matters tomorrow, copy it today.
- Storage The free tier stores nothing — pasted text stays in your browser, URL results are returned and forgotten. Pro subscribers have saved history and export data stored locally in their browser (localStorage). No data is stored on our servers.
- Cloudflare block A host behind Cloudflare cannot be reached from a Cloudflare Worker — the platform refuses a socket back into its own network. Paste the response body directly instead.
- Non-2xx If the URL returns a non-2xx status, Parsehint says so and marks every derived verdict as not established from that response. It does not attempt to parse an error page as JSON.
06
Questions a sceptic would ask
"My browser's console already shows me the error."
The console tells you "unexpected token at position 4471" — a position in the raw byte stream, not a line and column you can navigate to. Parsehint transforms that into "Line 3, column 15". And for API responses, the console cannot show you the server's content-type header or whether the body was JSON at all — Parsehint can.
"I use an IDE with a JSON validator."
An IDE validates what you typed. It does not fetch a URL, inspect the server's response headers, or detect an error object that returned with a 200 status — which is the most common "why is my code broken?" scenario Parsehint diagnoses.
"Can I trust that my pasted JSON stays private?"
Yes. Paste parsing happens entirely in your browser — the JSON text is never sent anywhere. The page states this next to the paste area. Only URL-mode requests go to the server, and only the URL you typed is included in the request.
"Why would I pay for a JSON parser?"
The free tier covers the common case. Pro is for teams who need to check many URLs in a session, save and export results, or write custom error-message rules for their own APIs. If the free tier works for you, use it — it's not artificially limited.