published on Friday, May 15, 2026 by Pulumi
published on Friday, May 15, 2026 by Pulumi
confluentcloud.FlinkMaterializedTable provides a Flink Materialized Table resource that enables creating, editing, and deleting Flink Materialized Tables on Confluent Cloud.
Note: It is recommended to set
lifecycle { preventDestroy = true }on production instances to prevent accidental Flink Materialized Table deletion. This setting rejects plans that would destroy or recreate the Flink Materialized Table, such as attempting to change uneditable attributes. Read more about it in the Terraform docs.
Example Usage
Option #1: Manage multiple Flink Materialized Tables in the same Pulumi Stack
import * as pulumi from "@pulumi/pulumi";
import * as confluentcloud from "@pulumi/confluentcloud";
const example = new confluentcloud.FlinkMaterializedTable("example", {
organization: {
id: main.id,
},
environment: {
id: staging.id,
},
computePool: {
id: exampleConfluentFlinkComputePool.id,
},
principal: {
id: app_manager_flink.id,
},
restEndpoint: mainConfluentFlinkRegion.restEndpoint,
credentials: {
key: flink.id,
secret: flink.secret,
},
displayName: "my_materialized_table",
kafkaCluster: {
id: basic_cluster.id,
},
query: "SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;",
});
import pulumi
import pulumi_confluentcloud as confluentcloud
example = confluentcloud.FlinkMaterializedTable("example",
organization={
"id": main["id"],
},
environment={
"id": staging["id"],
},
compute_pool={
"id": example_confluent_flink_compute_pool["id"],
},
principal={
"id": app_manager_flink["id"],
},
rest_endpoint=main_confluent_flink_region["restEndpoint"],
credentials={
"key": flink["id"],
"secret": flink["secret"],
},
display_name="my_materialized_table",
kafka_cluster={
"id": basic_cluster["id"],
},
query="SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;")
package main
import (
"github.com/pulumi/pulumi-confluentcloud/sdk/v2/go/confluentcloud"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := confluentcloud.NewFlinkMaterializedTable(ctx, "example", &confluentcloud.FlinkMaterializedTableArgs{
Organization: &confluentcloud.FlinkMaterializedTableOrganizationArgs{
Id: pulumi.Any(main.Id),
},
Environment: &confluentcloud.FlinkMaterializedTableEnvironmentArgs{
Id: pulumi.Any(staging.Id),
},
ComputePool: &confluentcloud.FlinkMaterializedTableComputePoolArgs{
Id: pulumi.Any(exampleConfluentFlinkComputePool.Id),
},
Principal: &confluentcloud.FlinkMaterializedTablePrincipalArgs{
Id: pulumi.Any(app_manager_flink.Id),
},
RestEndpoint: pulumi.Any(mainConfluentFlinkRegion.RestEndpoint),
Credentials: &confluentcloud.FlinkMaterializedTableCredentialsArgs{
Key: pulumi.Any(flink.Id),
Secret: pulumi.Any(flink.Secret),
},
DisplayName: pulumi.String("my_materialized_table"),
KafkaCluster: &confluentcloud.FlinkMaterializedTableKafkaClusterArgs{
Id: pulumi.Any(basic_cluster.Id),
},
Query: pulumi.String("SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;"),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using ConfluentCloud = Pulumi.ConfluentCloud;
return await Deployment.RunAsync(() =>
{
var example = new ConfluentCloud.FlinkMaterializedTable("example", new()
{
Organization = new ConfluentCloud.Inputs.FlinkMaterializedTableOrganizationArgs
{
Id = main.Id,
},
Environment = new ConfluentCloud.Inputs.FlinkMaterializedTableEnvironmentArgs
{
Id = staging.Id,
},
ComputePool = new ConfluentCloud.Inputs.FlinkMaterializedTableComputePoolArgs
{
Id = exampleConfluentFlinkComputePool.Id,
},
Principal = new ConfluentCloud.Inputs.FlinkMaterializedTablePrincipalArgs
{
Id = app_manager_flink.Id,
},
RestEndpoint = mainConfluentFlinkRegion.RestEndpoint,
Credentials = new ConfluentCloud.Inputs.FlinkMaterializedTableCredentialsArgs
{
Key = flink.Id,
Secret = flink.Secret,
},
DisplayName = "my_materialized_table",
KafkaCluster = new ConfluentCloud.Inputs.FlinkMaterializedTableKafkaClusterArgs
{
Id = basic_cluster.Id,
},
Query = "SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.confluentcloud.FlinkMaterializedTable;
import com.pulumi.confluentcloud.FlinkMaterializedTableArgs;
import com.pulumi.confluentcloud.inputs.FlinkMaterializedTableOrganizationArgs;
import com.pulumi.confluentcloud.inputs.FlinkMaterializedTableEnvironmentArgs;
import com.pulumi.confluentcloud.inputs.FlinkMaterializedTableComputePoolArgs;
import com.pulumi.confluentcloud.inputs.FlinkMaterializedTablePrincipalArgs;
import com.pulumi.confluentcloud.inputs.FlinkMaterializedTableCredentialsArgs;
import com.pulumi.confluentcloud.inputs.FlinkMaterializedTableKafkaClusterArgs;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new FlinkMaterializedTable("example", FlinkMaterializedTableArgs.builder()
.organization(FlinkMaterializedTableOrganizationArgs.builder()
.id(main.id())
.build())
.environment(FlinkMaterializedTableEnvironmentArgs.builder()
.id(staging.id())
.build())
.computePool(FlinkMaterializedTableComputePoolArgs.builder()
.id(exampleConfluentFlinkComputePool.id())
.build())
.principal(FlinkMaterializedTablePrincipalArgs.builder()
.id(app_manager_flink.id())
.build())
.restEndpoint(mainConfluentFlinkRegion.restEndpoint())
.credentials(FlinkMaterializedTableCredentialsArgs.builder()
.key(flink.id())
.secret(flink.secret())
.build())
.displayName("my_materialized_table")
.kafkaCluster(FlinkMaterializedTableKafkaClusterArgs.builder()
.id(basic_cluster.id())
.build())
.query("SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;")
.build());
}
}
resources:
example:
type: confluentcloud:FlinkMaterializedTable
properties:
organization:
id: ${main.id}
environment:
id: ${staging.id}
computePool:
id: ${exampleConfluentFlinkComputePool.id}
principal:
id: ${["app-manager-flink"].id}
restEndpoint: ${mainConfluentFlinkRegion.restEndpoint}
credentials:
key: ${flink.id}
secret: ${flink.secret}
displayName: my_materialized_table
kafkaCluster:
id: ${["basic-cluster"].id}
query: SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;
Example coming soon!
Option #2: Manage a single Flink Materialized Table in the same Pulumi Stack
import * as pulumi from "@pulumi/pulumi";
import * as confluentcloud from "@pulumi/confluentcloud";
const example = new confluentcloud.FlinkMaterializedTable("example", {
displayName: "my_materialized_table",
kafkaCluster: {
id: basic_cluster.id,
},
query: "SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;",
});
import pulumi
import pulumi_confluentcloud as confluentcloud
example = confluentcloud.FlinkMaterializedTable("example",
display_name="my_materialized_table",
kafka_cluster={
"id": basic_cluster["id"],
},
query="SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;")
package main
import (
"github.com/pulumi/pulumi-confluentcloud/sdk/v2/go/confluentcloud"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := confluentcloud.NewFlinkMaterializedTable(ctx, "example", &confluentcloud.FlinkMaterializedTableArgs{
DisplayName: pulumi.String("my_materialized_table"),
KafkaCluster: &confluentcloud.FlinkMaterializedTableKafkaClusterArgs{
Id: pulumi.Any(basic_cluster.Id),
},
Query: pulumi.String("SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;"),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using ConfluentCloud = Pulumi.ConfluentCloud;
return await Deployment.RunAsync(() =>
{
var example = new ConfluentCloud.FlinkMaterializedTable("example", new()
{
DisplayName = "my_materialized_table",
KafkaCluster = new ConfluentCloud.Inputs.FlinkMaterializedTableKafkaClusterArgs
{
Id = basic_cluster.Id,
},
Query = "SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.confluentcloud.FlinkMaterializedTable;
import com.pulumi.confluentcloud.FlinkMaterializedTableArgs;
import com.pulumi.confluentcloud.inputs.FlinkMaterializedTableKafkaClusterArgs;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new FlinkMaterializedTable("example", FlinkMaterializedTableArgs.builder()
.displayName("my_materialized_table")
.kafkaCluster(FlinkMaterializedTableKafkaClusterArgs.builder()
.id(basic_cluster.id())
.build())
.query("SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;")
.build());
}
}
resources:
example:
type: confluentcloud:FlinkMaterializedTable
properties:
displayName: my_materialized_table
kafkaCluster:
id: ${["basic-cluster"].id}
query: SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;
Example coming soon!
Stopping and Resuming a Materialized Table
A running Materialized Table can be paused and later resumed by toggling the stopped attribute. The default value is false (running). To stop the table, set stopped = true and run pulumi up; to resume it, set stopped = false (or remove the attribute) and apply again. The Materialized Table is preserved across stop/resume — only its execution is paused.
import * as pulumi from "@pulumi/pulumi";
import * as confluentcloud from "@pulumi/confluentcloud";
const example = new confluentcloud.FlinkMaterializedTable("example", {
organization: {
id: main.id,
},
environment: {
id: staging.id,
},
computePool: {
id: exampleConfluentFlinkComputePool.id,
},
principal: {
id: app_manager_flink.id,
},
restEndpoint: mainConfluentFlinkRegion.restEndpoint,
credentials: {
key: flink.id,
secret: flink.secret,
},
displayName: "my_materialized_table",
kafkaCluster: {
id: basic_cluster.id,
},
query: "SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;",
stopped: false,
});
import pulumi
import pulumi_confluentcloud as confluentcloud
example = confluentcloud.FlinkMaterializedTable("example",
organization={
"id": main["id"],
},
environment={
"id": staging["id"],
},
compute_pool={
"id": example_confluent_flink_compute_pool["id"],
},
principal={
"id": app_manager_flink["id"],
},
rest_endpoint=main_confluent_flink_region["restEndpoint"],
credentials={
"key": flink["id"],
"secret": flink["secret"],
},
display_name="my_materialized_table",
kafka_cluster={
"id": basic_cluster["id"],
},
query="SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;",
stopped=False)
package main
import (
"github.com/pulumi/pulumi-confluentcloud/sdk/v2/go/confluentcloud"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := confluentcloud.NewFlinkMaterializedTable(ctx, "example", &confluentcloud.FlinkMaterializedTableArgs{
Organization: &confluentcloud.FlinkMaterializedTableOrganizationArgs{
Id: pulumi.Any(main.Id),
},
Environment: &confluentcloud.FlinkMaterializedTableEnvironmentArgs{
Id: pulumi.Any(staging.Id),
},
ComputePool: &confluentcloud.FlinkMaterializedTableComputePoolArgs{
Id: pulumi.Any(exampleConfluentFlinkComputePool.Id),
},
Principal: &confluentcloud.FlinkMaterializedTablePrincipalArgs{
Id: pulumi.Any(app_manager_flink.Id),
},
RestEndpoint: pulumi.Any(mainConfluentFlinkRegion.RestEndpoint),
Credentials: &confluentcloud.FlinkMaterializedTableCredentialsArgs{
Key: pulumi.Any(flink.Id),
Secret: pulumi.Any(flink.Secret),
},
DisplayName: pulumi.String("my_materialized_table"),
KafkaCluster: &confluentcloud.FlinkMaterializedTableKafkaClusterArgs{
Id: pulumi.Any(basic_cluster.Id),
},
Query: pulumi.String("SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;"),
Stopped: pulumi.Bool(false),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using ConfluentCloud = Pulumi.ConfluentCloud;
return await Deployment.RunAsync(() =>
{
var example = new ConfluentCloud.FlinkMaterializedTable("example", new()
{
Organization = new ConfluentCloud.Inputs.FlinkMaterializedTableOrganizationArgs
{
Id = main.Id,
},
Environment = new ConfluentCloud.Inputs.FlinkMaterializedTableEnvironmentArgs
{
Id = staging.Id,
},
ComputePool = new ConfluentCloud.Inputs.FlinkMaterializedTableComputePoolArgs
{
Id = exampleConfluentFlinkComputePool.Id,
},
Principal = new ConfluentCloud.Inputs.FlinkMaterializedTablePrincipalArgs
{
Id = app_manager_flink.Id,
},
RestEndpoint = mainConfluentFlinkRegion.RestEndpoint,
Credentials = new ConfluentCloud.Inputs.FlinkMaterializedTableCredentialsArgs
{
Key = flink.Id,
Secret = flink.Secret,
},
DisplayName = "my_materialized_table",
KafkaCluster = new ConfluentCloud.Inputs.FlinkMaterializedTableKafkaClusterArgs
{
Id = basic_cluster.Id,
},
Query = "SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;",
Stopped = false,
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.confluentcloud.FlinkMaterializedTable;
import com.pulumi.confluentcloud.FlinkMaterializedTableArgs;
import com.pulumi.confluentcloud.inputs.FlinkMaterializedTableOrganizationArgs;
import com.pulumi.confluentcloud.inputs.FlinkMaterializedTableEnvironmentArgs;
import com.pulumi.confluentcloud.inputs.FlinkMaterializedTableComputePoolArgs;
import com.pulumi.confluentcloud.inputs.FlinkMaterializedTablePrincipalArgs;
import com.pulumi.confluentcloud.inputs.FlinkMaterializedTableCredentialsArgs;
import com.pulumi.confluentcloud.inputs.FlinkMaterializedTableKafkaClusterArgs;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new FlinkMaterializedTable("example", FlinkMaterializedTableArgs.builder()
.organization(FlinkMaterializedTableOrganizationArgs.builder()
.id(main.id())
.build())
.environment(FlinkMaterializedTableEnvironmentArgs.builder()
.id(staging.id())
.build())
.computePool(FlinkMaterializedTableComputePoolArgs.builder()
.id(exampleConfluentFlinkComputePool.id())
.build())
.principal(FlinkMaterializedTablePrincipalArgs.builder()
.id(app_manager_flink.id())
.build())
.restEndpoint(mainConfluentFlinkRegion.restEndpoint())
.credentials(FlinkMaterializedTableCredentialsArgs.builder()
.key(flink.id())
.secret(flink.secret())
.build())
.displayName("my_materialized_table")
.kafkaCluster(FlinkMaterializedTableKafkaClusterArgs.builder()
.id(basic_cluster.id())
.build())
.query("SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;")
.stopped(false)
.build());
}
}
resources:
example:
type: confluentcloud:FlinkMaterializedTable
properties:
organization:
id: ${main.id}
environment:
id: ${staging.id}
computePool:
id: ${exampleConfluentFlinkComputePool.id}
principal:
id: ${["app-manager-flink"].id}
restEndpoint: ${mainConfluentFlinkRegion.restEndpoint}
credentials:
key: ${flink.id}
secret: ${flink.secret}
displayName: my_materialized_table
kafkaCluster:
id: ${["basic-cluster"].id}
query: SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;
stopped: false
Example coming soon!
Create FlinkMaterializedTable Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new FlinkMaterializedTable(name: string, args: FlinkMaterializedTableArgs, opts?: CustomResourceOptions);@overload
def FlinkMaterializedTable(resource_name: str,
args: FlinkMaterializedTableArgs,
opts: Optional[ResourceOptions] = None)
@overload
def FlinkMaterializedTable(resource_name: str,
opts: Optional[ResourceOptions] = None,
display_name: Optional[str] = None,
kafka_cluster: Optional[FlinkMaterializedTableKafkaClusterArgs] = None,
environment: Optional[FlinkMaterializedTableEnvironmentArgs] = None,
credentials: Optional[FlinkMaterializedTableCredentialsArgs] = None,
constraints: Optional[Sequence[FlinkMaterializedTableConstraintArgs]] = None,
distribution: Optional[FlinkMaterializedTableDistributionArgs] = None,
columns: Optional[Sequence[FlinkMaterializedTableColumnArgs]] = None,
compute_pool: Optional[FlinkMaterializedTableComputePoolArgs] = None,
organization: Optional[FlinkMaterializedTableOrganizationArgs] = None,
principal: Optional[FlinkMaterializedTablePrincipalArgs] = None,
query: Optional[str] = None,
rest_endpoint: Optional[str] = None,
stopped: Optional[bool] = None,
watermark: Optional[FlinkMaterializedTableWatermarkArgs] = None)func NewFlinkMaterializedTable(ctx *Context, name string, args FlinkMaterializedTableArgs, opts ...ResourceOption) (*FlinkMaterializedTable, error)public FlinkMaterializedTable(string name, FlinkMaterializedTableArgs args, CustomResourceOptions? opts = null)
public FlinkMaterializedTable(String name, FlinkMaterializedTableArgs args)
public FlinkMaterializedTable(String name, FlinkMaterializedTableArgs args, CustomResourceOptions options)
type: confluentcloud:FlinkMaterializedTable
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
resource "confluentcloud_flinkmaterializedtable" "name" {
# resource properties
}Parameters
- name string
- The unique name of the resource.
- args FlinkMaterializedTableArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args FlinkMaterializedTableArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args FlinkMaterializedTableArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args FlinkMaterializedTableArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args FlinkMaterializedTableArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var flinkMaterializedTableResource = new ConfluentCloud.FlinkMaterializedTable("flinkMaterializedTableResource", new()
{
DisplayName = "string",
KafkaCluster = new ConfluentCloud.Inputs.FlinkMaterializedTableKafkaClusterArgs
{
Id = "string",
},
Environment = new ConfluentCloud.Inputs.FlinkMaterializedTableEnvironmentArgs
{
Id = "string",
},
Credentials = new ConfluentCloud.Inputs.FlinkMaterializedTableCredentialsArgs
{
Key = "string",
Secret = "string",
},
Constraints = new[]
{
new ConfluentCloud.Inputs.FlinkMaterializedTableConstraintArgs
{
Columns = new[]
{
"string",
},
Enforced = false,
Name = "string",
Type = "string",
},
},
Distribution = new ConfluentCloud.Inputs.FlinkMaterializedTableDistributionArgs
{
BucketCount = 0,
Keys = new[]
{
"string",
},
},
Columns = new[]
{
new ConfluentCloud.Inputs.FlinkMaterializedTableColumnArgs
{
ColumnsComputeds = new[]
{
new ConfluentCloud.Inputs.FlinkMaterializedTableColumnColumnsComputedArgs
{
ColumnComputedComment = "string",
ColumnComputedExpression = "string",
ColumnComputedKind = "string",
ColumnComputedName = "string",
ColumnComputedType = "string",
ColumnComputedVirtual = false,
},
},
ColumnsMetadatas = new[]
{
new ConfluentCloud.Inputs.FlinkMaterializedTableColumnColumnsMetadataArgs
{
ColumnMetadataComment = "string",
ColumnMetadataKey = "string",
ColumnMetadataKind = "string",
ColumnMetadataName = "string",
ColumnMetadataType = "string",
ColumnMetadataVirtual = false,
},
},
ColumnsPhysicals = new[]
{
new ConfluentCloud.Inputs.FlinkMaterializedTableColumnColumnsPhysicalArgs
{
ColumnPhysicalComment = "string",
ColumnPhysicalKind = "string",
ColumnPhysicalName = "string",
ColumnPhysicalType = "string",
},
},
},
},
ComputePool = new ConfluentCloud.Inputs.FlinkMaterializedTableComputePoolArgs
{
Id = "string",
},
Organization = new ConfluentCloud.Inputs.FlinkMaterializedTableOrganizationArgs
{
Id = "string",
},
Principal = new ConfluentCloud.Inputs.FlinkMaterializedTablePrincipalArgs
{
Id = "string",
},
Query = "string",
RestEndpoint = "string",
Stopped = false,
Watermark = new ConfluentCloud.Inputs.FlinkMaterializedTableWatermarkArgs
{
Column = "string",
Expression = "string",
},
});
example, err := confluentcloud.NewFlinkMaterializedTable(ctx, "flinkMaterializedTableResource", &confluentcloud.FlinkMaterializedTableArgs{
DisplayName: pulumi.String("string"),
KafkaCluster: &confluentcloud.FlinkMaterializedTableKafkaClusterArgs{
Id: pulumi.String("string"),
},
Environment: &confluentcloud.FlinkMaterializedTableEnvironmentArgs{
Id: pulumi.String("string"),
},
Credentials: &confluentcloud.FlinkMaterializedTableCredentialsArgs{
Key: pulumi.String("string"),
Secret: pulumi.String("string"),
},
Constraints: confluentcloud.FlinkMaterializedTableConstraintArray{
&confluentcloud.FlinkMaterializedTableConstraintArgs{
Columns: pulumi.StringArray{
pulumi.String("string"),
},
Enforced: pulumi.Bool(false),
Name: pulumi.String("string"),
Type: pulumi.String("string"),
},
},
Distribution: &confluentcloud.FlinkMaterializedTableDistributionArgs{
BucketCount: pulumi.Int(0),
Keys: pulumi.StringArray{
pulumi.String("string"),
},
},
Columns: confluentcloud.FlinkMaterializedTableColumnArray{
&confluentcloud.FlinkMaterializedTableColumnArgs{
ColumnsComputeds: confluentcloud.FlinkMaterializedTableColumnColumnsComputedArray{
&confluentcloud.FlinkMaterializedTableColumnColumnsComputedArgs{
ColumnComputedComment: pulumi.String("string"),
ColumnComputedExpression: pulumi.String("string"),
ColumnComputedKind: pulumi.String("string"),
ColumnComputedName: pulumi.String("string"),
ColumnComputedType: pulumi.String("string"),
ColumnComputedVirtual: pulumi.Bool(false),
},
},
ColumnsMetadatas: confluentcloud.FlinkMaterializedTableColumnColumnsMetadataArray{
&confluentcloud.FlinkMaterializedTableColumnColumnsMetadataArgs{
ColumnMetadataComment: pulumi.String("string"),
ColumnMetadataKey: pulumi.String("string"),
ColumnMetadataKind: pulumi.String("string"),
ColumnMetadataName: pulumi.String("string"),
ColumnMetadataType: pulumi.String("string"),
ColumnMetadataVirtual: pulumi.Bool(false),
},
},
ColumnsPhysicals: confluentcloud.FlinkMaterializedTableColumnColumnsPhysicalArray{
&confluentcloud.FlinkMaterializedTableColumnColumnsPhysicalArgs{
ColumnPhysicalComment: pulumi.String("string"),
ColumnPhysicalKind: pulumi.String("string"),
ColumnPhysicalName: pulumi.String("string"),
ColumnPhysicalType: pulumi.String("string"),
},
},
},
},
ComputePool: &confluentcloud.FlinkMaterializedTableComputePoolArgs{
Id: pulumi.String("string"),
},
Organization: &confluentcloud.FlinkMaterializedTableOrganizationArgs{
Id: pulumi.String("string"),
},
Principal: &confluentcloud.FlinkMaterializedTablePrincipalArgs{
Id: pulumi.String("string"),
},
Query: pulumi.String("string"),
RestEndpoint: pulumi.String("string"),
Stopped: pulumi.Bool(false),
Watermark: &confluentcloud.FlinkMaterializedTableWatermarkArgs{
Column: pulumi.String("string"),
Expression: pulumi.String("string"),
},
})
resource "confluentcloud_flinkmaterializedtable" "flinkMaterializedTableResource" {
display_name = "string"
kafka_cluster = {
id = "string"
}
environment = {
id = "string"
}
credentials = {
key = "string"
secret = "string"
}
constraints {
columns = ["string"]
enforced = false
name = "string"
type = "string"
}
distribution = {
bucket_count = 0
keys = ["string"]
}
columns {
columns_computeds {
column_computed_comment = "string"
column_computed_expression = "string"
column_computed_kind = "string"
column_computed_name = "string"
column_computed_type = "string"
column_computed_virtual = false
}
columns_metadatas {
column_metadata_comment = "string"
column_metadata_key = "string"
column_metadata_kind = "string"
column_metadata_name = "string"
column_metadata_type = "string"
column_metadata_virtual = false
}
columns_physicals {
column_physical_comment = "string"
column_physical_kind = "string"
column_physical_name = "string"
column_physical_type = "string"
}
}
compute_pool = {
id = "string"
}
organization = {
id = "string"
}
principal = {
id = "string"
}
query = "string"
rest_endpoint = "string"
stopped = false
watermark = {
column = "string"
expression = "string"
}
}
var flinkMaterializedTableResource = new FlinkMaterializedTable("flinkMaterializedTableResource", FlinkMaterializedTableArgs.builder()
.displayName("string")
.kafkaCluster(FlinkMaterializedTableKafkaClusterArgs.builder()
.id("string")
.build())
.environment(FlinkMaterializedTableEnvironmentArgs.builder()
.id("string")
.build())
.credentials(FlinkMaterializedTableCredentialsArgs.builder()
.key("string")
.secret("string")
.build())
.constraints(FlinkMaterializedTableConstraintArgs.builder()
.columns("string")
.enforced(false)
.name("string")
.type("string")
.build())
.distribution(FlinkMaterializedTableDistributionArgs.builder()
.bucketCount(0)
.keys("string")
.build())
.columns(FlinkMaterializedTableColumnArgs.builder()
.columnsComputeds(FlinkMaterializedTableColumnColumnsComputedArgs.builder()
.columnComputedComment("string")
.columnComputedExpression("string")
.columnComputedKind("string")
.columnComputedName("string")
.columnComputedType("string")
.columnComputedVirtual(false)
.build())
.columnsMetadatas(FlinkMaterializedTableColumnColumnsMetadataArgs.builder()
.columnMetadataComment("string")
.columnMetadataKey("string")
.columnMetadataKind("string")
.columnMetadataName("string")
.columnMetadataType("string")
.columnMetadataVirtual(false)
.build())
.columnsPhysicals(FlinkMaterializedTableColumnColumnsPhysicalArgs.builder()
.columnPhysicalComment("string")
.columnPhysicalKind("string")
.columnPhysicalName("string")
.columnPhysicalType("string")
.build())
.build())
.computePool(FlinkMaterializedTableComputePoolArgs.builder()
.id("string")
.build())
.organization(FlinkMaterializedTableOrganizationArgs.builder()
.id("string")
.build())
.principal(FlinkMaterializedTablePrincipalArgs.builder()
.id("string")
.build())
.query("string")
.restEndpoint("string")
.stopped(false)
.watermark(FlinkMaterializedTableWatermarkArgs.builder()
.column("string")
.expression("string")
.build())
.build());
flink_materialized_table_resource = confluentcloud.FlinkMaterializedTable("flinkMaterializedTableResource",
display_name="string",
kafka_cluster={
"id": "string",
},
environment={
"id": "string",
},
credentials={
"key": "string",
"secret": "string",
},
constraints=[{
"columns": ["string"],
"enforced": False,
"name": "string",
"type": "string",
}],
distribution={
"bucket_count": 0,
"keys": ["string"],
},
columns=[{
"columns_computeds": [{
"column_computed_comment": "string",
"column_computed_expression": "string",
"column_computed_kind": "string",
"column_computed_name": "string",
"column_computed_type": "string",
"column_computed_virtual": False,
}],
"columns_metadatas": [{
"column_metadata_comment": "string",
"column_metadata_key": "string",
"column_metadata_kind": "string",
"column_metadata_name": "string",
"column_metadata_type": "string",
"column_metadata_virtual": False,
}],
"columns_physicals": [{
"column_physical_comment": "string",
"column_physical_kind": "string",
"column_physical_name": "string",
"column_physical_type": "string",
}],
}],
compute_pool={
"id": "string",
},
organization={
"id": "string",
},
principal={
"id": "string",
},
query="string",
rest_endpoint="string",
stopped=False,
watermark={
"column": "string",
"expression": "string",
})
const flinkMaterializedTableResource = new confluentcloud.FlinkMaterializedTable("flinkMaterializedTableResource", {
displayName: "string",
kafkaCluster: {
id: "string",
},
environment: {
id: "string",
},
credentials: {
key: "string",
secret: "string",
},
constraints: [{
columns: ["string"],
enforced: false,
name: "string",
type: "string",
}],
distribution: {
bucketCount: 0,
keys: ["string"],
},
columns: [{
columnsComputeds: [{
columnComputedComment: "string",
columnComputedExpression: "string",
columnComputedKind: "string",
columnComputedName: "string",
columnComputedType: "string",
columnComputedVirtual: false,
}],
columnsMetadatas: [{
columnMetadataComment: "string",
columnMetadataKey: "string",
columnMetadataKind: "string",
columnMetadataName: "string",
columnMetadataType: "string",
columnMetadataVirtual: false,
}],
columnsPhysicals: [{
columnPhysicalComment: "string",
columnPhysicalKind: "string",
columnPhysicalName: "string",
columnPhysicalType: "string",
}],
}],
computePool: {
id: "string",
},
organization: {
id: "string",
},
principal: {
id: "string",
},
query: "string",
restEndpoint: "string",
stopped: false,
watermark: {
column: "string",
expression: "string",
},
});
type: confluentcloud:FlinkMaterializedTable
properties:
columns:
- columnsComputeds:
- columnComputedComment: string
columnComputedExpression: string
columnComputedKind: string
columnComputedName: string
columnComputedType: string
columnComputedVirtual: false
columnsMetadatas:
- columnMetadataComment: string
columnMetadataKey: string
columnMetadataKind: string
columnMetadataName: string
columnMetadataType: string
columnMetadataVirtual: false
columnsPhysicals:
- columnPhysicalComment: string
columnPhysicalKind: string
columnPhysicalName: string
columnPhysicalType: string
computePool:
id: string
constraints:
- columns:
- string
enforced: false
name: string
type: string
credentials:
key: string
secret: string
displayName: string
distribution:
bucketCount: 0
keys:
- string
environment:
id: string
kafkaCluster:
id: string
organization:
id: string
principal:
id: string
query: string
restEndpoint: string
stopped: false
watermark:
column: string
expression: string
FlinkMaterializedTable Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The FlinkMaterializedTable resource accepts the following input properties:
- Display
Name string - The unique name of the Materialized Table.
- Kafka
Cluster Pulumi.Confluent Cloud. Inputs. Flink Materialized Table Kafka Cluster - Columns
List<Pulumi.
Confluent Cloud. Inputs. Flink Materialized Table Column> - A list of column definitions. Each
columnsblock supports the following sub-blocks: - Compute
Pool Pulumi.Confluent Cloud. Inputs. Flink Materialized Table Compute Pool - Constraints
List<Pulumi.
Confluent Cloud. Inputs. Flink Materialized Table Constraint> - Credentials
Pulumi.
Confluent Cloud. Inputs. Flink Materialized Table Credentials - The Cluster API Credentials.
- Distribution
Pulumi.
Confluent Cloud. Inputs. Flink Materialized Table Distribution - The distribution definition for the Materialized Table. Supports the following:
- Environment
Pulumi.
Confluent Cloud. Inputs. Flink Materialized Table Environment - Organization
Pulumi.
Confluent Cloud. Inputs. Flink Materialized Table Organization - Principal
Pulumi.
Confluent Cloud. Inputs. Flink Materialized Table Principal - Query string
- The SQL query that defines the Materialized Table, for example,
SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;. - Rest
Endpoint string - The REST endpoint of the Flink region, for example,
https://flink.us-east-1.aws.confluent.cloud. - Stopped bool
- Indicates whether the Materialized Table is stopped. Defaults to
false. Update it totrueto stop the Materialized Table. Subsequently update it tofalseto resume it. - Watermark
Pulumi.
Confluent Cloud. Inputs. Flink Materialized Table Watermark - The watermark definition for the Materialized Table. Supports the following:
- Display
Name string - The unique name of the Materialized Table.
- Kafka
Cluster FlinkMaterialized Table Kafka Cluster Args - Columns
[]Flink
Materialized Table Column Args - A list of column definitions. Each
columnsblock supports the following sub-blocks: - Compute
Pool FlinkMaterialized Table Compute Pool Args - Constraints
[]Flink
Materialized Table Constraint Args - Credentials
Flink
Materialized Table Credentials Args - The Cluster API Credentials.
- Distribution
Flink
Materialized Table Distribution Args - The distribution definition for the Materialized Table. Supports the following:
- Environment
Flink
Materialized Table Environment Args - Organization
Flink
Materialized Table Organization Args - Principal
Flink
Materialized Table Principal Args - Query string
- The SQL query that defines the Materialized Table, for example,
SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;. - Rest
Endpoint string - The REST endpoint of the Flink region, for example,
https://flink.us-east-1.aws.confluent.cloud. - Stopped bool
- Indicates whether the Materialized Table is stopped. Defaults to
false. Update it totrueto stop the Materialized Table. Subsequently update it tofalseto resume it. - Watermark
Flink
Materialized Table Watermark Args - The watermark definition for the Materialized Table. Supports the following:
- display_
name string - The unique name of the Materialized Table.
- kafka_
cluster object - columns list(object)
- A list of column definitions. Each
columnsblock supports the following sub-blocks: - compute_
pool object - constraints list(object)
- credentials object
- The Cluster API Credentials.
- distribution object
- The distribution definition for the Materialized Table. Supports the following:
- environment object
- organization object
- principal object
- query string
- The SQL query that defines the Materialized Table, for example,
SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;. - rest_
endpoint string - The REST endpoint of the Flink region, for example,
https://flink.us-east-1.aws.confluent.cloud. - stopped bool
- Indicates whether the Materialized Table is stopped. Defaults to
false. Update it totrueto stop the Materialized Table. Subsequently update it tofalseto resume it. - watermark object
- The watermark definition for the Materialized Table. Supports the following:
- display
Name String - The unique name of the Materialized Table.
- kafka
Cluster FlinkMaterialized Table Kafka Cluster - columns
List<Flink
Materialized Table Column> - A list of column definitions. Each
columnsblock supports the following sub-blocks: - compute
Pool FlinkMaterialized Table Compute Pool - constraints
List<Flink
Materialized Table Constraint> - credentials
Flink
Materialized Table Credentials - The Cluster API Credentials.
- distribution
Flink
Materialized Table Distribution - The distribution definition for the Materialized Table. Supports the following:
- environment
Flink
Materialized Table Environment - organization
Flink
Materialized Table Organization - principal
Flink
Materialized Table Principal - query String
- The SQL query that defines the Materialized Table, for example,
SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;. - rest
Endpoint String - The REST endpoint of the Flink region, for example,
https://flink.us-east-1.aws.confluent.cloud. - stopped Boolean
- Indicates whether the Materialized Table is stopped. Defaults to
false. Update it totrueto stop the Materialized Table. Subsequently update it tofalseto resume it. - watermark
Flink
Materialized Table Watermark - The watermark definition for the Materialized Table. Supports the following:
- display
Name string - The unique name of the Materialized Table.
- kafka
Cluster FlinkMaterialized Table Kafka Cluster - columns
Flink
Materialized Table Column[] - A list of column definitions. Each
columnsblock supports the following sub-blocks: - compute
Pool FlinkMaterialized Table Compute Pool - constraints
Flink
Materialized Table Constraint[] - credentials
Flink
Materialized Table Credentials - The Cluster API Credentials.
- distribution
Flink
Materialized Table Distribution - The distribution definition for the Materialized Table. Supports the following:
- environment
Flink
Materialized Table Environment - organization
Flink
Materialized Table Organization - principal
Flink
Materialized Table Principal - query string
- The SQL query that defines the Materialized Table, for example,
SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;. - rest
Endpoint string - The REST endpoint of the Flink region, for example,
https://flink.us-east-1.aws.confluent.cloud. - stopped boolean
- Indicates whether the Materialized Table is stopped. Defaults to
false. Update it totrueto stop the Materialized Table. Subsequently update it tofalseto resume it. - watermark
Flink
Materialized Table Watermark - The watermark definition for the Materialized Table. Supports the following:
- display_
name str - The unique name of the Materialized Table.
- kafka_
cluster FlinkMaterialized Table Kafka Cluster Args - columns
Sequence[Flink
Materialized Table Column Args] - A list of column definitions. Each
columnsblock supports the following sub-blocks: - compute_
pool FlinkMaterialized Table Compute Pool Args - constraints
Sequence[Flink
Materialized Table Constraint Args] - credentials
Flink
Materialized Table Credentials Args - The Cluster API Credentials.
- distribution
Flink
Materialized Table Distribution Args - The distribution definition for the Materialized Table. Supports the following:
- environment
Flink
Materialized Table Environment Args - organization
Flink
Materialized Table Organization Args - principal
Flink
Materialized Table Principal Args - query str
- The SQL query that defines the Materialized Table, for example,
SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;. - rest_
endpoint str - The REST endpoint of the Flink region, for example,
https://flink.us-east-1.aws.confluent.cloud. - stopped bool
- Indicates whether the Materialized Table is stopped. Defaults to
false. Update it totrueto stop the Materialized Table. Subsequently update it tofalseto resume it. - watermark
Flink
Materialized Table Watermark Args - The watermark definition for the Materialized Table. Supports the following:
- display
Name String - The unique name of the Materialized Table.
- kafka
Cluster Property Map - columns List<Property Map>
- A list of column definitions. Each
columnsblock supports the following sub-blocks: - compute
Pool Property Map - constraints List<Property Map>
- credentials Property Map
- The Cluster API Credentials.
- distribution Property Map
- The distribution definition for the Materialized Table. Supports the following:
- environment Property Map
- organization Property Map
- principal Property Map
- query String
- The SQL query that defines the Materialized Table, for example,
SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;. - rest
Endpoint String - The REST endpoint of the Flink region, for example,
https://flink.us-east-1.aws.confluent.cloud. - stopped Boolean
- Indicates whether the Materialized Table is stopped. Defaults to
false. Update it totrueto stop the Materialized Table. Subsequently update it tofalseto resume it. - watermark Property Map
- The watermark definition for the Materialized Table. Supports the following:
Outputs
All input properties are implicitly available as output properties. Additionally, the FlinkMaterializedTable resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing FlinkMaterializedTable Resource
Get an existing FlinkMaterializedTable resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: FlinkMaterializedTableState, opts?: CustomResourceOptions): FlinkMaterializedTable@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
columns: Optional[Sequence[FlinkMaterializedTableColumnArgs]] = None,
compute_pool: Optional[FlinkMaterializedTableComputePoolArgs] = None,
constraints: Optional[Sequence[FlinkMaterializedTableConstraintArgs]] = None,
credentials: Optional[FlinkMaterializedTableCredentialsArgs] = None,
display_name: Optional[str] = None,
distribution: Optional[FlinkMaterializedTableDistributionArgs] = None,
environment: Optional[FlinkMaterializedTableEnvironmentArgs] = None,
kafka_cluster: Optional[FlinkMaterializedTableKafkaClusterArgs] = None,
organization: Optional[FlinkMaterializedTableOrganizationArgs] = None,
principal: Optional[FlinkMaterializedTablePrincipalArgs] = None,
query: Optional[str] = None,
rest_endpoint: Optional[str] = None,
stopped: Optional[bool] = None,
watermark: Optional[FlinkMaterializedTableWatermarkArgs] = None) -> FlinkMaterializedTablefunc GetFlinkMaterializedTable(ctx *Context, name string, id IDInput, state *FlinkMaterializedTableState, opts ...ResourceOption) (*FlinkMaterializedTable, error)public static FlinkMaterializedTable Get(string name, Input<string> id, FlinkMaterializedTableState? state, CustomResourceOptions? opts = null)public static FlinkMaterializedTable get(String name, Output<String> id, FlinkMaterializedTableState state, CustomResourceOptions options)resources: _: type: confluentcloud:FlinkMaterializedTable get: id: ${id}import {
to = confluentcloud_flinkmaterializedtable.example
id = "${id}"
}
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Columns
List<Pulumi.
Confluent Cloud. Inputs. Flink Materialized Table Column> - A list of column definitions. Each
columnsblock supports the following sub-blocks: - Compute
Pool Pulumi.Confluent Cloud. Inputs. Flink Materialized Table Compute Pool - Constraints
List<Pulumi.
Confluent Cloud. Inputs. Flink Materialized Table Constraint> - Credentials
Pulumi.
Confluent Cloud. Inputs. Flink Materialized Table Credentials - The Cluster API Credentials.
- Display
Name string - The unique name of the Materialized Table.
- Distribution
Pulumi.
Confluent Cloud. Inputs. Flink Materialized Table Distribution - The distribution definition for the Materialized Table. Supports the following:
- Environment
Pulumi.
Confluent Cloud. Inputs. Flink Materialized Table Environment - Kafka
Cluster Pulumi.Confluent Cloud. Inputs. Flink Materialized Table Kafka Cluster - Organization
Pulumi.
Confluent Cloud. Inputs. Flink Materialized Table Organization - Principal
Pulumi.
Confluent Cloud. Inputs. Flink Materialized Table Principal - Query string
- The SQL query that defines the Materialized Table, for example,
SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;. - Rest
Endpoint string - The REST endpoint of the Flink region, for example,
https://flink.us-east-1.aws.confluent.cloud. - Stopped bool
- Indicates whether the Materialized Table is stopped. Defaults to
false. Update it totrueto stop the Materialized Table. Subsequently update it tofalseto resume it. - Watermark
Pulumi.
Confluent Cloud. Inputs. Flink Materialized Table Watermark - The watermark definition for the Materialized Table. Supports the following:
- Columns
[]Flink
Materialized Table Column Args - A list of column definitions. Each
columnsblock supports the following sub-blocks: - Compute
Pool FlinkMaterialized Table Compute Pool Args - Constraints
[]Flink
Materialized Table Constraint Args - Credentials
Flink
Materialized Table Credentials Args - The Cluster API Credentials.
- Display
Name string - The unique name of the Materialized Table.
- Distribution
Flink
Materialized Table Distribution Args - The distribution definition for the Materialized Table. Supports the following:
- Environment
Flink
Materialized Table Environment Args - Kafka
Cluster FlinkMaterialized Table Kafka Cluster Args - Organization
Flink
Materialized Table Organization Args - Principal
Flink
Materialized Table Principal Args - Query string
- The SQL query that defines the Materialized Table, for example,
SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;. - Rest
Endpoint string - The REST endpoint of the Flink region, for example,
https://flink.us-east-1.aws.confluent.cloud. - Stopped bool
- Indicates whether the Materialized Table is stopped. Defaults to
false. Update it totrueto stop the Materialized Table. Subsequently update it tofalseto resume it. - Watermark
Flink
Materialized Table Watermark Args - The watermark definition for the Materialized Table. Supports the following:
- columns list(object)
- A list of column definitions. Each
columnsblock supports the following sub-blocks: - compute_
pool object - constraints list(object)
- credentials object
- The Cluster API Credentials.
- display_
name string - The unique name of the Materialized Table.
- distribution object
- The distribution definition for the Materialized Table. Supports the following:
- environment object
- kafka_
cluster object - organization object
- principal object
- query string
- The SQL query that defines the Materialized Table, for example,
SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;. - rest_
endpoint string - The REST endpoint of the Flink region, for example,
https://flink.us-east-1.aws.confluent.cloud. - stopped bool
- Indicates whether the Materialized Table is stopped. Defaults to
false. Update it totrueto stop the Materialized Table. Subsequently update it tofalseto resume it. - watermark object
- The watermark definition for the Materialized Table. Supports the following:
- columns
List<Flink
Materialized Table Column> - A list of column definitions. Each
columnsblock supports the following sub-blocks: - compute
Pool FlinkMaterialized Table Compute Pool - constraints
List<Flink
Materialized Table Constraint> - credentials
Flink
Materialized Table Credentials - The Cluster API Credentials.
- display
Name String - The unique name of the Materialized Table.
- distribution
Flink
Materialized Table Distribution - The distribution definition for the Materialized Table. Supports the following:
- environment
Flink
Materialized Table Environment - kafka
Cluster FlinkMaterialized Table Kafka Cluster - organization
Flink
Materialized Table Organization - principal
Flink
Materialized Table Principal - query String
- The SQL query that defines the Materialized Table, for example,
SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;. - rest
Endpoint String - The REST endpoint of the Flink region, for example,
https://flink.us-east-1.aws.confluent.cloud. - stopped Boolean
- Indicates whether the Materialized Table is stopped. Defaults to
false. Update it totrueto stop the Materialized Table. Subsequently update it tofalseto resume it. - watermark
Flink
Materialized Table Watermark - The watermark definition for the Materialized Table. Supports the following:
- columns
Flink
Materialized Table Column[] - A list of column definitions. Each
columnsblock supports the following sub-blocks: - compute
Pool FlinkMaterialized Table Compute Pool - constraints
Flink
Materialized Table Constraint[] - credentials
Flink
Materialized Table Credentials - The Cluster API Credentials.
- display
Name string - The unique name of the Materialized Table.
- distribution
Flink
Materialized Table Distribution - The distribution definition for the Materialized Table. Supports the following:
- environment
Flink
Materialized Table Environment - kafka
Cluster FlinkMaterialized Table Kafka Cluster - organization
Flink
Materialized Table Organization - principal
Flink
Materialized Table Principal - query string
- The SQL query that defines the Materialized Table, for example,
SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;. - rest
Endpoint string - The REST endpoint of the Flink region, for example,
https://flink.us-east-1.aws.confluent.cloud. - stopped boolean
- Indicates whether the Materialized Table is stopped. Defaults to
false. Update it totrueto stop the Materialized Table. Subsequently update it tofalseto resume it. - watermark
Flink
Materialized Table Watermark - The watermark definition for the Materialized Table. Supports the following:
- columns
Sequence[Flink
Materialized Table Column Args] - A list of column definitions. Each
columnsblock supports the following sub-blocks: - compute_
pool FlinkMaterialized Table Compute Pool Args - constraints
Sequence[Flink
Materialized Table Constraint Args] - credentials
Flink
Materialized Table Credentials Args - The Cluster API Credentials.
- display_
name str - The unique name of the Materialized Table.
- distribution
Flink
Materialized Table Distribution Args - The distribution definition for the Materialized Table. Supports the following:
- environment
Flink
Materialized Table Environment Args - kafka_
cluster FlinkMaterialized Table Kafka Cluster Args - organization
Flink
Materialized Table Organization Args - principal
Flink
Materialized Table Principal Args - query str
- The SQL query that defines the Materialized Table, for example,
SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;. - rest_
endpoint str - The REST endpoint of the Flink region, for example,
https://flink.us-east-1.aws.confluent.cloud. - stopped bool
- Indicates whether the Materialized Table is stopped. Defaults to
false. Update it totrueto stop the Materialized Table. Subsequently update it tofalseto resume it. - watermark
Flink
Materialized Table Watermark Args - The watermark definition for the Materialized Table. Supports the following:
- columns List<Property Map>
- A list of column definitions. Each
columnsblock supports the following sub-blocks: - compute
Pool Property Map - constraints List<Property Map>
- credentials Property Map
- The Cluster API Credentials.
- display
Name String - The unique name of the Materialized Table.
- distribution Property Map
- The distribution definition for the Materialized Table. Supports the following:
- environment Property Map
- kafka
Cluster Property Map - organization Property Map
- principal Property Map
- query String
- The SQL query that defines the Materialized Table, for example,
SELECT user_id, product_id, price, quantity FROM orders WHERE price > 1000;. - rest
Endpoint String - The REST endpoint of the Flink region, for example,
https://flink.us-east-1.aws.confluent.cloud. - stopped Boolean
- Indicates whether the Materialized Table is stopped. Defaults to
false. Update it totrueto stop the Materialized Table. Subsequently update it tofalseto resume it. - watermark Property Map
- The watermark definition for the Materialized Table. Supports the following:
Supporting Types
FlinkMaterializedTableColumn, FlinkMaterializedTableColumnArgs
- Columns
Computeds List<Pulumi.Confluent Cloud. Inputs. Flink Materialized Table Column Columns Computed> - Computed column definitions. Each block supports:
- Columns
Metadatas List<Pulumi.Confluent Cloud. Inputs. Flink Materialized Table Column Columns Metadata> - Metadata column definitions. Each block supports:
- Columns
Physicals List<Pulumi.Confluent Cloud. Inputs. Flink Materialized Table Column Columns Physical> - Physical column definitions. Each block supports:
- Columns
Computeds []FlinkMaterialized Table Column Columns Computed - Computed column definitions. Each block supports:
- Columns
Metadatas []FlinkMaterialized Table Column Columns Metadata - Metadata column definitions. Each block supports:
- Columns
Physicals []FlinkMaterialized Table Column Columns Physical - Physical column definitions. Each block supports:
- columns_
computeds list(object) - Computed column definitions. Each block supports:
- columns_
metadatas list(object) - Metadata column definitions. Each block supports:
- columns_
physicals list(object) - Physical column definitions. Each block supports:
- columns
Computeds List<FlinkMaterialized Table Column Columns Computed> - Computed column definitions. Each block supports:
- columns
Metadatas List<FlinkMaterialized Table Column Columns Metadata> - Metadata column definitions. Each block supports:
- columns
Physicals List<FlinkMaterialized Table Column Columns Physical> - Physical column definitions. Each block supports:
- columns
Computeds FlinkMaterialized Table Column Columns Computed[] - Computed column definitions. Each block supports:
- columns
Metadatas FlinkMaterialized Table Column Columns Metadata[] - Metadata column definitions. Each block supports:
- columns
Physicals FlinkMaterialized Table Column Columns Physical[] - Physical column definitions. Each block supports:
- columns_
computeds Sequence[FlinkMaterialized Table Column Columns Computed] - Computed column definitions. Each block supports:
- columns_
metadatas Sequence[FlinkMaterialized Table Column Columns Metadata] - Metadata column definitions. Each block supports:
- columns_
physicals Sequence[FlinkMaterialized Table Column Columns Physical] - Physical column definitions. Each block supports:
- columns
Computeds List<Property Map> - Computed column definitions. Each block supports:
- columns
Metadatas List<Property Map> - Metadata column definitions. Each block supports:
- columns
Physicals List<Property Map> - Physical column definitions. Each block supports:
FlinkMaterializedTableColumnColumnsComputed, FlinkMaterializedTableColumnColumnsComputedArgs
- Column
Computed stringComment - Comment for the computed column.
- Column
Computed stringExpression - Expression of the computed column.
- Column
Computed stringKind - Kind of the computed column.
- Column
Computed stringName - Name of the computed column.
- Column
Computed stringType - Type of the computed column.
- Column
Computed boolVirtual - Whether the computed column is virtual. Defaults to
false.
- Column
Computed stringComment - Comment for the computed column.
- Column
Computed stringExpression - Expression of the computed column.
- Column
Computed stringKind - Kind of the computed column.
- Column
Computed stringName - Name of the computed column.
- Column
Computed stringType - Type of the computed column.
- Column
Computed boolVirtual - Whether the computed column is virtual. Defaults to
false.
- column_
computed_ stringcomment - Comment for the computed column.
- column_
computed_ stringexpression - Expression of the computed column.
- column_
computed_ stringkind - Kind of the computed column.
- column_
computed_ stringname - Name of the computed column.
- column_
computed_ stringtype - Type of the computed column.
- column_
computed_ boolvirtual - Whether the computed column is virtual. Defaults to
false.
- column
Computed StringComment - Comment for the computed column.
- column
Computed StringExpression - Expression of the computed column.
- column
Computed StringKind - Kind of the computed column.
- column
Computed StringName - Name of the computed column.
- column
Computed StringType - Type of the computed column.
- column
Computed BooleanVirtual - Whether the computed column is virtual. Defaults to
false.
- column
Computed stringComment - Comment for the computed column.
- column
Computed stringExpression - Expression of the computed column.
- column
Computed stringKind - Kind of the computed column.
- column
Computed stringName - Name of the computed column.
- column
Computed stringType - Type of the computed column.
- column
Computed booleanVirtual - Whether the computed column is virtual. Defaults to
false.
- column_
computed_ strcomment - Comment for the computed column.
- column_
computed_ strexpression - Expression of the computed column.
- column_
computed_ strkind - Kind of the computed column.
- column_
computed_ strname - Name of the computed column.
- column_
computed_ strtype - Type of the computed column.
- column_
computed_ boolvirtual - Whether the computed column is virtual. Defaults to
false.
- column
Computed StringComment - Comment for the computed column.
- column
Computed StringExpression - Expression of the computed column.
- column
Computed StringKind - Kind of the computed column.
- column
Computed StringName - Name of the computed column.
- column
Computed StringType - Type of the computed column.
- column
Computed BooleanVirtual - Whether the computed column is virtual. Defaults to
false.
FlinkMaterializedTableColumnColumnsMetadata, FlinkMaterializedTableColumnColumnsMetadataArgs
- Column
Metadata stringComment - Comment for the metadata column.
- Column
Metadata stringKey - Metadata key of the metadata column.
- Column
Metadata stringKind - Kind of the metadata column.
- Column
Metadata stringName - Name of the metadata column.
- Column
Metadata stringType - Type of the metadata column.
- Column
Metadata boolVirtual Whether the metadata column is virtual. Defaults to
false.Note: A Flink API key consists of a key and a secret. Flink API keys are required to interact with Flink Materialized Tables in Confluent Cloud. Each Flink API key is valid for one specific Flink Region.
Note: Use Option #2 to simplify the key rotation process. When using Option #1, to rotate a Flink API key, create a new Flink API key, update the
credentialsblock in all configuration files to use the new Flink API key, runpulumi up -target="confluent_flink_materialized_table.example", and remove the old Flink API key. Alternatively, in case the old Flink API Key was deleted already, you might need to runpulumi preview -refresh=false -target="confluent_flink_materialized_table.example" -out=rotate-flink-api-keyandpulumi up rotate-flink-api-keyinstead.!> Warning: Use Option #2 to avoid exposing sensitive
credentialsvalue in a state file. When using Option #1, Terraform doesn't encrypt the sensitivecredentialsvalue of theconfluentcloud.FlinkMaterializedTableresource, so you must keep your state file secure to avoid exposing it. Refer to the Terraform documentation to learn more about securing your state file.Note: When using OAuth to authenticate a Flink Materialized Table, if the intended
principal.idis a service account instead of an Identity Pool, make sure the Identity Pool has anAssignerrole binding on the service account. Otherwise, you may encounter a 403 Forbidden error. For example:import * as pulumi from "@pulumi/pulumi"; import * as confluentcloud from "@pulumi/confluentcloud";const identity_pool_assigner = new confluentcloud.RoleBinding("identity-pool-assigner", { principal: "User:pool-abc123", roleName: "Assigner", crnPattern:
${main.resourceName}/service-account=sa-def456, });import pulumi import pulumi_confluentcloud as confluentcloud identity_pool_assigner = confluentcloud.RoleBinding("identity-pool-assigner", principal="User:pool-abc123", role_name="Assigner", crn_pattern=f"{main['resourceName']}/service-account=sa-def456")using System.Collections.Generic; using System.Linq; using Pulumi; using ConfluentCloud = Pulumi.ConfluentCloud; return await Deployment.RunAsync(() => { var identity_pool_assigner = new ConfluentCloud.RoleBinding("identity-pool-assigner", new() { Principal = "User:pool-abc123", RoleName = "Assigner", CrnPattern = $"{main.ResourceName}/service-account=sa-def456", }); });package main import ( "github.com/pulumi/pulumi-confluentcloud/sdk/v2/go/confluentcloud" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := confluentcloud.NewRoleBinding(ctx, "identity-pool-assigner", &confluentcloud.RoleBindingArgs{ Principal: pulumi.String("User:pool-abc123"), RoleName: pulumi.String("Assigner"), CrnPattern: pulumi.Sprintf("%v/service-account=sa-def456", main.ResourceName), }) if err != nil { return err } return nil }) }package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.confluentcloud.RoleBinding; import com.pulumi.confluentcloud.RoleBindingArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var identity_pool_assigner = new RoleBinding("identity-pool-assigner", RoleBindingArgs.builder() .principal("User:pool-abc123") .roleName("Assigner") .crnPattern(String.format("%s/service-account=sa-def456", main.resourceName())) .build()); } }resources: identity-pool-assigner: type: confluentcloud:RoleBinding properties: principal: User:pool-abc123 roleName: Assigner crnPattern: ${main.resourceName}/service-account=sa-def456
- Column
Metadata stringComment - Comment for the metadata column.
- Column
Metadata stringKey - Metadata key of the metadata column.
- Column
Metadata stringKind - Kind of the metadata column.
- Column
Metadata stringName - Name of the metadata column.
- Column
Metadata stringType - Type of the metadata column.
- Column
Metadata boolVirtual Whether the metadata column is virtual. Defaults to
false.Note: A Flink API key consists of a key and a secret. Flink API keys are required to interact with Flink Materialized Tables in Confluent Cloud. Each Flink API key is valid for one specific Flink Region.
Note: Use Option #2 to simplify the key rotation process. When using Option #1, to rotate a Flink API key, create a new Flink API key, update the
credentialsblock in all configuration files to use the new Flink API key, runpulumi up -target="confluent_flink_materialized_table.example", and remove the old Flink API key. Alternatively, in case the old Flink API Key was deleted already, you might need to runpulumi preview -refresh=false -target="confluent_flink_materialized_table.example" -out=rotate-flink-api-keyandpulumi up rotate-flink-api-keyinstead.!> Warning: Use Option #2 to avoid exposing sensitive
credentialsvalue in a state file. When using Option #1, Terraform doesn't encrypt the sensitivecredentialsvalue of theconfluentcloud.FlinkMaterializedTableresource, so you must keep your state file secure to avoid exposing it. Refer to the Terraform documentation to learn more about securing your state file.Note: When using OAuth to authenticate a Flink Materialized Table, if the intended
principal.idis a service account instead of an Identity Pool, make sure the Identity Pool has anAssignerrole binding on the service account. Otherwise, you may encounter a 403 Forbidden error. For example:import * as pulumi from "@pulumi/pulumi"; import * as confluentcloud from "@pulumi/confluentcloud";const identity_pool_assigner = new confluentcloud.RoleBinding("identity-pool-assigner", { principal: "User:pool-abc123", roleName: "Assigner", crnPattern:
${main.resourceName}/service-account=sa-def456, });import pulumi import pulumi_confluentcloud as confluentcloud identity_pool_assigner = confluentcloud.RoleBinding("identity-pool-assigner", principal="User:pool-abc123", role_name="Assigner", crn_pattern=f"{main['resourceName']}/service-account=sa-def456")using System.Collections.Generic; using System.Linq; using Pulumi; using ConfluentCloud = Pulumi.ConfluentCloud; return await Deployment.RunAsync(() => { var identity_pool_assigner = new ConfluentCloud.RoleBinding("identity-pool-assigner", new() { Principal = "User:pool-abc123", RoleName = "Assigner", CrnPattern = $"{main.ResourceName}/service-account=sa-def456", }); });package main import ( "github.com/pulumi/pulumi-confluentcloud/sdk/v2/go/confluentcloud" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := confluentcloud.NewRoleBinding(ctx, "identity-pool-assigner", &confluentcloud.RoleBindingArgs{ Principal: pulumi.String("User:pool-abc123"), RoleName: pulumi.String("Assigner"), CrnPattern: pulumi.Sprintf("%v/service-account=sa-def456", main.ResourceName), }) if err != nil { return err } return nil }) }package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.confluentcloud.RoleBinding; import com.pulumi.confluentcloud.RoleBindingArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var identity_pool_assigner = new RoleBinding("identity-pool-assigner", RoleBindingArgs.builder() .principal("User:pool-abc123") .roleName("Assigner") .crnPattern(String.format("%s/service-account=sa-def456", main.resourceName())) .build()); } }resources: identity-pool-assigner: type: confluentcloud:RoleBinding properties: principal: User:pool-abc123 roleName: Assigner crnPattern: ${main.resourceName}/service-account=sa-def456
- column_
metadata_ stringcomment - Comment for the metadata column.
- column_
metadata_ stringkey - Metadata key of the metadata column.
- column_
metadata_ stringkind - Kind of the metadata column.
- column_
metadata_ stringname - Name of the metadata column.
- column_
metadata_ stringtype - Type of the metadata column.
- column_
metadata_ boolvirtual Whether the metadata column is virtual. Defaults to
false.Note: A Flink API key consists of a key and a secret. Flink API keys are required to interact with Flink Materialized Tables in Confluent Cloud. Each Flink API key is valid for one specific Flink Region.
Note: Use Option #2 to simplify the key rotation process. When using Option #1, to rotate a Flink API key, create a new Flink API key, update the
credentialsblock in all configuration files to use the new Flink API key, runpulumi up -target="confluent_flink_materialized_table.example", and remove the old Flink API key. Alternatively, in case the old Flink API Key was deleted already, you might need to runpulumi preview -refresh=false -target="confluent_flink_materialized_table.example" -out=rotate-flink-api-keyandpulumi up rotate-flink-api-keyinstead.!> Warning: Use Option #2 to avoid exposing sensitive
credentialsvalue in a state file. When using Option #1, Terraform doesn't encrypt the sensitivecredentialsvalue of theconfluentcloud.FlinkMaterializedTableresource, so you must keep your state file secure to avoid exposing it. Refer to the Terraform documentation to learn more about securing your state file.Note: When using OAuth to authenticate a Flink Materialized Table, if the intended
principal.idis a service account instead of an Identity Pool, make sure the Identity Pool has anAssignerrole binding on the service account. Otherwise, you may encounter a 403 Forbidden error. For example:import * as pulumi from "@pulumi/pulumi"; import * as confluentcloud from "@pulumi/confluentcloud";const identity_pool_assigner = new confluentcloud.RoleBinding("identity-pool-assigner", { principal: "User:pool-abc123", roleName: "Assigner", crnPattern:
${main.resourceName}/service-account=sa-def456, });import pulumi import pulumi_confluentcloud as confluentcloud identity_pool_assigner = confluentcloud.RoleBinding("identity-pool-assigner", principal="User:pool-abc123", role_name="Assigner", crn_pattern=f"{main['resourceName']}/service-account=sa-def456")using System.Collections.Generic; using System.Linq; using Pulumi; using ConfluentCloud = Pulumi.ConfluentCloud; return await Deployment.RunAsync(() => { var identity_pool_assigner = new ConfluentCloud.RoleBinding("identity-pool-assigner", new() { Principal = "User:pool-abc123", RoleName = "Assigner", CrnPattern = $"{main.ResourceName}/service-account=sa-def456", }); });package main import ( "github.com/pulumi/pulumi-confluentcloud/sdk/v2/go/confluentcloud" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := confluentcloud.NewRoleBinding(ctx, "identity-pool-assigner", &confluentcloud.RoleBindingArgs{ Principal: pulumi.String("User:pool-abc123"), RoleName: pulumi.String("Assigner"), CrnPattern: pulumi.Sprintf("%v/service-account=sa-def456", main.ResourceName), }) if err != nil { return err } return nil }) }package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.confluentcloud.RoleBinding; import com.pulumi.confluentcloud.RoleBindingArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var identity_pool_assigner = new RoleBinding("identity-pool-assigner", RoleBindingArgs.builder() .principal("User:pool-abc123") .roleName("Assigner") .crnPattern(String.format("%s/service-account=sa-def456", main.resourceName())) .build()); } }resources: identity-pool-assigner: type: confluentcloud:RoleBinding properties: principal: User:pool-abc123 roleName: Assigner crnPattern: ${main.resourceName}/service-account=sa-def456
- column
Metadata StringComment - Comment for the metadata column.
- column
Metadata StringKey - Metadata key of the metadata column.
- column
Metadata StringKind - Kind of the metadata column.
- column
Metadata StringName - Name of the metadata column.
- column
Metadata StringType - Type of the metadata column.
- column
Metadata BooleanVirtual Whether the metadata column is virtual. Defaults to
false.Note: A Flink API key consists of a key and a secret. Flink API keys are required to interact with Flink Materialized Tables in Confluent Cloud. Each Flink API key is valid for one specific Flink Region.
Note: Use Option #2 to simplify the key rotation process. When using Option #1, to rotate a Flink API key, create a new Flink API key, update the
credentialsblock in all configuration files to use the new Flink API key, runpulumi up -target="confluent_flink_materialized_table.example", and remove the old Flink API key. Alternatively, in case the old Flink API Key was deleted already, you might need to runpulumi preview -refresh=false -target="confluent_flink_materialized_table.example" -out=rotate-flink-api-keyandpulumi up rotate-flink-api-keyinstead.!> Warning: Use Option #2 to avoid exposing sensitive
credentialsvalue in a state file. When using Option #1, Terraform doesn't encrypt the sensitivecredentialsvalue of theconfluentcloud.FlinkMaterializedTableresource, so you must keep your state file secure to avoid exposing it. Refer to the Terraform documentation to learn more about securing your state file.Note: When using OAuth to authenticate a Flink Materialized Table, if the intended
principal.idis a service account instead of an Identity Pool, make sure the Identity Pool has anAssignerrole binding on the service account. Otherwise, you may encounter a 403 Forbidden error. For example:import * as pulumi from "@pulumi/pulumi"; import * as confluentcloud from "@pulumi/confluentcloud";const identity_pool_assigner = new confluentcloud.RoleBinding("identity-pool-assigner", { principal: "User:pool-abc123", roleName: "Assigner", crnPattern:
${main.resourceName}/service-account=sa-def456, });import pulumi import pulumi_confluentcloud as confluentcloud identity_pool_assigner = confluentcloud.RoleBinding("identity-pool-assigner", principal="User:pool-abc123", role_name="Assigner", crn_pattern=f"{main['resourceName']}/service-account=sa-def456")using System.Collections.Generic; using System.Linq; using Pulumi; using ConfluentCloud = Pulumi.ConfluentCloud; return await Deployment.RunAsync(() => { var identity_pool_assigner = new ConfluentCloud.RoleBinding("identity-pool-assigner", new() { Principal = "User:pool-abc123", RoleName = "Assigner", CrnPattern = $"{main.ResourceName}/service-account=sa-def456", }); });package main import ( "github.com/pulumi/pulumi-confluentcloud/sdk/v2/go/confluentcloud" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := confluentcloud.NewRoleBinding(ctx, "identity-pool-assigner", &confluentcloud.RoleBindingArgs{ Principal: pulumi.String("User:pool-abc123"), RoleName: pulumi.String("Assigner"), CrnPattern: pulumi.Sprintf("%v/service-account=sa-def456", main.ResourceName), }) if err != nil { return err } return nil }) }package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.confluentcloud.RoleBinding; import com.pulumi.confluentcloud.RoleBindingArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var identity_pool_assigner = new RoleBinding("identity-pool-assigner", RoleBindingArgs.builder() .principal("User:pool-abc123") .roleName("Assigner") .crnPattern(String.format("%s/service-account=sa-def456", main.resourceName())) .build()); } }resources: identity-pool-assigner: type: confluentcloud:RoleBinding properties: principal: User:pool-abc123 roleName: Assigner crnPattern: ${main.resourceName}/service-account=sa-def456
- column
Metadata stringComment - Comment for the metadata column.
- column
Metadata stringKey - Metadata key of the metadata column.
- column
Metadata stringKind - Kind of the metadata column.
- column
Metadata stringName - Name of the metadata column.
- column
Metadata stringType - Type of the metadata column.
- column
Metadata booleanVirtual Whether the metadata column is virtual. Defaults to
false.Note: A Flink API key consists of a key and a secret. Flink API keys are required to interact with Flink Materialized Tables in Confluent Cloud. Each Flink API key is valid for one specific Flink Region.
Note: Use Option #2 to simplify the key rotation process. When using Option #1, to rotate a Flink API key, create a new Flink API key, update the
credentialsblock in all configuration files to use the new Flink API key, runpulumi up -target="confluent_flink_materialized_table.example", and remove the old Flink API key. Alternatively, in case the old Flink API Key was deleted already, you might need to runpulumi preview -refresh=false -target="confluent_flink_materialized_table.example" -out=rotate-flink-api-keyandpulumi up rotate-flink-api-keyinstead.!> Warning: Use Option #2 to avoid exposing sensitive
credentialsvalue in a state file. When using Option #1, Terraform doesn't encrypt the sensitivecredentialsvalue of theconfluentcloud.FlinkMaterializedTableresource, so you must keep your state file secure to avoid exposing it. Refer to the Terraform documentation to learn more about securing your state file.Note: When using OAuth to authenticate a Flink Materialized Table, if the intended
principal.idis a service account instead of an Identity Pool, make sure the Identity Pool has anAssignerrole binding on the service account. Otherwise, you may encounter a 403 Forbidden error. For example:import * as pulumi from "@pulumi/pulumi"; import * as confluentcloud from "@pulumi/confluentcloud";const identity_pool_assigner = new confluentcloud.RoleBinding("identity-pool-assigner", { principal: "User:pool-abc123", roleName: "Assigner", crnPattern:
${main.resourceName}/service-account=sa-def456, });import pulumi import pulumi_confluentcloud as confluentcloud identity_pool_assigner = confluentcloud.RoleBinding("identity-pool-assigner", principal="User:pool-abc123", role_name="Assigner", crn_pattern=f"{main['resourceName']}/service-account=sa-def456")using System.Collections.Generic; using System.Linq; using Pulumi; using ConfluentCloud = Pulumi.ConfluentCloud; return await Deployment.RunAsync(() => { var identity_pool_assigner = new ConfluentCloud.RoleBinding("identity-pool-assigner", new() { Principal = "User:pool-abc123", RoleName = "Assigner", CrnPattern = $"{main.ResourceName}/service-account=sa-def456", }); });package main import ( "github.com/pulumi/pulumi-confluentcloud/sdk/v2/go/confluentcloud" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := confluentcloud.NewRoleBinding(ctx, "identity-pool-assigner", &confluentcloud.RoleBindingArgs{ Principal: pulumi.String("User:pool-abc123"), RoleName: pulumi.String("Assigner"), CrnPattern: pulumi.Sprintf("%v/service-account=sa-def456", main.ResourceName), }) if err != nil { return err } return nil }) }package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.confluentcloud.RoleBinding; import com.pulumi.confluentcloud.RoleBindingArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var identity_pool_assigner = new RoleBinding("identity-pool-assigner", RoleBindingArgs.builder() .principal("User:pool-abc123") .roleName("Assigner") .crnPattern(String.format("%s/service-account=sa-def456", main.resourceName())) .build()); } }resources: identity-pool-assigner: type: confluentcloud:RoleBinding properties: principal: User:pool-abc123 roleName: Assigner crnPattern: ${main.resourceName}/service-account=sa-def456
- column_
metadata_ strcomment - Comment for the metadata column.
- column_
metadata_ strkey - Metadata key of the metadata column.
- column_
metadata_ strkind - Kind of the metadata column.
- column_
metadata_ strname - Name of the metadata column.
- column_
metadata_ strtype - Type of the metadata column.
- column_
metadata_ boolvirtual Whether the metadata column is virtual. Defaults to
false.Note: A Flink API key consists of a key and a secret. Flink API keys are required to interact with Flink Materialized Tables in Confluent Cloud. Each Flink API key is valid for one specific Flink Region.
Note: Use Option #2 to simplify the key rotation process. When using Option #1, to rotate a Flink API key, create a new Flink API key, update the
credentialsblock in all configuration files to use the new Flink API key, runpulumi up -target="confluent_flink_materialized_table.example", and remove the old Flink API key. Alternatively, in case the old Flink API Key was deleted already, you might need to runpulumi preview -refresh=false -target="confluent_flink_materialized_table.example" -out=rotate-flink-api-keyandpulumi up rotate-flink-api-keyinstead.!> Warning: Use Option #2 to avoid exposing sensitive
credentialsvalue in a state file. When using Option #1, Terraform doesn't encrypt the sensitivecredentialsvalue of theconfluentcloud.FlinkMaterializedTableresource, so you must keep your state file secure to avoid exposing it. Refer to the Terraform documentation to learn more about securing your state file.Note: When using OAuth to authenticate a Flink Materialized Table, if the intended
principal.idis a service account instead of an Identity Pool, make sure the Identity Pool has anAssignerrole binding on the service account. Otherwise, you may encounter a 403 Forbidden error. For example:import * as pulumi from "@pulumi/pulumi"; import * as confluentcloud from "@pulumi/confluentcloud";const identity_pool_assigner = new confluentcloud.RoleBinding("identity-pool-assigner", { principal: "User:pool-abc123", roleName: "Assigner", crnPattern:
${main.resourceName}/service-account=sa-def456, });import pulumi import pulumi_confluentcloud as confluentcloud identity_pool_assigner = confluentcloud.RoleBinding("identity-pool-assigner", principal="User:pool-abc123", role_name="Assigner", crn_pattern=f"{main['resourceName']}/service-account=sa-def456")using System.Collections.Generic; using System.Linq; using Pulumi; using ConfluentCloud = Pulumi.ConfluentCloud; return await Deployment.RunAsync(() => { var identity_pool_assigner = new ConfluentCloud.RoleBinding("identity-pool-assigner", new() { Principal = "User:pool-abc123", RoleName = "Assigner", CrnPattern = $"{main.ResourceName}/service-account=sa-def456", }); });package main import ( "github.com/pulumi/pulumi-confluentcloud/sdk/v2/go/confluentcloud" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := confluentcloud.NewRoleBinding(ctx, "identity-pool-assigner", &confluentcloud.RoleBindingArgs{ Principal: pulumi.String("User:pool-abc123"), RoleName: pulumi.String("Assigner"), CrnPattern: pulumi.Sprintf("%v/service-account=sa-def456", main.ResourceName), }) if err != nil { return err } return nil }) }package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.confluentcloud.RoleBinding; import com.pulumi.confluentcloud.RoleBindingArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var identity_pool_assigner = new RoleBinding("identity-pool-assigner", RoleBindingArgs.builder() .principal("User:pool-abc123") .roleName("Assigner") .crnPattern(String.format("%s/service-account=sa-def456", main.resourceName())) .build()); } }resources: identity-pool-assigner: type: confluentcloud:RoleBinding properties: principal: User:pool-abc123 roleName: Assigner crnPattern: ${main.resourceName}/service-account=sa-def456
- column
Metadata StringComment - Comment for the metadata column.
- column
Metadata StringKey - Metadata key of the metadata column.
- column
Metadata StringKind - Kind of the metadata column.
- column
Metadata StringName - Name of the metadata column.
- column
Metadata StringType - Type of the metadata column.
- column
Metadata BooleanVirtual Whether the metadata column is virtual. Defaults to
false.Note: A Flink API key consists of a key and a secret. Flink API keys are required to interact with Flink Materialized Tables in Confluent Cloud. Each Flink API key is valid for one specific Flink Region.
Note: Use Option #2 to simplify the key rotation process. When using Option #1, to rotate a Flink API key, create a new Flink API key, update the
credentialsblock in all configuration files to use the new Flink API key, runpulumi up -target="confluent_flink_materialized_table.example", and remove the old Flink API key. Alternatively, in case the old Flink API Key was deleted already, you might need to runpulumi preview -refresh=false -target="confluent_flink_materialized_table.example" -out=rotate-flink-api-keyandpulumi up rotate-flink-api-keyinstead.!> Warning: Use Option #2 to avoid exposing sensitive
credentialsvalue in a state file. When using Option #1, Terraform doesn't encrypt the sensitivecredentialsvalue of theconfluentcloud.FlinkMaterializedTableresource, so you must keep your state file secure to avoid exposing it. Refer to the Terraform documentation to learn more about securing your state file.Note: When using OAuth to authenticate a Flink Materialized Table, if the intended
principal.idis a service account instead of an Identity Pool, make sure the Identity Pool has anAssignerrole binding on the service account. Otherwise, you may encounter a 403 Forbidden error. For example:import * as pulumi from "@pulumi/pulumi"; import * as confluentcloud from "@pulumi/confluentcloud";const identity_pool_assigner = new confluentcloud.RoleBinding("identity-pool-assigner", { principal: "User:pool-abc123", roleName: "Assigner", crnPattern:
${main.resourceName}/service-account=sa-def456, });import pulumi import pulumi_confluentcloud as confluentcloud identity_pool_assigner = confluentcloud.RoleBinding("identity-pool-assigner", principal="User:pool-abc123", role_name="Assigner", crn_pattern=f"{main['resourceName']}/service-account=sa-def456")using System.Collections.Generic; using System.Linq; using Pulumi; using ConfluentCloud = Pulumi.ConfluentCloud; return await Deployment.RunAsync(() => { var identity_pool_assigner = new ConfluentCloud.RoleBinding("identity-pool-assigner", new() { Principal = "User:pool-abc123", RoleName = "Assigner", CrnPattern = $"{main.ResourceName}/service-account=sa-def456", }); });package main import ( "github.com/pulumi/pulumi-confluentcloud/sdk/v2/go/confluentcloud" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := confluentcloud.NewRoleBinding(ctx, "identity-pool-assigner", &confluentcloud.RoleBindingArgs{ Principal: pulumi.String("User:pool-abc123"), RoleName: pulumi.String("Assigner"), CrnPattern: pulumi.Sprintf("%v/service-account=sa-def456", main.ResourceName), }) if err != nil { return err } return nil }) }package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.confluentcloud.RoleBinding; import com.pulumi.confluentcloud.RoleBindingArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var identity_pool_assigner = new RoleBinding("identity-pool-assigner", RoleBindingArgs.builder() .principal("User:pool-abc123") .roleName("Assigner") .crnPattern(String.format("%s/service-account=sa-def456", main.resourceName())) .build()); } }resources: identity-pool-assigner: type: confluentcloud:RoleBinding properties: principal: User:pool-abc123 roleName: Assigner crnPattern: ${main.resourceName}/service-account=sa-def456
FlinkMaterializedTableColumnColumnsPhysical, FlinkMaterializedTableColumnColumnsPhysicalArgs
- Column
Physical stringComment - Comment for the physical column.
- Column
Physical stringKind - Kind of the physical column.
- Column
Physical stringName - Name of the physical column.
- Column
Physical stringType - Type of the physical column.
- Column
Physical stringComment - Comment for the physical column.
- Column
Physical stringKind - Kind of the physical column.
- Column
Physical stringName - Name of the physical column.
- Column
Physical stringType - Type of the physical column.
- column_
physical_ stringcomment - Comment for the physical column.
- column_
physical_ stringkind - Kind of the physical column.
- column_
physical_ stringname - Name of the physical column.
- column_
physical_ stringtype - Type of the physical column.
- column
Physical StringComment - Comment for the physical column.
- column
Physical StringKind - Kind of the physical column.
- column
Physical StringName - Name of the physical column.
- column
Physical StringType - Type of the physical column.
- column
Physical stringComment - Comment for the physical column.
- column
Physical stringKind - Kind of the physical column.
- column
Physical stringName - Name of the physical column.
- column
Physical stringType - Type of the physical column.
- column_
physical_ strcomment - Comment for the physical column.
- column_
physical_ strkind - Kind of the physical column.
- column_
physical_ strname - Name of the physical column.
- column_
physical_ strtype - Type of the physical column.
- column
Physical StringComment - Comment for the physical column.
- column
Physical StringKind - Kind of the physical column.
- column
Physical StringName - Name of the physical column.
- column
Physical StringType - Type of the physical column.
FlinkMaterializedTableComputePool, FlinkMaterializedTableComputePoolArgs
- Id string
- The ID of the Flink Compute Pool, for example,
lfcp-abc123.
- Id string
- The ID of the Flink Compute Pool, for example,
lfcp-abc123.
- id string
- The ID of the Flink Compute Pool, for example,
lfcp-abc123.
- id String
- The ID of the Flink Compute Pool, for example,
lfcp-abc123.
- id string
- The ID of the Flink Compute Pool, for example,
lfcp-abc123.
- id str
- The ID of the Flink Compute Pool, for example,
lfcp-abc123.
- id String
- The ID of the Flink Compute Pool, for example,
lfcp-abc123.
FlinkMaterializedTableConstraint, FlinkMaterializedTableConstraintArgs
FlinkMaterializedTableCredentials, FlinkMaterializedTableCredentialsArgs
FlinkMaterializedTableDistribution, FlinkMaterializedTableDistributionArgs
- Bucket
Count int - The number of buckets the table is distributed by.
- Keys List<string>
- The names of the columns the table is distributed by.
- Bucket
Count int - The number of buckets the table is distributed by.
- Keys []string
- The names of the columns the table is distributed by.
- bucket_
count number - The number of buckets the table is distributed by.
- keys list(string)
- The names of the columns the table is distributed by.
- bucket
Count Integer - The number of buckets the table is distributed by.
- keys List<String>
- The names of the columns the table is distributed by.
- bucket
Count number - The number of buckets the table is distributed by.
- keys string[]
- The names of the columns the table is distributed by.
- bucket_
count int - The number of buckets the table is distributed by.
- keys Sequence[str]
- The names of the columns the table is distributed by.
- bucket
Count Number - The number of buckets the table is distributed by.
- keys List<String>
- The names of the columns the table is distributed by.
FlinkMaterializedTableEnvironment, FlinkMaterializedTableEnvironmentArgs
- Id string
- The ID of the Environment, for example,
env-abc123.
- Id string
- The ID of the Environment, for example,
env-abc123.
- id string
- The ID of the Environment, for example,
env-abc123.
- id String
- The ID of the Environment, for example,
env-abc123.
- id string
- The ID of the Environment, for example,
env-abc123.
- id str
- The ID of the Environment, for example,
env-abc123.
- id String
- The ID of the Environment, for example,
env-abc123.
FlinkMaterializedTableKafkaCluster, FlinkMaterializedTableKafkaClusterArgs
- Id string
- The ID of the Kafka Cluster hosting the Materialized Table's topic, for example,
lkc-abc123.
- Id string
- The ID of the Kafka Cluster hosting the Materialized Table's topic, for example,
lkc-abc123.
- id string
- The ID of the Kafka Cluster hosting the Materialized Table's topic, for example,
lkc-abc123.
- id String
- The ID of the Kafka Cluster hosting the Materialized Table's topic, for example,
lkc-abc123.
- id string
- The ID of the Kafka Cluster hosting the Materialized Table's topic, for example,
lkc-abc123.
- id str
- The ID of the Kafka Cluster hosting the Materialized Table's topic, for example,
lkc-abc123.
- id String
- The ID of the Kafka Cluster hosting the Materialized Table's topic, for example,
lkc-abc123.
FlinkMaterializedTableOrganization, FlinkMaterializedTableOrganizationArgs
- Id string
- The ID of the Organization, for example,
1111aaaa-11aa-11aa-11aa-111111aaaaaa.
- Id string
- The ID of the Organization, for example,
1111aaaa-11aa-11aa-11aa-111111aaaaaa.
- id string
- The ID of the Organization, for example,
1111aaaa-11aa-11aa-11aa-111111aaaaaa.
- id String
- The ID of the Organization, for example,
1111aaaa-11aa-11aa-11aa-111111aaaaaa.
- id string
- The ID of the Organization, for example,
1111aaaa-11aa-11aa-11aa-111111aaaaaa.
- id str
- The ID of the Organization, for example,
1111aaaa-11aa-11aa-11aa-111111aaaaaa.
- id String
- The ID of the Organization, for example,
1111aaaa-11aa-11aa-11aa-111111aaaaaa.
FlinkMaterializedTablePrincipal, FlinkMaterializedTablePrincipalArgs
- Id string
- The ID of the Principal the Flink Materialized Table runs as, for example,
sa-abc123.
- Id string
- The ID of the Principal the Flink Materialized Table runs as, for example,
sa-abc123.
- id string
- The ID of the Principal the Flink Materialized Table runs as, for example,
sa-abc123.
- id String
- The ID of the Principal the Flink Materialized Table runs as, for example,
sa-abc123.
- id string
- The ID of the Principal the Flink Materialized Table runs as, for example,
sa-abc123.
- id str
- The ID of the Principal the Flink Materialized Table runs as, for example,
sa-abc123.
- id String
- The ID of the Principal the Flink Materialized Table runs as, for example,
sa-abc123.
FlinkMaterializedTableWatermark, FlinkMaterializedTableWatermarkArgs
- Column string
- The name of the watermark column.
- Expression string
- The watermark expression, for example,
eventTime - INTERVAL '5' SECOND.
- Column string
- The name of the watermark column.
- Expression string
- The watermark expression, for example,
eventTime - INTERVAL '5' SECOND.
- column string
- The name of the watermark column.
- expression string
- The watermark expression, for example,
eventTime - INTERVAL '5' SECOND.
- column String
- The name of the watermark column.
- expression String
- The watermark expression, for example,
eventTime - INTERVAL '5' SECOND.
- column string
- The name of the watermark column.
- expression string
- The watermark expression, for example,
eventTime - INTERVAL '5' SECOND.
- column str
- The name of the watermark column.
- expression str
- The watermark expression, for example,
eventTime - INTERVAL '5' SECOND.
- column String
- The name of the watermark column.
- expression String
- The watermark expression, for example,
eventTime - INTERVAL '5' SECOND.
Import
You can import a Flink Materialized Table by using the Materialized Table name, for example:
Option #1: Manage multiple Flink Materialized Tables in the same Pulumi Stack
$ export IMPORT_CONFLUENT_ORGANIZATION_ID="<organization_id>"
$ export IMPORT_CONFLUENT_ENVIRONMENT_ID="<environment_id>"
$ export IMPORT_FLINK_COMPUTE_POOL_ID="<flink_compute_pool_id>"
$ export IMPORT_FLINK_API_KEY="<flink_api_key>"
$ export IMPORT_FLINK_API_SECRET="<flink_api_secret>"
$ export IMPORT_FLINK_REST_ENDPOINT="<flink_rest_endpoint>"
$ export IMPORT_FLINK_PRINCIPAL_ID="<flink_principal_id>"
$ pulumi import confluentcloud:index/flinkMaterializedTable:FlinkMaterializedTable example env-abc123/lkc-xyz123/my_materialized_table
Option #2: Manage a single Flink Materialized Table in the same Pulumi Stack
$ pulumi import confluentcloud:index/flinkMaterializedTable:FlinkMaterializedTable example env-abc123/lkc-xyz123/my_materialized_table
!> Warning: Do not forget to delete terminal command history afterwards for security purposes.
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Confluent Cloud pulumi/pulumi-confluentcloud
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
confluentTerraform Provider.
published on Friday, May 15, 2026 by Pulumi
