Unity Ads SDK API deprecation policy

Important: These guidelines are effective beginning with the release of Unity Ads SDK 4.0.0.

You are encouraged to use the best API set that meets your needs at the time of development. However, Unity encourages all developers to update to the latest SDK version as frequently as possible.

In order to ensure that Unity Ads delivers an optimized and consistent development experience, it must continue to evolve and extend the SDK and its API classes. As we adapt to platform and market changes, API classes become obsolete and need to be replaced by more effective versions.

In the event that Unity Ads intends to remove an API class, or alter it in a manner that breaks the previously supported functionality, Unity will endeavor to:

  • Label the API as deprecated, note the deprecation in the release notes, and (if applicable) update documentation and samples to provide a preferred alternative in the next major or minor release.
  • Remove the deprecated API in a future major release; and
  • Use reasonable efforts to provide no less than three (3) months’ notice of the removal of a deprecated API by using a Deprecation Notice (refer to the section on Notifications).

Exceptions

Exceptions to the aforementioned deprecation guidelines are cases where:

  • Unity Ads must remove an API as a result of a change in applicable law or its rights under contract;
  • Continuing to provide the functionality could create a security, compliance, data privacy or other regulatory risk, or otherwise expose Unity and/or its third party partners and clients to any risk of liability or harm (as determined by Unity in it sole discretion); or
  • Continuing to provide the functionality could create a substantial economic or technical burden to Unity or to its third party partners and clients (including by overburdening, or threatening the integrity, performance or availability of, any underlying Unity services), as determined by Unity in its sole discretion.

Notifications

If an API becomes obsolete, Unity Ads will use reasonable efforts to provide a Deprecation Notice by using one or more of the following:

  • Developer communication(s) to the Unity Ads Monetization dashboard. The post will contain the Deprecation Notice, the alternative API (if available), and the target SDK version for removal;
  • Official technical documentation updates containing the alternative API (if available); or
  • Updates to the SDK changelog in a section that contains links to more detailed information about which classes are being deprecated, applicable replacement classes, and the projected end of life date.

What to expect

Wherever possible, API classes and their supported functionality are maintained in a manner that is compatible with earlier versions. If it is necessary to change something in a way that is not backwards compatible, Unity Ads creates a new resource, media type, or version, and the old resource or media type is maintained in accordance with the API deprecation policy.

Unity Ads will provide the following information for all announced API deprecations:

  • The API to be removed
  • The SDK version that it was deprecated
  • The API to use instead for similar functionality
  • The SDK version that it was (or will be) removed
  • The reason for deprecating it

Changes to these Guidelines

These guidelines are subject to change without notice, and Unity reserves the right to modify its API deprecation process in its sole discretion and at any time.

Definitions and concepts

Deprecation

Deprecated API classes can still be used but are no longer supported moving forward and will be removed in a future release.

Deprecation Notice

Provides advanced notification that an API class will be replaced in an upcoming SDK release. This is a good time for developers to upgrade their code.

Semantic Versioning

The Unity Ads SDK follows semantic versioning standards. API classes will only be removed in major version releases.

API backwards compatibility

Unity tries to provide backward compatibility of all public APIs documented in the API reference. Developers must use the supported APIs listed in the API reference to ensure compatibility.