Skip to main content

Transformations

Define reusable transformations that can be attached to flows (CDC conversion, row filtering, JSON parsing, data masking, vector embedding, etc.).

Methods

MethodDescription
create_transformationCreate a new transformation
delete_transformationDelete a transformation
describe_transformationShow full configuration for a transformation
show_transformationsList all transformations in the project

create_transformation

create_transformation(
name: str,
*,
type: str,
options: Mapping[str, str] | None = None,
unsafe_raw: bool = False,
timeout: float | None = None,
poll_interval: float | None = None,
)
ParameterRequiredType / values
nameyesstr
typeyes"CONVERT_CDC", "ROW_FILTERING", "DERIVED_DATE", "ADD_CURRENT_TIMESTAMP", "USER_PROVIDED", "DATA_MASKING", "L_PARSE_JSON", "FLATTEN_STRUCT", "EXPLODE_ARRAY", "VECTOR_EMBEDDING"
optionsnoMapping[str, str] — transformation-specific config

Examples

# Row-level filter
client.create_transformation(
"drop_test_rows",
type="ROW_FILTERING",
options={"filter.expression": "is_test = false"},
)

# Derived date column
client.create_transformation(
"event_date",
type="DERIVED_DATE",
options={"source.field": "event_ts", "target.field": "event_date"},
)

delete_transformation

delete_transformation(name: str, *, unsafe_raw=False, timeout=None, poll_interval=None)

Example

client.delete_transformation("drop_test_rows")

describe_transformation

describe_transformation(name: str, *, unsafe_raw=False, timeout=None, poll_interval=None)

Example

result = client.describe_transformation("drop_test_rows")

show_transformations

show_transformations(*, timeout=None, poll_interval=None)

Example

result = client.show_transformations()