Docker Core

A newer client asked for an API version the connected daemon refuses to serve.

client-version-too-new
MediumContainer Platform

Reviewed for reference consistency: August 11, 2026

A newer client asked for an API version the connected daemon refuses to serve.

What client-version-too-new Means

The client-version-too-new error on the Docker Core indicates a newer client asked for an api version the connected daemon refuses to serve.. This typically occurs due to the cli is newer than the daemon and negotiation is disabled or unavailable.

Docker ships a versioned Engine API and lets client and daemon negotiate the highest version both understand. When negotiation is bypassed, for example through DOCKER_API_VERSION, or the gap predates the daemon's supported band, the daemon rejects the request with an explicit too-new or too-old line naming its bounds.

How to fix client-version-too-new

General informational guidance, not professional advice. Commands can affect your system or data — back up first and proceed at your own risk. FixerCode is an independent reference, not affiliated with any vendor mentioned.

  1. Print both API versions side by side

    Client and server sections report their negotiated API versions; the pair shows whether the ceiling or the floor is the binding side.

    docker version --format '{{.Client.APIVersion}} / {{.Server.APIVersion}}'
  2. Check for a pinned API override

    An exported DOCKER_API_VERSION disables negotiation and forces the stated version for every command in the session.

    printenv DOCKER_API_VERSION

Technical Background

The Engine API is versioned independently of the Docker release: each engine advertises a maximum and minimum API version, and compatible clients downgrade automatically within that band.

Rejection only surfaces when the automatic downgrade cannot bridge the gap, either because a variable forces a specific version or because the client's floor sits above the daemon's ceiling. The version matrix in the API reference documents which release pairs carry which bounds.

Common Causes

  • The CLI is newer than the daemon and negotiation is disabled or unavailable
  • DOCKER_API_VERSION pins a version above the daemon's maximum
  • The engine runs a long-term support release whose API ceiling predates the client

Typical Scenarios

  • A freshly updated CLI on a developer machine talking to an older engine on a build server
  • A pinned DOCKER_API_VERSION left over from a debugging session
  • A third-party tool bundling its own client build with a newer API floor than the host engine

What to Know

docker version prints the negotiated API number for both sides side by side; a mismatch between the client's API line and the daemon's maximum explains the refusal without touching any container state.

Frequently Asked Questions

Common questions about Docker client-version-too-new error

Yes. Daemons raised their minimum supported version over time, so a very old client is rejected with the mirrored too-old wording.

No. The failure happens before any request is executed; aligning versions only restores the transport between client and daemon.

Related Error Codes

Related Errors From Other Categories

Similar error codes documented across different platforms and systems