from fastapi import FastAPI, Query from fastapi.middleware.cors import CORSMiddleware from duckduckgo_search import DDGS app = FastAPI() # Enable CORS for all origins (allows API to be used from any website) app.add_middleware( CORSMiddleware, allow_origins=["*"], allow_credentials=True, allow_methods=["*"], allow_headers=["*"], ) @app.get("/search") def search(query: str = Query(..., title="Search Query"), max_results: int = 10): """ DuckDuckGo Search API - Returns top search results. """ with DDGS() as ddgs: results = list(ddgs.text(query, max_results=max_results)) return {"query": query, "results": results}