DuckDuckGo Maps
Search DuckDuckGo Maps places within a map area.
GET/api/v1/duckduckgo/maps
Costs 1 credit per request; failed requests are refunded. Authentication, the search_metadata envelope and error codes are the same as for every endpoint (see the API reference). Try it in the playground.
Parameters
Map search
Search DuckDuckGo local results inside a viewport.
| Parameter | Type | Description |
|---|---|---|
qrequired | string | Required place or category query, up to 500 characters. |
bboxconditional | string | Viewport rectangle as top,left,bottom,right. |
latconditional | number | Viewport center latitude; requires lon. |
lonconditional | number | Viewport center longitude; requires lat. |
strict_bbox | boolean | Exclude results outside the requested bounds.Default: true. |
Response
A JSON object with search_metadata (request id, credits used and remaining) and the result data: local_results. Groups and fields depend on the content of each page, so treat every field as optional.
Examples
cURL
curl "https://serpfast.com/api/v1/duckduckgo/maps?q=coffee&lat=30.2672&lon=-97.7431" \
-H "Authorization: Bearer $SERPFAST_KEY"Node.js 18+
const params = new URLSearchParams({
"q": "coffee",
"lat": "30.2672",
"lon": "-97.7431"
});
const res = await fetch(`https://serpfast.com/api/v1/duckduckgo/maps?${params}`, {
headers: { Authorization: `Bearer ${process.env.SERPFAST_KEY}` },
});
const data = await res.json();
console.log(data);Python
import os, requests
params = {
"q": "coffee",
"lat": "30.2672",
"lon": "-97.7431"
}
res = requests.get(
"https://serpfast.com/api/v1/duckduckgo/maps",
params=params,
headers={"Authorization": f"Bearer {os.environ['SERPFAST_KEY']}"},
timeout=120,
)
print(res.json())