AI Query
AI Query API
Describe the fields you need, let MediaHarvester gather relevant website context, and return a schema-like answer your workflow can validate and store.
/v1/brand/ai/query
What you get
Developer-ready output for AI Query API
Real workflows
Where teams use AI Query API
These examples map to the endpoint's current inputs and outputs—not hypothetical platform features.
Ask for pricing model, supported regions or target customer from a company site without creating a one-off scraper.
Request certifications, contact details or service information with evidence URLs for reviewer verification.
Let a workflow request only the facts needed for the current task after collecting page context.
How it works
4 concrete steps from input to result
Define fields to extract
Select domain or pages
Scrape relevant content
Return structured answers
API response
Fields developers usually wire first
Ask for specific facts from a website and receive structured fields with source evidence, rather than hard-coding a parser for every domain.
curl.exe -H "X-API-Key: YOUR_API_KEY" "http://127.0.0.1:8013/v1/brand/ai/query"
Developer FAQ
Common questions about AI Query API
What can I ask AI Query to extract?
Pricing, target customers, integrations, product categories, positioning, policy details, contact rules or any structured field your workflow defines.
Does it include evidence?
Yes. Responses should include source URLs so developers and users can review where a value came from.
Should I use AI Query or Product Extraction?
Use Product Extraction for product-specific fields. Use AI Query for custom questions that vary by workflow.
What endpoint should I call for AI Query API?
Use POST /v1/brand/ai/query. 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 data_extracted[], sources[], confidence, urls_analyzed[], 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.
Related data APIs
Build the next step in the workflow
POST /v1/web/crawl
Scrape HTML
Fetch page HTML for DOM inspection, structured extraction, migration tooling and debugging, with rendering escalation when a static response is not enough.
GET /v1/web/scrape/html
Scrape Markdown
Convert webpages into clean, source-linked Markdown for AI agents, research notes and retrieval pipelines while keeping link and image controls explicit.
GET /v1/web/scrape/markdown
Meta Title and Description
Extract title, description, canonical, language, Open Graph and Twitter metadata for SEO QA, link previews and lightweight URL enrichment.
GET /v1/web/meta
Scrape Images
Discover page images across img, picture, lazy-loading, CSS backgrounds, inline SVG and video poster sources, then normalize them into usable media records.
GET /v1/web/scrape/images
Royalty-Free Image Finder
Search curated stock-image providers for reusable visual candidates, with provider and license context kept alongside every result.
POST /v1/royalty-free-images/search
Image OCR
Extract text from screenshots, scans and image files through a Paddle-first OCR chain with structured line output and a local fallback engine.
POST /v1/ocr/json
YouTube Transcript
Retrieve timestamped YouTube transcript text through multiple local fallback methods for research, indexing and content analysis.
POST /v1/youtube/transcript