DuckDuckGo · Schema

DuckDuckGo Instant Answer Response

JSON Schema for the DuckDuckGo Instant Answer API response envelope returned by api.duckduckgo.com.

SearchPrivacyBrowserAI ChatEmail ProtectionVPNTrackersIdentity

Properties

Name Type Description
Abstract string
AbstractText string
AbstractSource string
AbstractURL string
Image string
ImageHeight stringinteger
ImageWidth stringinteger
ImageIsLogo stringinteger 1 if image is a logo, 0 otherwise.
Heading string
Answer string
AnswerType string e.g. calc, color_code, ip
Definition string
DefinitionSource string
DefinitionURL string
RelatedTopics array
Results array
Type string Response type code. A=article, D=disambiguation, C=category, N=name, E=exclusive, empty=nothing.
Redirect string URL to redirect to when query is a !bang.
Entity string
Infobox object
meta object
View JSON Schema on GitHub

JSON Schema

instant-answer-response-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/duckduckgo/main/json-schema/instant-answer-response-schema.json",
  "title": "DuckDuckGo Instant Answer Response",
  "description": "JSON Schema for the DuckDuckGo Instant Answer API response envelope returned by api.duckduckgo.com.",
  "type": "object",
  "properties": {
    "Abstract": { "type": "string" },
    "AbstractText": { "type": "string" },
    "AbstractSource": { "type": "string" },
    "AbstractURL": { "type": "string", "format": "uri" },
    "Image": { "type": "string" },
    "ImageHeight": { "type": ["string", "integer"] },
    "ImageWidth": { "type": ["string", "integer"] },
    "ImageIsLogo": { "type": ["string", "integer"], "description": "1 if image is a logo, 0 otherwise." },
    "Heading": { "type": "string" },
    "Answer": { "type": "string" },
    "AnswerType": { "type": "string", "description": "e.g. calc, color_code, ip" },
    "Definition": { "type": "string" },
    "DefinitionSource": { "type": "string" },
    "DefinitionURL": { "type": "string" },
    "RelatedTopics": {
      "type": "array",
      "items": { "$ref": "#/$defs/RelatedTopic" }
    },
    "Results": {
      "type": "array",
      "items": { "$ref": "#/$defs/Result" }
    },
    "Type": {
      "type": "string",
      "description": "Response type code. A=article, D=disambiguation, C=category, N=name, E=exclusive, empty=nothing."
    },
    "Redirect": {
      "type": "string",
      "description": "URL to redirect to when query is a !bang."
    },
    "Entity": { "type": "string" },
    "Infobox": {
      "oneOf": [
        { "type": "string" },
        { "type": "object" }
      ]
    },
    "meta": { "type": "object", "additionalProperties": true }
  },
  "$defs": {
    "Icon": {
      "type": "object",
      "properties": {
        "URL": { "type": "string" },
        "Height": { "type": ["string", "integer"] },
        "Width": { "type": ["string", "integer"] }
      }
    },
    "Result": {
      "type": "object",
      "properties": {
        "Result": { "type": "string" },
        "Icon": { "$ref": "#/$defs/Icon" },
        "FirstURL": { "type": "string", "format": "uri" },
        "Text": { "type": "string" }
      }
    },
    "RelatedTopic": {
      "type": "object",
      "properties": {
        "Result": { "type": "string" },
        "Icon": { "$ref": "#/$defs/Icon" },
        "FirstURL": { "type": "string", "format": "uri" },
        "Text": { "type": "string" },
        "Name": { "type": "string" },
        "Topics": {
          "type": "array",
          "items": { "$ref": "#/$defs/RelatedTopic" }
        }
      }
    }
  }
}