Skip to content

API change rules

During comparison of API specifications, APIHUB (qubership-apihub-api-diff) classifies each change by severity.

  • Breaking change breaks backward compatibility with the previous version of the API. For example, deleting an operation, adding a required parameter, or changing the type of a parameter are breaking changes.
  • Requires Attention is a change that can break backward compatibility with the previous version of the API, depending on the implementation of a client. This category also includes breaking changes in operations annotated as no-BWC.
  • Deprecating change annotates an operation, parameter, or schema as deprecated. Removing a “deprecated” annotation is also a deprecating change.
  • Non-breaking change does not break backward compatibility with the previous version of the API. For example, adding a new operation or an optional parameter is a non-breaking change.
  • Annotation change enriches the API documentation with information that does not affect the functionality of the API. For example, adding, changing, or deleting descriptions or examples is an annotation change.
  • Unclassified change cannot be classified as any of the other types.

The compatibility suite lists the changes that APIHUB detects in OpenAPI 3.0, OpenAPI 3.1, and GraphQL specifications. Each change has an identifier and a severity, and the example files in frontend/compatibility-suites/bin/ show the specification before and after the change.

The pages follow the order of the old wiki sidebar.