Versioning and breaking changes
Version scheme, breaking-change policy, Beta surfaces and release history.
Scheme#
The SDK follows Semantic Versioning 2.0.0. The changelog follows Keep a Changelog.
| Version part | Changes when |
|---|---|
| Major | A public type, method or behaviour that a caller can depend on is removed or changed incompatibly |
| Minor | Public API is added compatibly, or a Beta surface changes |
| Patch | Defects are fixed with no API change |
Policy for 4.0#
The work after 3.0.0 ships as a new major version, 4.0.0. For that release the owner decided to remove deprecated features and to add no compatibility shims. A method that called an operation the API does not define is deleted without a deprecation period. The upgrade notes list each removal with its replacement.
Several 3.0.0 methods could not succeed against the live service: a wrong host, a request field the service rejects, or an operation with no path. Keeping them would let callers compile code that fails at run time.
Breaking changes#
Breaking, major version only:
- removing or renaming a public class, method or enum constant
- changing a method signature or a return type
- changing default behaviour that callers rely on, for example what is retried, or what a builder sends by default
Not breaking, allowed in a minor or patch release:
- new methods, new overloads, new optional builder steps
- new enum constants. Read-side enums have an
UNKNOWNfallback, and callers should handle it. - reading additional response fields, or an additional response shape
- a fix that makes a request match the specification or the live service, when the previous request was rejected by the service
The last item is a maintainer judgment: a request the service always rejected has no caller whose code worked before the fix.
Beta surfaces#
A type annotated @Beta, and anything this site labels Beta, is exempt from the rules above. It tracks an Equinix API family or a third-party specification that can change without a deprecation period, and it may change in a minor SDK release. The annotation records the specification version the type follows.
Beta in 4.0:
- everything under
fabric.beta() - provider environments, activation-key validation and the
activationKeyandenvironmentaccess-point properties core.model.multicloud, including theActivationKeycodec- native cloud-to-cloud planning and pricing in the design layer, and the two MCP tools for it
Bundled reference data is not covered by the versioning rules either. The reference prices and the multicloud environment catalog are dated copies of public pages, and any release can change their values.
Specification tracking#
| Source | Version tracked in the 4.0 tree |
|---|---|
| Fabric v4 | 4.34.0, read 2026-11-11 |
| Network Edge | network-edgev1 1.0.0 |
| Other Equinix APIs | The catalog at docs.equinix.com/.well-known/api-catalog, 33 specifications |
| Connection Coordinator specification | Commit bbfc763, 2026-09-18 |
| MCP Java SDK | 2.0.0 |
Where the live service and a specification disagree, the SDK follows the live service on the read side, sends what the live service accepts on the write side, and documents the difference.
Release history#
| Version | Date | Summary |
|---|---|---|
| 4.0.0 | In development | Removal of deprecated and non-functional surfaces; fixes from live validation; fabric.beta(); bearer tokens; DesignSpec and the rebuilt optimizer; native cloud-to-cloud planning (Beta) |
| 3.0.0 | 2026-07-26 | Package rename from api.equinix.javasdk to com.eqixiac.equinix; core redesign; MCP client removed and the Intelligence MCP Server added; all nine Fabric dry-run operations; catalog-complete live tier |
| 2.0.1 | 2026-07-01 | Fix for a client initialization failure when the SDK was used from the published jar |
| 2.0.0 | 2026-06-26 | Superseded by 2.0.1 |
| 1.3.0 | 2026-03-25 | See the changelog |
| 1.2.0 | 2026-03-15 | See the changelog |
| 1.1.0 | 2026-02-19 | See the changelog |
| 1.0.0 | 2021-01-01 | First release |
The full text is in CHANGELOG.md.
Support#
One major version is maintained at a time, so 3.x receives no further fixes once 4.0.0 is published. The project offers no paid support and no service-level commitment (About).