This page is the DuckDuckGo parameter reference. What the data is used for, a real sample and pricing are on DuckDuckGo API: what you get →
Search & SEO

DuckDuckGo API & Scraper: parameters and responses

This is the reference for the 7 DuckDuckGo endpoints under /duckduckgo/v1 (search, news, images, videos, maps, autocomplete and instant_answer) and their 19 parameters. Each endpoint lists its parameters, required or optional, with allowed values and defaults, and comes with a cURL, Python and JavaScript call; every response uses the same { ok, data, meta, error } envelope.

The DuckDuckGo Search API returns duckduckgo.com as JSON in seven actions.

7 actionsLive JSON1,000 free credits$0.67–$1.50 / 1,000 creditsMCP-ready
Get a free keyOpen in playground

🤖 Using an AI assistant? Copy this link into ChatGPT / Claude / Cursor — it reads every endpoint and parameter instantly and tells you if this API fits your use case.

search gives the results page the way DuckDuckGo shows it: organic results with title, link, displayed link, snippet, site name, date and favicon, text ads with their sitelinks and callouts, the knowledge panel (Wikipedia abstract, infobox attributes, official site, social profiles), related searches, inline news, videos, images and shopping ads, and the spelling correction, for any of DuckDuckGo's regions (us-en, uk-en, de-de, jp-jp and the rest), three safe-search levels and a time range (past day, week, month, year or your own date range), page by page. source=lite returns DuckDuckGo Lite's organic list. news, images and videos are DuckDuckGo's own verticals with their filters: image size, colour, type, layout and licence; video length, resolution, licence and upload time. maps returns places inside a bounding box or around a point with address, coordinates, phone, website, rating, review count, price level, opening hours and recent reviews. autocomplete returns the suggestion list and instant_answer DuckDuckGo's official Instant Answer. One ReefAPI key, the standard { ok, data, meta, error } envelope, no DuckDuckGo account.

Reference

What the DuckDuckGo API returns

Measured on 2026-11-06 over three runs of 295 live calls each. search answered 144 of 144, images, videos, autocomplete and instant answers 120 of 120 each; news and maps 117 of 120, where the three misses were the same correct empty answer each time (no Premier League articles in the past day; "bar" read by DuckDuckGo Maps as a place name).

FieldWhat it holds
organic_resultsThe results in DuckDuckGo's order: position, title, link, displayed_link, domain, site_name, snippet, date (when DuckDuckGo shows one), favicon, and on video and article rows rich_snippet (author, views, duration). Page 1 holds 10 rows and later pages 15, the site's own page sizes. The same top 10 compared against DuckDuckGo's HTML page for 8 queries in 6 languages: 7 to 10 shared links per query, and every shared link had the identical title.
adsText ads with title, snippet, displayed_link, domain, sitelinks and callouts. link is the advertiser's URL decoded from DuckDuckGo's click link (29 of 29 decoded, 28 of 29 on the ad's own domain; the other is the advertiser's own tracking address), and tracking_link keeps DuckDuckGo's click URL. With the default region (wt-wt) the ads are those of the US market; pass region for a specific market.
knowledge_graphThe panel DuckDuckGo shows for people, places and things: title, type, entity_type, description with source and source link, image, official_website, attributes (Born, Occupation, Population…) and social profiles. It matched DuckDuckGo's Instant Answer record for 6 of 6 entities checked.
news_results, inline_videos, inline_images, shopping_adsThe modules DuckDuckGo places on the results page, when it places them. Shopping prices are returned as printed ("$110.00", sale price separately), never converted.
spellingsuggested_query and kind: including_results_for when DuckDuckGo already searched the corrected spelling ("pyhton tutoral" → "python tutorial"), did_you_mean otherwise.
news actionUp to 30 articles a page with title, link, snippet, source, an ISO 8601 UTC date and the site's relative date. The ISO date agreed with the relative text on 163 of 163 articles.
maps actionPlaces with title, category, address, coordinates, timezone, phone, website, rating, reviews, price ($ to $$$$), open_now, weekly hours, listing source (Tripadvisor, Yelp, Apple Maps) and recent reviews. With a strict bounding box 78 of 78 places were inside it.

A query that has no real answer is padded with loosely matching pages, exactly as on duckduckgo.com; meta.relevance tells you how many rows contain your words. A request that genuinely has nothing (a search DuckDuckGo answers with "No results found", an empty time window, a place name in maps) comes back NOT_FOUND with the reason within about 2 seconds, never as an empty success; a bot check from DuckDuckGo is TARGET_BLOCKED and never NOT_FOUND. Measured on 2026-11-06: 14 of 14 no-results searches returned NOT_FOUND in at most 2.1 s.

Live example

Real request and response JSON

Captured from the indexed primary action, search, on .

Captured request
{
  "method": "POST",
  "url": "https://api.reefapi.com/duckduckgo/v1/search",
  "headers": {
    "x-api-key": "$REEF_KEY",
    "content-type": "application/json"
  },
  "body": {
    "q": "best laptop 2026"
  }
}
Captured response
{
  "ok": true,
  "meta": {
    "api": "duckduckgo",
    "endpoint": "search",
    "mode": "live",
    "latency_ms": 1879.1,
    "record_count": 10,
    "bytes": 45247,
    "cache_hit": false,
    "upstream_requests": 2,
    "vqd_source": "page",
    "exit_country": "US",
    "source_route": "js",
    "relevance": {
      "matching_rows": 10,
      "match_pct": 100
    },
    "charged_credits": 2,
    "version": "0.2.0",
    "request_id": "a21cac067abf4abb",
    "fetched_at": "2026-11-06T16:39:37.531Z"
  },
  "data": {
    "search_parameters": {
      "q": "best laptop 2026",
      "region": "wt-wt",
      "safe": "moderate",
      "time": null,
      "page": 1,
      "offset": 0,
      "source": "auto"
    },
    "search_information": {
      "source": "js",
      "organic_count": 10,
      "fallback_reasons": null
    },
    "organic_results": [
      {
        "position": 1,
        "title": "The Best Laptops We've Tested (November 2026) | PCMag",
        "link": "https://www.pcmag.com/picks/the-best-laptops",
        "displayed_link": "www.pcmag.com/picks/the-best-laptops",
        "domain": "www.pcmag.com",
        "site_name": "PCMag",
        "snippet": "Whether you want a simple budget PC, a productivity workhorse, or a screamer of a gaming notebook, our experts have done the heavy lifting to help you find the right laptop for the job.",
        "date": "2026-11-02",
        "favicon": "https://external-content.duckduckgo.com/ip3/www.pcmag.com.ico"
      },
      {
        "position": 2,
        "title": "Best Laptops of 2026: Top Picks Tested by CNET",
        "link": "https://www.cnet.com/tech/computing/best-laptop/",
        "displayed_link": "www.cnet.com/tech/computing/best-laptop/",
        "domain": "www.cnet.com",
        "site_name": "CNET",
        "snippet": "These are the best laptops that my colleagues and I have gotten our hands on in the past year, spanning all types, sizes and prices.",
        "date": "2026-10-02T20:39:00Z",
        "favicon": "https://external-content.duckduckgo.com/ip3/www.cnet.com.ico"
      },
      {
        "position": 3,
        "title": "Best laptops 2026: Premium, budget, gaming, 2-in-1, and more",
        "link": "https://www.pcworld.com/article/436674/best-pc-laptops.html",
        "displayed_link": "www.pcworld.com/article/436674/best-pc-laptops.html",
        "domain": "www.pcworld.com",
        "site_name": "PCWorld",
        "snippet": "To find the best laptops, we employ thorough hands-on, testing-based evaluations of laptop PCs from all the top brands. Our recommendations pinpoint the best budget, premium, gaming laptop, 2-in-1 ...",
        "date": "2026-11-04",
        "favicon": "https://external-content.duckduckgo.com/ip3/www.pcworld.com.ico"
      }
    ],
    "ads": [],
    "knowledge_graph": null,
    "related_searches": [
      {
        "query": "best laptop 2026 for home use",
        "link": "https://duckduckgo.com/?q=best+laptop+2026+for+home+use"
      },
      {
        "query": "best laptop 2026 for students",
        "link": "https://duckduckgo.com/?q=best+laptop+2026+for+students"
      },
      {
        "query": "best laptop 2026 gaming",
        "link": "https://duckduckgo.com/?q=best+laptop+2026+gaming"
      }
    ],
    "news_results": [],
    "inline_videos": [],
    "inline_images": [],
    "shopping_ads": [],
    "spelling": null,
    "pagination": {
      "current_page": 1,
      "next_page": 2,
      "next_start": 10
    }
  }
}
Actions

What the DuckDuckGo API does

ActionDescriptionConcrete use caseKey params
searchA DuckDuckGo results page for a query: organic results, text ads with sitelinks, the knowledge panel, related searches, inline news, videos, images and shopping ads, and the spelling correction. Region, safe search, time range and pagination.SEO teams call search to get a DuckDuckGo results page for a query.q, region, safe, time, page, ...
newsDuckDuckGo News for a query: headline, link, excerpt, publisher, publication time and image.Content strategists call news to get duckDuckGo News for a query.q, region, safe, time, page
imagesDuckDuckGo Images for a query with size, colour, type, layout, licence and time filters: full image URL, thumbnail, source page, dimensions.Rank trackers call images to get duckDuckGo Images for a query with size, colour, type, layout, licence and time filters.q, region, safe, size, color, ...
videosDuckDuckGo Videos for a query with time, resolution, length and licence filters: video link, duration, publisher, uploader, publication date, view count, thumbnail, embed URL.AI answer-monitoring tools call videos to get duckDuckGo Videos for a query with time, resolution, length and licence filters.q, region, safe, time, resolution, ...
mapsDuckDuckGo Maps (local places) for a query inside a bounding box or around a point: name, category, address, coordinates, phone, website, rating, review count, price level, opening hours, recent reviews and the listing source (Tripadvisor, Yelp, Apple Maps).SEO teams call maps to get duckDuckGo Maps (local places) for a query inside a bounding box or around a point.q, bbox, lat, lon, strict_bbox
autocompleteDuckDuckGo's search suggestions for a partial query.Content strategists call autocomplete to get duckDuckGo's search suggestions for a partial query..q, region
instant_answerDuckDuckGo's official Instant Answer for a query: Wikipedia-style abstract, direct answer, definition, infobox attributes, social profiles, related topics. Not every query has one.Rank trackers call instant_answer to get duckDuckGo's official Instant Answer for a query.q, disambiguation
Code samples

Call search from your stack

curl -X POST https://api.reefapi.com/duckduckgo/v1/search \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"q":"best laptop 2026"}'
MCP one-liner
Ask your MCP-connected assistant: call reefapi.duckduckgo.search with {"q":"best laptop 2026"}.
Use cases

Who uses this API and why

  • Rank tracking on DuckDuckGo: position of your domain per keyword, region and time range, page by page.
  • Ad intelligence: who advertises on a keyword in each region, with ad copy, sitelinks and landing pages.
  • Entity lookup: the knowledge panel or instant answer for a person, company or place, with official site and social profiles.
  • Local research: places of one kind inside a city's bounding box, with ratings, reviews, hours and phone numbers.
  • Media monitoring: DuckDuckGo News for a brand over the past day or week, with source and exact publication time.
FAQ

Questions developers ask before integrating

Which regions, safe-search levels and time ranges are supported?

region takes DuckDuckGo's own codes: wt-wt (no region, the default), us-en, uk-en, ca-en, au-en, in-en, de-de, fr-fr, es-es, it-it, nl-nl, br-pt, mx-es, jp-jp, kr-kr, tr-tr, ru-ru, pl-pl and the rest; a code DuckDuckGo does not know is rejected with INVALID_PARAM. DuckDuckGo also ranks by where the request comes from, so the call leaves from the region's own country for the US, UK, Canada, Germany, France, Spain, Italy, Brazil and Thailand, from Germany for other European regions (France for be-fr and ch-fr) and from the US for the rest, wt-wt included; meta.exit_country names it. Measured: car insurance quotes and plumber near me with region=us-en had no foreign site in the top 5 in 18 of 18 calls (geico.com first for car insurance), where a German location had put a Berlin site first. safe is strict, moderate (default) or off. time is d, w, m or y, or a range such as 2024-01-01..2024-02-01. Measured: bundesliga tabelle with region=de-de returned 8 .de sites in the top 10 against 6 without it, and time=d returned none of the 10 links of the unfiltered page.

How does paging work?

page=1 returns the first 10 organic results, page=2 the next 15, page=3 the 15 after that, the same steps duckduckgo.com uses. start takes the raw offset (0, 10, 25, 40…) if you prefer it. pagination.next_page and next_start tell you whether there is more. source=lite pages the same way.

Do search operators work?

Yes. site:, "exact phrase", -exclude, filetype: and intitle: are passed to DuckDuckGo unchanged and DuckDuckGo applies them: site:reddit.com web scraping api returned reddit.com pages, starting with an r/webscraping thread.

What do the image and video filters do?

images: size (Small, Medium, Large, Wallpaper), color, type (photo, clipart, gif, transparent, line), layout (Square, Tall, Wide), license (Public, Share, ShareCommercially, Modify, ModifyCommercially, any) and time. videos: duration (short, medium, long), resolution (high, standard), license (creative_commons, youtube) and time (d, w, m). Measured on the same query: layout=Tall returned 95 of 97 images taller than wide; duration=short returned nothing longer than 4:57 and duration=long nothing shorter than 21:38.

How do I search places?

Give maps a query and either bbox (lat_top_left,lon_top_left,lat_bottom_right,lon_bottom_right) or lat and lon. Without a location DuckDuckGo would search around our server, so the call asks for one. Use a kind of business ("bars", "coffee"): a single word that is also a place name, such as "bar", is read by DuckDuckGo as that place and the call says so.

What is the difference between instant_answer and the knowledge panel?

instant_answer is DuckDuckGo's official Instant Answer record on its own: abstract, direct answer, definition, infobox, related topics. For an ambiguous name it returns the main article (Berlin the city); disambiguation=true returns DuckDuckGo's list of meanings instead. Many queries have no instant answer and return NOT_FOUND. search carries the same panel inside a full results page.

How fast is it?

Median times in the last run of 295 calls: search 1.5 s, news 1.0 s, images and videos 1.2 s, maps 1.2 s, instant answers 0.7 s, autocomplete 0.4 s. The slowest search took 3.3 s.

Are these Bing results?

DuckDuckGo builds its web results largely on Bing's index. This API returns DuckDuckGo's own page: its order, its ads, its modules and its knowledge panel, which is what a DuckDuckGo user sees.

What is the DuckDuckGo API?

DuckDuckGo API is a ReefAPI endpoint group for duckduckgo search as json: organic results, ads with sitelinks, the knowledge panel, related searches, inline news, videos, images and shopping ads, plus duckduckgo news, images, videos, maps places, autocomplete and instant answers. any region, safe-search level and time range. It returns live JSON through POST requests under /duckduckgo/v1.

Is the DuckDuckGo API free to try?

Yes. ReefAPI starts with 1,000 free credits, no card required. DuckDuckGo calls use the same shared credit balance as every other ReefAPI engine.

Do I need a DuckDuckGo login or account?

No login to DuckDuckGo is needed for the API response. You call ReefAPI with your x-api-key header, and the playground can run live examples before you create a production key.

How fresh is the DuckDuckGo data?

The page example is captured from a live search call, and production requests fetch live data through ReefAPI rather than a static sample.

How many credits does the DuckDuckGo API use?

DuckDuckGo actions currently cost 1-2 credits per successful call. Failed or blocked calls are free. All APIs draw from one credit pool.

Can I call DuckDuckGo from an AI assistant or MCP client?

Yes. Connect ReefAPI once through MCP and your assistant can call duckduckgo actions with the same key, credit pool and JSON envelope used by normal REST requests.

docs / duckduckgo

DuckDuckGo

DuckDuckGo search as JSON: organic results, ads with sitelinks, the knowledge panel, related searches, inline news, videos, images and shopping ads, plus DuckDuckGo News, Images, Videos, Maps places, autocomplete and Instant Answers. Any region, safe-search level and time range.

base /duckduckgo/v17 endpoints
post/duckduckgo/v1/news1 credit

DuckDuckGo News for a query: headline, link, excerpt, publisher, publication time and image.

ParameterAllowed / rangeDescription
qrequired—Search query, any language. DuckDuckGo operators work: site:, "exact phrase", -exclude, filetype:, intitle:.
region = wt-wtoptional—Region as DuckDuckGo's kl code: wt-wt (no region, default), us-en, uk-en, ca-en, au-en, in-en, de-de, fr-fr, es-es, it-it, nl-nl, br-pt, mx-es, ar-es, jp-jp, kr-kr, tr-tr, ru-ru, pl-pl, se-sv, ch-de, … (DuckDuckGo's own list; other codes are rejected). DuckDuckGo also localises by the caller's location, so the request leaves from the region's own country for us, uk, ca, de, fr, es, it, br and th regions, from Germany for other European regions (France for be-fr and ch-fr) and from the US otherwise, wt-wt included; meta.exit_country names it.
safe = moderateoptionalstrict · moderate · offSafe search level (DuckDuckGo's own three levels). 1 / -1 / -2 also accepted.
timeoptional—Only articles from the last day (d), week (w) or month (m).
page = 1optional1–20Result page, 1-based (source page size: news 30, videos 60, images 100).
Try in playground →
post/duckduckgo/v1/images2 credits

DuckDuckGo Images for a query with size, colour, type, layout, licence and time filters: full image URL, thumbnail, source page, dimensions.

ParameterAllowed / rangeDescription
qrequired—Search query, any language. DuckDuckGo operators work: site:, "exact phrase", -exclude, filetype:, intitle:.
region = wt-wtoptional—Region as DuckDuckGo's kl code: wt-wt (no region, default), us-en, uk-en, ca-en, au-en, in-en, de-de, fr-fr, es-es, it-it, nl-nl, br-pt, mx-es, ar-es, jp-jp, kr-kr, tr-tr, ru-ru, pl-pl, se-sv, ch-de, … (DuckDuckGo's own list; other codes are rejected). DuckDuckGo also localises by the caller's location, so the request leaves from the region's own country for us, uk, ca, de, fr, es, it, br and th regions, from Germany for other European regions (France for be-fr and ch-fr) and from the US otherwise, wt-wt included; meta.exit_country names it.
safe = moderateoptionalstrict · moderate · offSafe search level (DuckDuckGo's own three levels). 1 / -1 / -2 also accepted.
sizeoptionalSmall · Medium · Large · WallpaperImage size filter.
coloroptionalcolor · Monochrome · Red · Orange · Yellow · Green · Blue · Purple · Pink · Brown · Black · Gray · Teal · WhiteColour filter ('color' = colour images only, 'Monochrome' = black & white).
typeoptionalphoto · clipart · gif · transparent · lineImage type filter.
layoutoptionalSquare · Tall · WideAspect filter.
licenseoptionalany · Public · Share · ShareCommercially · Modify · ModifyCommerciallyUsage-rights filter (Public = public domain, Share / ShareCommercially / Modify / ModifyCommercially = free to share or modify, any = all Creative Commons).
timeoptionald · w · m · yOnly images first seen in the last day / week / month / year.
page = 1optional1–20Result page, 1-based (source page size: news 30, videos 60, images 100).
Try in playground →
post/duckduckgo/v1/videos2 credits

DuckDuckGo Videos for a query with time, resolution, length and licence filters: video link, duration, publisher, uploader, publication date, view count, thumbnail, embed URL.

ParameterAllowed / rangeDescription
qrequired—Search query, any language. DuckDuckGo operators work: site:, "exact phrase", -exclude, filetype:, intitle:.
region = wt-wtoptional—Region as DuckDuckGo's kl code: wt-wt (no region, default), us-en, uk-en, ca-en, au-en, in-en, de-de, fr-fr, es-es, it-it, nl-nl, br-pt, mx-es, ar-es, jp-jp, kr-kr, tr-tr, ru-ru, pl-pl, se-sv, ch-de, … (DuckDuckGo's own list; other codes are rejected). DuckDuckGo also localises by the caller's location, so the request leaves from the region's own country for us, uk, ca, de, fr, es, it, br and th regions, from Germany for other European regions (France for be-fr and ch-fr) and from the US otherwise, wt-wt included; meta.exit_country names it.
safe = moderateoptionalstrict · moderate · offSafe search level (DuckDuckGo's own three levels). 1 / -1 / -2 also accepted.
timeoptionald · w · mOnly videos published in the last day / week / month.
resolutionoptionalhigh · standardVideo resolution filter.
durationoptionalshort · medium · longVideo length filter.
licenseoptionalcreative_commons · youtubeVideo licence filter.
page = 1optional1–20Result page, 1-based (source page size: news 30, videos 60, images 100).
Try in playground →
post/duckduckgo/v1/maps2 credits

DuckDuckGo Maps (local places) for a query inside a bounding box or around a point: name, category, address, coordinates, phone, website, rating, review count, price level, opening hours, recent reviews and the listing source (Tripadvisor, Yelp, Apple Maps).

ParameterAllowed / rangeDescription
qrequired—Search query, any language. DuckDuckGo operators work: site:, "exact phrase", -exclude, filetype:, intitle:.
bboxoptional—Search area as lat_top_left,lon_top_left,lat_bottom_right,lon_bottom_right. Give bbox or lat+lon.
latoptional—Latitude of the point to search around (with lon).
lonoptional—Longitude of the point to search around (with lat).
strict_bbox = trueoptional—With bbox: only places inside the box (true, default) or also nearby (false).
Try in playground →
post/duckduckgo/v1/autocomplete1 credit

DuckDuckGo's search suggestions for a partial query.

ParameterAllowed / rangeDescription
qrequired—Search query, any language. DuckDuckGo operators work: site:, "exact phrase", -exclude, filetype:, intitle:.
region = wt-wtoptional—Region as DuckDuckGo's kl code: wt-wt (no region, default), us-en, uk-en, ca-en, au-en, in-en, de-de, fr-fr, es-es, it-it, nl-nl, br-pt, mx-es, ar-es, jp-jp, kr-kr, tr-tr, ru-ru, pl-pl, se-sv, ch-de, … (DuckDuckGo's own list; other codes are rejected). DuckDuckGo also localises by the caller's location, so the request leaves from the region's own country for us, uk, ca, de, fr, es, it, br and th regions, from Germany for other European regions (France for be-fr and ch-fr) and from the US otherwise, wt-wt included; meta.exit_country names it.
Try in playground →
post/duckduckgo/v1/instant_answer1 credit

DuckDuckGo's official Instant Answer for a query: Wikipedia-style abstract, direct answer, definition, infobox attributes, social profiles, related topics. Not every query has one.

ParameterAllowed / rangeDescription
qrequired—Search query, any language. DuckDuckGo operators work: site:, "exact phrase", -exclude, filetype:, intitle:.
disambiguation = falseoptional—false (default): the main article when the name is ambiguous ("Berlin" → the city). true: DuckDuckGo's list of meanings instead (related_topics).
Try in playground →
Built for volume
5M+ requests a day

Measured at 60 requests a second across the fleet, with no central bottleneck. Volume pricing is on request, and per-key limits are raised for high-volume accounts.

Missing a source?
We build it

Tell us a site we do not cover yet and it becomes an engine. A customer asked for bestprice.gr on a Sunday and it was in the catalog the next day.

Support
2 minute median reply

Median time from a question in the live chat to the first answer, measured across every answered conversation. Setup help included, no support tier to buy.

One key, one balance
Every API included

No per-site plans and no separate subscriptions. One key and one credit pool across the whole catalog, so adding a source costs nothing up front.

Planning something large? Tell us the volume and the sources and we will come back with what it costs and what we would have to build.