Put Data Under Contract

A data contract specifies a data product's output port — it is what turns raw data into something consumers can trust. There are several ways to create one; pick the path that matches what you already have.

PathBest when…
From an assetThe data already exists in a connected platform.
By hand in the editorYou are modelling new or planned data.
On an output portYou are building a data product and need a contract for one of its ports.
By importYou already have the schema in an Excel sheet or a Git repository.
As codeYou work in an engineering workflow (CLI, API, MCP, or a coding agent).

However you create it, the result is an ODCS contract that you then edit, add data quality rules to, and test.

From an asset

Generate a contract from an asset and Entropy Data derives the schema from its structure — the fastest start when the data already exists.

In Governance → Assets, open the asset you want to expose and click Create Data Contract. On the next screen, choose the data product to attach it to, adjust the properties, and click Create.

Create a data contract from an asset

A table asset produces a contract with one model containing all its columns. A schema asset produces a contract with multiple models — one for each child table that has columns. Remove any models you do not want to expose.

A generated data contract with multiple models

By hand in the editor

To model a contract yourself, go to Studio → Data Contracts and choose Add Data Contract. This opens the Data Contract Editor with a blank contract, where you fill in the fundamentals, schema, and terms of use.

On an output port

While building a data product, attach a contract directly to one of its output ports: on the data product, choose Add Data Contract… on the port. See Create a data product.

By import

From the Add Data Contract menu you can also Import from Excel or Import from Git — start from a spreadsheet, or from a contract already kept in a repository.

As code

For engineering workflows, create and manage contracts programmatically:

  • Data Contract CLI — import a contract from a source and publish it to Entropy Data.
  • REST API and MCP — create or update contracts from your own tooling or an AI assistant.
  • Build with an AI agent — have a coding agent generate the contract with a Data Product Builder.

Next steps