DeepSeek Retires deepseek-chat and deepseek-reasoner on July 24: What Its Anthropic API Keeps, Maps, and Drops

Last updated: July 16, 2026

At 15:59 UTC on 24 July 2026, DeepSeek retires two API model names, deepseek-chat and deepseek-reasoner. Since 24 April 2026 both names have resolved to deepseek-v4-flash, in non-thinking and thinking mode. If either name is in your code, a gateway, or a Claude Code setup, move to an explicit V4 model and check which Anthropic fields your workflow depends on.

Verdict

Replace the two legacy names before the deadline, and treat DeepSeek’s Anthropic endpoint as a documented compatibility layer, not a drop-in.

1Swap deepseek-chat and deepseek-reasoner for an explicit deepseek-v4-flash or deepseek-v4-pro before 24 July.
2Choose Flash or Pro on purpose. deepseek-reasoner maps to Flash, not V4-Pro, so Pro is an upgrade you budget for.
3Run a field-level and workflow regression test before cutover. A request that succeeds does not confirm the model, controls, and features you asked for.
What happened

DeepSeek is retiring two legacy API names on 24 July 2026 at 15:59 UTC. The models behind them already changed on 24 April 2026, when both were repointed to deepseek-v4-flash. The current explicit IDs are not on the retirement notice.

Deadline24 Jul 2026, 15:59 UTC (00:59 JST, 25 Jul)
Current mappingdeepseek-chat → V4-Flash non-thinking; deepseek-reasoner → V4-Flash thinking
In effect since24 Apr 2026
Anthropic endpointapi.deepseek.com/anthropic
Does this affect you?
You are affected if you:
  • Call deepseek-chat or deepseek-reasoner through any endpoint
  • Point Claude Code, a gateway, or a wrapper at DeepSeek’s Anthropic endpoint
  • Log only the alias name in evaluations or incident reports
  • Depend on Anthropic fields such as caching, MCP, image or document input, or version headers
Not for you if you want
  • A general V4 quality review or benchmark scores
  • A China-data-residency or compliance assessment
  • The exact HTTP error the old names return after the deadline (not yet knowable)
  • A measured cost figure for thinking mode
What you can move to
  • deepseek-v4-flash, thinking disabled: replaces deepseek-chat
  • deepseek-v4-flash, thinking enabled: closest current match for deepseek-reasoner
  • deepseek-v4-pro: a deliberate upgrade, different price
  • Stay on your original Anthropic endpoint
What the old names do after the deadline is not documented and not tested here.

The deadline and the current mapping

DeepSeek states that deepseek-chat and deepseek-reasoner become “fully retired and inaccessible after Jul 24th, 2026, 15:59 (UTC Time)”. In local time that is 00:59 JST on 25 July. The pricing page and the change log carry the same deadline.

The current mapping is documented: deepseek-chat serves deepseek-v4-flash in non-thinking mode, and deepseek-reasoner serves deepseek-v4-flash in thinking mode. The retirement notice is attached to the two aliases. It does not name the explicit IDs deepseek-v4-flash and deepseek-v4-pro, which remain on the current pricing page. V4 is still a Preview release with open weights, so no lifecycle commitment for the explicit IDs appears on the cited pages. Read the notice as covering the names, not the models.

DeepSeek V4 API cutover: the explicit IDs deepseek-v4-pro and deepseek-v4-flash continue, while the legacy aliases deepseek-chat and deepseek-reasoner route to V4-Flash and retire on 24 July 2026, 15:59 UTC.
The 1M capacity upgrade ships with a deadline. Explicit V4 model IDs are durable; the legacy aliases route to V4-Flash today and are scheduled to become inaccessible after July 24. Replace the names in code and config before the cutoff.

The aliases already changed on April 24

The model behind the alias changed months before the deadline. DeepSeek’s change log, dated 24 April 2026, records that from that day deepseek-chat points to deepseek-v4-flash non-thinking and deepseek-reasoner points to deepseek-v4-flash thinking. If you have called either name since late April, you have been served V4-Flash.

The same change log shows the aliases changed repeatedly before that. Both names moved to V3.2 on 1 December 2025, and to earlier V3.1 and R1 builds before then. The operational risk is model identity. A record that says only “we evaluated deepseek-reasoner” does not show which base model served the request unless it also stores the request date and the mapping that applied at the time.

For future evaluations and incident reports, log the explicit model ID, the thinking mode, the request timestamp, the parameters you set, and the model the client returns where it is available. Do not use a generic alias as the only model identifier.

Why deepseek-reasoner is not V4-Pro

deepseek-reasoner maps to deepseek-v4-flash in thinking mode, not to deepseek-v4-pro. No official page routes the alias to Pro. Moving from deepseek-reasoner to deepseek-v4-pro therefore changes the model tier and the price, not only the name.

The replacement decision has three options: deepseek-v4-flash with thinking enabled preserves the current documented mapping; deepseek-v4-flash with thinking disabled replaces deepseek-chat; deepseek-v4-pro is an intentional upgrade you budget and test separately. DeepSeek describes V4-Flash reasoning as close to V4-Pro, but that is a vendor statement, not an FSR result, and FSR did not benchmark either model for this briefing.

Comparison of DeepSeek V4-Pro (1.6T total, 49B active) and V4-Flash (284B total, 13B active), both with a 1M context window and thinking and non-thinking modes.
Same 1M context, different scale. V4-Pro is DeepSeek’s higher-capability tier; V4-Flash is the speed-and-cost tier that DeepSeek says approaches Pro on reasoning. Official sizes and positioning; FSR did not benchmark either model.

Model mapping on the Anthropic endpoint

DeepSeek exposes an Anthropic-format endpoint at https://api.deepseek.com/anthropic and publishes an Anthropic SDK example that uses an explicit DeepSeek model ID. It documents automatic mapping for Claude-prefixed names: names beginning with claude-opus map to deepseek-v4-pro, and names beginning with claude-sonnet or claude-haiku map to deepseek-v4-flash. An unsupported model name is mapped to deepseek-v4-flash rather than rejected.

That rule matters for observability. A request can name a Claude model while DeepSeek serves a DeepSeek model chosen by prefix, and an unsupported name does not fail closed, because the documented behavior is a fallback to Flash. The documentation does not establish how each client displays the model that actually ran, and FSR did not test whether a given SDK, gateway, or agent surfaces the returned model. Treat the mapping as documented and client visibility as untested, and log the returned model rather than trusting the name you sent.

Supported, ignored, and not supported

“Anthropic compatible” is not one property. DeepSeek’s compatibility page sorts Anthropic fields into three documented states. These are documentation labels. FSR did not send these requests, so the status code and response body each field produces are not tested here.

DeepSeek Anthropic API compatibility: Claude model names map to DeepSeek models, and Anthropic fields are grouped as supported, partial or ignored, and not supported, so an accepted request does not guarantee feature parity.
Anthropic-compatible is not Anthropic-equivalent. DeepSeek maps Claude model names and sorts Anthropic fields into supported, ignored, and unsupported. A successful request does not prove parity, so test the exact production payload field by field. Request-handling status only; parity not tested by FSR.
Documented stateAnthropic fields (from DeepSeek’s table)FSR runtime testWhat it means for you
Fully supportedmax_tokens, system, stream, stop_sequences, temperature, top_p, x-api-key, tool name/input_schema/description, text and tool_use and tool_result content, thinking, server tool use, web search tool resultNot testedAccepted and documented as honored. See the default-thinking caveat below for temperature and top_p.
Ignoredanthropic-version, anthropic-beta, service_tier, top_k, cache_control (all placements), citations, tool_result.is_error, disable_parallel_tool_use, thinking.budget_tokens, mcp_servers, container, all metadata except user_idNot testedDeepSeek documents these as ignored. A control you set may not take effect, and the docs do not state a uniform error for each.
Not supportedimage, document, search_result, redacted_thinking, code_execution_tool_result, mcp_tool_use, mcp_tool_result, container_uploadNot testedDeepSeek lists these content blocks as not supported. The docs do not establish one uniform runtime response for every block.

Source: DeepSeek Anthropic API compatibility page, checked 16 July 2026. States are documentation labels, not FSR runtime results, and should be re-checked against the live page before cutover.

Two distinctions matter. First, mcp_servers and container at the top level are documented as ignored, while the MCP and container content blocks are documented as not supported. So “MCP does not work” is too blunt: DeepSeek’s API-native MCP fields are ignored or unsupported, and whether Claude Code‘s own client-side MCP still works through generic tool translation is a separate question FSR did not test. Second, the ignored headers anthropic-version and anthropic-beta mean a request can be accepted without carrying the versioned feature contract the client selected. That is an inference from the ignored status, not a tested outcome, and it reaches further than any single missing feature.

Thinking, effort, tool loops, and cost

Thinking mode is enabled by default. Effort defaults to high for ordinary requests, and DeepSeek states that some complex agent requests, including Claude Code and OpenCode, are set automatically to max. Its own Claude Code configuration sets CLAUDE_CODE_EFFORT_LEVEL=max. Two effort levels are effectively in play: low and medium map to high, and xhigh maps to max.

Default thinking changes the meaning of two supported parameters. DeepSeek states that temperature, top_p, presence_penalty, and frequency_penalty have no effect in thinking mode and raise no error when supplied. Because thinking is on by default, temperature and top_p can be listed as supported on the Anthropic endpoint while doing nothing under the default mode. Set the thinking toggle deliberately rather than assuming a supported parameter changed the output.

Thinking with tool calls adds a state requirement. When a turn includes tool calls, DeepSeek requires the prior reasoning_content to be returned in later requests, and states that incorrect replay produces a 400 error. Gateways and custom clients need to preserve that content across turns.

Two cost surfaces are documented but not quantified. Web search in Claude Code runs an extra model request to summarize results, which adds token cost, and automatic max effort can change the amount of billed output. DeepSeek publishes no figure for either, and FSR did not measure them. Treat thinking as a setting that can change billed output, and treat any specific multiplier as unproven until someone runs the workload.

Current list price, checked 16 July 2026 (per 1M tokens)
 deepseek-v4-flashdeepseek-v4-pro
Input, cache hit$0.0028$0.003625
Input, cache miss$0.14$0.435
Output$0.28$0.87
Context / max output1M / 384K1M / 384K

Source: DeepSeek Models and Pricing, checked 16 July 2026. DeepSeek reserves the right to change prices. The cache-hit rate confirms DeepSeek runs its own context cache, even though the Anthropic cache_control field is documented as ignored. Explicit cache placement is what is not honored, not caching itself.

What we cannot confirm until July 24

DeepSeek says the aliases become inaccessible after the deadline. Separately, its Anthropic documentation says an unsupported model name is mapped to deepseek-v4-flash. The documentation does not state which rule applies when a retired alias reaches the Anthropic endpoint after retirement. A retired name could be rejected, or it could be treated as an unknown name and rerouted to Flash. No cited page resolves this.

That single unknown changes the migration response, so this briefing does not guess it. “Your calls will error” and “your calls may keep running on Flash” need opposite handling. The behavior can only be settled by sending both names to the OpenAI and Anthropic endpoints after 24 July 2026 15:59 UTC. Until then it is marked not tested. The reliable move is to replace the names before the deadline so the question does not apply to you.

Migration and regression checklist

Before 24 July 2026
  1. Search your codebase, CI/CD variables, agent configs, and gateways for deepseek-chat and deepseek-reasoner.
  2. Replace each with an explicit deepseek-v4-flash or deepseek-v4-pro, not another generic alias. Decide whether deepseek-reasoner becomes V4-Flash thinking (like-for-like) or V4-Pro (an upgrade with a different price).
  3. Audit every Anthropic field you rely on against the table above, and treat ignored fields as possibly dropped. Pay attention to anthropic-version, anthropic-beta, cache_control, and service_tier.
  4. Set thinking mode deliberately. temperature and top_p do nothing under the default thinking mode.
  5. Keep a rollback path to your original Anthropic endpoint.
Regression test on your own workflow before cutover
  • Confirm the returned or logged model identity matches what you requested.
  • Exercise every required Anthropic field and content block.
  • Run a full multi-turn tool-call loop that replays reasoning_content.
  • Check cache-hit reporting, output limits, and cost attribution.
  • For Claude Code, verify that deepseek-v4-pro[1m] behaves as expected. DeepSeek uses that form only in its Claude Code configuration, its raw API examples use the unsuffixed ID, and FSR did not test the suffixed form outside Claude Code.

FAQ

Will DeepSeek V4 stop working on July 24?

No. Only the names deepseek-chat and deepseek-reasoner retire. The explicit IDs deepseek-v4-flash and deepseek-v4-pro remain on the current pricing page. V4 is still a Preview release, so the pages carry no lifecycle commitment for the IDs, but the retirement notice names the aliases, not the models.

Does deepseek-reasoner become V4-Pro?

No. It maps to deepseek-v4-flash in thinking mode. Moving to deepseek-v4-pro is a tier change and a price change you choose, not a rename you inherit. No official page routes deepseek-reasoner to Pro.

What happens if I send an unknown Claude model name?

On the Anthropic endpoint DeepSeek maps a valid unknown name to deepseek-v4-flash instead of rejecting it. A response does not confirm the model you intended, so log the returned model. Whether a given client shows you the mapping was not tested by FSR.

Will my temperature setting work?

Not by default. Thinking mode is enabled by default, and temperature and top_p have no effect in thinking mode, even though the compatibility table lists them as supported. Disable thinking first if you need sampling control, then confirm the behavior.

Is prompt caching available on the Anthropic endpoint?

DeepSeek runs its own context cache, which is why a cache-hit price exists, but the Anthropic cache_control field is documented as ignored. You keep automatic caching and lose explicit cache placement.

What exactly happens to the old names after the deadline?

DeepSeek says they become inaccessible. Whether the endpoint rejects them or treats them as unknown names and reroutes them to Flash is not documented, and FSR did not test it. Replace the names before the deadline so the answer does not affect you.

Methodology, sources, and verdict

This is a Tier C document-first briefing. FSR did not install, run, purchase, or benchmark DeepSeek for this piece. Every claim comes from DeepSeek’s official pages, opened and recorded on 16 July 2026. Prices, effort behavior, and Preview status are volatile and stamped with the check date. Two items are left open because documentation cannot settle them: the exact behavior of the retired names after the deadline, and the real cost impact of default thinking. Both are marked not tested and are candidates for a hands-on follow-up after the deadline.

Sources (all official DeepSeek, accessed 16 July 2026)
  1. DeepSeek-V4 Preview Release — api-docs.deepseek.com/news/news260424
  2. Change Log — api-docs.deepseek.com/updates
  3. Anthropic API compatibility — api-docs.deepseek.com/guides/anthropic_api
  4. Models & Pricing — api-docs.deepseek.com/quick_start/pricing
  5. Thinking Mode — api-docs.deepseek.com/guides/thinking_mode
  6. Integrate with Claude Code — api-docs.deepseek.com/quick_start/agent_integrations/claude_code

The retirement is a naming change on a fixed date. The work is in the compatibility layer. DeepSeek documents an Anthropic-format endpoint, a Claude Code configuration, and a clear model-mapping and field-support table, which makes the swap low-friction to start. It also maps model names, ignores several controls, does not support several content blocks, and makes two supported sampling parameters inert under the default thinking mode. Replace the legacy names before 24 July, choose deepseek-reasoner‘s successor deliberately, run a workload regression test before cutover, and re-check the post-deadline behavior after the deadline. A request that is accepted is not proof that the model, the controls, and the features you asked for all ran.