Tutorial · 5 min read
Extract Every URL From a JSON API Response — Real-Time Link Extraction
API responses are filled with URLs — image URLs, endpoint paths, documentation links, and webhook targets. Manually copying them one by one is slow and error-prone. With the JSON URL Extractor, you paste the entire response and see every link in seconds.
Why Extracting URLs From API Responses Manually Is a Problem
A single REST or GraphQL response can contain dozens of URLs scattered across nested objects and arrays. Scrolling through raw JSON, copying each link, and worrying about duplicates or broken URLs wastes time and introduces mistakes. API responses from Postman or Insomnia also tend to escape forward slashes (\/), making copied links unclickable.
The JSON URL Extractor solves this by recursively scanning every field in your response, pulling out all http and https URLs, unescaping them, and presenting a clean, filterable list — all in real time as you paste.
Step 1: Paste Your API Response
Open the JSON URL Extractor and paste your REST, GraphQL, webhook, or Postman/Insomnia export into the input area. The tool auto-detects JSON format — if your text starts with { or [, it uses JSON parsing to recursively find every URL.
If you paste a plain list of URLs (one per line), the tool automatically switches to URL List mode and treats each line as a separate URL. Both modes share the same filtering, preview, and export features.
Step 2: Clean and Validate
Three settings above the input area help you clean the extracted URLs:
- Unescape — Strips
\/from Postman/Insomnia exports so every link is a valid, clickable URL. - Deduplicate — Removes duplicate URLs (case-insensitive comparison).
- Valid Only — Keeps only URLs that start with
http://orhttps://and pass basic validation.
All three are enabled by default. Toggle any of them to see the URL list update instantly.
Step 3: Filter by Type, Domain, or Substring
Use the result tabs (All, Image, Video, Other) to instantly filter URLs by file extension. For example, click Image to see only jpg, png, svg, webp, and other image URLs from the response.
The Domain and Substring fields let you perform text-based filtering. Type cdn.example.com to keep only CDN-hosted URLs, or /api/ to find every API endpoint link. Filters are case-insensitive and update in real time.
Step 4: Preview Media Inline
Click the Preview button in the right panel toolbar to expand a media preview grid. Image URLs are rendered as 100×100 thumbnails with lazy loading, and video URLs appear as dark clickable cards. If an image fails to load, a gray fallback placeholder is shown instead.
The grid displays 24 items at a time. Click Show more to load the next batch. This makes it easy to visually verify media assets without opening each link in a new tab.
Step 5: Export the Clean URL List
Once your URL list is filtered and verified, click Copy to copy all visible URLs to your clipboard. Use the Download dropdown to export in five formats:
- Text (.txt) — One URL per line, ready to paste anywhere.
- CSV (.csv) — Single-column CSV importable into Excel.
- Sitemap (.xml) — Follows the sitemap 0.9 protocol, ready for Google Search Console.
- cURL Script (.sh) — A bash script with one
curl -X GETcommand per URL. - wget Batch (.bat) — A Windows batch script with one
wgetcommand per URL.
Try It Now — Paste an API Response and See Every URL Instantly
No signup, no upload, no limits. All processing stays in your browser.
Open JSON URL Extractor →Best Practices
- Always unescape first. If your API response comes from Postman, Insomnia, or a logging proxy, enable Unescape before checking links — otherwise escaped slashes may be mistaken for invalid URLs.
- Use the Valid Only filter. This automatically excludes fragments, relative paths, and bare domains. For security-critical workflows (migrations, SEO audits), always keep this option on.
- Check the Image tab for broken CDN links. After extraction, switch to the Image tab and open a few thumbnails with Preview. If images fail to load, you know the CDN URLs need attention.
- Export before closing. The tool runs entirely in your browser — refreshing the page clears all data. Export your filtered list before navigating away.
- For sensitive API data, keep Deduplicate + Valid Only on. This produces the cleanest, smallest export and reduces the chance of including malformed or duplicate URLs in downstream workflows.
Frequently Asked Questions
Can this tool extract URLs from GraphQL responses too?
Yes. GraphQL responses are valid JSON, so pasting a GraphQL payload works the same as any other JSON object. Every http and https URL in nested fields, variables, or query results is extracted automatically.
What does the Unescape option do?
Some API tools (Postman, Insomnia) escape forward slashes as \/. The Unescape option strips these backslashes, turning https:\/\/example.com into https://example.com so links are clickable and valid.
How do I extract only image URLs from an API response?
After pasting your JSON, click the Image tab in the results panel. The tool filters the URL list to show only links ending in image extensions (jpg, png, svg, webp, gif, etc.). You can then preview them inline or export just those URLs.
Does the tool upload my API data to a server?
No. All extraction happens 100% in your browser using JavaScript. Your API response never leaves your computer — safe to use on production data, customer records, or authenticated endpoints.
How do I export extracted URLs?
Click Copy to copy the current filtered list to your clipboard, or use the Download dropdown to export as plain text (.txt), CSV (.csv), sitemap XML (.xml), cURL bash script (.sh), or wget Windows batch (.bat). The free badge means all export formats are available at no cost.