← Back to blog

DeepSeek Search API: Pricing, Endpoints and How to Use It

2026-10-20 · 5 min read
DeepSeeksearch APIFetch APIRAGAPI pricing

DeepSeek opened its in-house Search and Fetch APIs on October 17, 2026. Both cost $0.75 per 1,000 successful requests, and both are free through DeepSeek Harness, Claude Code and Codex until 00:00 Beijing time on November 1, 2026. The Search endpoint is POST https://api.deepseek.com/v1/tools/search; Fetch is POST https://api.deepseek.com/v1/tools/fetch.

Last checked: October 20, 2026. Source: DeepSeek's official Search & Fetch guide and API updates.

What is the DeepSeek Search API?

It is a raw JSON API for agents and RAG applications, powered by DeepSeek's own search engine. Search finds web pages for a query and returns structured results. Fetch retrieves a single page and returns its content as Markdown.

Both use the same bearer authentication as the regular DeepSeek API:

curl https://api.deepseek.com/v1/tools/search \
  -H "Authorization: Bearer $DEEPSEEK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "DeepSeek V4 release",
    "count": 5,
    "need_content": true
  }'

The response is a results array. Each item includes title, url, snippet, summary, content, site_name, site_icon, date, authority and rerank_score.

Two fields are worth planning around:

  • rerank_score runs from 0 to 3 and combines relevance, authority and freshness. DeepSeek treats 1.5 or above as a high-quality result.
  • authority runs from 0 to 4, with -1 meaning unknown. DeepSeek treats 3 or above as a highly authoritative source.

Filtering on those fields is usually better than taking the top N results blindly.

How much does it cost?

Search and Fetch are billed per successful request, not by tokens and not by the number of results:

APIUnit price
Search$0.75 per 1,000 successful requests
Fetch$0.75 per 1,000 successful requests

A request is billable only when it returns HTTP 200 and produces a result: Search must return a non-empty results array, and Fetch must return page content. Failed requests, empty search results and timeouts are not billed. The count parameter does not change the price, so asking for 50 results costs the same as asking for one.

The current free window applies to server-side tool calls made through DeepSeek Harness, Claude Code or Codex. Per-request billing starts at 00:00 Beijing time on November 1, 2026. If you are testing an agent integration now, the deadline matters.

What can the Search API do?

The request accepts:

FieldRequiredNotes
queryYes1 to 128 Unicode characters, cannot be all whitespace
countNo1 to 50, default 10
ori_questionNoThe user's original question, up to 128 characters, to improve query understanding
localizationNoAn IP address used to localize results
need_contentNoDefault false; when false, content is always an empty string

The query syntax is passed through, so you can combine operators:

  • site:github.com restricts results to a site; separate multiple site: clauses with spaces and join them with OR.
  • -site:example.com excludes a site.
  • -advertisement excludes pages containing a term.
  • "exact phrase" matches an exact phrase; -"exact phrase" excludes one.
  • lang:zh,en restricts language codes.
  • after:2025-01-01 and before:2026-06-01 restrict publication dates.

For example:

{
  "query": "DeepSeek site:github.com OR site:huggingface.co lang:en after:2025",
  "count": 10
}

What about the Fetch API?

Fetch takes a single url and returns the page as Markdown:

curl https://api.deepseek.com/v1/tools/fetch \
  -H "Authorization: Bearer $DEEPSEEK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com/article"}'

The URL must be HTTP or HTTPS with a host, cannot contain a username or password, and is limited to 8,192 characters. The response has title and content. Fetching is subject to the target site's availability and access policies, so a 403 or 404 means the page was rejected or could not be read, not that the API key is wrong.

Rate limits and errors

Search and Fetch have separate account-level limits, so traffic to one does not consume the other's quota:

APIQPS limit
Search100 requests per second
Fetch25 requests per second

The limits apply per account, regardless of which API key you use.

Errors follow the OpenAI-compatible format. The practical retry rules:

  • 408, 429 and 5xx: wait and retry.
  • 402: top up the account before retrying.
  • Other 4xx: do not retry without changing the request.

For 429, back off rather than retrying immediately; the limit is per account, not per key, so adding another key does not help.

Should you use it?

The pricing is simple: about $0.00075 per successful call. At that rate, 10,000 searches cost $7.50, which is cheap for an agent that needs fresh web context on a bounded number of queries.

Three caveats:

  1. You pay per successful request, not per useful answer. An empty result is free, but a low-quality result still costs a request and may poison the next step of your agent.
  2. Search and Fetch are read-only tools, not a chat model. You still need an LLM to plan queries, read the results and decide when to stop.
  3. The free window ends on November 1, 2026. If your integration relies on server-side tool calls through DeepSeek Harness, Claude Code or Codex, budget for per-request billing after that date.

For a consumer chat experience, this API is not the entry point. If you want to use DeepSeek models without building a pipeline, open DeepSeek on aiwith and pick the model there. For the model release itself, see our DeepSeek V4.1 Flash 1017 guide.

More on this topic