Breaking Changes

Overview

BitGo is committed to ensuring continuous service. However, breaking changes are periodically required and may disrupt existing client integrations. If a breaking change is required, BitGo emails impacted clients in advance, informing about what's changing, why, and how to prepare to ensure minimal service interruption. If possible, BitGo notifies impacted clients 60 days before a breaking change and again on the day of the change.

In addition to email notifications to impacted clients, BitGo communicates breaking changes by publishing Release Notes to the Developer Portal. You can also view API changes, breaking or otherwise, from the api-changelog GitHub repository.

Types of Breaking Changes

BitGo considers the following changes as breaking:

  1. Changing the URI.
  2. Removing (sunsetting) endpoints, input parameters, response fields, or enum values.
  3. Renaming parameters or response fields.
  4. Requiring a version update of the SDK or Express.
  5. Changing the following schema values:
    • Requiring an input parameter that was previously optional.
    • Reducing possible input values by removing parameters or enum values.
    • Reducing possible response values by removing response fields or enum values.
    • Making a response field optional that was previously required.

Non-Breaking Changes

BitGo doesn't consider the following changes as breaking:

  1. Changing the summary.
  2. Changing the description.
  3. Changing the operation ID.
  4. Changing an input parameter from required to optional.
  5. Changing a response field from optional to required.
  6. Adding optional input parameters.
  7. Adding response fields.
  8. Adding enum variants to response values.

Non-breaking changes occur more frequently than breaking changes. The most common type of non-breaking changes are additive changes, such as adding new input parameters, response fields, or enum values. These types of changes enhance the APIs with minimal disruption to existing integrations. BitGo doesn't send email notifications about non-breaking changes.

Best Practices

BitGo recommends configuring your integration to handle new fields and values without breaking. In the event that BitGo does need to deliver a breaking change, follow the instructions in the notification email to prepare your integration for the change.