> For the complete documentation index, see [llms.txt](https://doc.thordata.com/doc/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://doc.thordata.com/doc/scraping/serp-api/query-parameters/duckduckgo.md).

# 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>**.
