Bulk Image Downloader — URLs to Stored Files avatar

Bulk Image Downloader — URLs to Stored Files

Pricing

from $0.056 / url processed

Go to Apify Store
Bulk Image Downloader — URLs to Stored Files

Bulk Image Downloader — URLs to Stored Files

Download thousands of images from a list of URLs and store each in the key-value store with a public link. Returns content type, size, dimensions and SHA-256 per image. Bulk-ready, no login. Great for datasets, backups and media pipelines.

Pricing

from $0.056 / url processed

Rating

0.0

(0)

Developer

hiper soft

hiper soft

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

3 days ago

Last modified

Share

Download images at scale. Give the Actor a list of image URLs and it fetches each one, stores it in your run's key-value store, and returns its content type, size, pixel dimensions and SHA-256 hash plus a direct link to the stored file. No login, no API key to run.

Great for building image datasets, mirroring/backups, media pipelines, and deduplicating creative assets.

What you get per image

FieldNotes
okWhether the download succeeded.
contentTypee.g. image/jpeg, image/png, image/webp.
sizeBytesFile size.
width, heightPixel dimensions (read from the file header — JPEG/PNG/GIF/WebP/BMP).
sha256Content hash — great for de-duplication.
storedUrlLink to the stored file in your run's key-value store — open it in the Apify Console, or fetch it with your API token (?token=…). Bulk-export the whole store as a zip from the run's Storage tab.
keyIts key in the store.
finalUrl, errorURL after redirects; failure reason if any.

Input

{
"imageUrls": ["https://example.com/a.jpg", "https://example.com/b.png"],
"store": true,
"maxConcurrency": 10
}
  • imageUrls — direct image URLs, one per line.
  • store — save the bytes and return a link (default on). Off = metadata only.
  • maxBytes — skip images larger than this.
  • maxConcurrency / maxItems — parallelism and a global cap.
  • proxyConfiguration — optional; enable if a host blocks datacenter IPs.

Output (one row per image)

{
"url": "https://example.com/a.jpg",
"ok": true,
"contentType": "image/jpeg",
"sizeBytes": 84213,
"width": 1200,
"height": 800,
"sha256": "9f86d081...",
"key": "image-000000-9f86d0817640.jpg",
"storedUrl": "https://api.apify.com/v2/key-value-stores/<id>/records/image-000000-9f86d0817640.jpg",
"error": null
}

FAQ

Do I need an account or API key? No API key is needed to run the Actor. Downloaded files are saved to your run's key-value store, which you open in the Apify Console or fetch with your own API token.

How many images can I download per run? As many as you supply. maxItems sets a global cap, maxConcurrency controls parallel downloads (default 10), and maxBytes skips files larger than a chosen size.

Is bulk image downloading legal? Only download images you have the right to use. The Actor refuses requests to private/loopback addresses and time-caps each download, but you are responsible for the copyright and terms of the sources.

What's the output format? A JSON dataset with one metadata row per image (content type, size, dimensions, SHA-256 hash, stored link) plus the stored file itself in the key-value store. Export the dataset as JSON/CSV/Excel and bulk-download the store as a zip.

Can I filter or limit results? Yes. Use maxItems, maxBytes, and maxConcurrency, and set store to false to return metadata only without saving the bytes.

Pair image collection with other bulk web tools:

Notes

Files are saved to your run's key-value store (accessible in the Console or via the API with your token — outputs are private to your account, as with all Apify runs). Dimensions are read from file headers with no heavy dependencies. Requests to private / loopback addresses are refused. Each image is time-capped so one slow host can't stall a bulk run. Only download images you have the right to use.