A data contract is an explicitly defined API spec that captures the schema and semantics of an asset. When paired with an enforcement mechanism, data contracts become a powerful tool in preventing unexpected changes to crucial downstream data assets.

Data Contracts and Gable

Using Gable’s platform, you will be able to write your first data contract and set up the Gable CLI to publish it to Gable. After creating a data contract, you can use Gable’s CLI to deploy checks that compare the schema of an asset with proposed changes in CI/CD. If there are any breaking changes that affect downstream contracts, Gable can post a Github message in the offending PR, notifying data producers of the contract they are going to affect with their change. We can also alert consumers when a backwards incompatible change is made, allowing downstream teams to either advocate or adjust before something goes wrong.