Tavily Search API

The Citead team, updated

In short. Tavily Search API supplies ranked web results and optional page text, while Extract retrieves content from specified URLs.

Definition: Tavily Search API is a web search interface that supplies ranked results, source URLs and page content to AI assistants. As of 17 October 2026, Tavily documents optional generated answers and a separate Extract API for retrieving content from specified URLs.

Key facts

  • Tavily's Search reference documents a results array ranked by relevance, with source titles, URLs and content.
  • Tavily's Search best practices recommends searching for relevant URLs, then using Extract for comprehensive content extraction.
  • The Extract reference allows up to 20 URLs per request and reports individual failures in failed_results.

What does a search request return?

The Search endpoint accepts a query through a POST request to https://api.tavily.com/search, authenticated with a Tavily API key. This shortened request follows its documented parameters:

curl --request POST \
  --url https://api.tavily.com/search \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "query": "who is Leo Messi?",
    "search_depth": "basic",
    "include_raw_content": "markdown"
  }'

A result includes title, url, content and a relevance score. A chunk is a short passage taken directly from a source page. The basic, fast and advanced search depths return relevant chunks in content; chunks_per_source controls their maximum number per source. The ultra-fast option returns a page summary.

Setting include_raw_content to "markdown" adds cleaned, parsed page content; "text" requests plain text. Separately, include_answer requests a language-model-generated answer to the query. It defaults to false, so answer generation requires an explicit setting.

Tavily's overview describes passing returned search results as context to a language model.

How does Extract handle known URLs?

Tavily's Extract endpoint accepts a urls value at https://api.tavily.com/extract. It returns extracted content in raw_content, with Markdown as the default format and plain text available through format: "text".

Providing a query reranks extracted chunks by relevance to that query. With this option, chunks_per_source controls how many passages appear in raw_content. The field can therefore contain selected passages. The advanced extraction depth retrieves additional data, including tables and embedded content, and may increase latency.

The response separates successful URLs in results from unsuccessful ones in failed_results. An HTTP 200 response can contain an empty results array when all valid URLs fail during extraction. Checking both arrays identifies which pages actually supply content.

What can a website team check?

Tavily's Search best practices describes domain filters that affect which sources an application retrieves. With include_domains_mode: "restrict", results stay within the listed include_domains; "prefer" also permits other domains. The exclude_domains setting removes specified domains.

These settings matter when reviewing a page's absence from a result set: the request itself can restrict eligible sources. The same guide defines score as relevance between the query and content, with the appropriate filtering threshold depending on the application's use case. Reviewing the returned url, content and raw_content shows which source and passages the application receives.

FAQ

Can you request page text together with search results?

Yes. The Search reference documents include_raw_content: "markdown" for cleaned page content and "text" for plain text. The option defaults to false.

Can you extract a page without running a search first?

Yes. The Extract reference accepts a URL directly through urls. A search query is optional and serves to rerank extracted passages.

How can you interpret a result's score?

The Search best practices guide defines score as query-content relevance. It advises choosing a filtering threshold according to the application's use case.

Sources

  1. Tavily, "Tavily Search", undated
  2. Tavily, "Best Practices for Search", undated
  3. Tavily, "Tavily Extract", undated
  4. Tavily, "About", undated

Check how a page reads to answer engines. Open the GEO score analyzer

Test a page and see what to fix first

The analysis usually takes less than 10 seconds and needs no account.

400,000+ pages scored in the public benchmark