duckduckgo_serp: GET /
hasdata_duckduckgo_serp_getSearchResultsGet DuckDuckGo search results with region, safe search, and device settings for SEO rank tracking, SERP monitoring, and visibility audits.
Instructions
Get DuckDuckGo Search Results
Fetches DuckDuckGo SERPs for a query with region targeting (kl, or cc+setLang), safesearch (off/moderate/strict), device type, and page-based pagination. Returns organic results (title, url, snippet, displayed url, position, date, sitelinks, video metadata), ads, and the Search Assist AI answer. Use for SEO rank tracking, SERP feature monitoring, DuckDuckGo-specific visibility audits, and training/eval data for search agents.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Specify the search term for which you want to scrape the SERP. Required unless `nextPageToken` is provided (which carries the query of the page it continues). | |
| cc | No | The two-letter country code for the country to search from. Combined with `setLang` to form the DuckDuckGo region. Ignored if `kl` is set. | |
| kl | No | DuckDuckGo region code in `<country>-<language>` form (e.g. `us-en`, `de-de`). Sets country and interface language at once; takes precedence over `cc`/`setLang`. Use `wt-wt` for no region. | |
| setLang | No | The preferred result/interface language code — usually two letters (e.g. `en`, `de`), with script-tag variants for some languages (e.g. `zh-hans`, `zh-hant`). Combined with `cc` to form the DuckDuckGo region. Ignored if `kl` is set. | |
| deviceType | No | Specify the device type for the search. | |
| safeSearch | No | Adult Content Filtering option. | |
| nextPageToken | No | Opaque token returned in each response as `nextPageToken`. Pass it back (in place of `q`) to fetch the next page of results. It carries a pre-signed page URL bound to the original request's session, so it must be used as-is and cannot be constructed manually. Absent when there are no further pages. |