Rotating Proxy Network
A built-in rotating proxy network changes IP addresses for every request, so Yahoo never sees a pattern worth blocking.
Scrapingdog's Yahoo Images API turns any Yahoo image search into clean JSON — full-size image URLs, real pixel dimensions, thumbnails and source pages.
{
"query": "coffee",
"total_time_taken": 1.68,
"images_results": [
{
"rank": 1,
"title": "Coffee beans close-up 23920415 Stock Photo at Vecteezy",
"original": "https://static.vecteezy.com/system/resources/previews/023/920/415/large_2x/coffee-beans-close-up-photo.jpg",
"original_width": 1470,
"original_height": 980,
"thumbnail": "https://tse4.mm.bing.net/th/id/OIP.pQ8cQ0yQ0m7gkE1cQe0FVgHaE7?r=0&pid=Api&h=220&P=0",
"source": "www.vecteezy.com",
"link": "https://www.vecteezy.com/photo/23920415-coffee-beans-close-up"
}
]
}import requests
url = "https://api.scrapingdog.com/yahoo/images"
params = {
"api_key": "APIKEY",
"query": "coffee",
"image_size": "large"
}
response = requests.get(url, params=params)
print(response.json())curl "https://api.scrapingdog.com/yahoo/images?api_key=APIKEY&query=coffee&image_size=large"
const params = new URLSearchParams({
api_key: "APIKEY",
query: "coffee",
image_size: "large"
});
const response = await fetch(`https://api.scrapingdog.com/yahoo/images?${params}`);
const data = await response.json();
console.log(data);<?php
$url = 'https://api.scrapingdog.com/yahoo/images?' . http_build_query([
'api_key' => 'APIKEY',
'query' => 'coffee',
'image_size' => 'large',
]);
echo file_get_contents($url);ranktitlesourcelinkoriginaloriginal_widthoriginal_heightthumbnailquerytotal_time_takenA built-in rotating proxy network changes IP addresses for every request, so Yahoo never sees a pattern worth blocking.
CAPTCHAs and anti-bot checks are solved on our side. You send a query and get results.
Every result carries a direct link to the original image on its host, not just the thumbnail Yahoo displays.
original_width and original_height come back with each result, so you can filter by true size rather than guessing from a label.
Narrow by type, size and dominant colour, and route through a country, so you pull only the images you actually want.
Return the raw Yahoo HTML instead of the parsed JSON, or get both in a single response when you want to check our parsing.
Collect labelled image URLs with real dimensions to train or evaluate vision models.
Track where a brand, product or logo shows up in image search and which sites host it.
Follow which images rank for a term over time, and which domains keep the top slots.
Trace an image back to the page that published it using the link on every result.
Study the imagery competitors use for a keyword before commissioning your own.
Feed image discovery into editorial and e-commerce tooling without maintaining a scraper.
Sign up and get free credits to start testing the Yahoo Images API.
Grab your API key from the dashboard to authenticate every call to /yahoo/images.
Call /yahoo/images with a query, adding filters like image_size or image_color to narrow it.
Get an images_results array, each entry carrying its full-size URL and real dimensions.
Start your web scraping journey with 100 free credits. Test our service and upgrade to one of the plans below. Cancel anytime.

I got the free trial and in less than a minute I already integrated with their API, they had all the plug-and-play codes ready for me. It was seamless.
United States
I love how you can use it to scrape structured data without dealing with proxies or CAPTCHAs.
Norway
Scrapingdog is an awesome service. It gave me all the structured data I needed for my project.
Mexico
Reliable, and simple to use! It’s also inexpensive and has packaged solutions for every need. Highly recommend.
France
A JSON object with an images_results array. Each entry carries the rank, title, a direct URL to the full-size image, its real pixel width and height, Yahoo’s thumbnail, the hosting domain and the page the image appears on.
Yes. Filter by image_type (photo, clipart, gif, transparent), image_size, and image_color, and pass a country to route the request through that market. Full details are in the documentation.
Each successful request costs 5 API credits. Failed requests are never charged.
Each API request consumes a certain number of credits based on the dedicated API you're using. The number of credits required per request can vary depending on the specific API you're using.
Get 100 free credits to spin the API. No credit card required!