Every image on a page: <img> tags (including lazy-load attributes such as data-src and data-srcset), <picture> sources, inline CSS backgrounds, linked image files, Open Graph images and icons. Each has the absolute URL, where it was found (source), alt text, title, declared width and height, loading mode, format and the srcset candidates. Filter by min_width; pages with page / next_page (null on the last page).
Every response includes credits_used: the credits this call cost.
Parameters
name
type
description
urlrequired
string
Public http(s) URL of the page (a bare domain works too). Example: https://en.wikipedia.org/wiki/Eiffel_Tower
min_width
integer
Only images declared at least this wide (images without a declared width are kept). Default: 0
include_icons
boolean
Include favicons and touch icons. Default true. Default: true
srcset
boolean
Include the srcset candidates of each image. Default true. Default: true
limit
integer
Images per page (default 500, max 2000). Default: 500
page
integer
Page number (default 1). Default: 1
country
string
Two-letter country to view the page from (default US).
import os, requests
res = requests.get(
"https://api.api.sh/web/v1/images",
params={"url": "https://en.wikipedia.org/wiki/Eiffel_Tower"},
headers={"x-api-key": os.environ["APISH_KEY"]},
timeout=120,
)
res.raise_for_status()
data = res.json()
const url = new URL("https://api.api.sh/web/v1/images");
url.searchParams.set("url", "https://en.wikipedia.org/wiki/Eiffel_Tower");
const res = await fetch(url, { headers: { "x-api-key": process.env.APISH_KEY } });
if (!res.ok) throw new Error(`${res.status} ${await res.text()}`);
const data = await res.json();
Response
A JSON object with the fields described above, plus raw (the source's own data), cached, fetched_at and credits_used. Errors return {"success": false, "error": "…"} with the HTTP status (see errors). A lookup that ran but found nothing (404) costs the price above; refused calls and errors on our side are free (what's charged).
The fastest way to see the full response is the playground: it runs this endpoint with your account and shows the exact JSON.