ToolAssay

DuckDuckGo

DuckDuckGo: Scrape DuckDuckGo search results in JSON format automatically, using custom parameters. Structured JSON, USD 0.05 per call in USDC — no API key, no account, no subscription, no minimum. Not affiliated with, endorsed by or an official channel of any of the services the results come from. All trademarks and copyright remain the property of their respective owners.

Answeringour last check, 2026-10-26
1 of 1checks answered this week
256 msmedian answer time
$0.05listed price per call
$0.05price it asked us

Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.

Endpoint

POST https://serp402.com/api/v1/duckduckgo-search

CategorySearch and research
Provider hostserp402.com
Networkseip155:8453, solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp
Payment schemesexact
Self-reported calls, 30 days0 from 0 payers (the provider's figure, not ours)

Our checks, last 30 days

DayResultHTTPAskedTime
2026-10-26 valid payment request 402$0.05 256 ms

Example input (from the provider)

{
  "body": {
    "kl": "us-en",
    "q": "Apple"
  },
  "bodyType": "json",
  "method": "POST",
  "type": "http"
}

Promised output schema (from the provider)

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "body": {
          "additionalProperties": true,
          "properties": {
            "df": {
              "description": "results filtered by date. It can be set to: d : Past day, w : Past week, m : Past month, y : Past year, or you can pass a custom date following the next\u2026",
              "type": "string"
            },
            "kl": {
              "description": "region to use for the DuckDuckGo search. Region code examples: us-en for the United States, uk-en for United Kingdom, or fr-fr for France. Head to the\u2026",
              "type": "string"
            },
            "q": {
              "type": "string"
            },
            "safe": {
              "description": "level of filtering for adult content. It can be set to 1 (Strict), -1 (Moderate - default), or -2 (Off).",
              "type": "string"
            },
            "search_assist": {
              "description": "Parameter determines if DuckDuckGo's AI Search Assist will be returned in the response. It can be set to true or false (default). search_assist and m can't be\u2026",
              "type": "string"
            },
            "start": {
              "description": "result offset. It skips the given number of results. When offset is not being used (initial search request, start parameter is set to 0 or left blank), up to\u2026",
              "type": "string"
            }
          },
          "type": "object"
        },
        "bodyType": {
          "enum": [
            "json",
            "form-data",
            "text"
          ],
          "type": "string"
        },
        "method": {
          "enum": [
            "POST"
          ],
          "type": "string"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method",
        "bodyType",
        "body"
      ],
      "type": "object"
    },
    "output": {
      "properties": {
        "example": {
          "additionalProperties": true,
          "description": "DuckDuckGo results as structured JSON. The shape follows the source, so fields differ between endpoints; identifiers and routing belonging to the collection layer are stripped.",
          "properties": {
            "attribution": {
              "description": "Where the data comes from and what was done to it. Keep it with the results if you pass them on.",
              "type": "object"
            },
            "endpoint": {
              "description": "Which endpoint answered.",
              "type": "string"
            },
            "meta": {
              "description": "How long the call took.",
              "type": "object"
            },
            "paid": {
              "description": "The settled transaction and network.",
              "type": "object"
            }
          },
          "type": "object"
        },
        "type": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}

This page as JSON