Image Search API for Visual Monitoring: Brands, Competitors, Products
When you type a brand name into an image search, what comes back is a visual SERP — a snapshot of which assets, product shots, and logos dominate the grid for that term. For a brand team, that grid is not decoration. It is where a customer meets the product before reading a single word of copy, and it changes week to week as press coverage, ads, and user uploads reshuffle the results.
An image search API turns that grid into structured data. Instead of screenshots you cannot sort, you get one JSON object per image — the title, the full-size URL, the thumbnail, the source page, the dimensions, and the file format. This post is about the monitoring workflows that data enables: tracking your own brand assets, watching competitor visuals, and keeping tabs on how your products appear in image results.
TL;DR: /api/images returns image results as JSON — title, imageUrl, thumbnailUrl, sourceUrl, width, height, and format (plus alt text on Google). With size, type, and color filters and 112 country codes, you can snapshot your brand, competitor, and product visuals on a schedule and diff the grid over time.
What an image result actually contains
Every image result shares the same shape. A call to /api/images with engine=google returns an images array; each entry describes one image in the grid:
| Field | What it tells you |
|---|---|
title | The image or alt text shown in the result |
imageUrl | Full-size image URL |
thumbnailUrl | Small preview used in the grid |
sourceUrl | The page the image appears on |
width / height | Image dimensions in pixels |
format | File type, e.g. jpg or png |
Google also returns alt text for each image. The response closes with totalResults and a credits block, so a single call tells you how many results matched and what the request cost. The same fields come back from every engine, which makes building one monitoring pipeline over all of them trivial.
Three visual monitoring workflows
Brand asset tracking
The simplest use is tracking your own name. Run q=[brand name] daily across your target countries and record the top imageUrl values. Over time you will see which asset is winning the grid, when a new press image displaces your old logo, and whether an unauthorized render has appeared. Because the API returns the sourceUrl too, you can trace any unexpected asset back to the page hosting it.
Competitor visual SERPs
The same query pattern works for competitors. Snapshot the image grid for q=[competitor name] and compare the assets against yours. A competitor that consistently surfaces clean product photography in the top positions is spending on visual assets; one whose grid is full of forum threads and old event photos is not. That signal is hard to get from web results, where text snippets dominate.
Product visual presence
For e-commerce and hardware teams, the interesting query is the product itself: q=[product model]. The image grid shows whether the official product page, retailer listings, or review sites control the visuals. When you release a new colorway or redesign, the API tells you within days whether the new asset is propagating or whether old renders are still winning the grid.
Filters for a cleaner signal
Raw image grids are noisy. The /api/images endpoint accepts filters that narrow the signal before it reaches your monitoring store:
| Filter | Values |
|---|---|
size | small, medium, large, wallpaper |
type | photo, clipart, line art, animated |
color | Filter by dominant color |
safe | SafeSearch strict, moderate, or off |
country | One of 112 ISO country codes |
For brand monitoring, size=large plus type=photo gives you the assets that actually matter for reputation, not the tiny favicon-sized thumbnails that pollute an unfiltered grid.
The API call
Here is the whole thing in Node.js — a single request with the X-API-Key header:
const res = await fetch(
'https://apiserpent.com/api/images?q=air+pods+pro&engine=google&country=us&size=large&num=20',
{ headers: { 'X-API-Key': 'YOUR_API_KEY' } }
);
const json = await res.json();
for (const img of json.images) {
console.log(img.title, img.width + 'x' + img.height, img.imageUrl);
}
The response, in abbreviated form:
{
"searchParameters": {
"q": "air pods pro",
"engine": "google",
"type": "images",
"size": "large",
"num": 20
},
"images": [
{
"title": "AirPods Pro (2nd generation)",
"imageUrl": "https://example.com/full.jpg",
"thumbnailUrl": "https://example.com/thumb.jpg",
"sourceUrl": "https://example.com/product",
"width": 2560,
"height": 1440,
"format": "jpg"
}
],
"totalResults": 20,
"credits": { "used": 1, "remaining": 99 }
}
To monitor a term, store the images[] array keyed by (query, country, date) and diff consecutive snapshots. A brand asset disappearing from the top ten, or a competitor URL appearing, becomes a row-level change you can alert on. Try a live query in the playground.
Honest limits
Image search requires paid credits from call 1 — it is not among the 10 shared free calls new accounts receive on eligible endpoints. Pricing is flat and per-call: $3.00/1K on the Default tier, $0.30/1K on Growth (a $100+ single deposit unlocks 10× off), and $0.15/1K on Scale (a $500+ single deposit unlocks 20× off). There is no subscription — you buy credits and spend them per request.
Also be honest about what the endpoint is and is not. It is a keyword-based image search across the five engines, returning the same structured fields for every engine. It does not take an image as input. If your goal is "given this photo, where does it appear," that is a different product — what the /api/images endpoint gives you is a measurable, scheduleable view of the visual grid for any text query. For most brand and competitor monitoring, that is the data that actually changes week to week.
The visual grid, as JSON.
Serpent returns parsed JSON for image results across Google, Yahoo, Bing, DuckDuckGo, and Brave through one endpoint. Flat per-call pricing, no subscription. Image search requires paid credits from call 1.
Get Your Free API KeyExplore: Image Search API · All SERP APIs · Pricing
FAQ
What image data does the API return?
Each image result returns a title, the full-size image URL, a thumbnail URL, the source page URL, image dimensions (width and height), and the file format. On Google, alt text is included as well. Everything comes back as structured JSON.
Can I use an image search API to monitor a brand's visuals?
Yes. Query brand and product terms across engines and countries (112 country codes), apply size, type, and color filters, and store the returned image URLs over time. The diff between snapshots shows which assets dominate the grid and when a competitor's visual displaces yours.
Does the image search API require paid credits?
Image Search requires paid credits from call 1. It is priced at $3.00 per 1,000 requests on the Default tier, $0.30 per 1,000 on Growth ($100+ single deposit), and $0.15 per 1,000 on Scale ($500+ single deposit), with flat per-call pricing and no subscription.
Which engines does image search support and how many results per request?
All five engines — Google, Yahoo, Bing, DuckDuckGo, and Brave — are supported across 112 country codes. DuckDuckGo returns up to 100 images per request, Yahoo roughly 20–30 per page with pagination, and Google up to 100 images per request.

