MH MediaHarvester Web Context API

Stock Images

Royalty-Free Image Finder

Find practical image candidates for a page or mockup from one request, then choose among scored alternatives instead of opening multiple stock sites manually.

POST /v1/royalty-free-images/search

What you get

Developer-ready output for Royalty-Free Image Finder

01 8+ provider fallback
02 No server-side image download
03 Scored alternatives
04 License summary in every result

Real workflows

Where teams use Royalty-Free Image Finder

These examples map to the endpoint's current inputs and outputs—not hypothetical platform features.

Source a landing-page hero

Search by campaign topic and review multiple provider results before a designer commits to an asset.

OutcomeFaster concepting with source and license context visible.
Automate article illustration research

Generate candidate image links from a CMS topic before editorial review.

OutcomeEditors start from relevant options instead of a blank search box.
Create client moodboards

Collect visual directions for proposals and early design work without downloading every candidate to the server.

OutcomeLightweight, link-based creative exploration.

How it works

4 concrete steps from input to result

1

Send request

2

Fetch context

3

Normalize response

4

Use JSON output

API response

Fields developers usually wire first

Search curated stock-image providers for reusable visual candidates, with provider and license context kept alongside every result.

success url data meta
curl.exe -H "X-API-Key: YOUR_API_KEY" "http://127.0.0.1:8013/v1/royalty-free-images/search"

Developer FAQ

Common questions about Royalty-Free Image Finder

12 answers
What endpoint should I call for Royalty-Free Image Finder?

Use POST /v1/royalty-free-images/search. Local development accepts the X-API-Key header with YOUR_API_KEY, and production clients can use the same shape with their own key.

Can I call it from CLI, SDK, MCP and no-code tools?

Yes. The same endpoint can be called with curl, the TypeScript SDK, Python SDK, MCP server, Zapier, Make, n8n, Google Sheets or Excel workflows where appropriate.

How does caching with maxAgeMs work?

When maxAgeMs is supported, a cached response can be reused if it is younger than the requested freshness window. Set maxAgeMs to 0 when you need a fresh scrape or extraction.

What happens when a page is blocked or requires login?

The API returns clear states such as blocked, verification_required, login_required, robots_disallowed or permission_required. It does not promise to bypass access controls.

Which response fields should I store?

Most integrations store success, url, data, meta, plus source URL, status, confidence and timestamp fields when present. Keep source metadata so users can audit values later.

Can I batch this endpoint?

For local or small workflows, loop over a list of URLs or domains. For larger jobs, use crawl, batch workflow endpoints or a queue so failures and retries are tracked cleanly.

How should I handle errors in production?

Check success, HTTP status, error.type and retryable flags. Retry timeouts and temporary network failures, but do not retry robots, login or permission errors without changing input or authorization.

Does the API work with JavaScript-heavy sites?

The engine router starts with fast fetching and escalates when content quality is low. Browser-style rendering is used where available, while access-control barriers are reported explicitly.

Is this safe to use with customer data?

Send only domains, URLs or fields your workflow needs. Use retention controls for generated artifacts and avoid storing unnecessary raw HTML, screenshots or extracted personal data.

How is Royalty-Free Image Finder different from the other Data APIs?

Royalty-Free Image Finder is optimized for Attribution-free image discovery API for website builders. It can be combined with crawl, brand, screenshot, image and AI query endpoints when you need a fuller workflow.

Can I show the result directly to users?

Yes, but for inferred data such as descriptions, classifications and style tokens, provide a preview and manual override option. For raw scrape output, show source URLs and timestamps.

How do I test it on localhost?

Open /dashboard/playground, choose this tool, or call POST /v1/royalty-free-images/search with X-API-Key: YOUR_API_KEY against http://127.0.0.1:8013.

Related data APIs

Build the next step in the workflow