> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kadoa.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Define Schema

> Set up data schemas when creating workflows in the UI

Every Kadoa workflow has a **Data Schema** that defines what data to extract from a source.

When you create a workflow with the [Kadoa Assistant](/docs/ui/getting-started), it builds the schema for you, and you can review and customize it in the **Schema** panel. For an overview of schemas and available data types, see [Schemas](/docs/workflows/schemas).

<img noZoom src="https://mintcdn.com/kadoa/vSlRUAnAzL74Ur7q/images/assistant/schema.png?fit=max&auto=format&n=vSlRUAnAzL74Ur7q&q=85&s=2f6962969494b74b98f09dc1ae78c6d4" alt="The Schema panel showing the entity name and extracted fields, with key-field and JSON editor controls" width="1083" height="779" data-path="images/assistant/schema.png" />

## How the schema is created

* **If you name the fields in your prompt** (for example, "extract title, price, and rating"), the Assistant uses exactly those.
* **If you don't**, the Assistant recommends fields based on the source.

Either way, you can adjust everything before you approve.

## Edit the fields

Add, rename, or remove fields in the visual editor, or switch to **JSON** mode for bulk editing. Mark fields as **key fields** to improve record matching and data quality.

Tip: mark scalar `STRING`, `NUMBER`, or `LINK` fields expected to be unique and non-empty as key fields. In JSON, set `isKey: true`. Learn more in [Data Quality](/docs/ui/data-quality).

## Use an existing schema

Instead of starting fresh, you can base the schema on:

* **Your schemas**: schemas you have created before.
* **Kadoa schemas**: pre-built schemas for common use cases.

Customize any selected schema by adding, removing, or renaming fields.

<Info>
  If your workflow uses a [template](/docs/ui/templates), its schema is managed by the template. Edit it through the template instead of here.
</Info>

## Reuse a schema across workflows

To reuse the same schema across multiple workflows, save it in a [template](/docs/ui/templates). A template packages a prompt, schema, data quality rules, and notification settings into a reusable, versioned unit.

1. Open [Templates](https://www.kadoa.com/templates) and click **Create template**
2. Define your fields in the **Schema** tab, or save an existing workflow's schema as a template
3. When you create a workflow, choose the template to pre-fill its schema

Updating the template's schema and publishing a new version rolls the change out to every linked workflow.
