{
  "openapi": "3.1.0",
  "info": {
    "title": "DuckDuckGo Search (Go)",
    "summary": "DuckDuckGo HTML-Lite scraper. Returns ranked search results.",
    "description": "Issues a query against the DuckDuckGo Lite endpoint (via the local proxy chain) and returns parsed organic results.",
    "version": "1.0.0",
    "contact": {
      "name": "baditaflorin",
      "url": "https://github.com/baditaflorin/go-search-duck"
    }
  },
  "servers": [
    {
      "url": "https://go-search-duck.0exec.com",
      "description": "Production"
    }
  ],
  "tags": [
    {
      "name": "search"
    },
    {
      "name": "scraping"
    }
  ],
  "paths": {
    "/": {
      "get": {
        "summary": "Search DuckDuckGo",
        "responses": {
          "200": {
            "description": "application/json - {results: [{rank, title, url, snippet, ...}]}"
          },
          "400": {
            "description": "Bad request \u2014 missing/invalid params"
          },
          "500": {
            "description": "Server error"
          }
        },
        "parameters": [
          {
            "name": "query",
            "in": "query",
            "required": true,
            "description": "Search query string (repeatable for multi-query)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "description": "Max results to return (default 10)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "dateFilter",
            "in": "query",
            "required": false,
            "description": "One of: d, w, m, y (past day/week/month/year)",
            "schema": {
              "type": "string"
            }
          }
        ],
        "x-example-url": "https://go-search-duck.0exec.com/?query=anthropic&limit=10"
      }
    },
    "/.deploy/version.json": {
      "get": {
        "summary": "Deploy metadata (gateway-served)",
        "responses": {
          "200": {
            "description": "JSON with service, commit, build_date"
          }
        },
        "tags": [
          "meta"
        ]
      }
    },
    "/_gw_health": {
      "get": {
        "summary": "Gateway-level liveness (always 200 if gateway up)",
        "responses": {
          "200": {
            "description": "ok"
          }
        },
        "tags": [
          "meta"
        ]
      }
    },
    "/openapi.json": {
      "get": {
        "summary": "This OpenAPI document",
        "responses": {
          "200": {
            "description": "OpenAPI 3.1 spec"
          }
        },
        "tags": [
          "meta"
        ]
      }
    },
    "/llms.txt": {
      "get": {
        "summary": "LLM-friendly plain-text description of this service",
        "responses": {
          "200": {
            "description": "text/plain"
          }
        },
        "tags": [
          "meta"
        ]
      }
    }
  },
  "components": {}
}
