面向 AI 的搜尋 API
一行 HTTP 請求即得結構化搜尋結果,為 AI 應用 / RAG / Agent 提供即時全網檢索。對標 Firecrawl · Exa · Tavily。
快速開始
GET
/api/v1/searchcurl "https://tutusoo.com/api/v1/search?q=rust&limit=5"查詢引數
| 引數 | 型別 | 說明 |
|---|---|---|
| q* | string | 搜尋查詢詞(必填);多詞預設 AND(全部命中) |
| limit | int | 返回條數,預設 10,最大 100 |
| offset | int | 分頁偏移,預設 0,最大 990 |
| lang | string | 語言過濾,如 zh / en |
| time_range | string | 收錄時間範圍:1d/7d/30d/1y/all(按 crawled_at) |
| site | string | 限定站點域名 |
| lang_priority | string | 語言優先(軟加權,非硬過濾):如 zh,命中該語言的結果小幅上浮但不隱藏其它語言;與 lang 獨立 |
查詢運算元(寫在 q 裡)
| site:域名 | 限定站點,如 site:github.com rust |
| intitle:詞 | 僅匹配標題含該詞 |
| "精確短語" | 短語內所有詞都要出現 |
| -排除詞 | 排除含該詞的結果,如 rust -教程 |
| A OR B | 任一詞命中即可,如 rust OR golang |
| filetype:型別 | 按檔案型別過濾(pdf/doc/ppt/xls),如 filetype:pdf |
響應
{
"total": 586,
"took_ms": 142,
"results": [
{
"id": "a1b2c3d4-…", // local 結果的頁面 id;外部兜底可能為空
"url": "https://rust-lang.org/",
"title": "Rust 官網",
"snippet": "系統級程式語言…",
"domain": "rust-lang.org",
"site_name": "Rust Programming Language", // 站點展示名(可省略;無則客戶端回退 domain)
"lang": "zh",
"score": 12.4,
"source": "local", // local(本站索引)| brave(全網兜底)
"has_llms_txt": true,
"published_at": "2010-01-25T…", // 文章釋出時間(可空,有則返回;RAG 時效/展示日期)
"crawled_at": "2026-07-18T…" // 抓取時間(判新鮮度;time_range 過濾即按它)
}
]
} site_name:站點展示名,欄位可能省略;缺少時用 domain。source:local=本站索引 /brave=本地結果不足時的全網兜底。has_llms_txt:目標站是否提供 llms.txt(AI 友好)。
獲取全文(RAG)
GET
/api/v1/content/{id}當搜尋結果 source=local 且 id 非空時,可取該頁完整正文餵給 LLM。外部兜底結果沒有本站正文,不能呼叫此端點。
curl "https://tutusoo.com/api/v1/content/<local_page_id>"
# 響應(只含 RAG 有用欄位,無內部列):
{
"id": "…",
"url": "https://rust-lang.org/",
"title": "Rust 官網",
"body_text": "…完整正文…",
"author": "張三", // 作者(可空,RAG 引用/署名)
"published_at": "2026-01-…", // 原文釋出時間(可空,判時效)
"lang": "zh",
"word_count": 1200,
"crawled_at": "2026-07-18T…",
"has_llms_txt": true
}訪問方式 & 限額
公共搜尋與正文端點無需登入或 API Key,可直接試用;公共層按客戶端 IP 做公平限流,超出返回 429。專用 API Key 目前由運營方為已確認的服務整合開通,本站不展示不存在的自助申請入口。
專用 Key 響應會迴帶 X-RateLimit-Limit、X-RateLimit-Remaining 與 X-RateLimit-Reset。客戶端遇到 429 時應按響應提示退避,不要無上限立即重試。


















