# DuckDuckGo

**SERP API DuckDuckGo Query Parameters**

Configure DuckDuckGo search queries using Thordata's SERP API, including output options for geographical location and pagination parameters.

<details>

<summary><strong><code>q</code> ,</strong>Search Query<strong>(Required)</strong></summary>

Define the search query used for data crawling (default value: `q=pizza`). Any keywords in any language are supported.

**Example Request:**

Example with `q`:<mark style="color:blue;">pizza</mark> parameter

```sh
curl -X POST https://scraperapi.thordata.com/request \
 -H "Content-Type: application/x-www-form-urlencoded" \
 -H "Authorization: Bearer token" \
 -d "engine=duckduckgo" \
 -d "q=pizza" \
 -d "json=1"
```

</details>

## Geographical Location

<details>

<summary><strong><code>kl</code> ,</strong>Location<strong>(Optional)</strong></summary>

Specify the interface language and region for search results (e.g., "`zh-cn`"

provides a Simplified Chinese interface and prioritizes displaying results from the China region).

**Example Request:**

Example results for `q` : <mark style="color:blue;">pizza</mark>,`kl`:japan

```sh
curl -X POST https://scraperapi.thordata.com/request \
 -H "Content-Type: application/x-www-form-urlencoded" \
 -H "Authorization: Bearer token" \
 -d "engine=duckduckgo" \
 -d "q=pizza" \
 -d "json=1" \
 -d "kl=Japan"
```

</details>

## Pagination

<details>

<summary><strong><code>start</code> ,</strong>Result offset<strong>(Optional)</strong></summary>

Set the starting point for search result pagination (e.g., "`start=30`" means skipping the first 30 results and starting to display from the 31st result).\
**Rules:**

* `start=30` → Skips first 30 results (page 2)
* Max: `start=500` (result quality declines after \~16 pages)

**Example Request:**

Example results for `q` : <mark style="color:blue;">pizza</mark>,`start`:<mark style="color:blue;">2</mark>

```sh
curl -X POST https://scraperapi.thordata.com/request \
 -H "Content-Type: application/x-www-form-urlencoded" \
 -H "Authorization: Bearer token" \
 -d "engine=duckduckgo" \
 -d "q=pizza" \
 -d "json=1" \
 -d "start=2"
```

</details>

## Advanced Filters

<details>

<summary><strong><code>df</code> ,</strong>Filter By Date<strong>(Optional)</strong></summary>

Filter search results by time range ('`d` = past 24 hours', '`w` = past week', '`m` = past month').

Filters results by time range:

| Value | Time Range    | Use Case                    |
| ----- | ------------- | --------------------------- |
| `d`   | Last 24 hours | Time-sensitive queries      |
| `w`   | Last 1 week   | Balanced freshness/coverage |
| `m`   | Last 1 month  | Default range               |
| `y`   | Last 1 year   | Historical data             |

**Example Request:**

Example results for `q` : <mark style="color:blue;">pizza</mark>,`df`:<mark style="color:blue;">y</mark>

```sh
curl -X POST https://scraperapi.thordata.com/request \
 -H "Content-Type: application/x-www-form-urlencoded" \
 -H "Authorization: Bearer token" \
 -d "engine=duckduckgo" \
 -d "q=pizza" \
 -d "json=1" \
 -d "df=y"
```

</details>

<details>

<summary><strong><code>kp</code> ,</strong>Safe<strong>(Optional)</strong></summary>

Set the search content safety filtering level (Strict / Moderate / Disabled) to filter sensitive information such as adult content, violence, etc.

Safe search filtering:

* `kp=-2`: Strict (default)
* `kp=-1`: Moderate
* `kp=1`: Disabled (may trigger CAPTCHA)

**Example Request:**

Example results for `q` : <mark style="color:blue;">pizza</mark>,`kp`:<mark style="color:blue;">1</mark>

```sh
curl -X POST https://scraperapi.thordata.com/request \
 -H "Content-Type: application/x-www-form-urlencoded" \
 -H "Authorization: Bearer token" \
 -d "engine=duckduckgo" \
 -d "q=pizza" \
 -d "json=1" \
 -d "kp=1"
```

</details>

***

For assistance, contact **<support@thordata.com>**.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://doc.thordata.com/doc/scraping/serp-api/query-parameters/duckduckgo.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
