Skip to content

API Response Inspector — Fetch & Analyze JSON

Inspect API JSON responses with validation, tree view, analytics, and raw output. Fetch and analyze any API endpoint.

Fetch API Response

Or paste JSON manually

Debugging API Responses

You send a GET request to an API and get back a JSON response. But is the structure what you expected? Is the payload too large? How long until the server responds? This tool fetches JSON from any public API endpoint and immediately shows you the status code, the re-serialized JSON size, the time until response headers arrive, and three different views of the data.

For APIs that block browser requests due to CORS restrictions, paste the JSON manually from your terminal, Postman, or server logs. You get the same analysis views either way.

CORS: The Most Common Issue

CORS (Cross-Origin Resource Sharing) is a browser security feature that blocks requests to APIs that do not explicitly allow cross-origin access. If you see a CORS error, it means the API server is not sending the Access-Control-Allow-Origin header.

Workarounds:

  • Use the manual input section — fetch the response with curl or Postman, then paste it
  • Check if the API offers a CORS-enabled endpoint (many public APIs do)
  • Use a CORS proxy during development (not recommended for production)

Response Metadata

Metric What It Shows Why It Matters
Status HTTP status code (200, 404, 500, etc.) Confirms the request succeeded or failed
Size Size of the parsed JSON after re-serializing it with JSON.stringify (in bytes). May differ from the actual HTTP payload size. Identifies oversized responses for mobile optimization
Time Time until response headers become available (when fetch() resolves), in milliseconds. Excludes reading the response body and JSON parsing. Gives a rough indication of endpoint latency

Three Analysis Views

  • Raw — formatted, syntax-highlighted JSON for reading the exact response
  • Tree — collapsible hierarchy for navigating nested structures
  • Analytics — key count, depth, objects, arrays, and type distribution for measuring complexity

Limitations

  • Only GET requests are supported. For POST/PUT, use curl or Postman and paste the response manually.
  • No authentication header support. API keys and tokens must be passed via the URL or handled externally.
  • 15-second timeout. Slow endpoints may be aborted before responding.
  • Only JSON responses are supported. HTML, XML, or binary responses are rejected.

Frequently Asked Questions

Why am I getting a CORS error?

The API server does not include Access-Control-Allow-Origin headers. This is a server-side configuration issue. Use the manual input section to paste the response directly.

Can I send custom headers or authentication?

Not currently. For authenticated endpoints, fetch the response with curl or Postman, then paste the JSON into the manual input section.

What if the response is not JSON?

The tool checks the Content-Type header. If it is not application/json, it displays a warning. You can still paste the response manually if you believe it is valid JSON.

How accurate is the response time?

Measured with performance.now() from just before fetch() until it resolves — that is, until the response headers become available. It includes network latency and server processing up to that point, but it does not include downloading the response body or parsing the JSON. Results vary by network conditions.

Does it cache responses?

No. Each Fetch sends a new request. This ensures you always see the current state of the API.

Next Steps