Step 6 optionally attaches a data contract to each output port to govern what the port delivers. It is the sixth of the wizard’s seven steps, building on the output ports you defined in Step 5 — Ports.

What you set here

This step has two cards. Contracts lists the contract drafts you create, with Add contract draft to add one and row actions to edit or remove it. Coverage holds one picker per output port, where you choose which contract covers that port.

How to attach a contractWhat you do
Add contract draftOpens a dialog. Set the contract’s name and contract ID, both required, plus its version, description, and whether it belongs to this product or its domain.
Reuse an existing contractPick a contract from the product’s domain or an ancestor domain.

Pick exactly one contract per output port, or leave the picker empty to keep the port uncovered. This step is optional — the count shown, for example 0 contracts, reflects what you have added.

The same dialog has an SLA properties section. Add as many name-and-value rows as you need, such as availability or freshness. Each row becomes an SLA property record under the contract. Capture the headline ones here and complete the rest on the contract’s detail page later.

Why it matters

A data contract governs the data delivered through one port — its usage rules, quality, and service-level agreement (SLA) guarantees. It covers what that port delivers, not the product as a whole.

Governance is progressive. Attach a contract when it matters, and complete the full terms later on the contract’s detail page. For the guarantees a contract adds, see Data contracts. For the quality and SLA terms it can carry, see Data quality and SLAs.

Rules the wizard enforces

The wizard enforces these rules as you attach contracts:

  • One contract per port. Each output port can be covered by only one contract. Reuse the same contract across ports that share the same guarantees.
  • What the picker lists. The picker shows contracts from the product’s domain and its ancestor domains, plus any contract drafts you create in this step.
  • Uncovered ports are fine. You can attach a contract anytime later, so leaving a port uncovered is allowed. This step is optional.
  • Publishing activates the contracts. Publishing the product on Step 7 — Review and publish moves the contracts you drafted here to the active state. Save for later leaves them in the workflow’s first state.

Recommendations

These decide whether a contract is worth attaching, and how much to fill in now:

  • Draft a contract when the product is consumed across teams.
  • Reuse one contract across ports that share the same guarantees.
  • Fill in the essentials now, and complete the full governance terms on the contract’s detail page later.

A contract turns a port’s promise into an enforceable guarantee that consumers can rely on. Next, review the product and publish it in Step 7 — Review and publish.