Skip to main content

Search API

POST /v1/search — Search SearXNG and optionally scrape results in parallel.

By default returns search-result metadata (title, URL, snippet). Set "scrape": true to also fetch and extract content from each result URL using 10 concurrent workers.

Request Body

FieldTypeRequiredDescription
querystringyesSearch query string
regionstringnoSearXNG language code. Default: auto
timeRangestringnoday, week, month, year. Omit for no filter
categoriesstringnoComma-separated categories. Default: general
pageintno1-based page number (1-1000). Default: 1
use_bm25boolnoRe-rank results using BM25F scoring. Default: false
scrapeboolnoFetch and extract content from each result. Default: false
formatsstring[]noOutput formats when scrape=true. Default: ["markdown"]
renderModestringnoPer-request render mode override for scraping results

Example Request

{
"query": "golang web scraping",
"timeRange": "month",
"page": 1,
"scrape": true,
"formats": ["markdown"]
}

Response

{
"success": true,
"data": {
"results": [
{
"title": "Web Scraping with Go",
"url": "https://example.com/go-scraping",
"snippet": "A comprehensive guide to web scraping...",
"markdown": "# Web Scraping with Go\n\n..."
}
]
}
}

Error Responses

StatusCodeCause
400invalid_requestMissing query, invalid params
500internal_errorSearch service unavailable