DeepSeek Search API and Fetch API: Power-User Guide to Setup, Operators, Pricing and Limits

Last updated: November 1, 2026

The DeepSeek Search API, opened to all developers on October 17, 2026, returns ranked web results from DeepSeek’s own search engine, and a companion Fetch API turns any page into Markdown. Both cost $0.75 per 1,000 successful requests, and calls made through Claude Code, Codex and DeepSeek Harness became billable on November 1, 2026 (Beijing time).

Contents

What’s new with the DeepSeek Search API

DeepSeek’s change log entry for October 17, 2026 says the company is “opening up the in-house search API” that already powers search in its web app and model API. DeepSeek says the engine indexes hundreds of billions of pages and filters SEO spam and low-quality AI-generated content.

The same release shipped DeepSeek-V4.1-Flash-1017, covered in our DeepSeek V4.1 Flash guide. The search tools work with any agent or retrieval pipeline, whichever model you use.

Endpoints and authentication

Both are plain JSON APIs on the base URL https://api.deepseek.com, per the Search and Fetch guide.

API Endpoint What it does Price Account QPS limit
Search POST /v1/tools/search Finds pages for a query and returns structured results $0.75 per 1,000 successful requests 100
Fetch POST /v1/tools/fetch Retrieves one page and returns it as Markdown $0.75 per 1,000 successful requests 25 (plus a per-domain limit)

Authentication is the same as the model API: send Authorization: Bearer <DeepSeek API Key> and Content-Type: application/json.

How to make your first DeepSeek search

  1. Create or copy an API key on the DeepSeek platform and make sure the account has a balance, since an empty balance returns HTTP 402.
  2. Send a POST request to https://api.deepseek.com/v1/tools/search with a JSON body that contains query (1 to 128 characters).
  3. Set count from 1 to 50 (default 10) to choose how many results come back.
  4. Add need_content: true if you want page text in each result; otherwise content is an empty string.
  5. Optionally pass ori_question with the user’s original question to improve query understanding, and localization with an IP address to localize results.
  6. Read the results array, keep items with a rerank_score of 1.5 or higher, and pass the summary field to your model.

A minimal request body looks like {"query": "DeepSeek V4 release", "count": 5, "need_content": true}.

Query operators

The query is forwarded with its search syntax intact, so you can combine operators in one string:

  • site: and -site: restrict or exclude a domain; join several sites with OR.
  • "exact phrase" matches a phrase, and -term or -"phrase" excludes pages containing it.
  • lang:zh,en restricts results to language codes.
  • after:2025-01-01 and before:2026 filter by publication date.

For example, DeepSeek site:github.com OR site:huggingface.co lang:en after:2025 is the pattern DeepSeek itself documents.

What the response contains

A successful call returns HTTP 200 with a results array, which is empty when nothing matches. Each item includes:

  • rerank_score: 0 to 3, combining relevance, authority and freshness; 1.5 or above counts as high quality.
  • snippet: about 100 to 200 characters, meant for display in a UI.
  • summary: about 600 to 800 characters, meant to be read by a model.
  • authority: a tier from 0 to 4, with 3 or above marking highly authoritative sources and -1 meaning unknown.
  • title, url, content, site_name, site_icon and date (RFC 3339 in UTC, or null).

Passing summary instead of full content keeps prompts short, and you can fetch full text only for the few pages you actually cite. If you then need finer ordering, a reranker such as Cohere Rerank 5 can sit after the search step.

Using the Fetch API

Fetch takes a single field, url, which must be an HTTP or HTTPS address of at most 8,192 characters with no username or password. It returns title and content, with the page converted to Markdown. A page with no extractable content returns HTTP 404.

Pricing and the November 1 billing change

Search and Fetch are billed per successful request, not by tokens or number of results, according to the DeepSeek pricing page. A request is billable only when it returns HTTP 200 and produces a result: a non-empty results array for Search, or page content for Fetch. Failed requests, empty searches and timeouts are free.

The change power users should notice today concerns agent tools. When you run the DeepSeek API through DeepSeek Harness, Claude Code or Codex, server-side tool calls already hit these APIs. The October 17 announcement said those calls were free for DeepSeek API users until 16:00 UTC on October 31, 2026, which is 00:00 Beijing time on November 1. From then on they bill at the same $0.75 per 1,000 rate. If DeepSeek powers your Claude Code or the Codex CLI sessions, watch your usage page.

Model tokens are billed separately. Our explainer on whether DeepSeek is free covers the app and API pricing side.

Rate limits and errors

Limits are per account, not per key. Search allows 100 requests per second and Fetch 25, and traffic to one does not use the other’s quota. Common errors:

  • 400: invalid headers, body or field value.
  • 401: missing or invalid API key.
  • 402: insufficient balance; top up before retrying.
  • 403: a Fetch request rejected by the security policy.
  • 429: QPS limit exceeded, including Fetch’s per-domain limit.
  • 408, 500 and 504: wait and retry.

How the DeepSeek Search API compares

The closest comparison is Perplexity. Its pricing page lists the Perplexity Search API at $5.00 per 1,000 requests, or $1.00 with Fast Search, and it bills a successful request even when it returns no results. Inside Perplexity’s Agent API, the web_search tool costs $2.50 per 1,000 calls and fetch_url $0.0005 per call. Our Perplexity Agent API guide covers those tools.

On listed price, DeepSeek Search is cheaper per request and does not charge for empty results. Perplexity accepts up to five queries in one billed request and offers country biasing, while DeepSeek takes one query per request and localizes by IP address. Test result quality on your own queries.

Practical workflows and limitations

  • Cheap RAG loop: search with count 10 and no content, keep the top results by rerank_score and authority, then call Fetch on two or three URLs.
  • Freshness: add after: with a date when the user asks about recent events, and surface the date field in citations.
  • Better intent: rewrite the user’s question into a short keyword query and send the original as ori_question.

Limitations: queries are capped at 128 characters, results at 50 per call, and Fetch returns text only as Markdown.

Frequently asked questions

What is the DeepSeek Search API?

It is a raw JSON endpoint, POST https://api.deepseek.com/v1/tools/search, that returns structured web results from DeepSeek’s in-house search engine. Each result includes a title, URL, short snippet, longer model-oriented summary, optional page content, date, authority tier and a relevance score.

How much does the DeepSeek Search API cost?

DeepSeek lists $0.75 per 1,000 successful requests for Search and the same price for Fetch. The count parameter does not change the price, and failed requests, empty results and timeouts are not billed.

Do I need a separate API key for Search and Fetch?

No. Both use the same bearer authentication as the DeepSeek model API, so you send your existing DeepSeek API key in the Authorization header with a JSON content type.

Are Search and Fetch calls from Claude Code or Codex still free?

No longer. DeepSeek says server-side Search and Fetch calls made through DeepSeek Harness, Claude Code and Codex were free at launch, with per-request billing starting at 00:00 Beijing time on November 1, 2026, which is 16:00 UTC on October 31.

What are the rate limits?

Each account can send 100 Search requests and 25 Fetch requests per second. The limits are separate from each other and from model concurrency limits, and Fetch also has a per-domain limit. Requests over a limit get HTTP 429.

How does it compare with the Perplexity Search API?

Perplexity’s pricing page lists its Search API at $5.00 per 1,000 requests, or $1.00 with Fast Search, and it bills successful requests even when no results come back. DeepSeek charges $0.75 per 1,000 and does not bill empty results.

Sources

Image: DeepSeek logo, by DeepSeek, MIT License, via Wikimedia Commons. Placed on a white background and resized. FreeAnswers is not affiliated with DeepSeek.



Related answers

Leave a Comment