
DeepSeek search and fetch – $0.75 per 1000 successful requests
DeepSeek Search & Fetch are two JSON APIs for agents and RAG apps. Search (/v1/tools/search) returns structured results from DeepSeek's in-house engine, with count, need_content and operators such as site:, lang: and after:. Fetch (/v1/tools/fetch) returns a page as Markdown. Both use bearer auth, bill only successful requests ($0.75 per 1000), and have account-level QPS limits. Calls from DeepSeek Harness, Claude Code or Codex are free until 1 November 2026.
How to use it
Both endpoints take POST requests at https://api.deepseek.com with the standard DeepSeek API key as a bearer token and a JSON body. Unknown fields in the request body are ignored, so typos fail silently rather than erroring.
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
}'count accepts 1 to 50. The query string passes through with its search syntax intact, and operators combine with OR, for example "DeepSeek site:github.com OR site:huggingface.co lang:en after:2025". Each search result carries rerank_score, title, url, snippet, a generated summary, content (when need_content is set), site_name, site_icon, an ISO 8601 date and an integer authority. A search with no matches returns HTTP 200 with an empty results array.
Fetch takes only a url and returns {"title": ..., "content": ...}, with the content 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"
}'Errors use the OpenAI-compatible format, with param always null. The documented retry policy is to wait and retry on 408, 429 and 5xx, top up the account on 402, and not retry any other 4xx without changing the request.
Billing is per successful request, not per token or per result. A call is billable only when it returns HTTP 200 with a non-empty result array (Search) or page content (Fetch). Empty searches, failures and timeouts cost nothing, and count does not change the price, so requesting 50 results costs the same as 1. Server-side tool calls made through DeepSeek Harness, Claude Code or Codex already go through these APIs. Billing for those starts at 00:00 Beijing time on 1 November 2026.
Limits
QPS limits apply per account across all API keys. Search and Fetch have separate quotas, and both are separate from model concurrency limits. Fetch also has a per-domain QPS limit, so crawling many pages from one site returns HTTP 429 even when the account has spare quota. The page does not show the actual QPS figures in its text. Fetch results depend on the target site's availability and access policies, and the page does not say whether it handles paywalls, JavaScript-rendered pages or robots.txt. The full request and response schemas sit in separate API reference pages that are not included here.
Organisations named here
- DeepSeek
- Claude Code
Technologies named here
- DeepSeek Search API
- DeepSeek V4
- DeepSeek Fetch API
- DeepSeek API
- DeepSeek Harness
- Claude Code
- Codex
- DeepSeek
- Python
- RAG
Techniques named here
- Live web access for agents and RAG
- Search query operators
Related in llm-apps