1. Packages
  2. Packages
  3. Redpanda Provider
  4. API Docs
  5. ShadowLink
Viewing docs for redpanda 2.2.1
published on Tuesday, Aug 11, 2026 by redpanda-data
Viewing docs for redpanda 2.2.1
published on Tuesday, Aug 11, 2026 by redpanda-data

    ShadowLink configures asynchronous data replication from a source Redpanda cluster to a shadow (destination) cluster. The link is configuration on the shadow cluster — no infrastructure is provisioned. Each broker in the shadow cluster runs internal replication tasks that pull from the source over the standard Kafka API. The shadow cluster must have enable_shadow_linking=true set in its cluster_configuration.custom_properties_json.

    A shadow link is configuration on the destination (“shadow”) cluster — no infrastructure is provisioned. Each broker in the shadow cluster runs internal replication tasks that pull from the source over the standard Kafka API. The source cluster is unaware of the link aside from increased fetch traffic.

    enable_shadow_linking=true must be set on the shadow cluster before this resource can be created. Set it via redpanda_cluster.cluster_configuration.custom_properties_json.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as redpanda from "@pulumi/redpanda";
    
    const config = new pulumi.Config();
    // SCRAM password for the source cluster (will be stored as a dataplane secret)
    const sourcePassword = config.require("sourcePassword");
    // Schema Registry HTTP Basic auth password for the source cluster
    const sourceSchemaRegistryPassword = config.require("sourceSchemaRegistryPassword");
    const example = new redpanda.ResourceGroup("example", {name: "example-resource-group"});
    const shadow = new redpanda.Network("shadow", {
        name: "example-shadow-network",
        resourceGroupId: example.id,
        cloudProvider: "aws",
        region: "us-west-2",
        clusterType: "byoc",
        cidrBlock: "10.1.0.0/20",
    });
    // The shadow cluster runs the link. enable_shadow_linking must be set on this cluster.
    const shadowCluster = new redpanda.Cluster("shadow", {
        name: "example-shadow",
        resourceGroupId: example.id,
        networkId: shadow.id,
        cloudProvider: "aws",
        region: "us-west-2",
        clusterType: "byoc",
        connectionType: "public",
        throughputTier: "tier-1-aws-v2-arm",
        zones: [
            "us-west-2a",
            "us-west-2b",
            "us-west-2c",
        ],
        clusterConfiguration: {
            customPropertiesJson: JSON.stringify({
                enable_shadow_linking: true,
            }),
        },
    });
    // Store the SCRAM password used by the shadow link in the shadow cluster's secret store.
    const sourcePasswordSecret = new redpanda.Secret("source_password", {
        name: "SOURCE_PASSWORD",
        secretData: sourcePassword,
        secretDataVersion: 1,
        scopes: ["SCOPE_REDPANDA_CLUSTER"],
        clusterApiUrl: shadowCluster.clusterApiUrl,
        allowDeletion: true,
    });
    // Schema Registry HTTP Basic auth password, stored alongside the SCRAM password.
    const sourceSchemaRegistryPasswordSecret = new redpanda.Secret("source_schema_registry_password", {
        name: "SOURCE_SR_PASSWORD",
        secretData: sourceSchemaRegistryPassword,
        secretDataVersion: 1,
        scopes: ["SCOPE_REDPANDA_CLUSTER"],
        clusterApiUrl: shadowCluster.clusterApiUrl,
        allowDeletion: true,
    });
    const exampleShadowLink = new redpanda.ShadowLink("example", {
        name: "example-link",
        shadowRedpandaId: shadowCluster.id,
        sourceRedpandaId: "redpanda-id-of-source-cluster",
        clientOptions: {
            authenticationConfiguration: {
                scramConfiguration: {
                    scramMechanism: "SCRAM_SHA_256",
                    username: "shadow-link-user",
                    password: pulumi.interpolate`${secrets.${sourcePasswordSecret.name}}`,
                },
            },
        },
        schemaRegistrySyncOptions: {
            shadowSchemaRegistryApi: {
                sourceUrl: "https://source-schema-registry.example.com:8081",
                authOptions: {
                    basic: {
                        username: "schema-registry-user",
                        password: pulumi.interpolate`${secrets.${sourceSchemaRegistryPasswordSecret.name}}`,
                    },
                },
                tailInterval: "10s",
                fullSyncInterval: "5m0s",
                maxSourceRequestsPerSecond: 30,
                sourceFilter: {
                    contexts: [
                        ".",
                        ".prod",
                    ],
                },
                destination: {
                    identity: true,
                },
                unsupportedSchemaFeaturePolicy: "FAIL",
            },
        },
        allowDeletion: true,
    });
    
    import pulumi
    import json
    import pulumi_redpanda as redpanda
    
    config = pulumi.Config()
    # SCRAM password for the source cluster (will be stored as a dataplane secret)
    source_password = config.require("sourcePassword")
    # Schema Registry HTTP Basic auth password for the source cluster
    source_schema_registry_password = config.require("sourceSchemaRegistryPassword")
    example = redpanda.ResourceGroup("example", name="example-resource-group")
    shadow = redpanda.Network("shadow",
        name="example-shadow-network",
        resource_group_id=example.id,
        cloud_provider="aws",
        region="us-west-2",
        cluster_type="byoc",
        cidr_block="10.1.0.0/20")
    # The shadow cluster runs the link. enable_shadow_linking must be set on this cluster.
    shadow_cluster = redpanda.Cluster("shadow",
        name="example-shadow",
        resource_group_id=example.id,
        network_id=shadow.id,
        cloud_provider="aws",
        region="us-west-2",
        cluster_type="byoc",
        connection_type="public",
        throughput_tier="tier-1-aws-v2-arm",
        zones=[
            "us-west-2a",
            "us-west-2b",
            "us-west-2c",
        ],
        cluster_configuration={
            "custom_properties_json": json.dumps({
                "enable_shadow_linking": True,
            }),
        })
    # Store the SCRAM password used by the shadow link in the shadow cluster's secret store.
    source_password_secret = redpanda.Secret("source_password",
        name="SOURCE_PASSWORD",
        secret_data=source_password,
        secret_data_version=1,
        scopes=["SCOPE_REDPANDA_CLUSTER"],
        cluster_api_url=shadow_cluster.cluster_api_url,
        allow_deletion=True)
    # Schema Registry HTTP Basic auth password, stored alongside the SCRAM password.
    source_schema_registry_password_secret = redpanda.Secret("source_schema_registry_password",
        name="SOURCE_SR_PASSWORD",
        secret_data=source_schema_registry_password,
        secret_data_version=1,
        scopes=["SCOPE_REDPANDA_CLUSTER"],
        cluster_api_url=shadow_cluster.cluster_api_url,
        allow_deletion=True)
    example_shadow_link = redpanda.ShadowLink("example",
        name="example-link",
        shadow_redpanda_id=shadow_cluster.id,
        source_redpanda_id="redpanda-id-of-source-cluster",
        client_options={
            "authentication_configuration": {
                "scram_configuration": {
                    "scram_mechanism": "SCRAM_SHA_256",
                    "username": "shadow-link-user",
                    "password": source_password_secret.name.apply(lambda name: f"${{secrets.{name}}}"),
                },
            },
        },
        schema_registry_sync_options={
            "shadow_schema_registry_api": {
                "source_url": "https://source-schema-registry.example.com:8081",
                "auth_options": {
                    "basic": {
                        "username": "schema-registry-user",
                        "password": source_schema_registry_password_secret.name.apply(lambda name: f"${{secrets.{name}}}"),
                    },
                },
                "tail_interval": "10s",
                "full_sync_interval": "5m0s",
                "max_source_requests_per_second": 30,
                "source_filter": {
                    "contexts": [
                        ".",
                        ".prod",
                    ],
                },
                "destination": {
                    "identity": True,
                },
                "unsupported_schema_feature_policy": "FAIL",
            },
        },
        allow_deletion=True)
    
    package main
    
    import (
    	"encoding/json"
    	"fmt"
    
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/redpanda/v2/redpanda"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		cfg := config.New(ctx, "")
    		// SCRAM password for the source cluster (will be stored as a dataplane secret)
    		sourcePassword := cfg.Require("sourcePassword")
    		// Schema Registry HTTP Basic auth password for the source cluster
    		sourceSchemaRegistryPassword := cfg.Require("sourceSchemaRegistryPassword")
    		example, err := redpanda.NewResourceGroup(ctx, "example", &redpanda.ResourceGroupArgs{
    			Name: pulumi.String("example-resource-group"),
    		})
    		if err != nil {
    			return err
    		}
    		shadow, err := redpanda.NewNetwork(ctx, "shadow", &redpanda.NetworkArgs{
    			Name:            pulumi.String("example-shadow-network"),
    			ResourceGroupId: example.ID(),
    			CloudProvider:   pulumi.String("aws"),
    			Region:          pulumi.String("us-west-2"),
    			ClusterType:     pulumi.String("byoc"),
    			CidrBlock:       pulumi.String("10.1.0.0/20"),
    		})
    		if err != nil {
    			return err
    		}
    		tmpJSON0, err := json.Marshal(map[string]interface{}{
    			"enable_shadow_linking": true,
    		})
    		if err != nil {
    			return err
    		}
    		json0 := string(tmpJSON0)
    		// The shadow cluster runs the link. enable_shadow_linking must be set on this cluster.
    		shadowCluster, err := redpanda.NewCluster(ctx, "shadow", &redpanda.ClusterArgs{
    			Name:            pulumi.String("example-shadow"),
    			ResourceGroupId: example.ID(),
    			NetworkId:       shadow.ID(),
    			CloudProvider:   pulumi.String("aws"),
    			Region:          pulumi.String("us-west-2"),
    			ClusterType:     pulumi.String("byoc"),
    			ConnectionType:  pulumi.String("public"),
    			ThroughputTier:  pulumi.String("tier-1-aws-v2-arm"),
    			Zones: pulumi.StringArray{
    				pulumi.String("us-west-2a"),
    				pulumi.String("us-west-2b"),
    				pulumi.String("us-west-2c"),
    			},
    			ClusterConfiguration: &redpanda.ClusterClusterConfigurationArgs{
    				CustomPropertiesJson: pulumi.String(json0),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Store the SCRAM password used by the shadow link in the shadow cluster's secret store.
    		sourcePasswordSecret, err := redpanda.NewSecret(ctx, "source_password", &redpanda.SecretArgs{
    			Name:              pulumi.String("SOURCE_PASSWORD"),
    			SecretData:        pulumi.String(sourcePassword),
    			SecretDataVersion: pulumi.Float64(1),
    			Scopes: pulumi.StringArray{
    				pulumi.String("SCOPE_REDPANDA_CLUSTER"),
    			},
    			ClusterApiUrl: shadowCluster.ClusterApiUrl,
    			AllowDeletion: pulumi.Bool(true),
    		})
    		if err != nil {
    			return err
    		}
    		// Schema Registry HTTP Basic auth password, stored alongside the SCRAM password.
    		sourceSchemaRegistryPasswordSecret, err := redpanda.NewSecret(ctx, "source_schema_registry_password", &redpanda.SecretArgs{
    			Name:              pulumi.String("SOURCE_SR_PASSWORD"),
    			SecretData:        pulumi.String(sourceSchemaRegistryPassword),
    			SecretDataVersion: pulumi.Float64(1),
    			Scopes: pulumi.StringArray{
    				pulumi.String("SCOPE_REDPANDA_CLUSTER"),
    			},
    			ClusterApiUrl: shadowCluster.ClusterApiUrl,
    			AllowDeletion: pulumi.Bool(true),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = redpanda.NewShadowLink(ctx, "example", &redpanda.ShadowLinkArgs{
    			Name:             pulumi.String("example-link"),
    			ShadowRedpandaId: shadowCluster.ID(),
    			SourceRedpandaId: pulumi.String("redpanda-id-of-source-cluster"),
    			ClientOptions: &redpanda.ShadowLinkClientOptionsArgs{
    				AuthenticationConfiguration: &redpanda.ShadowLinkClientOptionsAuthenticationConfigurationArgs{
    					ScramConfiguration: &redpanda.ShadowLinkClientOptionsAuthenticationConfigurationScramConfigurationArgs{
    						ScramMechanism: pulumi.String("SCRAM_SHA_256"),
    						Username:       pulumi.String("shadow-link-user"),
    						Password: sourcePasswordSecret.Name.ApplyT(func(name string) (string, error) {
    							return fmt.Sprintf("${secrets.%v}", name), nil
    						}).(pulumi.StringOutput),
    					},
    				},
    			},
    			SchemaRegistrySyncOptions: &redpanda.ShadowLinkSchemaRegistrySyncOptionsArgs{
    				ShadowSchemaRegistryApi: &redpanda.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiArgs{
    					SourceUrl: pulumi.String("https://source-schema-registry.example.com:8081"),
    					AuthOptions: &redpanda.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptionsArgs{
    						Basic: &redpanda.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptionsBasicArgs{
    							Username: pulumi.String("schema-registry-user"),
    							Password: sourceSchemaRegistryPasswordSecret.Name.ApplyT(func(name string) (string, error) {
    								return fmt.Sprintf("${secrets.%v}", name), nil
    							}).(pulumi.StringOutput),
    						},
    					},
    					TailInterval:               pulumi.String("10s"),
    					FullSyncInterval:           pulumi.String("5m0s"),
    					MaxSourceRequestsPerSecond: pulumi.Float64(30),
    					SourceFilter: &redpanda.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiSourceFilterArgs{
    						Contexts: pulumi.StringArray{
    							pulumi.String("."),
    							pulumi.String(".prod"),
    						},
    					},
    					Destination: &redpanda.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationArgs{
    						Identity: pulumi.Bool(true),
    					},
    					UnsupportedSchemaFeaturePolicy: pulumi.String("FAIL"),
    				},
    			},
    			AllowDeletion: pulumi.Bool(true),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using System.Text.Json;
    using Pulumi;
    using Redpanda = Pulumi.Redpanda;
    
    return await Deployment.RunAsync(() => 
    {
        var config = new Config();
        // SCRAM password for the source cluster (will be stored as a dataplane secret)
        var sourcePassword = config.Require("sourcePassword");
        // Schema Registry HTTP Basic auth password for the source cluster
        var sourceSchemaRegistryPassword = config.Require("sourceSchemaRegistryPassword");
        var example = new Redpanda.ResourceGroup("example", new()
        {
            Name = "example-resource-group",
        });
    
        var shadow = new Redpanda.Network("shadow", new()
        {
            Name = "example-shadow-network",
            ResourceGroupId = example.Id,
            CloudProvider = "aws",
            Region = "us-west-2",
            ClusterType = "byoc",
            CidrBlock = "10.1.0.0/20",
        });
    
        // The shadow cluster runs the link. enable_shadow_linking must be set on this cluster.
        var shadowCluster = new Redpanda.Cluster("shadow", new()
        {
            Name = "example-shadow",
            ResourceGroupId = example.Id,
            NetworkId = shadow.Id,
            CloudProvider = "aws",
            Region = "us-west-2",
            ClusterType = "byoc",
            ConnectionType = "public",
            ThroughputTier = "tier-1-aws-v2-arm",
            Zones = new[]
            {
                "us-west-2a",
                "us-west-2b",
                "us-west-2c",
            },
            ClusterConfiguration = new Redpanda.Inputs.ClusterClusterConfigurationArgs
            {
                CustomPropertiesJson = JsonSerializer.Serialize(new Dictionary<string, object?>
                {
                    ["enable_shadow_linking"] = true,
                }),
            },
        });
    
        // Store the SCRAM password used by the shadow link in the shadow cluster's secret store.
        var sourcePasswordSecret = new Redpanda.Secret("source_password", new()
        {
            Name = "SOURCE_PASSWORD",
            SecretData = sourcePassword,
            SecretDataVersion = 1,
            Scopes = new[]
            {
                "SCOPE_REDPANDA_CLUSTER",
            },
            ClusterApiUrl = shadowCluster.ClusterApiUrl,
            AllowDeletion = true,
        });
    
        // Schema Registry HTTP Basic auth password, stored alongside the SCRAM password.
        var sourceSchemaRegistryPasswordSecret = new Redpanda.Secret("source_schema_registry_password", new()
        {
            Name = "SOURCE_SR_PASSWORD",
            SecretData = sourceSchemaRegistryPassword,
            SecretDataVersion = 1,
            Scopes = new[]
            {
                "SCOPE_REDPANDA_CLUSTER",
            },
            ClusterApiUrl = shadowCluster.ClusterApiUrl,
            AllowDeletion = true,
        });
    
        var exampleShadowLink = new Redpanda.ShadowLink("example", new()
        {
            Name = "example-link",
            ShadowRedpandaId = shadowCluster.Id,
            SourceRedpandaId = "redpanda-id-of-source-cluster",
            ClientOptions = new Redpanda.Inputs.ShadowLinkClientOptionsArgs
            {
                AuthenticationConfiguration = new Redpanda.Inputs.ShadowLinkClientOptionsAuthenticationConfigurationArgs
                {
                    ScramConfiguration = new Redpanda.Inputs.ShadowLinkClientOptionsAuthenticationConfigurationScramConfigurationArgs
                    {
                        ScramMechanism = "SCRAM_SHA_256",
                        Username = "shadow-link-user",
                        Password = sourcePasswordSecret.Name.Apply(name => $"${{secrets.{name}}}"),
                    },
                },
            },
            SchemaRegistrySyncOptions = new Redpanda.Inputs.ShadowLinkSchemaRegistrySyncOptionsArgs
            {
                ShadowSchemaRegistryApi = new Redpanda.Inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiArgs
                {
                    SourceUrl = "https://source-schema-registry.example.com:8081",
                    AuthOptions = new Redpanda.Inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptionsArgs
                    {
                        Basic = new Redpanda.Inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptionsBasicArgs
                        {
                            Username = "schema-registry-user",
                            Password = sourceSchemaRegistryPasswordSecret.Name.Apply(name => $"${{secrets.{name}}}"),
                        },
                    },
                    TailInterval = "10s",
                    FullSyncInterval = "5m0s",
                    MaxSourceRequestsPerSecond = 30,
                    SourceFilter = new Redpanda.Inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiSourceFilterArgs
                    {
                        Contexts = new[]
                        {
                            ".",
                            ".prod",
                        },
                    },
                    Destination = new Redpanda.Inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationArgs
                    {
                        Identity = true,
                    },
                    UnsupportedSchemaFeaturePolicy = "FAIL",
                },
            },
            AllowDeletion = true,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.redpanda.ResourceGroup;
    import com.pulumi.redpanda.ResourceGroupArgs;
    import com.pulumi.redpanda.Network;
    import com.pulumi.redpanda.NetworkArgs;
    import com.pulumi.redpanda.Cluster;
    import com.pulumi.redpanda.ClusterArgs;
    import com.pulumi.redpanda.inputs.ClusterClusterConfigurationArgs;
    import com.pulumi.redpanda.Secret;
    import com.pulumi.redpanda.SecretArgs;
    import com.pulumi.redpanda.ShadowLink;
    import com.pulumi.redpanda.ShadowLinkArgs;
    import com.pulumi.redpanda.inputs.ShadowLinkClientOptionsArgs;
    import com.pulumi.redpanda.inputs.ShadowLinkClientOptionsAuthenticationConfigurationArgs;
    import com.pulumi.redpanda.inputs.ShadowLinkClientOptionsAuthenticationConfigurationScramConfigurationArgs;
    import com.pulumi.redpanda.inputs.ShadowLinkSchemaRegistrySyncOptionsArgs;
    import com.pulumi.redpanda.inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiArgs;
    import com.pulumi.redpanda.inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptionsArgs;
    import com.pulumi.redpanda.inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptionsBasicArgs;
    import com.pulumi.redpanda.inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiSourceFilterArgs;
    import com.pulumi.redpanda.inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationArgs;
    import static com.pulumi.codegen.internal.Serialization.*;
    import java.util.List;
    import java.util.ArrayList;
    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) {
            final var config = ctx.config();
            final var sourcePassword = config.get("sourcePassword");
            final var sourceSchemaRegistryPassword = config.get("sourceSchemaRegistryPassword");
            var example = new ResourceGroup("example", ResourceGroupArgs.builder()
                .name("example-resource-group")
                .build());
    
            var shadow = new Network("shadow", NetworkArgs.builder()
                .name("example-shadow-network")
                .resourceGroupId(example.id())
                .cloudProvider("aws")
                .region("us-west-2")
                .clusterType("byoc")
                .cidrBlock("10.1.0.0/20")
                .build());
    
            // The shadow cluster runs the link. enable_shadow_linking must be set on this cluster.
            var shadowCluster = new Cluster("shadowCluster", ClusterArgs.builder()
                .name("example-shadow")
                .resourceGroupId(example.id())
                .networkId(shadow.id())
                .cloudProvider("aws")
                .region("us-west-2")
                .clusterType("byoc")
                .connectionType("public")
                .throughputTier("tier-1-aws-v2-arm")
                .zones(            
                    "us-west-2a",
                    "us-west-2b",
                    "us-west-2c")
                .clusterConfiguration(ClusterClusterConfigurationArgs.builder()
                    .customPropertiesJson(serializeJson(
                        jsonObject(
                            jsonProperty("enable_shadow_linking", true)
                        )))
                    .build())
                .build());
    
            // Store the SCRAM password used by the shadow link in the shadow cluster's secret store.
            var sourcePasswordSecret = new Secret("sourcePasswordSecret", SecretArgs.builder()
                .name("SOURCE_PASSWORD")
                .secretData(sourcePassword)
                .secretDataVersion(1.0)
                .scopes("SCOPE_REDPANDA_CLUSTER")
                .clusterApiUrl(shadowCluster.clusterApiUrl())
                .allowDeletion(true)
                .build());
    
            // Schema Registry HTTP Basic auth password, stored alongside the SCRAM password.
            var sourceSchemaRegistryPasswordSecret = new Secret("sourceSchemaRegistryPasswordSecret", SecretArgs.builder()
                .name("SOURCE_SR_PASSWORD")
                .secretData(sourceSchemaRegistryPassword)
                .secretDataVersion(1.0)
                .scopes("SCOPE_REDPANDA_CLUSTER")
                .clusterApiUrl(shadowCluster.clusterApiUrl())
                .allowDeletion(true)
                .build());
    
            var exampleShadowLink = new ShadowLink("exampleShadowLink", ShadowLinkArgs.builder()
                .name("example-link")
                .shadowRedpandaId(shadowCluster.id())
                .sourceRedpandaId("redpanda-id-of-source-cluster")
                .clientOptions(ShadowLinkClientOptionsArgs.builder()
                    .authenticationConfiguration(ShadowLinkClientOptionsAuthenticationConfigurationArgs.builder()
                        .scramConfiguration(ShadowLinkClientOptionsAuthenticationConfigurationScramConfigurationArgs.builder()
                            .scramMechanism("SCRAM_SHA_256")
                            .username("shadow-link-user")
                            .password(sourcePasswordSecret.name().applyValue(_name -> String.format("${{secrets.%s}}", _name)))
                            .build())
                        .build())
                    .build())
                .schemaRegistrySyncOptions(ShadowLinkSchemaRegistrySyncOptionsArgs.builder()
                    .shadowSchemaRegistryApi(ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiArgs.builder()
                        .sourceUrl("https://source-schema-registry.example.com:8081")
                        .authOptions(ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptionsArgs.builder()
                            .basic(ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptionsBasicArgs.builder()
                                .username("schema-registry-user")
                                .password(sourceSchemaRegistryPasswordSecret.name().applyValue(_name -> String.format("${{secrets.%s}}", _name)))
                                .build())
                            .build())
                        .tailInterval("10s")
                        .fullSyncInterval("5m0s")
                        .maxSourceRequestsPerSecond(30.0)
                        .sourceFilter(ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiSourceFilterArgs.builder()
                            .contexts(                        
                                ".",
                                ".prod")
                            .build())
                        .destination(ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationArgs.builder()
                            .identity(true)
                            .build())
                        .unsupportedSchemaFeaturePolicy("FAIL")
                        .build())
                    .build())
                .allowDeletion(true)
                .build());
    
        }
    }
    
    configuration:
      sourcePassword:
        type: string
      sourceSchemaRegistryPassword:
        type: string
    resources:
      example:
        type: redpanda:ResourceGroup
        properties:
          name: example-resource-group
      shadow:
        type: redpanda:Network
        properties:
          name: example-shadow-network
          resourceGroupId: ${example.id}
          cloudProvider: aws
          region: us-west-2
          clusterType: byoc
          cidrBlock: 10.1.0.0/20
      # The shadow cluster runs the link. enable_shadow_linking must be set on this cluster.
      shadowCluster:
        type: redpanda:Cluster
        name: shadow
        properties:
          name: example-shadow
          resourceGroupId: ${example.id}
          networkId: ${shadow.id}
          cloudProvider: aws
          region: us-west-2
          clusterType: byoc
          connectionType: public
          throughputTier: tier-1-aws-v2-arm
          zones:
            - us-west-2a
            - us-west-2b
            - us-west-2c
          clusterConfiguration:
            customPropertiesJson:
              fn::toJSON:
                enable_shadow_linking: true
      # Store the SCRAM password used by the shadow link in the shadow cluster's secret store.
      sourcePasswordSecret:
        type: redpanda:Secret
        name: source_password
        properties:
          name: SOURCE_PASSWORD
          secretData: ${sourcePassword}
          secretDataVersion: 1
          scopes:
            - SCOPE_REDPANDA_CLUSTER
          clusterApiUrl: ${shadowCluster.clusterApiUrl}
          allowDeletion: true
      # Schema Registry HTTP Basic auth password, stored alongside the SCRAM password.
      sourceSchemaRegistryPasswordSecret:
        type: redpanda:Secret
        name: source_schema_registry_password
        properties:
          name: SOURCE_SR_PASSWORD
          secretData: ${sourceSchemaRegistryPassword}
          secretDataVersion: 1
          scopes:
            - SCOPE_REDPANDA_CLUSTER
          clusterApiUrl: ${shadowCluster.clusterApiUrl}
          allowDeletion: true
      exampleShadowLink:
        type: redpanda:ShadowLink
        name: example
        properties:
          name: example-link
          shadowRedpandaId: ${shadowCluster.id}
          sourceRedpandaId: redpanda-id-of-source-cluster
          clientOptions:
            authenticationConfiguration:
              scramConfiguration:
                scramMechanism: SCRAM_SHA_256
                username: shadow-link-user
                password: $${secrets.${sourcePasswordSecret.name}}
          schemaRegistrySyncOptions:
            shadowSchemaRegistryApi:
              sourceUrl: https://source-schema-registry.example.com:8081
              authOptions:
                basic:
                  username: schema-registry-user
                  password: $${secrets.${sourceSchemaRegistryPasswordSecret.name}}
              tailInterval: 10s
              fullSyncInterval: 5m0s
              maxSourceRequestsPerSecond: 30
              sourceFilter:
                contexts:
                  - .
                  - .prod
              destination:
                identity: true
              unsupportedSchemaFeaturePolicy: FAIL
          allowDeletion: true
    
    Example coming soon!
    

    Source Connection

    Exactly one of the following must be set (enforced at plan time):

    • source_redpanda_id — when both source and shadow are Redpanda Cloud clusters. The controlplane resolves bootstrap servers from the source cluster’s metadata.
    • client_options.bootstrap_servers — explicit list of broker addresses for non-Redpanda Kafka or self-managed Redpanda sources.

    Both options are immutable after creation; changing them forces the shadow link to be destroyed and recreated. The clusters themselves are not affected.

    Authentication and TLS

    SASL credentials and the TLS private key (for mTLS) must reference dataplane secrets stored on the shadow cluster, using the form ${secrets.<NAME>}. Provision the secrets with redpanda.Secret in the same plan, scoped at minimum to SCOPE_REDPANDA_CLUSTER.

    The provider validates the secret-reference format at plan time; the controlplane validates that the referenced secret exists when the shadow link is created. The plaintext value never leaves the shadow cluster’s secret store.

    For Redpanda Cloud public Kafka endpoints set client_options.tls.enabled = true — the broker rejects plaintext connections.

    Source Cluster ACLs

    The SASL principal must have at least these ACLs on the source cluster:

    • CLUSTER:DESCRIBE — fetch broker metadata
    • TOPIC:DESCRIBE (*) — discover topics
    • TOPIC:READ (matching the topics to be shadowed) — fetch records

    Lifecycle

    Create returns a long-running operation that resolves to one of the state values. After the link reaches STATE_ACTIVE, broker tasks begin replicating. If the source connection cannot be established (auth, network, TLS) the link transitions to STATE_CREATION_FAILED and reason describes the cause; the resource is left in state as tainted so that the next apply re-creates it.

    Updates other than name, shadow_redpanda_id, and source_redpanda_id are applied in place via the controlplane Update RPC.

    Sync Options

    The four sync option blocks control what gets replicated and at what cadence. All four are optional — server defaults apply when omitted. The provider exposes 1:1 parity with the controlplane API.

    topic_metadata_sync_options

    Controls topic discovery and property replication.

    • auto_create_shadow_topic_filters — list of NameFilter ({pattern_type, filter_type, name}) selecting which source topics get auto-created as shadow topics. Required to populate this block to actually shadow any topics; an empty/absent block creates the link but ships no data.
      • Server-side denylist: literal filters for __consumer_offsets, _redpanda.audit_log, and _schemas are rejected; prefix filters for _redpanda / __redpanda are rejected. Use a literal filter for those topics if needed.
      • Wildcard * is only permitted with pattern_type = PATTERN_TYPE_LITERAL and won’t match _redpanda* topics.
    • synced_shadow_topic_properties — extra topic properties to replicate beyond the always-synced set (partition_count, max.message.bytes, cleanup.policy, timestamp.type). Server rejects redpanda.remote.readreplica, redpanda.remote.recovery, redpanda.remote.allowgaps, redpanda.virtual.cluster.id, redpanda.leaders.preference, redpanda.storage.mode.
    • exclude_default — when true, only properties in synced_shadow_topic_properties are synced (the default replicated set is skipped).
    • start_offset — starting offset for new shadow topic partitions: exactly one of at_earliest, at_latest, at_timestamp (RFC3339).
    • interval / paused — sync cadence and pause toggle.

    consumer_offset_sync_options

    Mirrors consumer group commit positions.

    • group_filters — list of NameFilter selecting which consumer groups have offsets synced.
    • interval / paused — same as above.

    security_sync_options

    Mirrors source ACLs to the shadow cluster.

    • acl_filters — list of ACLFilter ({resource_filter, access_filter}). resource_filter matches by resource_type (e.g. ACL_RESOURCE_TOPIC), pattern_type (e.g. ACL_PATTERN_LITERAL), name. access_filter matches by principal, operation (e.g. ACL_OPERATION_READ), permission_type, host.
    • interval / paused — same as above.

    schema_registry_sync_options

    • shadow_schema_registry_topic — when true, the shadow link will add the _schemas topic to its shadow set if (a) it exists on the source AND (b) it is absent or empty on the shadow. Toggling off after enablement does not undo the shadowing — fail it over or delete it explicitly.

    Kafka Client Tuning

    client_options exposes the full set of Kafka client tuning fields (metadata_max_age_ms, connection_timeout_ms, retry_backoff_ms, fetch_wait_max_ms, fetch_min_bytes, fetch_max_bytes, fetch_partition_max_bytes). Each has a sibling effective_* Computed-only attribute reflecting the value the controlplane resolved (defaults applied when 0/unset). All are mutable via Update.

    API Reference

    For more information, see the Redpanda Cloud Control Plane API – Shadow Links documentation. The dataplane operations (failover, list shadow topics, metrics) are documented under Shadow Links (Data Plane) but are not yet exposed by this provider.

    Create ShadowLink Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new ShadowLink(name: string, args: ShadowLinkArgs, opts?: CustomResourceOptions);
    @overload
    def ShadowLink(resource_name: str,
                   args: ShadowLinkArgs,
                   opts: Optional[ResourceOptions] = None)
    
    @overload
    def ShadowLink(resource_name: str,
                   opts: Optional[ResourceOptions] = None,
                   shadow_redpanda_id: Optional[str] = None,
                   allow_deletion: Optional[bool] = None,
                   client_options: Optional[ShadowLinkClientOptionsArgs] = None,
                   consumer_offset_sync_options: Optional[ShadowLinkConsumerOffsetSyncOptionsArgs] = None,
                   name: Optional[str] = None,
                   schema_registry_sync_options: Optional[ShadowLinkSchemaRegistrySyncOptionsArgs] = None,
                   security_sync_options: Optional[ShadowLinkSecuritySyncOptionsArgs] = None,
                   source_redpanda_id: Optional[str] = None,
                   timeouts: Optional[ShadowLinkTimeoutsArgs] = None,
                   topic_metadata_sync_options: Optional[ShadowLinkTopicMetadataSyncOptionsArgs] = None)
    func NewShadowLink(ctx *Context, name string, args ShadowLinkArgs, opts ...ResourceOption) (*ShadowLink, error)
    public ShadowLink(string name, ShadowLinkArgs args, CustomResourceOptions? opts = null)
    public ShadowLink(String name, ShadowLinkArgs args)
    public ShadowLink(String name, ShadowLinkArgs args, CustomResourceOptions options)
    
    type: redpanda:ShadowLink
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    resource "redpanda_shadow_link" "name" {
        # resource properties
    }

    Parameters

    name string
    The unique name of the resource.
    args ShadowLinkArgs
    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 ShadowLinkArgs
    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 ShadowLinkArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ShadowLinkArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ShadowLinkArgs
    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 shadowLinkResource = new Redpanda.ShadowLink("shadowLinkResource", new()
    {
        ShadowRedpandaId = "string",
        AllowDeletion = false,
        ClientOptions = new Redpanda.Inputs.ShadowLinkClientOptionsArgs
        {
            AuthenticationConfiguration = new Redpanda.Inputs.ShadowLinkClientOptionsAuthenticationConfigurationArgs
            {
                PlainConfiguration = new Redpanda.Inputs.ShadowLinkClientOptionsAuthenticationConfigurationPlainConfigurationArgs
                {
                    Password = "string",
                    PasswordSet = false,
                    Username = "string",
                },
                ScramConfiguration = new Redpanda.Inputs.ShadowLinkClientOptionsAuthenticationConfigurationScramConfigurationArgs
                {
                    Password = "string",
                    PasswordSet = false,
                    ScramMechanism = "string",
                    Username = "string",
                },
            },
            BootstrapServers = new[]
            {
                "string",
            },
            ClientId = "string",
            ConnectionTimeoutMs = 0,
            EffectiveConnectionTimeoutMs = 0,
            EffectiveFetchMaxBytes = 0,
            EffectiveFetchMinBytes = 0,
            EffectiveFetchPartitionMaxBytes = 0,
            EffectiveFetchWaitMaxMs = 0,
            EffectiveMetadataMaxAgeMs = 0,
            EffectiveRetryBackoffMs = 0,
            FetchMaxBytes = 0,
            FetchMinBytes = 0,
            FetchPartitionMaxBytes = 0,
            FetchWaitMaxMs = 0,
            MetadataMaxAgeMs = 0,
            RetryBackoffMs = 0,
            SourceClusterId = "string",
            TlsSettings = new Redpanda.Inputs.ShadowLinkClientOptionsTlsSettingsArgs
            {
                Ca = "string",
                Cert = "string",
                DoNotSetSniHostname = false,
                Enabled = false,
                Key = "string",
            },
        },
        ConsumerOffsetSyncOptions = new Redpanda.Inputs.ShadowLinkConsumerOffsetSyncOptionsArgs
        {
            GroupFilters = new[]
            {
                new Redpanda.Inputs.ShadowLinkConsumerOffsetSyncOptionsGroupFilterArgs
                {
                    FilterType = "string",
                    Name = "string",
                    PatternType = "string",
                },
            },
            Interval = "string",
            Paused = false,
        },
        Name = "string",
        SchemaRegistrySyncOptions = new Redpanda.Inputs.ShadowLinkSchemaRegistrySyncOptionsArgs
        {
            ShadowSchemaRegistryApi = new Redpanda.Inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiArgs
            {
                AuthOptions = new Redpanda.Inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptionsArgs
                {
                    Basic = new Redpanda.Inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptionsBasicArgs
                    {
                        Password = "string",
                        PasswordSet = false,
                        Username = "string",
                    },
                },
                Destination = new Redpanda.Inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationArgs
                {
                    Exact = new Redpanda.Inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExactArgs
                    {
                        Mappings = new[]
                        {
                            new Redpanda.Inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExactMappingArgs
                            {
                                Destination = "string",
                                Source = "string",
                            },
                        },
                    },
                    Identity = false,
                },
                EffectiveFullSyncInterval = "string",
                EffectiveMaxSourceRequestsPerSecond = 0,
                EffectiveTailInterval = "string",
                FullSyncInterval = "string",
                MaxSourceRequestsPerSecond = 0,
                Paused = false,
                SourceFilter = new Redpanda.Inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiSourceFilterArgs
                {
                    Contexts = new[]
                    {
                        "string",
                    },
                    Subjects = new[]
                    {
                        "string",
                    },
                },
                SourceUrl = "string",
                TailInterval = "string",
                TlsSettings = new Redpanda.Inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsArgs
                {
                    DoNotSetSniHostname = false,
                    Enabled = false,
                    TlsFileSettings = new Redpanda.Inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsFileSettingsArgs
                    {
                        CaPath = "string",
                        CertPath = "string",
                        KeyPath = "string",
                    },
                    TlsPemSettings = new Redpanda.Inputs.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsPemSettingsArgs
                    {
                        Ca = "string",
                        Cert = "string",
                        Key = "string",
                        KeyFingerprint = "string",
                    },
                },
                UnsupportedSchemaFeaturePolicy = "string",
            },
            ShadowSchemaRegistryTopic = false,
        },
        SecuritySyncOptions = new Redpanda.Inputs.ShadowLinkSecuritySyncOptionsArgs
        {
            AclFilters = new[]
            {
                new Redpanda.Inputs.ShadowLinkSecuritySyncOptionsAclFilterArgs
                {
                    AccessFilter = new Redpanda.Inputs.ShadowLinkSecuritySyncOptionsAclFilterAccessFilterArgs
                    {
                        Operation = "string",
                        PermissionType = "string",
                        Host = "string",
                        Principal = "string",
                    },
                    ResourceFilter = new Redpanda.Inputs.ShadowLinkSecuritySyncOptionsAclFilterResourceFilterArgs
                    {
                        PatternType = "string",
                        ResourceType = "string",
                        Name = "string",
                    },
                },
            },
            Interval = "string",
            Paused = false,
        },
        SourceRedpandaId = "string",
        Timeouts = new Redpanda.Inputs.ShadowLinkTimeoutsArgs
        {
            Create = "string",
            Delete = "string",
            Update = "string",
        },
        TopicMetadataSyncOptions = new Redpanda.Inputs.ShadowLinkTopicMetadataSyncOptionsArgs
        {
            AutoCreateShadowTopicFilters = new[]
            {
                new Redpanda.Inputs.ShadowLinkTopicMetadataSyncOptionsAutoCreateShadowTopicFilterArgs
                {
                    FilterType = "string",
                    Name = "string",
                    PatternType = "string",
                },
            },
            ExcludeDefault = false,
            Interval = "string",
            Paused = false,
            StartAtEarliest = false,
            StartAtLatest = false,
            StartAtTimestamp = "string",
            SyncedShadowTopicProperties = new[]
            {
                "string",
            },
        },
    });
    
    example, err := redpanda.NewShadowLink(ctx, "shadowLinkResource", &redpanda.ShadowLinkArgs{
    	ShadowRedpandaId: pulumi.String("string"),
    	AllowDeletion:    pulumi.Bool(false),
    	ClientOptions: &redpanda.ShadowLinkClientOptionsArgs{
    		AuthenticationConfiguration: &redpanda.ShadowLinkClientOptionsAuthenticationConfigurationArgs{
    			PlainConfiguration: &redpanda.ShadowLinkClientOptionsAuthenticationConfigurationPlainConfigurationArgs{
    				Password:    pulumi.String("string"),
    				PasswordSet: pulumi.Bool(false),
    				Username:    pulumi.String("string"),
    			},
    			ScramConfiguration: &redpanda.ShadowLinkClientOptionsAuthenticationConfigurationScramConfigurationArgs{
    				Password:       pulumi.String("string"),
    				PasswordSet:    pulumi.Bool(false),
    				ScramMechanism: pulumi.String("string"),
    				Username:       pulumi.String("string"),
    			},
    		},
    		BootstrapServers: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		ClientId:                        pulumi.String("string"),
    		ConnectionTimeoutMs:             pulumi.Float64(0),
    		EffectiveConnectionTimeoutMs:    pulumi.Float64(0),
    		EffectiveFetchMaxBytes:          pulumi.Float64(0),
    		EffectiveFetchMinBytes:          pulumi.Float64(0),
    		EffectiveFetchPartitionMaxBytes: pulumi.Float64(0),
    		EffectiveFetchWaitMaxMs:         pulumi.Float64(0),
    		EffectiveMetadataMaxAgeMs:       pulumi.Float64(0),
    		EffectiveRetryBackoffMs:         pulumi.Float64(0),
    		FetchMaxBytes:                   pulumi.Float64(0),
    		FetchMinBytes:                   pulumi.Float64(0),
    		FetchPartitionMaxBytes:          pulumi.Float64(0),
    		FetchWaitMaxMs:                  pulumi.Float64(0),
    		MetadataMaxAgeMs:                pulumi.Float64(0),
    		RetryBackoffMs:                  pulumi.Float64(0),
    		SourceClusterId:                 pulumi.String("string"),
    		TlsSettings: &redpanda.ShadowLinkClientOptionsTlsSettingsArgs{
    			Ca:                  pulumi.String("string"),
    			Cert:                pulumi.String("string"),
    			DoNotSetSniHostname: pulumi.Bool(false),
    			Enabled:             pulumi.Bool(false),
    			Key:                 pulumi.String("string"),
    		},
    	},
    	ConsumerOffsetSyncOptions: &redpanda.ShadowLinkConsumerOffsetSyncOptionsArgs{
    		GroupFilters: redpanda.ShadowLinkConsumerOffsetSyncOptionsGroupFilterArray{
    			&redpanda.ShadowLinkConsumerOffsetSyncOptionsGroupFilterArgs{
    				FilterType:  pulumi.String("string"),
    				Name:        pulumi.String("string"),
    				PatternType: pulumi.String("string"),
    			},
    		},
    		Interval: pulumi.String("string"),
    		Paused:   pulumi.Bool(false),
    	},
    	Name: pulumi.String("string"),
    	SchemaRegistrySyncOptions: &redpanda.ShadowLinkSchemaRegistrySyncOptionsArgs{
    		ShadowSchemaRegistryApi: &redpanda.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiArgs{
    			AuthOptions: &redpanda.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptionsArgs{
    				Basic: &redpanda.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptionsBasicArgs{
    					Password:    pulumi.String("string"),
    					PasswordSet: pulumi.Bool(false),
    					Username:    pulumi.String("string"),
    				},
    			},
    			Destination: &redpanda.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationArgs{
    				Exact: &redpanda.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExactArgs{
    					Mappings: redpanda.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExactMappingArray{
    						&redpanda.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExactMappingArgs{
    							Destination: pulumi.String("string"),
    							Source:      pulumi.String("string"),
    						},
    					},
    				},
    				Identity: pulumi.Bool(false),
    			},
    			EffectiveFullSyncInterval:           pulumi.String("string"),
    			EffectiveMaxSourceRequestsPerSecond: pulumi.Float64(0),
    			EffectiveTailInterval:               pulumi.String("string"),
    			FullSyncInterval:                    pulumi.String("string"),
    			MaxSourceRequestsPerSecond:          pulumi.Float64(0),
    			Paused:                              pulumi.Bool(false),
    			SourceFilter: &redpanda.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiSourceFilterArgs{
    				Contexts: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				Subjects: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    			SourceUrl:    pulumi.String("string"),
    			TailInterval: pulumi.String("string"),
    			TlsSettings: &redpanda.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsArgs{
    				DoNotSetSniHostname: pulumi.Bool(false),
    				Enabled:             pulumi.Bool(false),
    				TlsFileSettings: &redpanda.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsFileSettingsArgs{
    					CaPath:   pulumi.String("string"),
    					CertPath: pulumi.String("string"),
    					KeyPath:  pulumi.String("string"),
    				},
    				TlsPemSettings: &redpanda.ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsPemSettingsArgs{
    					Ca:             pulumi.String("string"),
    					Cert:           pulumi.String("string"),
    					Key:            pulumi.String("string"),
    					KeyFingerprint: pulumi.String("string"),
    				},
    			},
    			UnsupportedSchemaFeaturePolicy: pulumi.String("string"),
    		},
    		ShadowSchemaRegistryTopic: pulumi.Bool(false),
    	},
    	SecuritySyncOptions: &redpanda.ShadowLinkSecuritySyncOptionsArgs{
    		AclFilters: redpanda.ShadowLinkSecuritySyncOptionsAclFilterArray{
    			&redpanda.ShadowLinkSecuritySyncOptionsAclFilterArgs{
    				AccessFilter: &redpanda.ShadowLinkSecuritySyncOptionsAclFilterAccessFilterArgs{
    					Operation:      pulumi.String("string"),
    					PermissionType: pulumi.String("string"),
    					Host:           pulumi.String("string"),
    					Principal:      pulumi.String("string"),
    				},
    				ResourceFilter: &redpanda.ShadowLinkSecuritySyncOptionsAclFilterResourceFilterArgs{
    					PatternType:  pulumi.String("string"),
    					ResourceType: pulumi.String("string"),
    					Name:         pulumi.String("string"),
    				},
    			},
    		},
    		Interval: pulumi.String("string"),
    		Paused:   pulumi.Bool(false),
    	},
    	SourceRedpandaId: pulumi.String("string"),
    	Timeouts: &redpanda.ShadowLinkTimeoutsArgs{
    		Create: pulumi.String("string"),
    		Delete: pulumi.String("string"),
    		Update: pulumi.String("string"),
    	},
    	TopicMetadataSyncOptions: &redpanda.ShadowLinkTopicMetadataSyncOptionsArgs{
    		AutoCreateShadowTopicFilters: redpanda.ShadowLinkTopicMetadataSyncOptionsAutoCreateShadowTopicFilterArray{
    			&redpanda.ShadowLinkTopicMetadataSyncOptionsAutoCreateShadowTopicFilterArgs{
    				FilterType:  pulumi.String("string"),
    				Name:        pulumi.String("string"),
    				PatternType: pulumi.String("string"),
    			},
    		},
    		ExcludeDefault:   pulumi.Bool(false),
    		Interval:         pulumi.String("string"),
    		Paused:           pulumi.Bool(false),
    		StartAtEarliest:  pulumi.Bool(false),
    		StartAtLatest:    pulumi.Bool(false),
    		StartAtTimestamp: pulumi.String("string"),
    		SyncedShadowTopicProperties: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    	},
    })
    
    resource "redpanda_shadow_link" "shadowLinkResource" {
      lifecycle {
        create_before_destroy = true
      }
      shadow_redpanda_id = "string"
      allow_deletion     = false
      client_options = {
        authentication_configuration = {
          plain_configuration = {
            password     = "string"
            password_set = false
            username     = "string"
          }
          scram_configuration = {
            password        = "string"
            password_set    = false
            scram_mechanism = "string"
            username        = "string"
          }
        }
        bootstrap_servers                   = ["string"]
        client_id                           = "string"
        connection_timeout_ms               = 0
        effective_connection_timeout_ms     = 0
        effective_fetch_max_bytes           = 0
        effective_fetch_min_bytes           = 0
        effective_fetch_partition_max_bytes = 0
        effective_fetch_wait_max_ms         = 0
        effective_metadata_max_age_ms       = 0
        effective_retry_backoff_ms          = 0
        fetch_max_bytes                     = 0
        fetch_min_bytes                     = 0
        fetch_partition_max_bytes           = 0
        fetch_wait_max_ms                   = 0
        metadata_max_age_ms                 = 0
        retry_backoff_ms                    = 0
        source_cluster_id                   = "string"
        tls_settings = {
          ca                      = "string"
          cert                    = "string"
          do_not_set_sni_hostname = false
          enabled                 = false
          key                     = "string"
        }
      }
      consumer_offset_sync_options = {
        group_filters = [{
          filter_type  = "string"
          name         = "string"
          pattern_type = "string"
        }]
        interval = "string"
        paused   = false
      }
      name = "string"
      schema_registry_sync_options = {
        shadow_schema_registry_api = {
          auth_options = {
            basic = {
              password     = "string"
              password_set = false
              username     = "string"
            }
          }
          destination = {
            exact = {
              mappings = [{
                destination = "string"
                source      = "string"
              }]
            }
            identity = false
          }
          effective_full_sync_interval             = "string"
          effective_max_source_requests_per_second = 0
          effective_tail_interval                  = "string"
          full_sync_interval                       = "string"
          max_source_requests_per_second           = 0
          paused                                   = false
          source_filter = {
            contexts = ["string"]
            subjects = ["string"]
          }
          source_url    = "string"
          tail_interval = "string"
          tls_settings = {
            do_not_set_sni_hostname = false
            enabled                 = false
            tls_file_settings = {
              ca_path   = "string"
              cert_path = "string"
              key_path  = "string"
            }
            tls_pem_settings = {
              ca              = "string"
              cert            = "string"
              key             = "string"
              key_fingerprint = "string"
            }
          }
          unsupported_schema_feature_policy = "string"
        }
        shadow_schema_registry_topic = false
      }
      security_sync_options = {
        acl_filters = [{
          access_filter = {
            operation       = "string"
            permission_type = "string"
            host            = "string"
            principal       = "string"
          }
          resource_filter = {
            pattern_type  = "string"
            resource_type = "string"
            name          = "string"
          }
        }]
        interval = "string"
        paused   = false
      }
      source_redpanda_id = "string"
      timeouts = {
        create = "string"
        delete = "string"
        update = "string"
      }
      topic_metadata_sync_options = {
        auto_create_shadow_topic_filters = [{
          filter_type  = "string"
          name         = "string"
          pattern_type = "string"
        }]
        exclude_default                = false
        interval                       = "string"
        paused                         = false
        start_at_earliest              = false
        start_at_latest                = false
        start_at_timestamp             = "string"
        synced_shadow_topic_properties = ["string"]
      }
    }
    
    var shadowLinkResource = new ShadowLink("shadowLinkResource", ShadowLinkArgs.builder()
        .shadowRedpandaId("string")
        .allowDeletion(false)
        .clientOptions(ShadowLinkClientOptionsArgs.builder()
            .authenticationConfiguration(ShadowLinkClientOptionsAuthenticationConfigurationArgs.builder()
                .plainConfiguration(ShadowLinkClientOptionsAuthenticationConfigurationPlainConfigurationArgs.builder()
                    .password("string")
                    .passwordSet(false)
                    .username("string")
                    .build())
                .scramConfiguration(ShadowLinkClientOptionsAuthenticationConfigurationScramConfigurationArgs.builder()
                    .password("string")
                    .passwordSet(false)
                    .scramMechanism("string")
                    .username("string")
                    .build())
                .build())
            .bootstrapServers("string")
            .clientId("string")
            .connectionTimeoutMs(0.0)
            .effectiveConnectionTimeoutMs(0.0)
            .effectiveFetchMaxBytes(0.0)
            .effectiveFetchMinBytes(0.0)
            .effectiveFetchPartitionMaxBytes(0.0)
            .effectiveFetchWaitMaxMs(0.0)
            .effectiveMetadataMaxAgeMs(0.0)
            .effectiveRetryBackoffMs(0.0)
            .fetchMaxBytes(0.0)
            .fetchMinBytes(0.0)
            .fetchPartitionMaxBytes(0.0)
            .fetchWaitMaxMs(0.0)
            .metadataMaxAgeMs(0.0)
            .retryBackoffMs(0.0)
            .sourceClusterId("string")
            .tlsSettings(ShadowLinkClientOptionsTlsSettingsArgs.builder()
                .ca("string")
                .cert("string")
                .doNotSetSniHostname(false)
                .enabled(false)
                .key("string")
                .build())
            .build())
        .consumerOffsetSyncOptions(ShadowLinkConsumerOffsetSyncOptionsArgs.builder()
            .groupFilters(ShadowLinkConsumerOffsetSyncOptionsGroupFilterArgs.builder()
                .filterType("string")
                .name("string")
                .patternType("string")
                .build())
            .interval("string")
            .paused(false)
            .build())
        .name("string")
        .schemaRegistrySyncOptions(ShadowLinkSchemaRegistrySyncOptionsArgs.builder()
            .shadowSchemaRegistryApi(ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiArgs.builder()
                .authOptions(ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptionsArgs.builder()
                    .basic(ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptionsBasicArgs.builder()
                        .password("string")
                        .passwordSet(false)
                        .username("string")
                        .build())
                    .build())
                .destination(ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationArgs.builder()
                    .exact(ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExactArgs.builder()
                        .mappings(ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExactMappingArgs.builder()
                            .destination("string")
                            .source("string")
                            .build())
                        .build())
                    .identity(false)
                    .build())
                .effectiveFullSyncInterval("string")
                .effectiveMaxSourceRequestsPerSecond(0.0)
                .effectiveTailInterval("string")
                .fullSyncInterval("string")
                .maxSourceRequestsPerSecond(0.0)
                .paused(false)
                .sourceFilter(ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiSourceFilterArgs.builder()
                    .contexts("string")
                    .subjects("string")
                    .build())
                .sourceUrl("string")
                .tailInterval("string")
                .tlsSettings(ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsArgs.builder()
                    .doNotSetSniHostname(false)
                    .enabled(false)
                    .tlsFileSettings(ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsFileSettingsArgs.builder()
                        .caPath("string")
                        .certPath("string")
                        .keyPath("string")
                        .build())
                    .tlsPemSettings(ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsPemSettingsArgs.builder()
                        .ca("string")
                        .cert("string")
                        .key("string")
                        .keyFingerprint("string")
                        .build())
                    .build())
                .unsupportedSchemaFeaturePolicy("string")
                .build())
            .shadowSchemaRegistryTopic(false)
            .build())
        .securitySyncOptions(ShadowLinkSecuritySyncOptionsArgs.builder()
            .aclFilters(ShadowLinkSecuritySyncOptionsAclFilterArgs.builder()
                .accessFilter(ShadowLinkSecuritySyncOptionsAclFilterAccessFilterArgs.builder()
                    .operation("string")
                    .permissionType("string")
                    .host("string")
                    .principal("string")
                    .build())
                .resourceFilter(ShadowLinkSecuritySyncOptionsAclFilterResourceFilterArgs.builder()
                    .patternType("string")
                    .resourceType("string")
                    .name("string")
                    .build())
                .build())
            .interval("string")
            .paused(false)
            .build())
        .sourceRedpandaId("string")
        .timeouts(ShadowLinkTimeoutsArgs.builder()
            .create("string")
            .delete("string")
            .update("string")
            .build())
        .topicMetadataSyncOptions(ShadowLinkTopicMetadataSyncOptionsArgs.builder()
            .autoCreateShadowTopicFilters(ShadowLinkTopicMetadataSyncOptionsAutoCreateShadowTopicFilterArgs.builder()
                .filterType("string")
                .name("string")
                .patternType("string")
                .build())
            .excludeDefault(false)
            .interval("string")
            .paused(false)
            .startAtEarliest(false)
            .startAtLatest(false)
            .startAtTimestamp("string")
            .syncedShadowTopicProperties("string")
            .build())
        .build());
    
    shadow_link_resource = redpanda.ShadowLink("shadowLinkResource",
        shadow_redpanda_id="string",
        allow_deletion=False,
        client_options={
            "authentication_configuration": {
                "plain_configuration": {
                    "password": "string",
                    "password_set": False,
                    "username": "string",
                },
                "scram_configuration": {
                    "password": "string",
                    "password_set": False,
                    "scram_mechanism": "string",
                    "username": "string",
                },
            },
            "bootstrap_servers": ["string"],
            "client_id": "string",
            "connection_timeout_ms": float(0),
            "effective_connection_timeout_ms": float(0),
            "effective_fetch_max_bytes": float(0),
            "effective_fetch_min_bytes": float(0),
            "effective_fetch_partition_max_bytes": float(0),
            "effective_fetch_wait_max_ms": float(0),
            "effective_metadata_max_age_ms": float(0),
            "effective_retry_backoff_ms": float(0),
            "fetch_max_bytes": float(0),
            "fetch_min_bytes": float(0),
            "fetch_partition_max_bytes": float(0),
            "fetch_wait_max_ms": float(0),
            "metadata_max_age_ms": float(0),
            "retry_backoff_ms": float(0),
            "source_cluster_id": "string",
            "tls_settings": {
                "ca": "string",
                "cert": "string",
                "do_not_set_sni_hostname": False,
                "enabled": False,
                "key": "string",
            },
        },
        consumer_offset_sync_options={
            "group_filters": [{
                "filter_type": "string",
                "name": "string",
                "pattern_type": "string",
            }],
            "interval": "string",
            "paused": False,
        },
        name="string",
        schema_registry_sync_options={
            "shadow_schema_registry_api": {
                "auth_options": {
                    "basic": {
                        "password": "string",
                        "password_set": False,
                        "username": "string",
                    },
                },
                "destination": {
                    "exact": {
                        "mappings": [{
                            "destination": "string",
                            "source": "string",
                        }],
                    },
                    "identity": False,
                },
                "effective_full_sync_interval": "string",
                "effective_max_source_requests_per_second": float(0),
                "effective_tail_interval": "string",
                "full_sync_interval": "string",
                "max_source_requests_per_second": float(0),
                "paused": False,
                "source_filter": {
                    "contexts": ["string"],
                    "subjects": ["string"],
                },
                "source_url": "string",
                "tail_interval": "string",
                "tls_settings": {
                    "do_not_set_sni_hostname": False,
                    "enabled": False,
                    "tls_file_settings": {
                        "ca_path": "string",
                        "cert_path": "string",
                        "key_path": "string",
                    },
                    "tls_pem_settings": {
                        "ca": "string",
                        "cert": "string",
                        "key": "string",
                        "key_fingerprint": "string",
                    },
                },
                "unsupported_schema_feature_policy": "string",
            },
            "shadow_schema_registry_topic": False,
        },
        security_sync_options={
            "acl_filters": [{
                "access_filter": {
                    "operation": "string",
                    "permission_type": "string",
                    "host": "string",
                    "principal": "string",
                },
                "resource_filter": {
                    "pattern_type": "string",
                    "resource_type": "string",
                    "name": "string",
                },
            }],
            "interval": "string",
            "paused": False,
        },
        source_redpanda_id="string",
        timeouts={
            "create": "string",
            "delete": "string",
            "update": "string",
        },
        topic_metadata_sync_options={
            "auto_create_shadow_topic_filters": [{
                "filter_type": "string",
                "name": "string",
                "pattern_type": "string",
            }],
            "exclude_default": False,
            "interval": "string",
            "paused": False,
            "start_at_earliest": False,
            "start_at_latest": False,
            "start_at_timestamp": "string",
            "synced_shadow_topic_properties": ["string"],
        })
    
    const shadowLinkResource = new redpanda.ShadowLink("shadowLinkResource", {
        shadowRedpandaId: "string",
        allowDeletion: false,
        clientOptions: {
            authenticationConfiguration: {
                plainConfiguration: {
                    password: "string",
                    passwordSet: false,
                    username: "string",
                },
                scramConfiguration: {
                    password: "string",
                    passwordSet: false,
                    scramMechanism: "string",
                    username: "string",
                },
            },
            bootstrapServers: ["string"],
            clientId: "string",
            connectionTimeoutMs: 0,
            effectiveConnectionTimeoutMs: 0,
            effectiveFetchMaxBytes: 0,
            effectiveFetchMinBytes: 0,
            effectiveFetchPartitionMaxBytes: 0,
            effectiveFetchWaitMaxMs: 0,
            effectiveMetadataMaxAgeMs: 0,
            effectiveRetryBackoffMs: 0,
            fetchMaxBytes: 0,
            fetchMinBytes: 0,
            fetchPartitionMaxBytes: 0,
            fetchWaitMaxMs: 0,
            metadataMaxAgeMs: 0,
            retryBackoffMs: 0,
            sourceClusterId: "string",
            tlsSettings: {
                ca: "string",
                cert: "string",
                doNotSetSniHostname: false,
                enabled: false,
                key: "string",
            },
        },
        consumerOffsetSyncOptions: {
            groupFilters: [{
                filterType: "string",
                name: "string",
                patternType: "string",
            }],
            interval: "string",
            paused: false,
        },
        name: "string",
        schemaRegistrySyncOptions: {
            shadowSchemaRegistryApi: {
                authOptions: {
                    basic: {
                        password: "string",
                        passwordSet: false,
                        username: "string",
                    },
                },
                destination: {
                    exact: {
                        mappings: [{
                            destination: "string",
                            source: "string",
                        }],
                    },
                    identity: false,
                },
                effectiveFullSyncInterval: "string",
                effectiveMaxSourceRequestsPerSecond: 0,
                effectiveTailInterval: "string",
                fullSyncInterval: "string",
                maxSourceRequestsPerSecond: 0,
                paused: false,
                sourceFilter: {
                    contexts: ["string"],
                    subjects: ["string"],
                },
                sourceUrl: "string",
                tailInterval: "string",
                tlsSettings: {
                    doNotSetSniHostname: false,
                    enabled: false,
                    tlsFileSettings: {
                        caPath: "string",
                        certPath: "string",
                        keyPath: "string",
                    },
                    tlsPemSettings: {
                        ca: "string",
                        cert: "string",
                        key: "string",
                        keyFingerprint: "string",
                    },
                },
                unsupportedSchemaFeaturePolicy: "string",
            },
            shadowSchemaRegistryTopic: false,
        },
        securitySyncOptions: {
            aclFilters: [{
                accessFilter: {
                    operation: "string",
                    permissionType: "string",
                    host: "string",
                    principal: "string",
                },
                resourceFilter: {
                    patternType: "string",
                    resourceType: "string",
                    name: "string",
                },
            }],
            interval: "string",
            paused: false,
        },
        sourceRedpandaId: "string",
        timeouts: {
            create: "string",
            "delete": "string",
            update: "string",
        },
        topicMetadataSyncOptions: {
            autoCreateShadowTopicFilters: [{
                filterType: "string",
                name: "string",
                patternType: "string",
            }],
            excludeDefault: false,
            interval: "string",
            paused: false,
            startAtEarliest: false,
            startAtLatest: false,
            startAtTimestamp: "string",
            syncedShadowTopicProperties: ["string"],
        },
    });
    
    type: redpanda:ShadowLink
    properties:
        allowDeletion: false
        clientOptions:
            authenticationConfiguration:
                plainConfiguration:
                    password: string
                    passwordSet: false
                    username: string
                scramConfiguration:
                    password: string
                    passwordSet: false
                    scramMechanism: string
                    username: string
            bootstrapServers:
                - string
            clientId: string
            connectionTimeoutMs: 0
            effectiveConnectionTimeoutMs: 0
            effectiveFetchMaxBytes: 0
            effectiveFetchMinBytes: 0
            effectiveFetchPartitionMaxBytes: 0
            effectiveFetchWaitMaxMs: 0
            effectiveMetadataMaxAgeMs: 0
            effectiveRetryBackoffMs: 0
            fetchMaxBytes: 0
            fetchMinBytes: 0
            fetchPartitionMaxBytes: 0
            fetchWaitMaxMs: 0
            metadataMaxAgeMs: 0
            retryBackoffMs: 0
            sourceClusterId: string
            tlsSettings:
                ca: string
                cert: string
                doNotSetSniHostname: false
                enabled: false
                key: string
        consumerOffsetSyncOptions:
            groupFilters:
                - filterType: string
                  name: string
                  patternType: string
            interval: string
            paused: false
        name: string
        schemaRegistrySyncOptions:
            shadowSchemaRegistryApi:
                authOptions:
                    basic:
                        password: string
                        passwordSet: false
                        username: string
                destination:
                    exact:
                        mappings:
                            - destination: string
                              source: string
                    identity: false
                effectiveFullSyncInterval: string
                effectiveMaxSourceRequestsPerSecond: 0
                effectiveTailInterval: string
                fullSyncInterval: string
                maxSourceRequestsPerSecond: 0
                paused: false
                sourceFilter:
                    contexts:
                        - string
                    subjects:
                        - string
                sourceUrl: string
                tailInterval: string
                tlsSettings:
                    doNotSetSniHostname: false
                    enabled: false
                    tlsFileSettings:
                        caPath: string
                        certPath: string
                        keyPath: string
                    tlsPemSettings:
                        ca: string
                        cert: string
                        key: string
                        keyFingerprint: string
                unsupportedSchemaFeaturePolicy: string
            shadowSchemaRegistryTopic: false
        securitySyncOptions:
            aclFilters:
                - accessFilter:
                    host: string
                    operation: string
                    permissionType: string
                    principal: string
                  resourceFilter:
                    name: string
                    patternType: string
                    resourceType: string
            interval: string
            paused: false
        shadowRedpandaId: string
        sourceRedpandaId: string
        timeouts:
            create: string
            delete: string
            update: string
        topicMetadataSyncOptions:
            autoCreateShadowTopicFilters:
                - filterType: string
                  name: string
                  patternType: string
            excludeDefault: false
            interval: string
            paused: false
            startAtEarliest: false
            startAtLatest: false
            startAtTimestamp: string
            syncedShadowTopicProperties:
                - string
    

    ShadowLink 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 ShadowLink resource accepts the following input properties:

    ShadowRedpandaId string
    Shadow Redpanda cluster ID where the shadow link is created. This ID is immutable. Length must be at least 1.
    AllowDeletion bool
    ClientOptions ShadowLinkClientOptions
    ShadowLinkClientOptions configures the Kafka client connection settings.
    ConsumerOffsetSyncOptions ShadowLinkConsumerOffsetSyncOptions
    Options for syncing consumer offsets
    Name string
    Human-readable name for the shadow link. Must be unique. Must follow Kubernetes DNS-1123 subdomain naming convention: - lowercase alphanumeric characters, hyphens allowed - must start and end with alphanumeric character - maximum 63 characters. Length must be at most 63. Must match pattern ^a-z0-9?$.
    SchemaRegistrySyncOptions ShadowLinkSchemaRegistrySyncOptions
    Options for how the Schema Registry is synced.
    SecuritySyncOptions ShadowLinkSecuritySyncOptions
    Options for syncing security settings
    SourceRedpandaId string
    Source Redpanda ID
    Timeouts ShadowLinkTimeouts
    TopicMetadataSyncOptions ShadowLinkTopicMetadataSyncOptions
    Options for syncing topic metadata
    ShadowRedpandaId string
    Shadow Redpanda cluster ID where the shadow link is created. This ID is immutable. Length must be at least 1.
    AllowDeletion bool
    ClientOptions ShadowLinkClientOptionsArgs
    ShadowLinkClientOptions configures the Kafka client connection settings.
    ConsumerOffsetSyncOptions ShadowLinkConsumerOffsetSyncOptionsArgs
    Options for syncing consumer offsets
    Name string
    Human-readable name for the shadow link. Must be unique. Must follow Kubernetes DNS-1123 subdomain naming convention: - lowercase alphanumeric characters, hyphens allowed - must start and end with alphanumeric character - maximum 63 characters. Length must be at most 63. Must match pattern ^a-z0-9?$.
    SchemaRegistrySyncOptions ShadowLinkSchemaRegistrySyncOptionsArgs
    Options for how the Schema Registry is synced.
    SecuritySyncOptions ShadowLinkSecuritySyncOptionsArgs
    Options for syncing security settings
    SourceRedpandaId string
    Source Redpanda ID
    Timeouts ShadowLinkTimeoutsArgs
    TopicMetadataSyncOptions ShadowLinkTopicMetadataSyncOptionsArgs
    Options for syncing topic metadata
    shadow_redpanda_id string
    Shadow Redpanda cluster ID where the shadow link is created. This ID is immutable. Length must be at least 1.
    allow_deletion bool
    client_options object
    ShadowLinkClientOptions configures the Kafka client connection settings.
    consumer_offset_sync_options object
    Options for syncing consumer offsets
    name string
    Human-readable name for the shadow link. Must be unique. Must follow Kubernetes DNS-1123 subdomain naming convention: - lowercase alphanumeric characters, hyphens allowed - must start and end with alphanumeric character - maximum 63 characters. Length must be at most 63. Must match pattern ^a-z0-9?$.
    schema_registry_sync_options object
    Options for how the Schema Registry is synced.
    security_sync_options object
    Options for syncing security settings
    source_redpanda_id string
    Source Redpanda ID
    timeouts object
    topic_metadata_sync_options object
    Options for syncing topic metadata
    shadowRedpandaId String
    Shadow Redpanda cluster ID where the shadow link is created. This ID is immutable. Length must be at least 1.
    allowDeletion Boolean
    clientOptions ShadowLinkClientOptions
    ShadowLinkClientOptions configures the Kafka client connection settings.
    consumerOffsetSyncOptions ShadowLinkConsumerOffsetSyncOptions
    Options for syncing consumer offsets
    name String
    Human-readable name for the shadow link. Must be unique. Must follow Kubernetes DNS-1123 subdomain naming convention: - lowercase alphanumeric characters, hyphens allowed - must start and end with alphanumeric character - maximum 63 characters. Length must be at most 63. Must match pattern ^a-z0-9?$.
    schemaRegistrySyncOptions ShadowLinkSchemaRegistrySyncOptions
    Options for how the Schema Registry is synced.
    securitySyncOptions ShadowLinkSecuritySyncOptions
    Options for syncing security settings
    sourceRedpandaId String
    Source Redpanda ID
    timeouts ShadowLinkTimeouts
    topicMetadataSyncOptions ShadowLinkTopicMetadataSyncOptions
    Options for syncing topic metadata
    shadowRedpandaId string
    Shadow Redpanda cluster ID where the shadow link is created. This ID is immutable. Length must be at least 1.
    allowDeletion boolean
    clientOptions ShadowLinkClientOptions
    ShadowLinkClientOptions configures the Kafka client connection settings.
    consumerOffsetSyncOptions ShadowLinkConsumerOffsetSyncOptions
    Options for syncing consumer offsets
    name string
    Human-readable name for the shadow link. Must be unique. Must follow Kubernetes DNS-1123 subdomain naming convention: - lowercase alphanumeric characters, hyphens allowed - must start and end with alphanumeric character - maximum 63 characters. Length must be at most 63. Must match pattern ^a-z0-9?$.
    schemaRegistrySyncOptions ShadowLinkSchemaRegistrySyncOptions
    Options for how the Schema Registry is synced.
    securitySyncOptions ShadowLinkSecuritySyncOptions
    Options for syncing security settings
    sourceRedpandaId string
    Source Redpanda ID
    timeouts ShadowLinkTimeouts
    topicMetadataSyncOptions ShadowLinkTopicMetadataSyncOptions
    Options for syncing topic metadata
    shadow_redpanda_id str
    Shadow Redpanda cluster ID where the shadow link is created. This ID is immutable. Length must be at least 1.
    allow_deletion bool
    client_options ShadowLinkClientOptionsArgs
    ShadowLinkClientOptions configures the Kafka client connection settings.
    consumer_offset_sync_options ShadowLinkConsumerOffsetSyncOptionsArgs
    Options for syncing consumer offsets
    name str
    Human-readable name for the shadow link. Must be unique. Must follow Kubernetes DNS-1123 subdomain naming convention: - lowercase alphanumeric characters, hyphens allowed - must start and end with alphanumeric character - maximum 63 characters. Length must be at most 63. Must match pattern ^a-z0-9?$.
    schema_registry_sync_options ShadowLinkSchemaRegistrySyncOptionsArgs
    Options for how the Schema Registry is synced.
    security_sync_options ShadowLinkSecuritySyncOptionsArgs
    Options for syncing security settings
    source_redpanda_id str
    Source Redpanda ID
    timeouts ShadowLinkTimeoutsArgs
    topic_metadata_sync_options ShadowLinkTopicMetadataSyncOptionsArgs
    Options for syncing topic metadata
    shadowRedpandaId String
    Shadow Redpanda cluster ID where the shadow link is created. This ID is immutable. Length must be at least 1.
    allowDeletion Boolean
    clientOptions Property Map
    ShadowLinkClientOptions configures the Kafka client connection settings.
    consumerOffsetSyncOptions Property Map
    Options for syncing consumer offsets
    name String
    Human-readable name for the shadow link. Must be unique. Must follow Kubernetes DNS-1123 subdomain naming convention: - lowercase alphanumeric characters, hyphens allowed - must start and end with alphanumeric character - maximum 63 characters. Length must be at most 63. Must match pattern ^a-z0-9?$.
    schemaRegistrySyncOptions Property Map
    Options for how the Schema Registry is synced.
    securitySyncOptions Property Map
    Options for syncing security settings
    sourceRedpandaId String
    Source Redpanda ID
    timeouts Property Map
    topicMetadataSyncOptions Property Map
    Options for syncing topic metadata

    Outputs

    All input properties are implicitly available as output properties. Additionally, the ShadowLink resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Reason string
    Reason provides additional context for the current state.
    State string
    State represents the lifecycle state of a shadow link.
    Id string
    The provider-assigned unique ID for this managed resource.
    Reason string
    Reason provides additional context for the current state.
    State string
    State represents the lifecycle state of a shadow link.
    id string
    The provider-assigned unique ID for this managed resource.
    reason string
    Reason provides additional context for the current state.
    state string
    State represents the lifecycle state of a shadow link.
    id String
    The provider-assigned unique ID for this managed resource.
    reason String
    Reason provides additional context for the current state.
    state String
    State represents the lifecycle state of a shadow link.
    id string
    The provider-assigned unique ID for this managed resource.
    reason string
    Reason provides additional context for the current state.
    state string
    State represents the lifecycle state of a shadow link.
    id str
    The provider-assigned unique ID for this managed resource.
    reason str
    Reason provides additional context for the current state.
    state str
    State represents the lifecycle state of a shadow link.
    id String
    The provider-assigned unique ID for this managed resource.
    reason String
    Reason provides additional context for the current state.
    state String
    State represents the lifecycle state of a shadow link.

    Look up Existing ShadowLink Resource

    Get an existing ShadowLink 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?: ShadowLinkState, opts?: CustomResourceOptions): ShadowLink
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            allow_deletion: Optional[bool] = None,
            client_options: Optional[ShadowLinkClientOptionsArgs] = None,
            consumer_offset_sync_options: Optional[ShadowLinkConsumerOffsetSyncOptionsArgs] = None,
            name: Optional[str] = None,
            reason: Optional[str] = None,
            schema_registry_sync_options: Optional[ShadowLinkSchemaRegistrySyncOptionsArgs] = None,
            security_sync_options: Optional[ShadowLinkSecuritySyncOptionsArgs] = None,
            shadow_redpanda_id: Optional[str] = None,
            source_redpanda_id: Optional[str] = None,
            state: Optional[str] = None,
            timeouts: Optional[ShadowLinkTimeoutsArgs] = None,
            topic_metadata_sync_options: Optional[ShadowLinkTopicMetadataSyncOptionsArgs] = None) -> ShadowLink
    func GetShadowLink(ctx *Context, name string, id IDInput, state *ShadowLinkState, opts ...ResourceOption) (*ShadowLink, error)
    public static ShadowLink Get(string name, Input<string> id, ShadowLinkState? state, CustomResourceOptions? opts = null)
    public static ShadowLink get(String name, Output<String> id, ShadowLinkState state, CustomResourceOptions options)
    resources:  _:    type: redpanda:ShadowLink    get:      id: ${id}
    import {
      to = redpanda_shadow_link.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.
    The following state arguments are supported:
    AllowDeletion bool
    ClientOptions ShadowLinkClientOptions
    ShadowLinkClientOptions configures the Kafka client connection settings.
    ConsumerOffsetSyncOptions ShadowLinkConsumerOffsetSyncOptions
    Options for syncing consumer offsets
    Name string
    Human-readable name for the shadow link. Must be unique. Must follow Kubernetes DNS-1123 subdomain naming convention: - lowercase alphanumeric characters, hyphens allowed - must start and end with alphanumeric character - maximum 63 characters. Length must be at most 63. Must match pattern ^a-z0-9?$.
    Reason string
    Reason provides additional context for the current state.
    SchemaRegistrySyncOptions ShadowLinkSchemaRegistrySyncOptions
    Options for how the Schema Registry is synced.
    SecuritySyncOptions ShadowLinkSecuritySyncOptions
    Options for syncing security settings
    ShadowRedpandaId string
    Shadow Redpanda cluster ID where the shadow link is created. This ID is immutable. Length must be at least 1.
    SourceRedpandaId string
    Source Redpanda ID
    State string
    State represents the lifecycle state of a shadow link.
    Timeouts ShadowLinkTimeouts
    TopicMetadataSyncOptions ShadowLinkTopicMetadataSyncOptions
    Options for syncing topic metadata
    AllowDeletion bool
    ClientOptions ShadowLinkClientOptionsArgs
    ShadowLinkClientOptions configures the Kafka client connection settings.
    ConsumerOffsetSyncOptions ShadowLinkConsumerOffsetSyncOptionsArgs
    Options for syncing consumer offsets
    Name string
    Human-readable name for the shadow link. Must be unique. Must follow Kubernetes DNS-1123 subdomain naming convention: - lowercase alphanumeric characters, hyphens allowed - must start and end with alphanumeric character - maximum 63 characters. Length must be at most 63. Must match pattern ^a-z0-9?$.
    Reason string
    Reason provides additional context for the current state.
    SchemaRegistrySyncOptions ShadowLinkSchemaRegistrySyncOptionsArgs
    Options for how the Schema Registry is synced.
    SecuritySyncOptions ShadowLinkSecuritySyncOptionsArgs
    Options for syncing security settings
    ShadowRedpandaId string
    Shadow Redpanda cluster ID where the shadow link is created. This ID is immutable. Length must be at least 1.
    SourceRedpandaId string
    Source Redpanda ID
    State string
    State represents the lifecycle state of a shadow link.
    Timeouts ShadowLinkTimeoutsArgs
    TopicMetadataSyncOptions ShadowLinkTopicMetadataSyncOptionsArgs
    Options for syncing topic metadata
    allow_deletion bool
    client_options object
    ShadowLinkClientOptions configures the Kafka client connection settings.
    consumer_offset_sync_options object
    Options for syncing consumer offsets
    name string
    Human-readable name for the shadow link. Must be unique. Must follow Kubernetes DNS-1123 subdomain naming convention: - lowercase alphanumeric characters, hyphens allowed - must start and end with alphanumeric character - maximum 63 characters. Length must be at most 63. Must match pattern ^a-z0-9?$.
    reason string
    Reason provides additional context for the current state.
    schema_registry_sync_options object
    Options for how the Schema Registry is synced.
    security_sync_options object
    Options for syncing security settings
    shadow_redpanda_id string
    Shadow Redpanda cluster ID where the shadow link is created. This ID is immutable. Length must be at least 1.
    source_redpanda_id string
    Source Redpanda ID
    state string
    State represents the lifecycle state of a shadow link.
    timeouts object
    topic_metadata_sync_options object
    Options for syncing topic metadata
    allowDeletion Boolean
    clientOptions ShadowLinkClientOptions
    ShadowLinkClientOptions configures the Kafka client connection settings.
    consumerOffsetSyncOptions ShadowLinkConsumerOffsetSyncOptions
    Options for syncing consumer offsets
    name String
    Human-readable name for the shadow link. Must be unique. Must follow Kubernetes DNS-1123 subdomain naming convention: - lowercase alphanumeric characters, hyphens allowed - must start and end with alphanumeric character - maximum 63 characters. Length must be at most 63. Must match pattern ^a-z0-9?$.
    reason String
    Reason provides additional context for the current state.
    schemaRegistrySyncOptions ShadowLinkSchemaRegistrySyncOptions
    Options for how the Schema Registry is synced.
    securitySyncOptions ShadowLinkSecuritySyncOptions
    Options for syncing security settings
    shadowRedpandaId String
    Shadow Redpanda cluster ID where the shadow link is created. This ID is immutable. Length must be at least 1.
    sourceRedpandaId String
    Source Redpanda ID
    state String
    State represents the lifecycle state of a shadow link.
    timeouts ShadowLinkTimeouts
    topicMetadataSyncOptions ShadowLinkTopicMetadataSyncOptions
    Options for syncing topic metadata
    allowDeletion boolean
    clientOptions ShadowLinkClientOptions
    ShadowLinkClientOptions configures the Kafka client connection settings.
    consumerOffsetSyncOptions ShadowLinkConsumerOffsetSyncOptions
    Options for syncing consumer offsets
    name string
    Human-readable name for the shadow link. Must be unique. Must follow Kubernetes DNS-1123 subdomain naming convention: - lowercase alphanumeric characters, hyphens allowed - must start and end with alphanumeric character - maximum 63 characters. Length must be at most 63. Must match pattern ^a-z0-9?$.
    reason string
    Reason provides additional context for the current state.
    schemaRegistrySyncOptions ShadowLinkSchemaRegistrySyncOptions
    Options for how the Schema Registry is synced.
    securitySyncOptions ShadowLinkSecuritySyncOptions
    Options for syncing security settings
    shadowRedpandaId string
    Shadow Redpanda cluster ID where the shadow link is created. This ID is immutable. Length must be at least 1.
    sourceRedpandaId string
    Source Redpanda ID
    state string
    State represents the lifecycle state of a shadow link.
    timeouts ShadowLinkTimeouts
    topicMetadataSyncOptions ShadowLinkTopicMetadataSyncOptions
    Options for syncing topic metadata
    allow_deletion bool
    client_options ShadowLinkClientOptionsArgs
    ShadowLinkClientOptions configures the Kafka client connection settings.
    consumer_offset_sync_options ShadowLinkConsumerOffsetSyncOptionsArgs
    Options for syncing consumer offsets
    name str
    Human-readable name for the shadow link. Must be unique. Must follow Kubernetes DNS-1123 subdomain naming convention: - lowercase alphanumeric characters, hyphens allowed - must start and end with alphanumeric character - maximum 63 characters. Length must be at most 63. Must match pattern ^a-z0-9?$.
    reason str
    Reason provides additional context for the current state.
    schema_registry_sync_options ShadowLinkSchemaRegistrySyncOptionsArgs
    Options for how the Schema Registry is synced.
    security_sync_options ShadowLinkSecuritySyncOptionsArgs
    Options for syncing security settings
    shadow_redpanda_id str
    Shadow Redpanda cluster ID where the shadow link is created. This ID is immutable. Length must be at least 1.
    source_redpanda_id str
    Source Redpanda ID
    state str
    State represents the lifecycle state of a shadow link.
    timeouts ShadowLinkTimeoutsArgs
    topic_metadata_sync_options ShadowLinkTopicMetadataSyncOptionsArgs
    Options for syncing topic metadata
    allowDeletion Boolean
    clientOptions Property Map
    ShadowLinkClientOptions configures the Kafka client connection settings.
    consumerOffsetSyncOptions Property Map
    Options for syncing consumer offsets
    name String
    Human-readable name for the shadow link. Must be unique. Must follow Kubernetes DNS-1123 subdomain naming convention: - lowercase alphanumeric characters, hyphens allowed - must start and end with alphanumeric character - maximum 63 characters. Length must be at most 63. Must match pattern ^a-z0-9?$.
    reason String
    Reason provides additional context for the current state.
    schemaRegistrySyncOptions Property Map
    Options for how the Schema Registry is synced.
    securitySyncOptions Property Map
    Options for syncing security settings
    shadowRedpandaId String
    Shadow Redpanda cluster ID where the shadow link is created. This ID is immutable. Length must be at least 1.
    sourceRedpandaId String
    Source Redpanda ID
    state String
    State represents the lifecycle state of a shadow link.
    timeouts Property Map
    topicMetadataSyncOptions Property Map
    Options for syncing topic metadata

    Supporting Types

    ShadowLinkClientOptions, ShadowLinkClientOptionsArgs

    AuthenticationConfiguration ShadowLinkClientOptionsAuthenticationConfiguration
    Authentication config. Supports: * SASL/SCRAM * SASL/PLAIN
    BootstrapServers List<string>
    Bootstrap servers for the source cluster. Required if source Redpanda ID is not provided.
    ClientId string
    Client ID for the connection.
    ConnectionTimeoutMs double
    Connection timeout in milliseconds (defaults to 1000ms if 0).
    EffectiveConnectionTimeoutMs double
    The effective connection timeout in milliseconds
    EffectiveFetchMaxBytes double
    The effective fetch max bytes
    EffectiveFetchMinBytes double
    The effective fetch min bytes
    EffectiveFetchPartitionMaxBytes double
    The effective fetch partition max bytes
    EffectiveFetchWaitMaxMs double
    The effective fetch wait max in milliseconds
    EffectiveMetadataMaxAgeMs double
    The effective metadata max age in milliseconds
    EffectiveRetryBackoffMs double
    The effective retry backoff in milliseconds
    FetchMaxBytes double
    Maximum bytes to fetch (defaults to 20971520 bytes / 20 MiB if 0).
    FetchMinBytes double
    Minimum bytes to fetch (defaults to 5242880 bytes / 5 MiB if 0).
    FetchPartitionMaxBytes double
    Maximum bytes per partition to fetch (defaults to 1048576 bytes / 1 MiB if 0).
    FetchWaitMaxMs double
    Maximum time to wait for fetch requests in milliseconds (defaults to 500ms if 0).
    MetadataMaxAgeMs double
    Metadata refresh interval in milliseconds (defaults to 10000ms if 0).
    RetryBackoffMs double
    Retry backoff in milliseconds (defaults to 100ms if 0).
    SourceClusterId string
    Source cluster ID.
    TlsSettings ShadowLinkClientOptionsTlsSettings
    TLSSettings configures TLS encryption.
    AuthenticationConfiguration ShadowLinkClientOptionsAuthenticationConfiguration
    Authentication config. Supports: * SASL/SCRAM * SASL/PLAIN
    BootstrapServers []string
    Bootstrap servers for the source cluster. Required if source Redpanda ID is not provided.
    ClientId string
    Client ID for the connection.
    ConnectionTimeoutMs float64
    Connection timeout in milliseconds (defaults to 1000ms if 0).
    EffectiveConnectionTimeoutMs float64
    The effective connection timeout in milliseconds
    EffectiveFetchMaxBytes float64
    The effective fetch max bytes
    EffectiveFetchMinBytes float64
    The effective fetch min bytes
    EffectiveFetchPartitionMaxBytes float64
    The effective fetch partition max bytes
    EffectiveFetchWaitMaxMs float64
    The effective fetch wait max in milliseconds
    EffectiveMetadataMaxAgeMs float64
    The effective metadata max age in milliseconds
    EffectiveRetryBackoffMs float64
    The effective retry backoff in milliseconds
    FetchMaxBytes float64
    Maximum bytes to fetch (defaults to 20971520 bytes / 20 MiB if 0).
    FetchMinBytes float64
    Minimum bytes to fetch (defaults to 5242880 bytes / 5 MiB if 0).
    FetchPartitionMaxBytes float64
    Maximum bytes per partition to fetch (defaults to 1048576 bytes / 1 MiB if 0).
    FetchWaitMaxMs float64
    Maximum time to wait for fetch requests in milliseconds (defaults to 500ms if 0).
    MetadataMaxAgeMs float64
    Metadata refresh interval in milliseconds (defaults to 10000ms if 0).
    RetryBackoffMs float64
    Retry backoff in milliseconds (defaults to 100ms if 0).
    SourceClusterId string
    Source cluster ID.
    TlsSettings ShadowLinkClientOptionsTlsSettings
    TLSSettings configures TLS encryption.
    authentication_configuration object
    Authentication config. Supports: * SASL/SCRAM * SASL/PLAIN
    bootstrap_servers list(string)
    Bootstrap servers for the source cluster. Required if source Redpanda ID is not provided.
    client_id string
    Client ID for the connection.
    connection_timeout_ms number
    Connection timeout in milliseconds (defaults to 1000ms if 0).
    effective_connection_timeout_ms number
    The effective connection timeout in milliseconds
    effective_fetch_max_bytes number
    The effective fetch max bytes
    effective_fetch_min_bytes number
    The effective fetch min bytes
    effective_fetch_partition_max_bytes number
    The effective fetch partition max bytes
    effective_fetch_wait_max_ms number
    The effective fetch wait max in milliseconds
    effective_metadata_max_age_ms number
    The effective metadata max age in milliseconds
    effective_retry_backoff_ms number
    The effective retry backoff in milliseconds
    fetch_max_bytes number
    Maximum bytes to fetch (defaults to 20971520 bytes / 20 MiB if 0).
    fetch_min_bytes number
    Minimum bytes to fetch (defaults to 5242880 bytes / 5 MiB if 0).
    fetch_partition_max_bytes number
    Maximum bytes per partition to fetch (defaults to 1048576 bytes / 1 MiB if 0).
    fetch_wait_max_ms number
    Maximum time to wait for fetch requests in milliseconds (defaults to 500ms if 0).
    metadata_max_age_ms number
    Metadata refresh interval in milliseconds (defaults to 10000ms if 0).
    retry_backoff_ms number
    Retry backoff in milliseconds (defaults to 100ms if 0).
    source_cluster_id string
    Source cluster ID.
    tls_settings object
    TLSSettings configures TLS encryption.
    authenticationConfiguration ShadowLinkClientOptionsAuthenticationConfiguration
    Authentication config. Supports: * SASL/SCRAM * SASL/PLAIN
    bootstrapServers List<String>
    Bootstrap servers for the source cluster. Required if source Redpanda ID is not provided.
    clientId String
    Client ID for the connection.
    connectionTimeoutMs Double
    Connection timeout in milliseconds (defaults to 1000ms if 0).
    effectiveConnectionTimeoutMs Double
    The effective connection timeout in milliseconds
    effectiveFetchMaxBytes Double
    The effective fetch max bytes
    effectiveFetchMinBytes Double
    The effective fetch min bytes
    effectiveFetchPartitionMaxBytes Double
    The effective fetch partition max bytes
    effectiveFetchWaitMaxMs Double
    The effective fetch wait max in milliseconds
    effectiveMetadataMaxAgeMs Double
    The effective metadata max age in milliseconds
    effectiveRetryBackoffMs Double
    The effective retry backoff in milliseconds
    fetchMaxBytes Double
    Maximum bytes to fetch (defaults to 20971520 bytes / 20 MiB if 0).
    fetchMinBytes Double
    Minimum bytes to fetch (defaults to 5242880 bytes / 5 MiB if 0).
    fetchPartitionMaxBytes Double
    Maximum bytes per partition to fetch (defaults to 1048576 bytes / 1 MiB if 0).
    fetchWaitMaxMs Double
    Maximum time to wait for fetch requests in milliseconds (defaults to 500ms if 0).
    metadataMaxAgeMs Double
    Metadata refresh interval in milliseconds (defaults to 10000ms if 0).
    retryBackoffMs Double
    Retry backoff in milliseconds (defaults to 100ms if 0).
    sourceClusterId String
    Source cluster ID.
    tlsSettings ShadowLinkClientOptionsTlsSettings
    TLSSettings configures TLS encryption.
    authenticationConfiguration ShadowLinkClientOptionsAuthenticationConfiguration
    Authentication config. Supports: * SASL/SCRAM * SASL/PLAIN
    bootstrapServers string[]
    Bootstrap servers for the source cluster. Required if source Redpanda ID is not provided.
    clientId string
    Client ID for the connection.
    connectionTimeoutMs number
    Connection timeout in milliseconds (defaults to 1000ms if 0).
    effectiveConnectionTimeoutMs number
    The effective connection timeout in milliseconds
    effectiveFetchMaxBytes number
    The effective fetch max bytes
    effectiveFetchMinBytes number
    The effective fetch min bytes
    effectiveFetchPartitionMaxBytes number
    The effective fetch partition max bytes
    effectiveFetchWaitMaxMs number
    The effective fetch wait max in milliseconds
    effectiveMetadataMaxAgeMs number
    The effective metadata max age in milliseconds
    effectiveRetryBackoffMs number
    The effective retry backoff in milliseconds
    fetchMaxBytes number
    Maximum bytes to fetch (defaults to 20971520 bytes / 20 MiB if 0).
    fetchMinBytes number
    Minimum bytes to fetch (defaults to 5242880 bytes / 5 MiB if 0).
    fetchPartitionMaxBytes number
    Maximum bytes per partition to fetch (defaults to 1048576 bytes / 1 MiB if 0).
    fetchWaitMaxMs number
    Maximum time to wait for fetch requests in milliseconds (defaults to 500ms if 0).
    metadataMaxAgeMs number
    Metadata refresh interval in milliseconds (defaults to 10000ms if 0).
    retryBackoffMs number
    Retry backoff in milliseconds (defaults to 100ms if 0).
    sourceClusterId string
    Source cluster ID.
    tlsSettings ShadowLinkClientOptionsTlsSettings
    TLSSettings configures TLS encryption.
    authentication_configuration ShadowLinkClientOptionsAuthenticationConfiguration
    Authentication config. Supports: * SASL/SCRAM * SASL/PLAIN
    bootstrap_servers Sequence[str]
    Bootstrap servers for the source cluster. Required if source Redpanda ID is not provided.
    client_id str
    Client ID for the connection.
    connection_timeout_ms float
    Connection timeout in milliseconds (defaults to 1000ms if 0).
    effective_connection_timeout_ms float
    The effective connection timeout in milliseconds
    effective_fetch_max_bytes float
    The effective fetch max bytes
    effective_fetch_min_bytes float
    The effective fetch min bytes
    effective_fetch_partition_max_bytes float
    The effective fetch partition max bytes
    effective_fetch_wait_max_ms float
    The effective fetch wait max in milliseconds
    effective_metadata_max_age_ms float
    The effective metadata max age in milliseconds
    effective_retry_backoff_ms float
    The effective retry backoff in milliseconds
    fetch_max_bytes float
    Maximum bytes to fetch (defaults to 20971520 bytes / 20 MiB if 0).
    fetch_min_bytes float
    Minimum bytes to fetch (defaults to 5242880 bytes / 5 MiB if 0).
    fetch_partition_max_bytes float
    Maximum bytes per partition to fetch (defaults to 1048576 bytes / 1 MiB if 0).
    fetch_wait_max_ms float
    Maximum time to wait for fetch requests in milliseconds (defaults to 500ms if 0).
    metadata_max_age_ms float
    Metadata refresh interval in milliseconds (defaults to 10000ms if 0).
    retry_backoff_ms float
    Retry backoff in milliseconds (defaults to 100ms if 0).
    source_cluster_id str
    Source cluster ID.
    tls_settings ShadowLinkClientOptionsTlsSettings
    TLSSettings configures TLS encryption.
    authenticationConfiguration Property Map
    Authentication config. Supports: * SASL/SCRAM * SASL/PLAIN
    bootstrapServers List<String>
    Bootstrap servers for the source cluster. Required if source Redpanda ID is not provided.
    clientId String
    Client ID for the connection.
    connectionTimeoutMs Number
    Connection timeout in milliseconds (defaults to 1000ms if 0).
    effectiveConnectionTimeoutMs Number
    The effective connection timeout in milliseconds
    effectiveFetchMaxBytes Number
    The effective fetch max bytes
    effectiveFetchMinBytes Number
    The effective fetch min bytes
    effectiveFetchPartitionMaxBytes Number
    The effective fetch partition max bytes
    effectiveFetchWaitMaxMs Number
    The effective fetch wait max in milliseconds
    effectiveMetadataMaxAgeMs Number
    The effective metadata max age in milliseconds
    effectiveRetryBackoffMs Number
    The effective retry backoff in milliseconds
    fetchMaxBytes Number
    Maximum bytes to fetch (defaults to 20971520 bytes / 20 MiB if 0).
    fetchMinBytes Number
    Minimum bytes to fetch (defaults to 5242880 bytes / 5 MiB if 0).
    fetchPartitionMaxBytes Number
    Maximum bytes per partition to fetch (defaults to 1048576 bytes / 1 MiB if 0).
    fetchWaitMaxMs Number
    Maximum time to wait for fetch requests in milliseconds (defaults to 500ms if 0).
    metadataMaxAgeMs Number
    Metadata refresh interval in milliseconds (defaults to 10000ms if 0).
    retryBackoffMs Number
    Retry backoff in milliseconds (defaults to 100ms if 0).
    sourceClusterId String
    Source cluster ID.
    tlsSettings Property Map
    TLSSettings configures TLS encryption.

    ShadowLinkClientOptionsAuthenticationConfiguration, ShadowLinkClientOptionsAuthenticationConfigurationArgs

    ShadowLinkClientOptionsAuthenticationConfigurationPlainConfiguration, ShadowLinkClientOptionsAuthenticationConfigurationPlainConfigurationArgs

    Password string
    Password
    PasswordSet bool
    Indicates that the password has been set
    Username string
    PLAIN username
    Password string
    Password
    PasswordSet bool
    Indicates that the password has been set
    Username string
    PLAIN username
    password string
    Password
    password_set bool
    Indicates that the password has been set
    username string
    PLAIN username
    password String
    Password
    passwordSet Boolean
    Indicates that the password has been set
    username String
    PLAIN username
    password string
    Password
    passwordSet boolean
    Indicates that the password has been set
    username string
    PLAIN username
    password str
    Password
    password_set bool
    Indicates that the password has been set
    username str
    PLAIN username
    password String
    Password
    passwordSet Boolean
    Indicates that the password has been set
    username String
    PLAIN username

    ShadowLinkClientOptionsAuthenticationConfigurationScramConfiguration, ShadowLinkClientOptionsAuthenticationConfigurationScramConfigurationArgs

    Password string
    Password
    PasswordSet bool
    Indicates that the password has been set
    ScramMechanism string
    • SCRAMMECHANISMSCRAMSHA256: SCRAM-SHA-256 - SCRAMMECHANISMSCRAMSHA512: SCRAM-SHA-512
    Username string
    SCRAM username
    Password string
    Password
    PasswordSet bool
    Indicates that the password has been set
    ScramMechanism string
    • SCRAMMECHANISMSCRAMSHA256: SCRAM-SHA-256 - SCRAMMECHANISMSCRAMSHA512: SCRAM-SHA-512
    Username string
    SCRAM username
    password string
    Password
    password_set bool
    Indicates that the password has been set
    scram_mechanism string
    • SCRAMMECHANISMSCRAMSHA256: SCRAM-SHA-256 - SCRAMMECHANISMSCRAMSHA512: SCRAM-SHA-512
    username string
    SCRAM username
    password String
    Password
    passwordSet Boolean
    Indicates that the password has been set
    scramMechanism String
    • SCRAMMECHANISMSCRAMSHA256: SCRAM-SHA-256 - SCRAMMECHANISMSCRAMSHA512: SCRAM-SHA-512
    username String
    SCRAM username
    password string
    Password
    passwordSet boolean
    Indicates that the password has been set
    scramMechanism string
    • SCRAMMECHANISMSCRAMSHA256: SCRAM-SHA-256 - SCRAMMECHANISMSCRAMSHA512: SCRAM-SHA-512
    username string
    SCRAM username
    password str
    Password
    password_set bool
    Indicates that the password has been set
    scram_mechanism str
    • SCRAMMECHANISMSCRAMSHA256: SCRAM-SHA-256 - SCRAMMECHANISMSCRAMSHA512: SCRAM-SHA-512
    username str
    SCRAM username
    password String
    Password
    passwordSet Boolean
    Indicates that the password has been set
    scramMechanism String
    • SCRAMMECHANISMSCRAMSHA256: SCRAM-SHA-256 - SCRAMMECHANISMSCRAMSHA512: SCRAM-SHA-512
    username String
    SCRAM username

    ShadowLinkClientOptionsTlsSettings, ShadowLinkClientOptionsTlsSettingsArgs

    Ca string
    The CA certificate for TLS.
    Cert string
    Cert is the certificate for TLS. Key and Cert are optional but if one is provided, then both must be provided.
    DoNotSetSniHostname bool
    Do not set SNI hostname.
    Enabled bool
    Enable TLS.
    Key string
    The private key for TLS. Key and Cert are optional but if one is provided, then both must be provided.
    Ca string
    The CA certificate for TLS.
    Cert string
    Cert is the certificate for TLS. Key and Cert are optional but if one is provided, then both must be provided.
    DoNotSetSniHostname bool
    Do not set SNI hostname.
    Enabled bool
    Enable TLS.
    Key string
    The private key for TLS. Key and Cert are optional but if one is provided, then both must be provided.
    ca string
    The CA certificate for TLS.
    cert string
    Cert is the certificate for TLS. Key and Cert are optional but if one is provided, then both must be provided.
    do_not_set_sni_hostname bool
    Do not set SNI hostname.
    enabled bool
    Enable TLS.
    key string
    The private key for TLS. Key and Cert are optional but if one is provided, then both must be provided.
    ca String
    The CA certificate for TLS.
    cert String
    Cert is the certificate for TLS. Key and Cert are optional but if one is provided, then both must be provided.
    doNotSetSniHostname Boolean
    Do not set SNI hostname.
    enabled Boolean
    Enable TLS.
    key String
    The private key for TLS. Key and Cert are optional but if one is provided, then both must be provided.
    ca string
    The CA certificate for TLS.
    cert string
    Cert is the certificate for TLS. Key and Cert are optional but if one is provided, then both must be provided.
    doNotSetSniHostname boolean
    Do not set SNI hostname.
    enabled boolean
    Enable TLS.
    key string
    The private key for TLS. Key and Cert are optional but if one is provided, then both must be provided.
    ca str
    The CA certificate for TLS.
    cert str
    Cert is the certificate for TLS. Key and Cert are optional but if one is provided, then both must be provided.
    do_not_set_sni_hostname bool
    Do not set SNI hostname.
    enabled bool
    Enable TLS.
    key str
    The private key for TLS. Key and Cert are optional but if one is provided, then both must be provided.
    ca String
    The CA certificate for TLS.
    cert String
    Cert is the certificate for TLS. Key and Cert are optional but if one is provided, then both must be provided.
    doNotSetSniHostname Boolean
    Do not set SNI hostname.
    enabled Boolean
    Enable TLS.
    key String
    The private key for TLS. Key and Cert are optional but if one is provided, then both must be provided.

    ShadowLinkConsumerOffsetSyncOptions, ShadowLinkConsumerOffsetSyncOptionsArgs

    GroupFilters List<ShadowLinkConsumerOffsetSyncOptionsGroupFilter>
    The filters
    Interval string
    Sync interval If 0 provided, defaults to 30 seconds
    Paused bool
    Allows user to pause the consumer offset sync task. If paused, then the task will enter the 'paused' state and not sync consumer offsets from the source cluster
    GroupFilters []ShadowLinkConsumerOffsetSyncOptionsGroupFilter
    The filters
    Interval string
    Sync interval If 0 provided, defaults to 30 seconds
    Paused bool
    Allows user to pause the consumer offset sync task. If paused, then the task will enter the 'paused' state and not sync consumer offsets from the source cluster
    group_filters list(object)
    The filters
    interval string
    Sync interval If 0 provided, defaults to 30 seconds
    paused bool
    Allows user to pause the consumer offset sync task. If paused, then the task will enter the 'paused' state and not sync consumer offsets from the source cluster
    groupFilters List<ShadowLinkConsumerOffsetSyncOptionsGroupFilter>
    The filters
    interval String
    Sync interval If 0 provided, defaults to 30 seconds
    paused Boolean
    Allows user to pause the consumer offset sync task. If paused, then the task will enter the 'paused' state and not sync consumer offsets from the source cluster
    groupFilters ShadowLinkConsumerOffsetSyncOptionsGroupFilter[]
    The filters
    interval string
    Sync interval If 0 provided, defaults to 30 seconds
    paused boolean
    Allows user to pause the consumer offset sync task. If paused, then the task will enter the 'paused' state and not sync consumer offsets from the source cluster
    group_filters Sequence[ShadowLinkConsumerOffsetSyncOptionsGroupFilter]
    The filters
    interval str
    Sync interval If 0 provided, defaults to 30 seconds
    paused bool
    Allows user to pause the consumer offset sync task. If paused, then the task will enter the 'paused' state and not sync consumer offsets from the source cluster
    groupFilters List<Property Map>
    The filters
    interval String
    Sync interval If 0 provided, defaults to 30 seconds
    paused Boolean
    Allows user to pause the consumer offset sync task. If paused, then the task will enter the 'paused' state and not sync consumer offsets from the source cluster

    ShadowLinkConsumerOffsetSyncOptionsGroupFilter, ShadowLinkConsumerOffsetSyncOptionsGroupFilterArgs

    FilterType string
    • FILTERTYPEINCLUDE: Include the items that match the filter - FILTERTYPEEXCLUDE: Exclude the items that match the filter
    Name string
    The resource name, or "" Note if "", must be the only character and pattern_type must be PATTERN_TYPE_LITERAL
    PatternType string
    • PATTERNTYPELITERAL: Must match the filter exactly - PATTERNTYPEPREFIX: Will match anything that starts with filter - PATTERNTYPEPREFIXED: Will match anything that starts with filter
    FilterType string
    • FILTERTYPEINCLUDE: Include the items that match the filter - FILTERTYPEEXCLUDE: Exclude the items that match the filter
    Name string
    The resource name, or "" Note if "", must be the only character and pattern_type must be PATTERN_TYPE_LITERAL
    PatternType string
    • PATTERNTYPELITERAL: Must match the filter exactly - PATTERNTYPEPREFIX: Will match anything that starts with filter - PATTERNTYPEPREFIXED: Will match anything that starts with filter
    filter_type string
    • FILTERTYPEINCLUDE: Include the items that match the filter - FILTERTYPEEXCLUDE: Exclude the items that match the filter
    name string
    The resource name, or "" Note if "", must be the only character and pattern_type must be PATTERN_TYPE_LITERAL
    pattern_type string
    • PATTERNTYPELITERAL: Must match the filter exactly - PATTERNTYPEPREFIX: Will match anything that starts with filter - PATTERNTYPEPREFIXED: Will match anything that starts with filter
    filterType String
    • FILTERTYPEINCLUDE: Include the items that match the filter - FILTERTYPEEXCLUDE: Exclude the items that match the filter
    name String
    The resource name, or "" Note if "", must be the only character and pattern_type must be PATTERN_TYPE_LITERAL
    patternType String
    • PATTERNTYPELITERAL: Must match the filter exactly - PATTERNTYPEPREFIX: Will match anything that starts with filter - PATTERNTYPEPREFIXED: Will match anything that starts with filter
    filterType string
    • FILTERTYPEINCLUDE: Include the items that match the filter - FILTERTYPEEXCLUDE: Exclude the items that match the filter
    name string
    The resource name, or "" Note if "", must be the only character and pattern_type must be PATTERN_TYPE_LITERAL
    patternType string
    • PATTERNTYPELITERAL: Must match the filter exactly - PATTERNTYPEPREFIX: Will match anything that starts with filter - PATTERNTYPEPREFIXED: Will match anything that starts with filter
    filter_type str
    • FILTERTYPEINCLUDE: Include the items that match the filter - FILTERTYPEEXCLUDE: Exclude the items that match the filter
    name str
    The resource name, or "" Note if "", must be the only character and pattern_type must be PATTERN_TYPE_LITERAL
    pattern_type str
    • PATTERNTYPELITERAL: Must match the filter exactly - PATTERNTYPEPREFIX: Will match anything that starts with filter - PATTERNTYPEPREFIXED: Will match anything that starts with filter
    filterType String
    • FILTERTYPEINCLUDE: Include the items that match the filter - FILTERTYPEEXCLUDE: Exclude the items that match the filter
    name String
    The resource name, or "" Note if "", must be the only character and pattern_type must be PATTERN_TYPE_LITERAL
    patternType String
    • PATTERNTYPELITERAL: Must match the filter exactly - PATTERNTYPEPREFIX: Will match anything that starts with filter - PATTERNTYPEPREFIXED: Will match anything that starts with filter

    ShadowLinkSchemaRegistrySyncOptions, ShadowLinkSchemaRegistrySyncOptionsArgs

    ShadowSchemaRegistryApi ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApi
    Replicates selected Schema Registry subjects, configs, modes, and schema IDs over the Schema Registry HTTP API.
    ShadowSchemaRegistryTopic bool
    Shadow the entire source cluster's Schema Registry byte-for-byte. If set, the Shadow Link will attempt to add the _schemas topic to the list of Shadow Topics as long as: 1. The _schemas topic exists on the source cluster 2. The _schemas topic does not exist on the shadow cluster, or it is empty. If either of the above conditions are not met, then the _schemas topic will not be shadowed by this cluster. Unsetting this flag will not remove the _schemas topic from shadowing if it has already been added. Once made a shadow topic, the _schemas topic will be replicated byte-for-byte. To stop shadowing the _schemas topic, unset this field, then either fail-over the topic or delete it.
    ShadowSchemaRegistryApi ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApi
    Replicates selected Schema Registry subjects, configs, modes, and schema IDs over the Schema Registry HTTP API.
    ShadowSchemaRegistryTopic bool
    Shadow the entire source cluster's Schema Registry byte-for-byte. If set, the Shadow Link will attempt to add the _schemas topic to the list of Shadow Topics as long as: 1. The _schemas topic exists on the source cluster 2. The _schemas topic does not exist on the shadow cluster, or it is empty. If either of the above conditions are not met, then the _schemas topic will not be shadowed by this cluster. Unsetting this flag will not remove the _schemas topic from shadowing if it has already been added. Once made a shadow topic, the _schemas topic will be replicated byte-for-byte. To stop shadowing the _schemas topic, unset this field, then either fail-over the topic or delete it.
    shadow_schema_registry_api object
    Replicates selected Schema Registry subjects, configs, modes, and schema IDs over the Schema Registry HTTP API.
    shadow_schema_registry_topic bool
    Shadow the entire source cluster's Schema Registry byte-for-byte. If set, the Shadow Link will attempt to add the _schemas topic to the list of Shadow Topics as long as: 1. The _schemas topic exists on the source cluster 2. The _schemas topic does not exist on the shadow cluster, or it is empty. If either of the above conditions are not met, then the _schemas topic will not be shadowed by this cluster. Unsetting this flag will not remove the _schemas topic from shadowing if it has already been added. Once made a shadow topic, the _schemas topic will be replicated byte-for-byte. To stop shadowing the _schemas topic, unset this field, then either fail-over the topic or delete it.
    shadowSchemaRegistryApi ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApi
    Replicates selected Schema Registry subjects, configs, modes, and schema IDs over the Schema Registry HTTP API.
    shadowSchemaRegistryTopic Boolean
    Shadow the entire source cluster's Schema Registry byte-for-byte. If set, the Shadow Link will attempt to add the _schemas topic to the list of Shadow Topics as long as: 1. The _schemas topic exists on the source cluster 2. The _schemas topic does not exist on the shadow cluster, or it is empty. If either of the above conditions are not met, then the _schemas topic will not be shadowed by this cluster. Unsetting this flag will not remove the _schemas topic from shadowing if it has already been added. Once made a shadow topic, the _schemas topic will be replicated byte-for-byte. To stop shadowing the _schemas topic, unset this field, then either fail-over the topic or delete it.
    shadowSchemaRegistryApi ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApi
    Replicates selected Schema Registry subjects, configs, modes, and schema IDs over the Schema Registry HTTP API.
    shadowSchemaRegistryTopic boolean
    Shadow the entire source cluster's Schema Registry byte-for-byte. If set, the Shadow Link will attempt to add the _schemas topic to the list of Shadow Topics as long as: 1. The _schemas topic exists on the source cluster 2. The _schemas topic does not exist on the shadow cluster, or it is empty. If either of the above conditions are not met, then the _schemas topic will not be shadowed by this cluster. Unsetting this flag will not remove the _schemas topic from shadowing if it has already been added. Once made a shadow topic, the _schemas topic will be replicated byte-for-byte. To stop shadowing the _schemas topic, unset this field, then either fail-over the topic or delete it.
    shadow_schema_registry_api ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApi
    Replicates selected Schema Registry subjects, configs, modes, and schema IDs over the Schema Registry HTTP API.
    shadow_schema_registry_topic bool
    Shadow the entire source cluster's Schema Registry byte-for-byte. If set, the Shadow Link will attempt to add the _schemas topic to the list of Shadow Topics as long as: 1. The _schemas topic exists on the source cluster 2. The _schemas topic does not exist on the shadow cluster, or it is empty. If either of the above conditions are not met, then the _schemas topic will not be shadowed by this cluster. Unsetting this flag will not remove the _schemas topic from shadowing if it has already been added. Once made a shadow topic, the _schemas topic will be replicated byte-for-byte. To stop shadowing the _schemas topic, unset this field, then either fail-over the topic or delete it.
    shadowSchemaRegistryApi Property Map
    Replicates selected Schema Registry subjects, configs, modes, and schema IDs over the Schema Registry HTTP API.
    shadowSchemaRegistryTopic Boolean
    Shadow the entire source cluster's Schema Registry byte-for-byte. If set, the Shadow Link will attempt to add the _schemas topic to the list of Shadow Topics as long as: 1. The _schemas topic exists on the source cluster 2. The _schemas topic does not exist on the shadow cluster, or it is empty. If either of the above conditions are not met, then the _schemas topic will not be shadowed by this cluster. Unsetting this flag will not remove the _schemas topic from shadowing if it has already been added. Once made a shadow topic, the _schemas topic will be replicated byte-for-byte. To stop shadowing the _schemas topic, unset this field, then either fail-over the topic or delete it.

    ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApi, ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiArgs

    AuthOptions ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptions
    Authentication settings for source Schema Registry HTTP requests.
    Destination ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestination
    Destination context mapping for source Schema Registry data.
    EffectiveFullSyncInterval string
    The effective interval between full scans.
    EffectiveMaxSourceRequestsPerSecond double
    The effective maximum request rate, in requests per second.
    EffectiveTailInterval string
    The effective interval between incremental polls.
    FullSyncInterval string
    Interval between full scans of the selected source subjects. If unset or zero, the cluster default of 5m is used.
    MaxSourceRequestsPerSecond double
    Maximum request rate, in requests per second, for calls to the source Schema Registry. If unset or zero, a default rate limit of 30 requests/s is used.
    Paused bool
    Allows the user to pause the Schema Registry sync task. If paused, the task enters the 'paused' state and stops replicating schemas from the source, and the per-context client write protection on the contexts this link owns is lifted.
    SourceFilter ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiSourceFilter
    Filter for specific Schema Registry contexts and subjects to select for replication. If unset or empty, the whole source Schema Registry is replicated.
    SourceUrl string
    The source Schema Registry URL to use.
    TailInterval string
    Interval between incremental polls for new source subjects and subject versions. If unset or zero, the cluster default of 10s is used.
    TlsSettings ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettings
    TLS settings
    UnsupportedSchemaFeaturePolicy string
    Policy for handling source schema features unsupported by the destination. - UNSUPPORTEDSCHEMAFEATUREPOLICYFAIL: Fail the sync when an unsupported schema feature is encountered. - UNSUPPORTEDSCHEMAFEATUREPOLICYREMOVE: Remove unsupported schema features before writing to the destination.
    AuthOptions ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptions
    Authentication settings for source Schema Registry HTTP requests.
    Destination ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestination
    Destination context mapping for source Schema Registry data.
    EffectiveFullSyncInterval string
    The effective interval between full scans.
    EffectiveMaxSourceRequestsPerSecond float64
    The effective maximum request rate, in requests per second.
    EffectiveTailInterval string
    The effective interval between incremental polls.
    FullSyncInterval string
    Interval between full scans of the selected source subjects. If unset or zero, the cluster default of 5m is used.
    MaxSourceRequestsPerSecond float64
    Maximum request rate, in requests per second, for calls to the source Schema Registry. If unset or zero, a default rate limit of 30 requests/s is used.
    Paused bool
    Allows the user to pause the Schema Registry sync task. If paused, the task enters the 'paused' state and stops replicating schemas from the source, and the per-context client write protection on the contexts this link owns is lifted.
    SourceFilter ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiSourceFilter
    Filter for specific Schema Registry contexts and subjects to select for replication. If unset or empty, the whole source Schema Registry is replicated.
    SourceUrl string
    The source Schema Registry URL to use.
    TailInterval string
    Interval between incremental polls for new source subjects and subject versions. If unset or zero, the cluster default of 10s is used.
    TlsSettings ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettings
    TLS settings
    UnsupportedSchemaFeaturePolicy string
    Policy for handling source schema features unsupported by the destination. - UNSUPPORTEDSCHEMAFEATUREPOLICYFAIL: Fail the sync when an unsupported schema feature is encountered. - UNSUPPORTEDSCHEMAFEATUREPOLICYREMOVE: Remove unsupported schema features before writing to the destination.
    auth_options object
    Authentication settings for source Schema Registry HTTP requests.
    destination object
    Destination context mapping for source Schema Registry data.
    effective_full_sync_interval string
    The effective interval between full scans.
    effective_max_source_requests_per_second number
    The effective maximum request rate, in requests per second.
    effective_tail_interval string
    The effective interval between incremental polls.
    full_sync_interval string
    Interval between full scans of the selected source subjects. If unset or zero, the cluster default of 5m is used.
    max_source_requests_per_second number
    Maximum request rate, in requests per second, for calls to the source Schema Registry. If unset or zero, a default rate limit of 30 requests/s is used.
    paused bool
    Allows the user to pause the Schema Registry sync task. If paused, the task enters the 'paused' state and stops replicating schemas from the source, and the per-context client write protection on the contexts this link owns is lifted.
    source_filter object
    Filter for specific Schema Registry contexts and subjects to select for replication. If unset or empty, the whole source Schema Registry is replicated.
    source_url string
    The source Schema Registry URL to use.
    tail_interval string
    Interval between incremental polls for new source subjects and subject versions. If unset or zero, the cluster default of 10s is used.
    tls_settings object
    TLS settings
    unsupported_schema_feature_policy string
    Policy for handling source schema features unsupported by the destination. - UNSUPPORTEDSCHEMAFEATUREPOLICYFAIL: Fail the sync when an unsupported schema feature is encountered. - UNSUPPORTEDSCHEMAFEATUREPOLICYREMOVE: Remove unsupported schema features before writing to the destination.
    authOptions ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptions
    Authentication settings for source Schema Registry HTTP requests.
    destination ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestination
    Destination context mapping for source Schema Registry data.
    effectiveFullSyncInterval String
    The effective interval between full scans.
    effectiveMaxSourceRequestsPerSecond Double
    The effective maximum request rate, in requests per second.
    effectiveTailInterval String
    The effective interval between incremental polls.
    fullSyncInterval String
    Interval between full scans of the selected source subjects. If unset or zero, the cluster default of 5m is used.
    maxSourceRequestsPerSecond Double
    Maximum request rate, in requests per second, for calls to the source Schema Registry. If unset or zero, a default rate limit of 30 requests/s is used.
    paused Boolean
    Allows the user to pause the Schema Registry sync task. If paused, the task enters the 'paused' state and stops replicating schemas from the source, and the per-context client write protection on the contexts this link owns is lifted.
    sourceFilter ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiSourceFilter
    Filter for specific Schema Registry contexts and subjects to select for replication. If unset or empty, the whole source Schema Registry is replicated.
    sourceUrl String
    The source Schema Registry URL to use.
    tailInterval String
    Interval between incremental polls for new source subjects and subject versions. If unset or zero, the cluster default of 10s is used.
    tlsSettings ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettings
    TLS settings
    unsupportedSchemaFeaturePolicy String
    Policy for handling source schema features unsupported by the destination. - UNSUPPORTEDSCHEMAFEATUREPOLICYFAIL: Fail the sync when an unsupported schema feature is encountered. - UNSUPPORTEDSCHEMAFEATUREPOLICYREMOVE: Remove unsupported schema features before writing to the destination.
    authOptions ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptions
    Authentication settings for source Schema Registry HTTP requests.
    destination ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestination
    Destination context mapping for source Schema Registry data.
    effectiveFullSyncInterval string
    The effective interval between full scans.
    effectiveMaxSourceRequestsPerSecond number
    The effective maximum request rate, in requests per second.
    effectiveTailInterval string
    The effective interval between incremental polls.
    fullSyncInterval string
    Interval between full scans of the selected source subjects. If unset or zero, the cluster default of 5m is used.
    maxSourceRequestsPerSecond number
    Maximum request rate, in requests per second, for calls to the source Schema Registry. If unset or zero, a default rate limit of 30 requests/s is used.
    paused boolean
    Allows the user to pause the Schema Registry sync task. If paused, the task enters the 'paused' state and stops replicating schemas from the source, and the per-context client write protection on the contexts this link owns is lifted.
    sourceFilter ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiSourceFilter
    Filter for specific Schema Registry contexts and subjects to select for replication. If unset or empty, the whole source Schema Registry is replicated.
    sourceUrl string
    The source Schema Registry URL to use.
    tailInterval string
    Interval between incremental polls for new source subjects and subject versions. If unset or zero, the cluster default of 10s is used.
    tlsSettings ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettings
    TLS settings
    unsupportedSchemaFeaturePolicy string
    Policy for handling source schema features unsupported by the destination. - UNSUPPORTEDSCHEMAFEATUREPOLICYFAIL: Fail the sync when an unsupported schema feature is encountered. - UNSUPPORTEDSCHEMAFEATUREPOLICYREMOVE: Remove unsupported schema features before writing to the destination.
    auth_options ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptions
    Authentication settings for source Schema Registry HTTP requests.
    destination ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestination
    Destination context mapping for source Schema Registry data.
    effective_full_sync_interval str
    The effective interval between full scans.
    effective_max_source_requests_per_second float
    The effective maximum request rate, in requests per second.
    effective_tail_interval str
    The effective interval between incremental polls.
    full_sync_interval str
    Interval between full scans of the selected source subjects. If unset or zero, the cluster default of 5m is used.
    max_source_requests_per_second float
    Maximum request rate, in requests per second, for calls to the source Schema Registry. If unset or zero, a default rate limit of 30 requests/s is used.
    paused bool
    Allows the user to pause the Schema Registry sync task. If paused, the task enters the 'paused' state and stops replicating schemas from the source, and the per-context client write protection on the contexts this link owns is lifted.
    source_filter ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiSourceFilter
    Filter for specific Schema Registry contexts and subjects to select for replication. If unset or empty, the whole source Schema Registry is replicated.
    source_url str
    The source Schema Registry URL to use.
    tail_interval str
    Interval between incremental polls for new source subjects and subject versions. If unset or zero, the cluster default of 10s is used.
    tls_settings ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettings
    TLS settings
    unsupported_schema_feature_policy str
    Policy for handling source schema features unsupported by the destination. - UNSUPPORTEDSCHEMAFEATUREPOLICYFAIL: Fail the sync when an unsupported schema feature is encountered. - UNSUPPORTEDSCHEMAFEATUREPOLICYREMOVE: Remove unsupported schema features before writing to the destination.
    authOptions Property Map
    Authentication settings for source Schema Registry HTTP requests.
    destination Property Map
    Destination context mapping for source Schema Registry data.
    effectiveFullSyncInterval String
    The effective interval between full scans.
    effectiveMaxSourceRequestsPerSecond Number
    The effective maximum request rate, in requests per second.
    effectiveTailInterval String
    The effective interval between incremental polls.
    fullSyncInterval String
    Interval between full scans of the selected source subjects. If unset or zero, the cluster default of 5m is used.
    maxSourceRequestsPerSecond Number
    Maximum request rate, in requests per second, for calls to the source Schema Registry. If unset or zero, a default rate limit of 30 requests/s is used.
    paused Boolean
    Allows the user to pause the Schema Registry sync task. If paused, the task enters the 'paused' state and stops replicating schemas from the source, and the per-context client write protection on the contexts this link owns is lifted.
    sourceFilter Property Map
    Filter for specific Schema Registry contexts and subjects to select for replication. If unset or empty, the whole source Schema Registry is replicated.
    sourceUrl String
    The source Schema Registry URL to use.
    tailInterval String
    Interval between incremental polls for new source subjects and subject versions. If unset or zero, the cluster default of 10s is used.
    tlsSettings Property Map
    TLS settings
    unsupportedSchemaFeaturePolicy String
    Policy for handling source schema features unsupported by the destination. - UNSUPPORTEDSCHEMAFEATUREPOLICYFAIL: Fail the sync when an unsupported schema feature is encountered. - UNSUPPORTEDSCHEMAFEATUREPOLICYREMOVE: Remove unsupported schema features before writing to the destination.

    ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptions, ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptionsArgs

    basic object
    HTTP Basic auth credentials.
    basic Property Map
    HTTP Basic auth credentials.

    ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptionsBasic, ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiAuthOptionsBasicArgs

    Password string
    HTTP Basic auth password. For Confluent Cloud, this is the API secret.
    PasswordSet bool
    Indicates that the password has been set.
    Username string
    HTTP Basic auth username. For Confluent Cloud, this is the API key.
    Password string
    HTTP Basic auth password. For Confluent Cloud, this is the API secret.
    PasswordSet bool
    Indicates that the password has been set.
    Username string
    HTTP Basic auth username. For Confluent Cloud, this is the API key.
    password string
    HTTP Basic auth password. For Confluent Cloud, this is the API secret.
    password_set bool
    Indicates that the password has been set.
    username string
    HTTP Basic auth username. For Confluent Cloud, this is the API key.
    password String
    HTTP Basic auth password. For Confluent Cloud, this is the API secret.
    passwordSet Boolean
    Indicates that the password has been set.
    username String
    HTTP Basic auth username. For Confluent Cloud, this is the API key.
    password string
    HTTP Basic auth password. For Confluent Cloud, this is the API secret.
    passwordSet boolean
    Indicates that the password has been set.
    username string
    HTTP Basic auth username. For Confluent Cloud, this is the API key.
    password str
    HTTP Basic auth password. For Confluent Cloud, this is the API secret.
    password_set bool
    Indicates that the password has been set.
    username str
    HTTP Basic auth username. For Confluent Cloud, this is the API key.
    password String
    HTTP Basic auth password. For Confluent Cloud, this is the API secret.
    passwordSet Boolean
    Indicates that the password has been set.
    username String
    HTTP Basic auth username. For Confluent Cloud, this is the API key.

    ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestination, ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationArgs

    Exact ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExact
    Explicit source-to-destination context mappings.
    Identity bool
    Preserve source context names in the destination Schema Registry.
    Exact ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExact
    Explicit source-to-destination context mappings.
    Identity bool
    Preserve source context names in the destination Schema Registry.
    exact object
    Explicit source-to-destination context mappings.
    identity bool
    Preserve source context names in the destination Schema Registry.
    exact ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExact
    Explicit source-to-destination context mappings.
    identity Boolean
    Preserve source context names in the destination Schema Registry.
    exact ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExact
    Explicit source-to-destination context mappings.
    identity boolean
    Preserve source context names in the destination Schema Registry.
    exact ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExact
    Explicit source-to-destination context mappings.
    identity bool
    Preserve source context names in the destination Schema Registry.
    exact Property Map
    Explicit source-to-destination context mappings.
    identity Boolean
    Preserve source context names in the destination Schema Registry.

    ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExact, ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExactArgs

    Mappings List<ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExactMapping>
    Explicit source-to-destination context mappings. Every source context in the effective source scope must have exactly one mapping.
    Mappings []ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExactMapping
    Explicit source-to-destination context mappings. Every source context in the effective source scope must have exactly one mapping.
    mappings list(object)
    Explicit source-to-destination context mappings. Every source context in the effective source scope must have exactly one mapping.
    mappings List<ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExactMapping>
    Explicit source-to-destination context mappings. Every source context in the effective source scope must have exactly one mapping.
    mappings ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExactMapping[]
    Explicit source-to-destination context mappings. Every source context in the effective source scope must have exactly one mapping.
    mappings Sequence[ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExactMapping]
    Explicit source-to-destination context mappings. Every source context in the effective source scope must have exactly one mapping.
    mappings List<Property Map>
    Explicit source-to-destination context mappings. Every source context in the effective source scope must have exactly one mapping.

    ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExactMapping, ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiDestinationExactMappingArgs

    Destination string
    Destination context name.
    Source string
    Source context name.
    Destination string
    Destination context name.
    Source string
    Source context name.
    destination string
    Destination context name.
    source string
    Source context name.
    destination String
    Destination context name.
    source String
    Source context name.
    destination string
    Destination context name.
    source string
    Source context name.
    destination str
    Destination context name.
    source str
    Source context name.
    destination String
    Destination context name.
    source String
    Source context name.

    ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiSourceFilter, ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiSourceFilterArgs

    Contexts List<string>
    Source contexts to replicate in full, for example ".", ".prod", or ".staging". If both contexts and subjects are set, the effective source scope is the union of both selections.
    Subjects List<string>
    Exact source subjects to replicate, using Schema Registry qualified subject syntax. For example, "orders-value" selects the subject in the default context, and ":.prod:orders-value" selects the subject in context ".prod". If both contexts and subjects are set, the union of both selections is replicated. If a subject is also included by contexts, it is counted and replicated once.
    Contexts []string
    Source contexts to replicate in full, for example ".", ".prod", or ".staging". If both contexts and subjects are set, the effective source scope is the union of both selections.
    Subjects []string
    Exact source subjects to replicate, using Schema Registry qualified subject syntax. For example, "orders-value" selects the subject in the default context, and ":.prod:orders-value" selects the subject in context ".prod". If both contexts and subjects are set, the union of both selections is replicated. If a subject is also included by contexts, it is counted and replicated once.
    contexts list(string)
    Source contexts to replicate in full, for example ".", ".prod", or ".staging". If both contexts and subjects are set, the effective source scope is the union of both selections.
    subjects list(string)
    Exact source subjects to replicate, using Schema Registry qualified subject syntax. For example, "orders-value" selects the subject in the default context, and ":.prod:orders-value" selects the subject in context ".prod". If both contexts and subjects are set, the union of both selections is replicated. If a subject is also included by contexts, it is counted and replicated once.
    contexts List<String>
    Source contexts to replicate in full, for example ".", ".prod", or ".staging". If both contexts and subjects are set, the effective source scope is the union of both selections.
    subjects List<String>
    Exact source subjects to replicate, using Schema Registry qualified subject syntax. For example, "orders-value" selects the subject in the default context, and ":.prod:orders-value" selects the subject in context ".prod". If both contexts and subjects are set, the union of both selections is replicated. If a subject is also included by contexts, it is counted and replicated once.
    contexts string[]
    Source contexts to replicate in full, for example ".", ".prod", or ".staging". If both contexts and subjects are set, the effective source scope is the union of both selections.
    subjects string[]
    Exact source subjects to replicate, using Schema Registry qualified subject syntax. For example, "orders-value" selects the subject in the default context, and ":.prod:orders-value" selects the subject in context ".prod". If both contexts and subjects are set, the union of both selections is replicated. If a subject is also included by contexts, it is counted and replicated once.
    contexts Sequence[str]
    Source contexts to replicate in full, for example ".", ".prod", or ".staging". If both contexts and subjects are set, the effective source scope is the union of both selections.
    subjects Sequence[str]
    Exact source subjects to replicate, using Schema Registry qualified subject syntax. For example, "orders-value" selects the subject in the default context, and ":.prod:orders-value" selects the subject in context ".prod". If both contexts and subjects are set, the union of both selections is replicated. If a subject is also included by contexts, it is counted and replicated once.
    contexts List<String>
    Source contexts to replicate in full, for example ".", ".prod", or ".staging". If both contexts and subjects are set, the effective source scope is the union of both selections.
    subjects List<String>
    Exact source subjects to replicate, using Schema Registry qualified subject syntax. For example, "orders-value" selects the subject in the default context, and ":.prod:orders-value" selects the subject in context ".prod". If both contexts and subjects are set, the union of both selections is replicated. If a subject is also included by contexts, it is counted and replicated once.

    ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettings, ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsArgs

    DoNotSetSniHostname bool
    If true, the SNI hostname will not be provided when TLS is used
    Enabled bool
    Whether or not TLS is enabled
    TlsFileSettings ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsFileSettings
    TLS file settings
    TlsPemSettings ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsPemSettings
    Used when providing the TLS information in PEM format
    DoNotSetSniHostname bool
    If true, the SNI hostname will not be provided when TLS is used
    Enabled bool
    Whether or not TLS is enabled
    TlsFileSettings ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsFileSettings
    TLS file settings
    TlsPemSettings ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsPemSettings
    Used when providing the TLS information in PEM format
    do_not_set_sni_hostname bool
    If true, the SNI hostname will not be provided when TLS is used
    enabled bool
    Whether or not TLS is enabled
    tls_file_settings object
    TLS file settings
    tls_pem_settings object
    Used when providing the TLS information in PEM format
    doNotSetSniHostname Boolean
    If true, the SNI hostname will not be provided when TLS is used
    enabled Boolean
    Whether or not TLS is enabled
    tlsFileSettings ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsFileSettings
    TLS file settings
    tlsPemSettings ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsPemSettings
    Used when providing the TLS information in PEM format
    doNotSetSniHostname boolean
    If true, the SNI hostname will not be provided when TLS is used
    enabled boolean
    Whether or not TLS is enabled
    tlsFileSettings ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsFileSettings
    TLS file settings
    tlsPemSettings ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsPemSettings
    Used when providing the TLS information in PEM format
    do_not_set_sni_hostname bool
    If true, the SNI hostname will not be provided when TLS is used
    enabled bool
    Whether or not TLS is enabled
    tls_file_settings ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsFileSettings
    TLS file settings
    tls_pem_settings ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsPemSettings
    Used when providing the TLS information in PEM format
    doNotSetSniHostname Boolean
    If true, the SNI hostname will not be provided when TLS is used
    enabled Boolean
    Whether or not TLS is enabled
    tlsFileSettings Property Map
    TLS file settings
    tlsPemSettings Property Map
    Used when providing the TLS information in PEM format

    ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsFileSettings, ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsFileSettingsArgs

    CaPath string
    Path to the CA
    CertPath string
    Path to the cert
    KeyPath string
    Key and Cert are optional but if one is provided, then both must be Path to the key
    CaPath string
    Path to the CA
    CertPath string
    Path to the cert
    KeyPath string
    Key and Cert are optional but if one is provided, then both must be Path to the key
    ca_path string
    Path to the CA
    cert_path string
    Path to the cert
    key_path string
    Key and Cert are optional but if one is provided, then both must be Path to the key
    caPath String
    Path to the CA
    certPath String
    Path to the cert
    keyPath String
    Key and Cert are optional but if one is provided, then both must be Path to the key
    caPath string
    Path to the CA
    certPath string
    Path to the cert
    keyPath string
    Key and Cert are optional but if one is provided, then both must be Path to the key
    ca_path str
    Path to the CA
    cert_path str
    Path to the cert
    key_path str
    Key and Cert are optional but if one is provided, then both must be Path to the key
    caPath String
    Path to the CA
    certPath String
    Path to the cert
    keyPath String
    Key and Cert are optional but if one is provided, then both must be Path to the key

    ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsPemSettings, ShadowLinkSchemaRegistrySyncOptionsShadowSchemaRegistryApiTlsSettingsTlsPemSettingsArgs

    Ca string
    The CA
    Cert string
    The cert
    Key string
    Key and Cert are optional but if one is provided, then both must be The key
    KeyFingerprint string
    The SHA-256 of the key, in base64 format
    Ca string
    The CA
    Cert string
    The cert
    Key string
    Key and Cert are optional but if one is provided, then both must be The key
    KeyFingerprint string
    The SHA-256 of the key, in base64 format
    ca string
    The CA
    cert string
    The cert
    key string
    Key and Cert are optional but if one is provided, then both must be The key
    key_fingerprint string
    The SHA-256 of the key, in base64 format
    ca String
    The CA
    cert String
    The cert
    key String
    Key and Cert are optional but if one is provided, then both must be The key
    keyFingerprint String
    The SHA-256 of the key, in base64 format
    ca string
    The CA
    cert string
    The cert
    key string
    Key and Cert are optional but if one is provided, then both must be The key
    keyFingerprint string
    The SHA-256 of the key, in base64 format
    ca str
    The CA
    cert str
    The cert
    key str
    Key and Cert are optional but if one is provided, then both must be The key
    key_fingerprint str
    The SHA-256 of the key, in base64 format
    ca String
    The CA
    cert String
    The cert
    key String
    Key and Cert are optional but if one is provided, then both must be The key
    keyFingerprint String
    The SHA-256 of the key, in base64 format

    ShadowLinkSecuritySyncOptions, ShadowLinkSecuritySyncOptionsArgs

    AclFilters List<ShadowLinkSecuritySyncOptionsAclFilter>
    ACL filters
    Interval string
    Sync interval If 0 provided, defaults to 30 seconds
    Paused bool
    Allows user to pause the security settings sync task. If paused, then the task will enter the 'paused' state and will not sync security settings from the source cluster
    AclFilters []ShadowLinkSecuritySyncOptionsAclFilter
    ACL filters
    Interval string
    Sync interval If 0 provided, defaults to 30 seconds
    Paused bool
    Allows user to pause the security settings sync task. If paused, then the task will enter the 'paused' state and will not sync security settings from the source cluster
    acl_filters list(object)
    ACL filters
    interval string
    Sync interval If 0 provided, defaults to 30 seconds
    paused bool
    Allows user to pause the security settings sync task. If paused, then the task will enter the 'paused' state and will not sync security settings from the source cluster
    aclFilters List<ShadowLinkSecuritySyncOptionsAclFilter>
    ACL filters
    interval String
    Sync interval If 0 provided, defaults to 30 seconds
    paused Boolean
    Allows user to pause the security settings sync task. If paused, then the task will enter the 'paused' state and will not sync security settings from the source cluster
    aclFilters ShadowLinkSecuritySyncOptionsAclFilter[]
    ACL filters
    interval string
    Sync interval If 0 provided, defaults to 30 seconds
    paused boolean
    Allows user to pause the security settings sync task. If paused, then the task will enter the 'paused' state and will not sync security settings from the source cluster
    acl_filters Sequence[ShadowLinkSecuritySyncOptionsAclFilter]
    ACL filters
    interval str
    Sync interval If 0 provided, defaults to 30 seconds
    paused bool
    Allows user to pause the security settings sync task. If paused, then the task will enter the 'paused' state and will not sync security settings from the source cluster
    aclFilters List<Property Map>
    ACL filters
    interval String
    Sync interval If 0 provided, defaults to 30 seconds
    paused Boolean
    Allows user to pause the security settings sync task. If paused, then the task will enter the 'paused' state and will not sync security settings from the source cluster

    ShadowLinkSecuritySyncOptionsAclFilter, ShadowLinkSecuritySyncOptionsAclFilterArgs

    access_filter object
    Filter an ACL based on its access
    resource_filter object
    A filter to match ACLs for resources
    accessFilter Property Map
    Filter an ACL based on its access
    resourceFilter Property Map
    A filter to match ACLs for resources

    ShadowLinkSecuritySyncOptionsAclFilterAccessFilter, ShadowLinkSecuritySyncOptionsAclFilterAccessFilterArgs

    Operation string
    The ACL operation to match
    PermissionType string
    ACL permission types
    Host string
    The host to match. If not set, will default to match all hosts with the specified operation and permission_type. Note that the asterisk * is literal and matches hosts that are set to *
    Principal string
    The name of the principal, if not set will default to match all principals with the specified operation and permission_type
    Operation string
    The ACL operation to match
    PermissionType string
    ACL permission types
    Host string
    The host to match. If not set, will default to match all hosts with the specified operation and permission_type. Note that the asterisk * is literal and matches hosts that are set to *
    Principal string
    The name of the principal, if not set will default to match all principals with the specified operation and permission_type
    operation string
    The ACL operation to match
    permission_type string
    ACL permission types
    host string
    The host to match. If not set, will default to match all hosts with the specified operation and permission_type. Note that the asterisk * is literal and matches hosts that are set to *
    principal string
    The name of the principal, if not set will default to match all principals with the specified operation and permission_type
    operation String
    The ACL operation to match
    permissionType String
    ACL permission types
    host String
    The host to match. If not set, will default to match all hosts with the specified operation and permission_type. Note that the asterisk * is literal and matches hosts that are set to *
    principal String
    The name of the principal, if not set will default to match all principals with the specified operation and permission_type
    operation string
    The ACL operation to match
    permissionType string
    ACL permission types
    host string
    The host to match. If not set, will default to match all hosts with the specified operation and permission_type. Note that the asterisk * is literal and matches hosts that are set to *
    principal string
    The name of the principal, if not set will default to match all principals with the specified operation and permission_type
    operation str
    The ACL operation to match
    permission_type str
    ACL permission types
    host str
    The host to match. If not set, will default to match all hosts with the specified operation and permission_type. Note that the asterisk * is literal and matches hosts that are set to *
    principal str
    The name of the principal, if not set will default to match all principals with the specified operation and permission_type
    operation String
    The ACL operation to match
    permissionType String
    ACL permission types
    host String
    The host to match. If not set, will default to match all hosts with the specified operation and permission_type. Note that the asterisk * is literal and matches hosts that are set to *
    principal String
    The name of the principal, if not set will default to match all principals with the specified operation and permission_type

    ShadowLinkSecuritySyncOptionsAclFilterResourceFilter, ShadowLinkSecuritySyncOptionsAclFilterResourceFilterArgs

    PatternType string
    • ACLPATTERNANY: Wildcard to match any pattern - ACLPATTERNLITERAL: Match a literal string - ACLPATTERNPREFIXED: Match a prefix - ACLPATTERNPREFIX: Match a prefix - ACLPATTERNMATCH: Match serves as a catch-all for all the names of a topic the principal is authorized to access
    ResourceType string
    • ACLRESOURCEANY: Wildcard for selecting any ACL resource - ACLRESOURCECLUSTER: Cluster wide resource - ACLRESOURCEGROUP: Consumer group resource - ACLRESOURCETOPIC: Topic resource - ACLRESOURCETXNID: Transaction ID resource - ACLRESOURCESRSUBJECT: Schema Registry subject resource - ACLRESOURCESRREGISTRY: Schema Registry wide resource - ACLRESOURCESRANY: Wildcard to match any SR ACL resource
    Name string
    Name, if not given will default to match all items in resource_type. Note that asterisk * is literal and matches resource ACLs that are named *
    PatternType string
    • ACLPATTERNANY: Wildcard to match any pattern - ACLPATTERNLITERAL: Match a literal string - ACLPATTERNPREFIXED: Match a prefix - ACLPATTERNPREFIX: Match a prefix - ACLPATTERNMATCH: Match serves as a catch-all for all the names of a topic the principal is authorized to access
    ResourceType string
    • ACLRESOURCEANY: Wildcard for selecting any ACL resource - ACLRESOURCECLUSTER: Cluster wide resource - ACLRESOURCEGROUP: Consumer group resource - ACLRESOURCETOPIC: Topic resource - ACLRESOURCETXNID: Transaction ID resource - ACLRESOURCESRSUBJECT: Schema Registry subject resource - ACLRESOURCESRREGISTRY: Schema Registry wide resource - ACLRESOURCESRANY: Wildcard to match any SR ACL resource
    Name string
    Name, if not given will default to match all items in resource_type. Note that asterisk * is literal and matches resource ACLs that are named *
    pattern_type string
    • ACLPATTERNANY: Wildcard to match any pattern - ACLPATTERNLITERAL: Match a literal string - ACLPATTERNPREFIXED: Match a prefix - ACLPATTERNPREFIX: Match a prefix - ACLPATTERNMATCH: Match serves as a catch-all for all the names of a topic the principal is authorized to access
    resource_type string
    • ACLRESOURCEANY: Wildcard for selecting any ACL resource - ACLRESOURCECLUSTER: Cluster wide resource - ACLRESOURCEGROUP: Consumer group resource - ACLRESOURCETOPIC: Topic resource - ACLRESOURCETXNID: Transaction ID resource - ACLRESOURCESRSUBJECT: Schema Registry subject resource - ACLRESOURCESRREGISTRY: Schema Registry wide resource - ACLRESOURCESRANY: Wildcard to match any SR ACL resource
    name string
    Name, if not given will default to match all items in resource_type. Note that asterisk * is literal and matches resource ACLs that are named *
    patternType String
    • ACLPATTERNANY: Wildcard to match any pattern - ACLPATTERNLITERAL: Match a literal string - ACLPATTERNPREFIXED: Match a prefix - ACLPATTERNPREFIX: Match a prefix - ACLPATTERNMATCH: Match serves as a catch-all for all the names of a topic the principal is authorized to access
    resourceType String
    • ACLRESOURCEANY: Wildcard for selecting any ACL resource - ACLRESOURCECLUSTER: Cluster wide resource - ACLRESOURCEGROUP: Consumer group resource - ACLRESOURCETOPIC: Topic resource - ACLRESOURCETXNID: Transaction ID resource - ACLRESOURCESRSUBJECT: Schema Registry subject resource - ACLRESOURCESRREGISTRY: Schema Registry wide resource - ACLRESOURCESRANY: Wildcard to match any SR ACL resource
    name String
    Name, if not given will default to match all items in resource_type. Note that asterisk * is literal and matches resource ACLs that are named *
    patternType string
    • ACLPATTERNANY: Wildcard to match any pattern - ACLPATTERNLITERAL: Match a literal string - ACLPATTERNPREFIXED: Match a prefix - ACLPATTERNPREFIX: Match a prefix - ACLPATTERNMATCH: Match serves as a catch-all for all the names of a topic the principal is authorized to access
    resourceType string
    • ACLRESOURCEANY: Wildcard for selecting any ACL resource - ACLRESOURCECLUSTER: Cluster wide resource - ACLRESOURCEGROUP: Consumer group resource - ACLRESOURCETOPIC: Topic resource - ACLRESOURCETXNID: Transaction ID resource - ACLRESOURCESRSUBJECT: Schema Registry subject resource - ACLRESOURCESRREGISTRY: Schema Registry wide resource - ACLRESOURCESRANY: Wildcard to match any SR ACL resource
    name string
    Name, if not given will default to match all items in resource_type. Note that asterisk * is literal and matches resource ACLs that are named *
    pattern_type str
    • ACLPATTERNANY: Wildcard to match any pattern - ACLPATTERNLITERAL: Match a literal string - ACLPATTERNPREFIXED: Match a prefix - ACLPATTERNPREFIX: Match a prefix - ACLPATTERNMATCH: Match serves as a catch-all for all the names of a topic the principal is authorized to access
    resource_type str
    • ACLRESOURCEANY: Wildcard for selecting any ACL resource - ACLRESOURCECLUSTER: Cluster wide resource - ACLRESOURCEGROUP: Consumer group resource - ACLRESOURCETOPIC: Topic resource - ACLRESOURCETXNID: Transaction ID resource - ACLRESOURCESRSUBJECT: Schema Registry subject resource - ACLRESOURCESRREGISTRY: Schema Registry wide resource - ACLRESOURCESRANY: Wildcard to match any SR ACL resource
    name str
    Name, if not given will default to match all items in resource_type. Note that asterisk * is literal and matches resource ACLs that are named *
    patternType String
    • ACLPATTERNANY: Wildcard to match any pattern - ACLPATTERNLITERAL: Match a literal string - ACLPATTERNPREFIXED: Match a prefix - ACLPATTERNPREFIX: Match a prefix - ACLPATTERNMATCH: Match serves as a catch-all for all the names of a topic the principal is authorized to access
    resourceType String
    • ACLRESOURCEANY: Wildcard for selecting any ACL resource - ACLRESOURCECLUSTER: Cluster wide resource - ACLRESOURCEGROUP: Consumer group resource - ACLRESOURCETOPIC: Topic resource - ACLRESOURCETXNID: Transaction ID resource - ACLRESOURCESRSUBJECT: Schema Registry subject resource - ACLRESOURCESRREGISTRY: Schema Registry wide resource - ACLRESOURCESRANY: Wildcard to match any SR ACL resource
    name String
    Name, if not given will default to match all items in resource_type. Note that asterisk * is literal and matches resource ACLs that are named *

    ShadowLinkTimeouts, ShadowLinkTimeoutsArgs

    Create string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    Delete string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    Update string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    Create string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    Delete string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    Update string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    create string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    delete string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    update string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    create String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    delete String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    update String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    create string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    delete string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    update string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    create str
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    delete str
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    update str
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    create String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    delete String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    update String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).

    ShadowLinkTopicMetadataSyncOptions, ShadowLinkTopicMetadataSyncOptionsArgs

    AutoCreateShadowTopicFilters List<ShadowLinkTopicMetadataSyncOptionsAutoCreateShadowTopicFilter>
    List of filters that indicate which topics should be automatically created as shadow topics on the shadow cluster. This only controls automatic creation of shadow topics and does not effect the state of the mirror topic once it is created. Literal filters for _consumeroffsets, redpanda.auditlog and _schemas will be rejected as well as prefix filters to match topics prefixed with _redpanda or __redpanda. Wildcard * is permitted only for literal filters and will not match any topics that start with _redpanda or __redpanda. If users wish to shadow topics that start with _redpanda or _*redpanda, they should provide a literal filter for those topics.
    ExcludeDefault bool
    If this is true, then only the properties listed in synced_shadow_topic_properties will be synced.
    Interval string
    How often to sync metadata If 0 provided, defaults to 30 seconds
    Paused bool
    Allows user to pause the topic sync task. If paused, then the task will enter the 'paused' state and not sync topics or their properties from the source cluster
    StartAtEarliest bool
    Start at the earliest offset in the partition.
    StartAtLatest bool
    Start at the latest offset in the partition.
    StartAtTimestamp string
    Enables data replication from the first offset on the source topic/partition where the record's timestamp is at or after the specified timestamp.
    SyncedShadowTopicProperties List<string>
    The following properties are not allowed to be replicated and adding them to this list will result in an error: - redpanda.remote.readreplica - redpanda.remote.recovery - redpanda.remote.allowgaps - redpanda.virtual.cluster.id - redpanda.leaders.preference - redpanda.storage.mode This list is a list of properties in addition to the default properties that will be synced. See exclude_default.
    AutoCreateShadowTopicFilters []ShadowLinkTopicMetadataSyncOptionsAutoCreateShadowTopicFilter
    List of filters that indicate which topics should be automatically created as shadow topics on the shadow cluster. This only controls automatic creation of shadow topics and does not effect the state of the mirror topic once it is created. Literal filters for _consumeroffsets, redpanda.auditlog and _schemas will be rejected as well as prefix filters to match topics prefixed with _redpanda or __redpanda. Wildcard * is permitted only for literal filters and will not match any topics that start with _redpanda or __redpanda. If users wish to shadow topics that start with _redpanda or _*redpanda, they should provide a literal filter for those topics.
    ExcludeDefault bool
    If this is true, then only the properties listed in synced_shadow_topic_properties will be synced.
    Interval string
    How often to sync metadata If 0 provided, defaults to 30 seconds
    Paused bool
    Allows user to pause the topic sync task. If paused, then the task will enter the 'paused' state and not sync topics or their properties from the source cluster
    StartAtEarliest bool
    Start at the earliest offset in the partition.
    StartAtLatest bool
    Start at the latest offset in the partition.
    StartAtTimestamp string
    Enables data replication from the first offset on the source topic/partition where the record's timestamp is at or after the specified timestamp.
    SyncedShadowTopicProperties []string
    The following properties are not allowed to be replicated and adding them to this list will result in an error: - redpanda.remote.readreplica - redpanda.remote.recovery - redpanda.remote.allowgaps - redpanda.virtual.cluster.id - redpanda.leaders.preference - redpanda.storage.mode This list is a list of properties in addition to the default properties that will be synced. See exclude_default.
    auto_create_shadow_topic_filters list(object)
    List of filters that indicate which topics should be automatically created as shadow topics on the shadow cluster. This only controls automatic creation of shadow topics and does not effect the state of the mirror topic once it is created. Literal filters for _consumeroffsets, redpanda.auditlog and _schemas will be rejected as well as prefix filters to match topics prefixed with _redpanda or __redpanda. Wildcard * is permitted only for literal filters and will not match any topics that start with _redpanda or __redpanda. If users wish to shadow topics that start with _redpanda or _*redpanda, they should provide a literal filter for those topics.
    exclude_default bool
    If this is true, then only the properties listed in synced_shadow_topic_properties will be synced.
    interval string
    How often to sync metadata If 0 provided, defaults to 30 seconds
    paused bool
    Allows user to pause the topic sync task. If paused, then the task will enter the 'paused' state and not sync topics or their properties from the source cluster
    start_at_earliest bool
    Start at the earliest offset in the partition.
    start_at_latest bool
    Start at the latest offset in the partition.
    start_at_timestamp string
    Enables data replication from the first offset on the source topic/partition where the record's timestamp is at or after the specified timestamp.
    synced_shadow_topic_properties list(string)
    The following properties are not allowed to be replicated and adding them to this list will result in an error: - redpanda.remote.readreplica - redpanda.remote.recovery - redpanda.remote.allowgaps - redpanda.virtual.cluster.id - redpanda.leaders.preference - redpanda.storage.mode This list is a list of properties in addition to the default properties that will be synced. See exclude_default.
    autoCreateShadowTopicFilters List<ShadowLinkTopicMetadataSyncOptionsAutoCreateShadowTopicFilter>
    List of filters that indicate which topics should be automatically created as shadow topics on the shadow cluster. This only controls automatic creation of shadow topics and does not effect the state of the mirror topic once it is created. Literal filters for _consumeroffsets, redpanda.auditlog and _schemas will be rejected as well as prefix filters to match topics prefixed with _redpanda or __redpanda. Wildcard * is permitted only for literal filters and will not match any topics that start with _redpanda or __redpanda. If users wish to shadow topics that start with _redpanda or _*redpanda, they should provide a literal filter for those topics.
    excludeDefault Boolean
    If this is true, then only the properties listed in synced_shadow_topic_properties will be synced.
    interval String
    How often to sync metadata If 0 provided, defaults to 30 seconds
    paused Boolean
    Allows user to pause the topic sync task. If paused, then the task will enter the 'paused' state and not sync topics or their properties from the source cluster
    startAtEarliest Boolean
    Start at the earliest offset in the partition.
    startAtLatest Boolean
    Start at the latest offset in the partition.
    startAtTimestamp String
    Enables data replication from the first offset on the source topic/partition where the record's timestamp is at or after the specified timestamp.
    syncedShadowTopicProperties List<String>
    The following properties are not allowed to be replicated and adding them to this list will result in an error: - redpanda.remote.readreplica - redpanda.remote.recovery - redpanda.remote.allowgaps - redpanda.virtual.cluster.id - redpanda.leaders.preference - redpanda.storage.mode This list is a list of properties in addition to the default properties that will be synced. See exclude_default.
    autoCreateShadowTopicFilters ShadowLinkTopicMetadataSyncOptionsAutoCreateShadowTopicFilter[]
    List of filters that indicate which topics should be automatically created as shadow topics on the shadow cluster. This only controls automatic creation of shadow topics and does not effect the state of the mirror topic once it is created. Literal filters for _consumeroffsets, redpanda.auditlog and _schemas will be rejected as well as prefix filters to match topics prefixed with _redpanda or __redpanda. Wildcard * is permitted only for literal filters and will not match any topics that start with _redpanda or __redpanda. If users wish to shadow topics that start with _redpanda or _*redpanda, they should provide a literal filter for those topics.
    excludeDefault boolean
    If this is true, then only the properties listed in synced_shadow_topic_properties will be synced.
    interval string
    How often to sync metadata If 0 provided, defaults to 30 seconds
    paused boolean
    Allows user to pause the topic sync task. If paused, then the task will enter the 'paused' state and not sync topics or their properties from the source cluster
    startAtEarliest boolean
    Start at the earliest offset in the partition.
    startAtLatest boolean
    Start at the latest offset in the partition.
    startAtTimestamp string
    Enables data replication from the first offset on the source topic/partition where the record's timestamp is at or after the specified timestamp.
    syncedShadowTopicProperties string[]
    The following properties are not allowed to be replicated and adding them to this list will result in an error: - redpanda.remote.readreplica - redpanda.remote.recovery - redpanda.remote.allowgaps - redpanda.virtual.cluster.id - redpanda.leaders.preference - redpanda.storage.mode This list is a list of properties in addition to the default properties that will be synced. See exclude_default.
    auto_create_shadow_topic_filters Sequence[ShadowLinkTopicMetadataSyncOptionsAutoCreateShadowTopicFilter]
    List of filters that indicate which topics should be automatically created as shadow topics on the shadow cluster. This only controls automatic creation of shadow topics and does not effect the state of the mirror topic once it is created. Literal filters for _consumeroffsets, redpanda.auditlog and _schemas will be rejected as well as prefix filters to match topics prefixed with _redpanda or __redpanda. Wildcard * is permitted only for literal filters and will not match any topics that start with _redpanda or __redpanda. If users wish to shadow topics that start with _redpanda or _*redpanda, they should provide a literal filter for those topics.
    exclude_default bool
    If this is true, then only the properties listed in synced_shadow_topic_properties will be synced.
    interval str
    How often to sync metadata If 0 provided, defaults to 30 seconds
    paused bool
    Allows user to pause the topic sync task. If paused, then the task will enter the 'paused' state and not sync topics or their properties from the source cluster
    start_at_earliest bool
    Start at the earliest offset in the partition.
    start_at_latest bool
    Start at the latest offset in the partition.
    start_at_timestamp str
    Enables data replication from the first offset on the source topic/partition where the record's timestamp is at or after the specified timestamp.
    synced_shadow_topic_properties Sequence[str]
    The following properties are not allowed to be replicated and adding them to this list will result in an error: - redpanda.remote.readreplica - redpanda.remote.recovery - redpanda.remote.allowgaps - redpanda.virtual.cluster.id - redpanda.leaders.preference - redpanda.storage.mode This list is a list of properties in addition to the default properties that will be synced. See exclude_default.
    autoCreateShadowTopicFilters List<Property Map>
    List of filters that indicate which topics should be automatically created as shadow topics on the shadow cluster. This only controls automatic creation of shadow topics and does not effect the state of the mirror topic once it is created. Literal filters for _consumeroffsets, redpanda.auditlog and _schemas will be rejected as well as prefix filters to match topics prefixed with _redpanda or __redpanda. Wildcard * is permitted only for literal filters and will not match any topics that start with _redpanda or __redpanda. If users wish to shadow topics that start with _redpanda or _*redpanda, they should provide a literal filter for those topics.
    excludeDefault Boolean
    If this is true, then only the properties listed in synced_shadow_topic_properties will be synced.
    interval String
    How often to sync metadata If 0 provided, defaults to 30 seconds
    paused Boolean
    Allows user to pause the topic sync task. If paused, then the task will enter the 'paused' state and not sync topics or their properties from the source cluster
    startAtEarliest Boolean
    Start at the earliest offset in the partition.
    startAtLatest Boolean
    Start at the latest offset in the partition.
    startAtTimestamp String
    Enables data replication from the first offset on the source topic/partition where the record's timestamp is at or after the specified timestamp.
    syncedShadowTopicProperties List<String>
    The following properties are not allowed to be replicated and adding them to this list will result in an error: - redpanda.remote.readreplica - redpanda.remote.recovery - redpanda.remote.allowgaps - redpanda.virtual.cluster.id - redpanda.leaders.preference - redpanda.storage.mode This list is a list of properties in addition to the default properties that will be synced. See exclude_default.

    ShadowLinkTopicMetadataSyncOptionsAutoCreateShadowTopicFilter, ShadowLinkTopicMetadataSyncOptionsAutoCreateShadowTopicFilterArgs

    FilterType string
    • FILTERTYPEINCLUDE: Include the items that match the filter - FILTERTYPEEXCLUDE: Exclude the items that match the filter
    Name string
    The resource name, or "" Note if "", must be the only character and pattern_type must be PATTERN_TYPE_LITERAL
    PatternType string
    • PATTERNTYPELITERAL: Must match the filter exactly - PATTERNTYPEPREFIX: Will match anything that starts with filter - PATTERNTYPEPREFIXED: Will match anything that starts with filter
    FilterType string
    • FILTERTYPEINCLUDE: Include the items that match the filter - FILTERTYPEEXCLUDE: Exclude the items that match the filter
    Name string
    The resource name, or "" Note if "", must be the only character and pattern_type must be PATTERN_TYPE_LITERAL
    PatternType string
    • PATTERNTYPELITERAL: Must match the filter exactly - PATTERNTYPEPREFIX: Will match anything that starts with filter - PATTERNTYPEPREFIXED: Will match anything that starts with filter
    filter_type string
    • FILTERTYPEINCLUDE: Include the items that match the filter - FILTERTYPEEXCLUDE: Exclude the items that match the filter
    name string
    The resource name, or "" Note if "", must be the only character and pattern_type must be PATTERN_TYPE_LITERAL
    pattern_type string
    • PATTERNTYPELITERAL: Must match the filter exactly - PATTERNTYPEPREFIX: Will match anything that starts with filter - PATTERNTYPEPREFIXED: Will match anything that starts with filter
    filterType String
    • FILTERTYPEINCLUDE: Include the items that match the filter - FILTERTYPEEXCLUDE: Exclude the items that match the filter
    name String
    The resource name, or "" Note if "", must be the only character and pattern_type must be PATTERN_TYPE_LITERAL
    patternType String
    • PATTERNTYPELITERAL: Must match the filter exactly - PATTERNTYPEPREFIX: Will match anything that starts with filter - PATTERNTYPEPREFIXED: Will match anything that starts with filter
    filterType string
    • FILTERTYPEINCLUDE: Include the items that match the filter - FILTERTYPEEXCLUDE: Exclude the items that match the filter
    name string
    The resource name, or "" Note if "", must be the only character and pattern_type must be PATTERN_TYPE_LITERAL
    patternType string
    • PATTERNTYPELITERAL: Must match the filter exactly - PATTERNTYPEPREFIX: Will match anything that starts with filter - PATTERNTYPEPREFIXED: Will match anything that starts with filter
    filter_type str
    • FILTERTYPEINCLUDE: Include the items that match the filter - FILTERTYPEEXCLUDE: Exclude the items that match the filter
    name str
    The resource name, or "" Note if "", must be the only character and pattern_type must be PATTERN_TYPE_LITERAL
    pattern_type str
    • PATTERNTYPELITERAL: Must match the filter exactly - PATTERNTYPEPREFIX: Will match anything that starts with filter - PATTERNTYPEPREFIXED: Will match anything that starts with filter
    filterType String
    • FILTERTYPEINCLUDE: Include the items that match the filter - FILTERTYPEEXCLUDE: Exclude the items that match the filter
    name String
    The resource name, or "" Note if "", must be the only character and pattern_type must be PATTERN_TYPE_LITERAL
    patternType String
    • PATTERNTYPELITERAL: Must match the filter exactly - PATTERNTYPEPREFIX: Will match anything that starts with filter - PATTERNTYPEPREFIXED: Will match anything that starts with filter

    Import

    $ pulumi import redpanda:index/shadowLink:ShadowLink example shadowLinkId
    

    After import, sensitive fields (client_options.authentication.password, client_options.tls.key) and source_redpanda_id are unset — the API does not echo any of these on Read. Re-supply them via the next pulumi up.

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    redpanda redpanda-data/terraform-provider-redpanda
    License
    Notes
    This Pulumi package is based on the redpanda Terraform Provider.
    Viewing docs for redpanda 2.2.1
    published on Tuesday, Aug 11, 2026 by redpanda-data

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial