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

# Duckduckgo

DuckDuckGo: web search, images, news, videos.

## Search the web via DuckDuckGo

> Returns web search results for \`term\`.\
> \
> \*\*Price:\*\* $0.0005 per item\
> \
> \*\*Minimum charge:\*\* $0.005 per request (10 items)\
> \
> Your current plan discount applies to the total. The minimum applies once per request, even when fewer items are returned. maxItems limits requested results; it does not lower the minimum billable count.

```json
{"openapi":"3.0.3","info":{"title":"Pullbay API","version":"2.0.0"},"tags":[{"name":"duckduckgo","description":"DuckDuckGo: web search, images, news, videos."}],"servers":[{"url":"https://api.pullbay.com"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"DuckDuckGoSearchResult":{"type":"object","properties":{"title":{"type":"string"},"description":{"type":"string"},"hostname":{"type":"string"},"icon":{"type":"string","format":"uri"},"url":{"type":"string","format":"uri"}}},"ErrorEnvelope":{"type":"object","properties":{"requestId":{"type":"string","format":"uuid"},"status":{"type":"integer"},"message":{"type":"string"},"success":{"type":"boolean"},"error":{"type":"object","properties":{"code":{"type":"string"}}}}},"InsufficientBalanceError":{"type":"object","description":"The available USD balance cannot cover this request. No partial charge is retained. Add funds or reduce the requested result count, subject to the endpoint minimum.","required":["status","success","error"],"properties":{"requestId":{"type":"string","format":"uuid"},"status":{"type":"integer","enum":[402]},"success":{"type":"boolean","enum":[false]},"message":{"type":"string"},"error":{"type":"object","required":["code"],"properties":{"code":{"type":"string","enum":["TEAM_INSUFFICIENT_BALANCE"]}}}}}}},"paths":{"/duckduckgo/search":{"get":{"operationId":"duckduckgoSearch","summary":"Search the web via DuckDuckGo","description":"Returns web search results for `term`.\n\n**Price:** $0.0005 per item\n\n**Minimum charge:** $0.005 per request (10 items)\n\nYour current plan discount applies to the total. The minimum applies once per request, even when fewer items are returned. maxItems limits requested results; it does not lower the minimum billable count.","tags":["duckduckgo"],"parameters":[{"name":"term","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":255}},{"name":"region","in":"query","required":true,"schema":{"type":"string","enum":["wt-wt","ar-es","au-en","at-de","be-fr","be-nl","br-pt","bg-bg","ca-en","ca-fr","ct-ca","cl-es","cn-zh","co-es","hr-hr","cz-cs","dk-da","ee-et","fi-fi","fr-fr","de-de","gr-el","hk-tzh","hu-hu","in-en","id-en","ie-en","il-en","it-it","jp-jp","kr-kr","lv-lv","lt-lt","my-en","mx-es","nl-nl","nz-en","no-no","pk-en","pe-es","ph-en","pl-pl","pt-pt","ro-ro","ru-ru","xa-ar","sg-en","sk-sk","sl-sl","za-en","es-ca","es-es","se-sv","ch-de","ch-fr","tw-tzh","th-en","tr-tr","us-en","us-es","ua-uk","uk-en","vn-en"]}},{"name":"safeSearch","in":"query","required":true,"schema":{"type":"string","enum":["off","moderate","strict"]}},{"name":"offset","in":"query","required":false,"schema":{"type":"number","minimum":0}},{"name":"time","in":"query","required":false,"schema":{"type":"string","enum":["a","d","w","m","y"]}}],"responses":{"200":{"description":"Successful request","content":{"application/json":{"schema":{"type":"object","properties":{"requestId":{"type":"string","format":"uuid"},"status":{"type":"integer"},"message":{"type":"string"},"success":{"type":"boolean"},"data":{"type":"array","items":{"$ref":"#/components/schemas/DuckDuckGoSearchResult"}},"pricing":{"type":"object","required":["currency","amountCharged","billableItems"],"properties":{"currency":{"type":"string","enum":["USD"]},"amountCharged":{"type":"string","pattern":"^\\d+\\.\\d{6}$","description":"Exact USD amount after the current plan discount, rounded once to a microdollar. This example uses the minimum count with no discount."},"billableItems":{"type":"integer","minimum":0}}}}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"402":{"description":"Insufficient balance","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InsufficientBalanceError"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}}}}
```

## Search images via DuckDuckGo

> Returns image search results for \`term\`.\
> \
> \*\*Price:\*\* $0.0005 per item\
> \
> \*\*Minimum charge:\*\* $0.005 per request (10 items)\
> \
> Your current plan discount applies to the total. The minimum applies once per request, even when fewer items are returned. maxItems limits requested results; it does not lower the minimum billable count.

```json
{"openapi":"3.0.3","info":{"title":"Pullbay API","version":"2.0.0"},"tags":[{"name":"duckduckgo","description":"DuckDuckGo: web search, images, news, videos."}],"servers":[{"url":"https://api.pullbay.com"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"DuckDuckGoImage":{"type":"object","properties":{"title":{"type":"string"},"image":{"type":"string","format":"uri"},"thumbnail":{"type":"string","format":"uri"},"image_token":{"type":"string"},"thumbnail_token":{"type":"string"},"width":{"type":"integer"},"height":{"type":"integer"},"source":{"type":"string"},"url":{"type":"string","format":"uri"}}},"ErrorEnvelope":{"type":"object","properties":{"requestId":{"type":"string","format":"uuid"},"status":{"type":"integer"},"message":{"type":"string"},"success":{"type":"boolean"},"error":{"type":"object","properties":{"code":{"type":"string"}}}}},"InsufficientBalanceError":{"type":"object","description":"The available USD balance cannot cover this request. No partial charge is retained. Add funds or reduce the requested result count, subject to the endpoint minimum.","required":["status","success","error"],"properties":{"requestId":{"type":"string","format":"uuid"},"status":{"type":"integer","enum":[402]},"success":{"type":"boolean","enum":[false]},"message":{"type":"string"},"error":{"type":"object","required":["code"],"properties":{"code":{"type":"string","enum":["TEAM_INSUFFICIENT_BALANCE"]}}}}}}},"paths":{"/duckduckgo/images":{"get":{"operationId":"duckduckgoImages","summary":"Search images via DuckDuckGo","description":"Returns image search results for `term`.\n\n**Price:** $0.0005 per item\n\n**Minimum charge:** $0.005 per request (10 items)\n\nYour current plan discount applies to the total. The minimum applies once per request, even when fewer items are returned. maxItems limits requested results; it does not lower the minimum billable count.","tags":["duckduckgo"],"parameters":[{"name":"term","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":255}},{"name":"region","in":"query","required":true,"schema":{"type":"string","enum":["wt-wt","ar-es","au-en","at-de","be-fr","be-nl","br-pt","bg-bg","ca-en","ca-fr","ct-ca","cl-es","cn-zh","co-es","hr-hr","cz-cs","dk-da","ee-et","fi-fi","fr-fr","de-de","gr-el","hk-tzh","hu-hu","in-en","id-en","ie-en","il-en","it-it","jp-jp","kr-kr","lv-lv","lt-lt","my-en","mx-es","nl-nl","nz-en","no-no","pk-en","pe-es","ph-en","pl-pl","pt-pt","ro-ro","ru-ru","xa-ar","sg-en","sk-sk","sl-sl","za-en","es-ca","es-es","se-sv","ch-de","ch-fr","tw-tzh","th-en","tr-tr","us-en","us-es","ua-uk","uk-en","vn-en"]}},{"name":"safeSearch","in":"query","required":true,"schema":{"type":"string","enum":["off","moderate","strict"]}},{"name":"offset","in":"query","required":false,"schema":{"type":"number","minimum":0}}],"responses":{"200":{"description":"Successful request","content":{"application/json":{"schema":{"type":"object","properties":{"requestId":{"type":"string","format":"uuid"},"status":{"type":"integer"},"message":{"type":"string"},"success":{"type":"boolean"},"data":{"type":"array","items":{"$ref":"#/components/schemas/DuckDuckGoImage"}},"pricing":{"type":"object","required":["currency","amountCharged","billableItems"],"properties":{"currency":{"type":"string","enum":["USD"]},"amountCharged":{"type":"string","pattern":"^\\d+\\.\\d{6}$","description":"Exact USD amount after the current plan discount, rounded once to a microdollar. This example uses the minimum count with no discount."},"billableItems":{"type":"integer","minimum":0}}}}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"402":{"description":"Insufficient balance","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InsufficientBalanceError"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}}}}
```

## Search news articles via DuckDuckGo

> Returns news articles for \`term\`. Use \`time\` to limit recency (\`a\`=any, \`d\`=day, \`w\`=week, \`m\`=month, \`y\`=year).\
> \
> \*\*Price:\*\* $0.0005 per item\
> \
> \*\*Minimum charge:\*\* $0.005 per request (10 items)\
> \
> Your current plan discount applies to the total. The minimum applies once per request, even when fewer items are returned. maxItems limits requested results; it does not lower the minimum billable count.

```json
{"openapi":"3.0.3","info":{"title":"Pullbay API","version":"2.0.0"},"tags":[{"name":"duckduckgo","description":"DuckDuckGo: web search, images, news, videos."}],"servers":[{"url":"https://api.pullbay.com"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"DuckDuckGoNewsArticle":{"type":"object","properties":{"title":{"type":"string"},"excerpt":{"type":"string"},"url":{"type":"string","format":"uri"},"image":{"type":"string","format":"uri"},"date":{"type":"integer","description":"Unix timestamp in seconds"},"relativeTime":{"type":"string"},"syndicate":{"type":"string"},"isOld":{"type":"boolean"}}},"ErrorEnvelope":{"type":"object","properties":{"requestId":{"type":"string","format":"uuid"},"status":{"type":"integer"},"message":{"type":"string"},"success":{"type":"boolean"},"error":{"type":"object","properties":{"code":{"type":"string"}}}}},"InsufficientBalanceError":{"type":"object","description":"The available USD balance cannot cover this request. No partial charge is retained. Add funds or reduce the requested result count, subject to the endpoint minimum.","required":["status","success","error"],"properties":{"requestId":{"type":"string","format":"uuid"},"status":{"type":"integer","enum":[402]},"success":{"type":"boolean","enum":[false]},"message":{"type":"string"},"error":{"type":"object","required":["code"],"properties":{"code":{"type":"string","enum":["TEAM_INSUFFICIENT_BALANCE"]}}}}}}},"paths":{"/duckduckgo/news":{"get":{"operationId":"duckduckgoNews","summary":"Search news articles via DuckDuckGo","description":"Returns news articles for `term`. Use `time` to limit recency (`a`=any, `d`=day, `w`=week, `m`=month, `y`=year).\n\n**Price:** $0.0005 per item\n\n**Minimum charge:** $0.005 per request (10 items)\n\nYour current plan discount applies to the total. The minimum applies once per request, even when fewer items are returned. maxItems limits requested results; it does not lower the minimum billable count.","tags":["duckduckgo"],"parameters":[{"name":"term","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":255}},{"name":"region","in":"query","required":true,"schema":{"type":"string","enum":["wt-wt","ar-es","au-en","at-de","be-fr","be-nl","br-pt","bg-bg","ca-en","ca-fr","ct-ca","cl-es","cn-zh","co-es","hr-hr","cz-cs","dk-da","ee-et","fi-fi","fr-fr","de-de","gr-el","hk-tzh","hu-hu","in-en","id-en","ie-en","il-en","it-it","jp-jp","kr-kr","lv-lv","lt-lt","my-en","mx-es","nl-nl","nz-en","no-no","pk-en","pe-es","ph-en","pl-pl","pt-pt","ro-ro","ru-ru","xa-ar","sg-en","sk-sk","sl-sl","za-en","es-ca","es-es","se-sv","ch-de","ch-fr","tw-tzh","th-en","tr-tr","us-en","us-es","ua-uk","uk-en","vn-en"]}},{"name":"safeSearch","in":"query","required":true,"schema":{"type":"string","enum":["off","moderate","strict"]}},{"name":"offset","in":"query","required":false,"schema":{"type":"number","minimum":0}},{"name":"time","in":"query","required":false,"schema":{"type":"string","enum":["a","d","w","m","y"]}}],"responses":{"200":{"description":"Successful request","content":{"application/json":{"schema":{"type":"object","properties":{"requestId":{"type":"string","format":"uuid"},"status":{"type":"integer"},"message":{"type":"string"},"success":{"type":"boolean"},"data":{"type":"array","items":{"$ref":"#/components/schemas/DuckDuckGoNewsArticle"}},"pricing":{"type":"object","required":["currency","amountCharged","billableItems"],"properties":{"currency":{"type":"string","enum":["USD"]},"amountCharged":{"type":"string","pattern":"^\\d+\\.\\d{6}$","description":"Exact USD amount after the current plan discount, rounded once to a microdollar. This example uses the minimum count with no discount."},"billableItems":{"type":"integer","minimum":0}}}}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"402":{"description":"Insufficient balance","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InsufficientBalanceError"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}}}}
```

## Search videos via DuckDuckGo

> Returns video search results for \`term\`.\
> \
> \*\*Price:\*\* $0.0005 per item\
> \
> \*\*Minimum charge:\*\* $0.005 per request (10 items)\
> \
> Your current plan discount applies to the total. The minimum applies once per request, even when fewer items are returned. maxItems limits requested results; it does not lower the minimum billable count.

```json
{"openapi":"3.0.3","info":{"title":"Pullbay API","version":"2.0.0"},"tags":[{"name":"duckduckgo","description":"DuckDuckGo: web search, images, news, videos."}],"servers":[{"url":"https://api.pullbay.com"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"DuckDuckGoVideo":{"type":"object","properties":{"title":{"type":"string"},"description":{"type":"string"},"url":{"type":"string","format":"uri"},"image":{"type":"string","format":"uri"},"duration":{"type":"string"},"publishedOn":{"type":"string"},"published":{"type":"string","format":"date-time"},"publisher":{"type":"string"},"viewCount":{"type":"integer"}}},"ErrorEnvelope":{"type":"object","properties":{"requestId":{"type":"string","format":"uuid"},"status":{"type":"integer"},"message":{"type":"string"},"success":{"type":"boolean"},"error":{"type":"object","properties":{"code":{"type":"string"}}}}},"InsufficientBalanceError":{"type":"object","description":"The available USD balance cannot cover this request. No partial charge is retained. Add funds or reduce the requested result count, subject to the endpoint minimum.","required":["status","success","error"],"properties":{"requestId":{"type":"string","format":"uuid"},"status":{"type":"integer","enum":[402]},"success":{"type":"boolean","enum":[false]},"message":{"type":"string"},"error":{"type":"object","required":["code"],"properties":{"code":{"type":"string","enum":["TEAM_INSUFFICIENT_BALANCE"]}}}}}}},"paths":{"/duckduckgo/videos":{"get":{"operationId":"duckduckgoVideos","summary":"Search videos via DuckDuckGo","description":"Returns video search results for `term`.\n\n**Price:** $0.0005 per item\n\n**Minimum charge:** $0.005 per request (10 items)\n\nYour current plan discount applies to the total. The minimum applies once per request, even when fewer items are returned. maxItems limits requested results; it does not lower the minimum billable count.","tags":["duckduckgo"],"parameters":[{"name":"term","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":255}},{"name":"region","in":"query","required":true,"schema":{"type":"string","enum":["wt-wt","ar-es","au-en","at-de","be-fr","be-nl","br-pt","bg-bg","ca-en","ca-fr","ct-ca","cl-es","cn-zh","co-es","hr-hr","cz-cs","dk-da","ee-et","fi-fi","fr-fr","de-de","gr-el","hk-tzh","hu-hu","in-en","id-en","ie-en","il-en","it-it","jp-jp","kr-kr","lv-lv","lt-lt","my-en","mx-es","nl-nl","nz-en","no-no","pk-en","pe-es","ph-en","pl-pl","pt-pt","ro-ro","ru-ru","xa-ar","sg-en","sk-sk","sl-sl","za-en","es-ca","es-es","se-sv","ch-de","ch-fr","tw-tzh","th-en","tr-tr","us-en","us-es","ua-uk","uk-en","vn-en"]}},{"name":"safeSearch","in":"query","required":true,"schema":{"type":"string","enum":["off","moderate","strict"]}},{"name":"offset","in":"query","required":false,"schema":{"type":"number","minimum":0}},{"name":"time","in":"query","required":false,"schema":{"type":"string","enum":["a","d","w","m","y"]}}],"responses":{"200":{"description":"Successful request","content":{"application/json":{"schema":{"type":"object","properties":{"requestId":{"type":"string","format":"uuid"},"status":{"type":"integer"},"message":{"type":"string"},"success":{"type":"boolean"},"data":{"type":"array","items":{"$ref":"#/components/schemas/DuckDuckGoVideo"}},"pricing":{"type":"object","required":["currency","amountCharged","billableItems"],"properties":{"currency":{"type":"string","enum":["USD"]},"amountCharged":{"type":"string","pattern":"^\\d+\\.\\d{6}$","description":"Exact USD amount after the current plan discount, rounded once to a microdollar. This example uses the minimum count with no discount."},"billableItems":{"type":"integer","minimum":0}}}}}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"402":{"description":"Insufficient balance","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InsufficientBalanceError"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}}}}
```
