# Classifications

Classifications in Paradime are powered by dbt™'s `meta` configuration, which allows you to add custom metadata to your [models](#model-level-classifications), [columns](#column-level-classifications), sources, and other dbt™ resources. All classifications must be defined within the `meta` config block in your dbt™ YAML files. These classifications appear in the Paradime catalog as searchable and filterable metadata, helping with data governance and asset discovery.

***

### Legacy vs Modern Syntax

{% hint style="warning" %}
**Important**: dbt™ 1.10+ requires `meta` configurations to be nested within `config` blocks. The legacy syntax shown below is deprecated and will be removed in future versions.
{% endhint %}

**Deprecated (will be removed in future dbt™ versions):**

```yaml
models:
  - name: my_model
    meta:                    # Direct meta placement - deprecated
      classification: "restricted"
    columns:
      - name: my_column
        meta:                # Direct meta placement - deprecated
          pii: true
```

#### Current (dbt™ 1.10+ compatible):

```yaml
models:
  - name: my_model
    config:
      meta:                  # ✅ Meta nested in config block
        classification: "restricted"
    columns:
      - name: my_column
        config:
          meta:              # ✅ Meta nested in config block
            pii: true
```

***

### How Classifications Appear in Paradime

Once you've added `meta` configurations to your dbt™ files, they appear in two key places in the Paradime catalog:

#### 1. Search and Filter Bar

At the top of the catalog home screen, click the **Classification** dropdown to search and filter by any custom metadata you've added. This allows you to quickly find assets with specific classification values like sensitivity levels, data domains, or ownership information.

<figure><img src="https://2337193041-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHET0AD04uHMgdeLAjptq%2Fuploads%2F1FCCm82w5OfwhzgKatOE%2Fimage.png?alt=media&#x26;token=900d2969-5352-4e54-b6a5-4dbc72d69c20" alt=""><figcaption></figcaption></figure>

#### 2. Asset Details Panel

When viewing any data asset, classifications appear in the right-side panel under the **Classification** section. This displays all the meta key-value pairs you've defined, such as:

* `is_sensitive: true`
* `owner: John`
* Any other custom metadata you've configured

<figure><img src="https://2337193041-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHET0AD04uHMgdeLAjptq%2Fuploads%2FufK3vDbl6nXC1jDu3l89%2Fimage.png?alt=media&#x26;token=90137bf0-9011-4e6e-b2a1-dcf84c3e763a" alt=""><figcaption></figcaption></figure>

***

### Where to Set Classifications

Classifications are always defined within the `meta` configuration block at two levels in your dbt™ project:

#### Model Level Classifications

Add classifications to entire models using the `meta` config block in your properties file:

```yaml
models:
  - name: customer_orders
    description: "Customer order data with purchase history"
    config:
      meta:                  # Meta nested in config block
        classification: "restricted"
        data_domain: "sales"
        owner: "analytics-team"
        pii_contains: true
    columns:
      - name: customer_id
        description: "Unique customer identifier"
      - name: order_total
        description: "Total order amount"
```

#### Column Level Classifications

Add classifications to specific columns using the `meta` config block within column definitions:

```yaml
models:
  - name: customer_orders
    description: "Customer order data with purchase history"
    columns:
      - name: customer_id
        description: "Unique customer identifier"
        config:
          meta:                  # Meta nested in config block
            classification: "public"
            pii: false
      - name: customer_email
        description: "Customer email address"
        config:
          meta:                  # Meta nested in config block
            classification: "restricted"
            pii: true
            retention_period: "7_years"
      - name: order_total
        description: "Total order amount"
        config:
          meta:                  # Meta nested in config block
            classification: "internal"
            currency: "USD"
```

***

### Common Classification Examples

Here are some typical classification patterns teams use within the `meta` config block:

#### Data Sensitivity Levels

```yaml
models:
  - name: my_model
    config:
      meta:                  # Meta nested in config block
        classification: "public"      # Safe for wide access
        # OR
        classification: "internal"    # Company employees only
        # OR
        classification: "restricted"  # Limited access required
        # OR
        classification: "confidential" # Highly sensitive data
```

#### Data Domains

```yaml
models:
  - name: my_model
    config:
      meta:                  # Meta nested in config block
        data_domain: "finance"
        # OR
        data_domain: "marketing"
        # OR
        data_domain: "product"
        # OR
        data_domain: "operations"
```

#### Data Governance

```yaml
models:
  - name: my_model
    config:
      meta:                  # Meta nested in config block
        owner: "data-engineering"
        pii_contains: true
        retention_period: "5_years"
        compliance_requirement: "gdpr"
```

***

{% hint style="info" %}

### Best Practices

1. **Be Consistent**: Use standardized classification values across your project
2. **Document Standards**: Define what each classification level means for your organization
3. **Use Meaningful Keys**: Choose descriptive meta keys that make sense to your team
4. **Combine Classifications**: Use multiple meta fields to provide rich context
   {% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.paradime.io/app-help/documentation/data-catalog/data-assets/dbt-assets/classifications.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
