Documentation Blog Free tools [email protected]Log in

Image scraper API

An image scraper API returns Google Images results as rows: title, thumbnail URL, the page hosting the image and that page's host. Send a query and a country; get back a grid you can filter, store and attribute — billed per delivered image.

$0.0003 per delivered image · $2 free every month · Failed runs never billed

POST /v1/scraper/collectors/search_images/run
$ curl $QD/search_images/run \
    -H "Authorization: Bearer $QD_API_KEY" \
    -d '{"query": "proxy server diagram", "country": "us", "max_results": 20}'
{ "status": "done", "count": 20,
  "results": [
    {
      "title": "…",
      "thumbnail": "…",
      "image": "…",
      "source": "…" } ],
  "cost": 0.006 }
# 20 images × $0.0003 · nothing delivered, nothing charged
$0.0003 / image6,666 images on the free $2 every month
Semantic inputquery, country, lang — no URL lists
Up to 100images per run, pagination handled for you
No browserread over HTTP/TLS — cheaper and faster than rendering

What an image scraper API does

The useful part of an image search is rarely the picture alone: it is the page behind it. Every row here carries both, so a dataset of visual references keeps its source, and an attribution or takedown check has something to point at.

Served from the same no-JS tier as the web search collector, so a run of 100 images costs cents and needs no browser. Full-size image URLs come through only when Google exposes them — when it does not, the field stays null rather than being guessed from the thumbnail.

What one image looks like

Every delivered image carries these fields. Nullable means the source did not publish it — the field stays empty instead of being guessed.

FieldTypeWhat it holds
rankinteger1-based position.
titlestring · nullableImage title as shown.
thumbnailstring · nullableThumbnail URL (always present in the grid).
imagestring · nullableFull-size image URL when Google exposes it.
sourcestring · nullableHost of the page showing the image.
source_urlstring · nullableURL of the page showing the image.

Inputs

The whole request. Anything you leave out falls back to the default shown in the catalog.

InputTypeRequiredWhat it does
querystringyesWhat to search, e.g. "proxy server diagram".
countrystringnoISO 3166-1 alpha-2 code — proxy exit geo and Google locale (gl). Omit for the default pool.
langstringnoInterface language (hl), e.g. en, it, de.
max_resultsintegernoHow many images to deliver at most (1–100). You pay only for delivered images.

Pricing

Image scraper API pricing

$0.0003 per delivered image. A run that delivers nothing costs nothing: blocked pages, challenges and retries are on us, and the $2 monthly allowance covers about 6,666 images before you spend anything.

$0.0003per delivered image$0.3 per 1,000 delivered images
6,666 imageson the free allowance$2 every month, no card
Zero rowszero chargeblocks, captchas and retries are on us
−30%on volume tiersthe catalog returns your key's price

Pay as you go

$0/mo
  • $2 free credit / month
  • 60 requests / min
  • List unit prices

Starter

$19/mo
  • $15 free credit / month
  • 300 requests / min
  • 10% off unit prices

Scale

$299/mo
  • $250 free credit / month
  • 1,200 requests / min
  • 30% off unit prices

Same wallet, same key and same $2 monthly allowance as every other Data API. Prices are launch pricing read live from the billing config — GET /v1/scraper/collectors returns the price your key actually pays.

Integration

One POST, typed rows

Base URL https://api.quanticdata.io/v1, Bearer auth, the same key as every other Data API. Endpoint: POST /v1/scraper/collectors/search_images/run.

curl -X POST https://api.quanticdata.io/v1/scraper/collectors/search_images/run \
  -H "Authorization: Bearer $QD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"proxy server diagram","country":"us","max_results":20}'

What people build with the image scraper API

Three shapes of work this endpoint was designed around.

Visual competitive research

Collect what images rank for a product query and which sites they come from.

Dataset seeding

Build an image reference list with the source page attached, ready for review before download.

Brand monitoring

Watch which pages surface for your product photos and where they are hosted.

Image scraper API versus rolling your own

The differences that actually cost time when you build this in-house.

DIY scraperThis collector
AttributionThumbnail only, source lostSource page and host on every row
Cost per 1,000Rendered pages, browser time$0.30, HTTP tier only

Building an image dataset you can defend

There is no official API that returns Google Images results — Custom Search can be pointed at images but queries a configured index with a quota measured in hundreds per day. So image datasets get built by scraping, and the question becomes what you keep.

The field that decides whether a dataset survives review is source_url. A folder of images with no provenance cannot be licence-checked, cannot be attributed and cannot be cleaned when a rightsholder objects. Every row here carries the hosting page and its host, so a dataset stays traceable back to where each image came from — which is the difference between an asset and a liability.

The full-size image URL is nullable on purpose. Google does not always expose it, and a guessed URL that dead-links in six months is worse for a dataset than an honest empty field.

Limits, provenance and the legal bit

Up to 100 images per run, HTTP tier only. Rows are metadata and URLs — no image bytes are fetched or stored on our side, so downloading is a decision you make separately and can log. Throughput is your plan's rate limit rather than anything about the collector: 60 requests/minute on pay-as-you-go, up to 1,200 on the top tier.

Collecting publicly visible data is generally lawful in most jurisdictions, and courts have repeatedly declined to treat reading a public page as unauthorised access. Images are a sharper case than text: the search result is public, but each image is usually someone's copyrighted work and a thumbnail URL is not a licence. Training on, republishing or redistributing them raises questions that collecting the metadata does not. Keeping source_url is what keeps those questions answerable. None of this is legal advice — get some for your actual use case.

FAQ

Questions we get about the image scraper API.

Something else? Ask us →

Do I get the full-size image?

Only when Google publishes it in the results grid. Otherwise you get the thumbnail and the page that hosts the image, and the image field stays null — the collector does not guess a full-size URL that may not exist.

Am I allowed to reuse the images?

The API returns links and metadata, not licences. Rights stay with whoever owns the image, which is exactly why every row carries the source page: check it before you use anything.

Is there a free image scraper API?

Every account gets $2 of credit every month with no card, which is about 6,666 delivered images on this endpoint at $0.0003 each. It renews monthly, and a run that delivers nothing is never billed — so a failed or blocked attempt does not eat the allowance.

How much does one run cost?

Multiply the rows you actually receive by $0.0003. A run capped at 100 images — the maximum for this collector — costs $0.03 if every row comes back, and less when the source has fewer. Volume tiers take up to 30% off, and GET /v1/scraper/collectors returns the price your key actually pays.

Can I use these images to train a model?

Collecting the metadata and deciding to train on the underlying images are separate questions with separate answers. The images are generally copyrighted by whoever made them, and the legal position on training varies by jurisdiction and is actively litigated. Every row keeps the source page precisely so you can check the terms at the origin before deciding.

Does it download the files?

No. It returns thumbnail and source URLs plus the hosting page. Fetching bytes is a separate step you control — which keeps storage, bandwidth and the licensing decision on your side rather than implied by an API call.

Run the image scraper API now

$2 of free credit every month, no card. Your key returns its own prices from GET /v1/scraper/collectors.

Get my free API key
Get my free API key