Unsplash Photo Search by Topic, Collection & Creator
Searches Unsplash by keyword or browses a curated topic, numbered collection, or photographer's portfolio, returning photo dimensions, orientation, license, and photographer credit.
Open in Apify Store$0.99 / 1K on Free
Short answer
Unsplash Photo Search by Topic, Collection & Creator is an Apify Store Actor for Unsplash data that returns 8 published output fields, including title, photographerName, orientation, width. It lists $0.99 per 1,000 results on the Free plan (pay per event), $0.49 on the Business plan. It takes 15 input settings; one is required (mode). It covers 6 of the 8 core Unsplash fields this site tracks. Last updated Oct 21, 2026.
From the public Store listing and published build schema, synced 2026-11-12.What it returns
8 fields from the published dataset schema. Export as JSON, CSV or Excel, or read the dataset through the Apify API.
titlephotographerNameorientationwidthheightlikesimageUrlsourceUrl
Not in the schema among the core Unsplash fields: image, source. The field matrix shows which other tools return them.
Input
| Setting | Type | Required | Default | What it does |
|---|---|---|---|---|
| mode | string | Yes | search | What to scrape. Each mode has its own list field below. |
| searchQueries | array | No | ["nature"] | One or more keywords, e.g. `nature`, `coffee shop`, `minimal workspace`. Each query is searched separately. |
| topicSlugs | array | No | [] | One or more curated Unsplash photo topics. |
| collectionIds | array | No | [] | Collection IDs or collection URLs, e.g. `1065396` or `https://unsplash.com/collections/1065396/...`. |
| usernames | array | No | [] | Photographer usernames with or without `@`, or profile URLs, e.g. `v2osk` or `https://unsplash.com/@v2osk`. |
| photoIds | array | No | [] | Unsplash photo IDs, slugs, or photo page URLs, e.g. `fWBZ9r4vO9M`. Used as lookup targets in byPhoto and as seed photos in byRelated. |
| startUrls | array | No | [] | Any mix of supported Unsplash search, topic, collection, photographer, or photo URLs. |
| orientation | string | No | any | Only keep photos of this orientation. The filter is exact and works in every mode. |
| color | string | No | any | Filter keyword searches by Unsplash's dominant-colour tag. Not supported on topic, collection, or portfolio feeds. |
| freeOnly | boolean | No | false | Exclude Unsplash+ (paid/locked) photos. Their full-size files require a separate Unsplash+ plan. |
Show the other 5 settings
| Setting | Type | Required | Default | What it does |
|---|---|---|---|---|
| searchOrderBy | string | No | relevant | Sort keyword search results by best match or newest first. |
| userOrderBy | string | No | pinned | Sort a photographer's photos. Pinned matches the order shown on their Unsplash profile. |
| includePhotoDetails | boolean | No | false | Add tags, camera EXIF, geolocation, topics, and view/download counts. Costs extra requests per photo and is slower. |
| includePhotographerStats | boolean | No | false | Add each photographer's lifetime view and download totals. One extra request per photographer. |
| maxItems | integer | No | 20 | Hard cap on emitted photos across all queries and URLs. |
Example input
Built from the input form's published example values and defaults.
{
"mode": "search",
"searchQueries": [
"nature"
],
"topicSlugs": [],
"collectionIds": [],
"usernames": [],
"photoIds": [],
"startUrls": [],
"orientation": "any",
"color": "any",
"freeOnly": false,
"searchOrderBy": "relevant",
"userOrderBy": "pinned",
"includePhotoDetails": false,
"includePhotographerStats": false,
"maxItems": 2
} Run it from code or an AI agent
The same run through the Apify API, with the example input. You need an Apify API token; the run is billed to your account at the Store price.
Python
from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run_input = {
"mode": "search",
"searchQueries": [
"nature"
],
"topicSlugs": [],
"collectionIds": [],
"usernames": [],
"photoIds": [],
"startUrls": [],
"orientation": "any",
"color": "any",
"freeOnly": False,
"searchOrderBy": "relevant",
"userOrderBy": "pinned",
"includePhotoDetails": False,
"includePhotographerStats": False,
"maxItems": 2
}
run = client.actor("dataspryva/unsplash-photo-search-by-topic-collection").call(run_input=run_input)
if run is None:
raise RuntimeError("The Actor run was not found.")
for item in client.dataset(run.default_dataset_id).iterate_items():
print(item) pip install apify-client
JavaScript
import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: "<YOUR_APIFY_TOKEN>" });
const input = {
"mode": "search",
"searchQueries": [
"nature"
],
"topicSlugs": [],
"collectionIds": [],
"usernames": [],
"photoIds": [],
"startUrls": [],
"orientation": "any",
"color": "any",
"freeOnly": false,
"searchOrderBy": "relevant",
"userOrderBy": "pinned",
"includePhotoDetails": false,
"includePhotographerStats": false,
"maxItems": 2
};
const run = await client.actor("dataspryva/unsplash-photo-search-by-topic-collection").call(input);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items); npm install apify-client
cURL
curl -X POST "https://api.apify.com/v2/actors/dataspryva~unsplash-photo-search-by-topic-collection/run-sync-get-dataset-items" -H "Authorization: Bearer $APIFY_TOKEN" -H "Content-Type: application/json" -d '{"mode":"search","searchQueries":["nature"],"topicSlugs":[],"collectionIds":[],"usernames":[],"photoIds":[],"startUrls":[],"orientation":"any","color":"any","freeOnly":false,"searchOrderBy":"relevant","userOrderBy":"pinned","includePhotoDetails":false,"includePhotographerStats":false,"maxItems":2}' Waits for the run and returns the dataset items (runs over 300 seconds return HTTP 408; start an async run instead).
MCP (AI agents)
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=dataspryva/unsplash-photo-search-by-topic-collection",
"headers": {
"Authorization": "Bearer <YOUR_APIFY_TOKEN>"
}
}
}
} Adds this Actor as a tool in an MCP client that takes a remote server URL (Cursor, VS Code, Claude Code) through Apify's hosted MCP server. OAuth sign-in also works without the header. Clients that only start local servers can wrap the URL with npx mcp-remote.
What a run costs
The result rate falls on higher Apify plans. Each figure is the published per-result rate times the number of results.
| Apify plan | Per 1,000 | 10,000 results | 100,000 results |
|---|---|---|---|
| Free plan | $0.99 | $9.90 | $99 |
| Starter plan | $0.82 | $8.20 | $82 |
| Scale plan | $0.66 | $6.60 | $66 |
| Business plan | $0.49 | $4.90 | $49 |
- Every run also has a start event, charged per GB of memory (minimum one): $0.10 on Free, $0.03 on Business. At its default memory of 4 GB a run starts at $0.40 on Free. Fewer, larger runs keep this small.
- The Free plan includes $5 of monthly usage (Apify pricing, checked 2026-11-11); at the Free rate that covers at most about 5,050 results, less start events and platform usage.
- Worked example: 10,000 results in one run on the Free plan cost $10.30 ($9.90 for results + $0.40 start), plus Apify platform usage (compute), billed separately by Apify.
- Pay per event. Platform usage (compute) is billed by Apify on top of the event prices. Compare other tools in the cost estimator.
Where it fits among Unsplash routes
It ranks 1 of 1 catalogue Actors for Unsplash on the published formula (fields, price, reliability, freshness). Its line is highlighted on the map.
- 1 Unsplash Photo Search by Topic, Collection & Creator 8 output fields, pay per event 6 of 8 core fields
$0.99 / 1K - + 6 other Store tools, combined Reference only 5 of 8 core fields
from $0.99 / 1K - API Unsplash API Public API fields not compared
Stops are fields. A ring means the field is in that route's published output schema; no ring means the line passes without it. Bold labels are the core fields for this website, the rest are fields that differ between routes. A white capsule means every data line stops there. The red line is the official API; its field coverage is not compared. A crossed red line means there is no open official API.
Official route: Unsplash API
Public API. The Unsplash API searches and returns photos, collections and users. Apps must hotlink returned image URLs, trigger the download endpoint on downloads and attribute photographers.
Free; an application key is required.
Other Store tools for Unsplash
Reference only, from their public listings.
| Tool | Fields | Price / 1K |
|---|---|---|
| Unsplash Image Scraper | 11 | $1.00 |
| Unsplash Scraper | 16 | $3.00 |
| Unsplash Image Scraper | – | $1.50 |
| Unsplash Scraper | 31 | $0.99 |
| Unsplash Image Scraper | 22 | $1.80 |
What people use it for
- find photos by topic
- browse photographer portfolios
- review photo details
Similar Actors
Pexels Stock Media Scraper
Scrape free stock photos and videos from Pexels. Search by keyword, browse curated/popular media, a photographer's portfolio, or a curated…
Amazon Creator Storefront & Idea List Scraper
Pull Amazon creator storefronts by handle: profile info and affiliate disclosure, every curated Idea List with its products and prices, and…
Product Hunt Launch & Topic Data Exporter
Export Product Hunt launches with votes, comments, makers, hunter and topics from the daily leaderboard, a topic, a maker's history, or specific…
Google Maps Photo Gallery Extractor by Category
Collect public photos and videos from Google Maps places by URL, Place ID, feature ID, CID or search query. Each row carries the image and video…
Google Maps Review & Contributor Activity Scraper
Get reviews for any Google Maps business or place, or switch to author mode to pull everything one Google reviewer has written. Includes ratings,…
Dailymotion Video Discovery by Topic & Channel
Search Dailymotion by keyword, browse trending or topic videos, or pull a channel's uploads, with language, country, and duration filters, views,…
Questions people ask
How much does Unsplash Photo Search by Topic, Collection & Creator cost?
The published result rate depends on your Apify plan: $0.99 per 1,000 on Free, $0.82 per 1,000 on Starter, $0.66 per 1,000 on Scale, $0.49 per 1,000 on Business. So 10,000 results cost about $9.90 on the Free plan and $4.90 on Business, plus a start fee of $0.10 per run per GB of memory on Free. Platform usage is billed separately.
What data does Unsplash Photo Search by Topic, Collection & Creator return?
Its published output schema lists 8 fields: title, photographerName, orientation, width, height, likes, imageUrl, sourceUrl. A listed field is not guaranteed to be filled in every row.
What input does Unsplash Photo Search by Topic, Collection & Creator need?
Required: mode. Optional settings include searchQueries, topicSlugs, collectionIds, usernames, photoIds, startUrls.
How do I run Unsplash Photo Search by Topic, Collection & Creator from Python or the API?
Use the Apify API client: in Python, ApifyClient(token).actor("dataspryva/unsplash-photo-search-by-topic-collection").call(run_input=...), then read the run's default dataset (run.default_dataset_id); in JavaScript the same call is client.actor("dataspryva/unsplash-photo-search-by-topic-collection").call(input). Without a client, POST the input JSON to https://api.apify.com/v2/actors/dataspryva~unsplash-photo-search-by-topic-collection/run-sync-get-dataset-items with your API token. Ready-to-paste code with the example input is on this page.
Sources
- Unsplash Photo Search by Topic, Collection & Creator on Apify Store
- Published build with input and output schema (JSON)
- Unsplash API documentation
Cite this page
Scraper Finder. "Unsplash Photo Search by Topic, Collection & Creator." https://scraperfinder.com/catalogue/unsplash-photo-search-by-topic-collection/ (data checked 2026-11-12).
Run Unsplash Photo Search by Topic, Collection & Creator
$0.99 per 1,000 results. Paste the example input above, set your Unsplash query, then export the dataset. Still choosing? Compare every Unsplash route.