Reference

Every parameter, and what it does.

All parameters go on /search as a query string. Unknown parameters are ignored rather than rejected, so a newer client can talk to an older instance.

q

string, required

The query text. This is the only mandatory parameter.

format

json (default), html, rss, csv

Response shape. json matches the SearXNG 1.0 schema, so an existing SearXNG client only needs a new hostname.

categories

comma separated, default general

Which source groups to query: general, images, videos, news, science, it, map, music, files, social media. Comma or plus separated.

engines

comma separated

Pin specific engines instead of a whole category. An engine that is not in the registry is reported in unresponsive_engines rather than silently dropped.

language

two-letter code, default en

Preferred result language where the upstream source supports it.

pageno

integer, default 1

Result page. Sources that do not paginate return the same first page rather than an error.

time_range

day, week, month, year

Restrict news and results by recency. Ignored by sources without a time filter.

safesearch

0, 1, 2, default 0

Adult-content filter level, applied per source where the source supports it.

Authentication

Send your key as a header. Query-string keys are refused on purpose, because URLs end up in logs and referrer headers.

headershttp
X-API-Key: hvk_...          preferred
Authorization: Bearer hvk_...  also accepted

Response fields

Fields returned in a search response
FieldTypeMeaning
querystringEcho of the query, after normalisation
number_of_resultsintegerMerged count across every source that answered
resultsarrayRanked, de-duplicated hits
answersarrayDirect answers for entity queries
correctionsarraySpelling suggestions offered by a source
infoboxesarrayEntity panels with source and thumbnail
suggestionsarrayRelated queries
unresponsive_enginesarraySources that failed, each with the reason

Limits

Query length

200 characters. Anything longer is truncated rather than rejected, so a pasted paragraph still returns something.

Page size

Up to 100 results returned per response, regardless of how many sources matched.

Upstream timeouts

Each source is given a short budget. A slow source is recorded in unresponsive_engines instead of holding the whole response.

Image proxy

Proxied thumbnails are limited to public HTTP(S) addresses. Private and link-local ranges are refused.

Open the playground Engine config