AI를 위한 검색 API
HTTP 요청 한 번으로 구조화된 검색 결과 — AI 앱, RAG, 에이전트용 실시간 웹 검색. 대안: 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:domain | 사이트로 제한, 예 site:github.com rust |
| intitle:word | 해당 단어가 포함된 제목만 일치 |
| "exact phrase" | 구문의 모든 단어가 나타나야 함 |
| -exclude | 해당 단어 포함 결과 제외, 예 rust -tutorial |
| A OR B | 둘 중 하나 일치, 예 rust OR golang |
| filetype:type | 파일 형식으로 필터(pdf/doc/ppt/xls), 예 filetype:pdf |
응답
{
"total": 586,
"took_ms": 142,
"results": [
{
"id": "a1b2c3d4-…", // page id for local results; may be empty for external fallback
"url": "https://rust-lang.org/",
"title": "Rust Programming Language",
"snippet": "A language empowering everyone to build reliable software…",
"domain": "rust-lang.org",
"site_name": "Rust Programming Language", // display name (optional; client falls back to domain)
"lang": "en",
"score": 12.4,
"source": "local", // local (our index) | brave (web fallback)
"has_llms_txt": true,
"published_at": "2010-01-25T…", // article publish time (nullable; returned when known; RAG freshness/date)
"crawled_at": "2026-07-18T…" // crawl time (freshness; time_range filters on this)
}
]
} 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>"
# Response (RAG-relevant fields only, no internal columns):
{
"id": "…",
"url": "https://rust-lang.org/",
"title": "Rust Programming Language",
"body_text": "…full article text…",
"author": "Jane Doe", // author (nullable; RAG citation/byline)
"published_at": "2026-01-…", // original publish time (nullable; freshness)
"lang": "en",
"word_count": 1200,
"crawled_at": "2026-07-18T…",
"has_llms_txt": true
}접근 및 속도 제한
공개 검색·콘텐츠 엔드포인트는 로그인이나 API 키 없이 바로 사용해 볼 수 있습니다. 공개 계층은 클라이언트 IP별로 공정한 속도 제한을 적용하며 초과 시 429를 반환합니다. 전용 API 키는 확인된 통합에 대해 운영자가 발급합니다. 이 사이트는 존재하지 않는 셀프서비스 신청 창구를 표시하지 않습니다.
전용 키 응답은 X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset를 반환합니다. 429가 발생하면 응답 안내에 따라 백오프하고, 제한 없이 즉시 재시도하지 마세요.


















