---
title: Provisioning
description: Plan the DNS changes for a domain, show the customer every create, no-op, and conflict the plan carries, and apply only the operations they approved.
---

`Provision.Flow` is the review step on its own: a trigger that plans, then the review dialog.

<ReactExample story="provision" />

## Usage

<Snippet file="examples/react/catalog.tsx" region="provision" title="The review step" />

## What the customer sees

The dialog lists every operation the plan carries: the creates, the records that already match, and
the conflicts. Approve authorizes the plan's digest and applies it in one action; Decline records a
refusal that closes the attempt for good.

A partial receipt is a normal outcome, not an error. The outcome line says how many records landed
and re-planning turns them into no-ops.

## Parts

| Part                | Renders                                               |
| ------------------- | ----------------------------------------------------- |
| `Provision.Dialog`  | The review surface, with a `render` prop of its own   |
| `Provision.Actions` | Approve and Decline, disabled while a step is running |
| `Provision.Status`  | What the flow is doing right now                      |
| `Provision.Outcome` | The receipt, or the failure                           |

## Composing it yourself

<Snippet file="examples/react/controllers.tsx" region="commands" title="Approve or decline" />
