Skip to content

Backward compatibility

A new version continues supporting agreed existing usage without requiring changes to existing consumers.

Software architecture

Preserve existing usage

Backward compatibility means a new version continues enabling previously supported usage within the agreed contract. Scope and direction matter: an old client should work with the new provider. The reverse direction does not follow automatically.

In a fictional example, a job API still supplies orderId with the same agreed type and meaning. An additional field can be compatible if existing consumers accept unknown fields under the contract. A strict consumer might otherwise fail. Also check required inputs, error responses and behaviour. One passing test or an unchanged URL does not prove complete compatibility.

Sources