See where this JSON broke — and what the server sent instead

Paste a URL or a blob of JSON. Parsepin points at the exact line and column of the failure, in plain language — not "unexpected token at position 4471". Also tells you what the server really returned: content-type, body format, and error responses dressed as success.

What Parsepin does

  • Exact error location

    Not "position 4471". Line, column, and what the parser expected there — with surrounding context and a pointer. Works for both URLs and pasted JSON.

  • Server response introspection

    For a URL, Parsepin fetches it server-side and shows you the actual bytes: status code, content-type header, body preview, and body size. A surprising share of broken API calls are an HTML error page wrapped in a 200 with JSON content-type. You see that here.

  • Error-dressed-as-success detection

    When a 200 response body contains error-like fields ("error", "errors", "success: false"), Parsepin flags it. A 200 with an error body is worse than a 500 — most tools treat it as success.

  • Your pasted JSON stays in your browser

    Pasted JSON text is parsed entirely client-side. Nothing you paste is sent over the network. URL fetching happens server-side because browsers cannot read arbitrary URLs due to CORS.

See it in action

Paste a broken JSON snippet. Parsepin shows the exact line, column, and what went wrong.

{ "name": "Parsepin", "version": "1.0", "tags": ["devtools", "json", "debugging"] "author": "parsepin" } ^ Unexpected string --- line 5, column 10 — expected ',' or '}' after value in object
Try it yourself