Duck.ai Guest Answers Scraper
Under maintenancePricing
from $1.99 / 1,000 search results
Duck.ai Guest Answers Scraper
Under maintenanceInteracts with Duck.ai (duck.ai/chat) without requiring a DuckDuckGo account. Sends prompts to AI models and extracts responses.
Pricing
from $1.99 / 1,000 search results
Rating
0.0
(0)
Developer
Search API
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
12 days ago
Last modified
Categories
Security
Limited permissionsShare
Send a prompt to Duck.ai's public guest chat and collect the rendered answer, displayed model, conversation messages, and external source links when Duck.ai provides them.
Input
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
prompt | string | Yes | — | Message sent to Duck.ai. |
model | string | No | GPT-5.6 Luna | Requested model label saved with the record. The live displayed model is captured separately because Duck.ai may use its current guest default. |
maxConversationTurns | integer | No | 1 | Maximum number of prompt/answer exchanges (1–20). |
proxyConfiguration | object | No | — | Optional proxy settings. |
Example:
{"prompt": "Explain quantum computing in simple terms.","model": "GPT-5.6 Luna","maxConversationTurns": 1}
See .actor/input_schema.json for the complete input contract.
Output
Records follow .actor/dataset_schema.json. Optional values are omitted when Duck.ai does not expose them.
| Field | Type |
|---|---|
id | string |
type | string |
resultType | string |
position | integer |
prompt | string |
query | string |
promptLength | integer |
model | string |
modelRequested | string |
modelDisplayed | string |
response | string |
responseLength | integer |
responseCharacterCount | integer |
responseWordCount | integer |
responseParagraphCount | integer |
responseHash | string |
sources | array of objects |
sourcesCount | integer |
sourceDomains | array of strings |
hasSources | boolean |
conversationHistory | array of objects |
conversationTurns | integer |
historyMessageCount | integer |
turn | integer |
maxTurns | integer |
finished | boolean |
requestStatus | string |
hasError | boolean |
error | string |
isAnswer | boolean |
engine | string |
vertical | string |
searchUrl | string |
dataSource | string |
retrievalMethod | string |
scrapedAt | string |
searchMetadata | object |
How to use
Enter a prompt and optional conversation-turn limit in the Apify Input tab, start the Actor, and review the response in the Output dataset. This Actor uses Chromium and reads the answer as displayed by Duck.ai.
Failure behaviour
Duck.ai sometimes answers with its own service notice instead of a model response, for example Duck.ai is temporarily unavailable. If this persists, please email this anonymous code … to aichat-error@duckduckgo.com. That text is rendered inside the assistant message container, so it is not an answer and is never stored. The Actor retries the turn up to three times and, if the notice persists, fails with UPSTREAM_UNAVAILABLE and logs the observed excerpt. An anti-bot challenge or an empty document fails as BLOCKED; nothing is clicked, solved, or fabricated.

