Properties Alpha

Define and manage properties in your Data Catalog project using YAML configuration files.
Available Plans
  • free
  • starter
  • growth
  • enterprise

Properties provide context to your events by capturing additional attributes and metadata. This guide shows you how to define and manage properties in your Data Catalog using YAML configuration files.

Property types

RudderStack supports the following property types in your Data Catalog:

Property typeDescription
StringText values
Integer/NumberNumber values
BooleanTrue/False values
ArrayLists of values
ObjectNested structures
Custom TypesUser-defined types with specific validation rules

Define properties

Using your preferred text editor, create a YAML file in your Data Catalog project and add the below content:

Basic structure

You can define properties in YAML files with the kind: properties specification. See Data Catalog YAML Reference for the detailed YAML spec containing property definitions.

version: rudder/v0.1
kind: properties
metadata:
  name: mypropertygroup
spec:
  properties:
    - id: user_email
      name: "Email"
      type: string
      description: "User's email address"

Each property definition requires:

  • A unique identifier (id)
  • A property name (name)
  • A data type (type)
  • Optional description (description) and validation rules

The following snippets highlight the YAML definitions for different property types:

Property groups

You can group related properties in a single YAML file based on business context (like user profiles or product details) or other logical categories. Define each group with a unique metadata.name and list related properties under spec.properties.

info

When defining property groups, ensure that:

  • Properties in the same group share similar validation requirements
  • Related properties that are often used together in tracking plans are grouped together
  • Each property group has a clear, specific purpose (for example, user_properties for user-related attributes)

The following examples show how to organize properties into meaningful groups:

Best practices

Follow these best practices when defining properties and property groups:

  • Naming conventions

    • Use clear, descriptive names
    • Follow consistent casing
    • Use meaningful prefixes for grouping
  • Organization

    • Use property groups to group related properties together
    • Use meaningful names that reflect the group’s purpose
  • Validation

    • Add meaningful constraints
    • Document validation requirements
    • Test edge cases

Validate and deploy properties

Before deploying your properties to the workspace, validate them to ensure they follow the correct structure and meet your requirements.

Validate properties

Run the following command to validate your property definitions:

rudder-cli tp validate -l ~/tutorial-catalog

The command checks your property definitions for:

  • Required fields and correct structure
  • Valid property types and validation rules
  • Unique identifiers across your catalog
  • Proper YAML syntax

If validation succeeds, the command returns no output. If it finds any issues, it displays specific error messages to help you fix them.

Deploy properties

After validating your properties, deploy them to your RudderStack workspace:

  1. Review the changes before deploying:
rudder-cli tp apply -l ~/tutorial-catalog --dry-run
  1. Deploy the validated properties:
rudder-cli tp apply -l ~/tutorial-catalog

The above command:

  • Creates new properties in your workspace
  • Updates existing properties if you’ve modified them
  • Reports the status of each operation
  • Requires confirmation before making changes (unless you use --confirm=false)
info
See the End-to-end Walkthrough for steps on validating and deploying properties along with other Data Catalog resources.

Next steps



Questions? Contact us by email or on Slack