1. Packages
  2. Confluent Provider
  3. API Docs
  4. getBusinessMetadataBinding
Confluent v2.10.0 published on Wednesday, Nov 20, 2024 by Pulumi

confluentcloud.getBusinessMetadataBinding

Explore with Pulumi AI

confluentcloud logo
Confluent v2.10.0 published on Wednesday, Nov 20, 2024 by Pulumi

    General Availability

    confluentcloud.BusinessMetadataBinding describes a Business Metadata Binding data source.

    Example Usage

    Option #1: Manage multiple Schema Registry clusters in the same Pulumi Stack

    import * as pulumi from "@pulumi/pulumi";
    import * as confluentcloud from "@pulumi/confluentcloud";
    
    const main = confluentcloud.getBusinessMetadataBinding({
        schemaRegistryCluster: {
            id: essentials.id,
        },
        restEndpoint: essentials.restEndpoint,
        credentials: {
            key: "<Schema Registry API Key for data.confluent_schema_registry_cluster.essentials>",
            secret: "<Schema Registry API Secret for data.confluent_schema_registry_cluster.essentials>",
        },
        businessMetadataName: pii.name,
        entityName: `${schemaRegistryId}:${kafkaId}:${mainConfluentKafkaTopic.topicName}`,
        entityType: "kafka_topic",
    });
    
    import pulumi
    import pulumi_confluentcloud as confluentcloud
    
    main = confluentcloud.get_business_metadata_binding(schema_registry_cluster={
            "id": essentials["id"],
        },
        rest_endpoint=essentials["restEndpoint"],
        credentials={
            "key": "<Schema Registry API Key for data.confluent_schema_registry_cluster.essentials>",
            "secret": "<Schema Registry API Secret for data.confluent_schema_registry_cluster.essentials>",
        },
        business_metadata_name=pii["name"],
        entity_name=f"{schema_registry_id}:{kafka_id}:{main_confluent_kafka_topic['topicName']}",
        entity_type="kafka_topic")
    
    package main
    
    import (
    	"fmt"
    
    	"github.com/pulumi/pulumi-confluentcloud/sdk/v2/go/confluentcloud"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := confluentcloud.LookupBusinessMetadataBinding(ctx, &confluentcloud.LookupBusinessMetadataBindingArgs{
    			SchemaRegistryCluster: confluentcloud.GetBusinessMetadataBindingSchemaRegistryCluster{
    				Id: essentials.Id,
    			},
    			RestEndpoint: pulumi.StringRef(essentials.RestEndpoint),
    			Credentials: confluentcloud.GetBusinessMetadataBindingCredentials{
    				Key:    "<Schema Registry API Key for data.confluent_schema_registry_cluster.essentials>",
    				Secret: "<Schema Registry API Secret for data.confluent_schema_registry_cluster.essentials>",
    			},
    			BusinessMetadataName: pii.Name,
    			EntityName:           fmt.Sprintf("%v:%v:%v", schemaRegistryId, kafkaId, mainConfluentKafkaTopic.TopicName),
    			EntityType:           "kafka_topic",
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using ConfluentCloud = Pulumi.ConfluentCloud;
    
    return await Deployment.RunAsync(() => 
    {
        var main = ConfluentCloud.GetBusinessMetadataBinding.Invoke(new()
        {
            SchemaRegistryCluster = new ConfluentCloud.Inputs.GetBusinessMetadataBindingSchemaRegistryClusterInputArgs
            {
                Id = essentials.Id,
            },
            RestEndpoint = essentials.RestEndpoint,
            Credentials = new ConfluentCloud.Inputs.GetBusinessMetadataBindingCredentialsInputArgs
            {
                Key = "<Schema Registry API Key for data.confluent_schema_registry_cluster.essentials>",
                Secret = "<Schema Registry API Secret for data.confluent_schema_registry_cluster.essentials>",
            },
            BusinessMetadataName = pii.Name,
            EntityName = $"{schemaRegistryId}:{kafkaId}:{mainConfluentKafkaTopic.TopicName}",
            EntityType = "kafka_topic",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.confluentcloud.ConfluentcloudFunctions;
    import com.pulumi.confluentcloud.inputs.GetBusinessMetadataBindingArgs;
    import com.pulumi.confluentcloud.inputs.GetBusinessMetadataBindingSchemaRegistryClusterArgs;
    import com.pulumi.confluentcloud.inputs.GetBusinessMetadataBindingCredentialsArgs;
    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 main = ConfluentcloudFunctions.getBusinessMetadataBinding(GetBusinessMetadataBindingArgs.builder()
                .schemaRegistryCluster(GetBusinessMetadataBindingSchemaRegistryClusterArgs.builder()
                    .id(essentials.id())
                    .build())
                .restEndpoint(essentials.restEndpoint())
                .credentials(GetBusinessMetadataBindingCredentialsArgs.builder()
                    .key("<Schema Registry API Key for data.confluent_schema_registry_cluster.essentials>")
                    .secret("<Schema Registry API Secret for data.confluent_schema_registry_cluster.essentials>")
                    .build())
                .businessMetadataName(pii.name())
                .entityName(String.format("%s:%s:%s", schemaRegistryId,kafkaId,mainConfluentKafkaTopic.topicName()))
                .entityType("kafka_topic")
                .build());
    
        }
    }
    
    variables:
      main:
        fn::invoke:
          Function: confluentcloud:getBusinessMetadataBinding
          Arguments:
            schemaRegistryCluster:
              id: ${essentials.id}
            restEndpoint: ${essentials.restEndpoint}
            credentials:
              key: <Schema Registry API Key for data.confluent_schema_registry_cluster.essentials>
              secret: <Schema Registry API Secret for data.confluent_schema_registry_cluster.essentials>
            businessMetadataName: ${pii.name}
            entityName: ${schemaRegistryId}:${kafkaId}:${mainConfluentKafkaTopic.topicName}
            entityType: kafka_topic
    

    Option #2: Manage a single Schema Registry cluster in the same Pulumi Stack

    import * as pulumi from "@pulumi/pulumi";
    import * as confluentcloud from "@pulumi/confluentcloud";
    
    const main = confluentcloud.getBusinessMetadataBinding({
        businessMetadataName: pii.name,
        entityName: `${schemaRegistryId}:${kafkaId}:${mainConfluentKafkaTopic.topicName}`,
        entityType: "kafka_topic",
    });
    
    import pulumi
    import pulumi_confluentcloud as confluentcloud
    
    main = confluentcloud.get_business_metadata_binding(business_metadata_name=pii["name"],
        entity_name=f"{schema_registry_id}:{kafka_id}:{main_confluent_kafka_topic['topicName']}",
        entity_type="kafka_topic")
    
    package main
    
    import (
    	"fmt"
    
    	"github.com/pulumi/pulumi-confluentcloud/sdk/v2/go/confluentcloud"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := confluentcloud.LookupBusinessMetadataBinding(ctx, &confluentcloud.LookupBusinessMetadataBindingArgs{
    			BusinessMetadataName: pii.Name,
    			EntityName:           fmt.Sprintf("%v:%v:%v", schemaRegistryId, kafkaId, mainConfluentKafkaTopic.TopicName),
    			EntityType:           "kafka_topic",
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using ConfluentCloud = Pulumi.ConfluentCloud;
    
    return await Deployment.RunAsync(() => 
    {
        var main = ConfluentCloud.GetBusinessMetadataBinding.Invoke(new()
        {
            BusinessMetadataName = pii.Name,
            EntityName = $"{schemaRegistryId}:{kafkaId}:{mainConfluentKafkaTopic.TopicName}",
            EntityType = "kafka_topic",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.confluentcloud.ConfluentcloudFunctions;
    import com.pulumi.confluentcloud.inputs.GetBusinessMetadataBindingArgs;
    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 main = ConfluentcloudFunctions.getBusinessMetadataBinding(GetBusinessMetadataBindingArgs.builder()
                .businessMetadataName(pii.name())
                .entityName(String.format("%s:%s:%s", schemaRegistryId,kafkaId,mainConfluentKafkaTopic.topicName()))
                .entityType("kafka_topic")
                .build());
    
        }
    }
    
    variables:
      main:
        fn::invoke:
          Function: confluentcloud:getBusinessMetadataBinding
          Arguments:
            businessMetadataName: ${pii.name}
            entityName: ${schemaRegistryId}:${kafkaId}:${mainConfluentKafkaTopic.topicName}
            entityType: kafka_topic
    

    Using getBusinessMetadataBinding

    Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

    function getBusinessMetadataBinding(args: GetBusinessMetadataBindingArgs, opts?: InvokeOptions): Promise<GetBusinessMetadataBindingResult>
    function getBusinessMetadataBindingOutput(args: GetBusinessMetadataBindingOutputArgs, opts?: InvokeOptions): Output<GetBusinessMetadataBindingResult>
    def get_business_metadata_binding(business_metadata_name: Optional[str] = None,
                                      credentials: Optional[GetBusinessMetadataBindingCredentials] = None,
                                      entity_name: Optional[str] = None,
                                      entity_type: Optional[str] = None,
                                      rest_endpoint: Optional[str] = None,
                                      schema_registry_cluster: Optional[GetBusinessMetadataBindingSchemaRegistryCluster] = None,
                                      opts: Optional[InvokeOptions] = None) -> GetBusinessMetadataBindingResult
    def get_business_metadata_binding_output(business_metadata_name: Optional[pulumi.Input[str]] = None,
                                      credentials: Optional[pulumi.Input[GetBusinessMetadataBindingCredentialsArgs]] = None,
                                      entity_name: Optional[pulumi.Input[str]] = None,
                                      entity_type: Optional[pulumi.Input[str]] = None,
                                      rest_endpoint: Optional[pulumi.Input[str]] = None,
                                      schema_registry_cluster: Optional[pulumi.Input[GetBusinessMetadataBindingSchemaRegistryClusterArgs]] = None,
                                      opts: Optional[InvokeOptions] = None) -> Output[GetBusinessMetadataBindingResult]
    func LookupBusinessMetadataBinding(ctx *Context, args *LookupBusinessMetadataBindingArgs, opts ...InvokeOption) (*LookupBusinessMetadataBindingResult, error)
    func LookupBusinessMetadataBindingOutput(ctx *Context, args *LookupBusinessMetadataBindingOutputArgs, opts ...InvokeOption) LookupBusinessMetadataBindingResultOutput

    > Note: This function is named LookupBusinessMetadataBinding in the Go SDK.

    public static class GetBusinessMetadataBinding 
    {
        public static Task<GetBusinessMetadataBindingResult> InvokeAsync(GetBusinessMetadataBindingArgs args, InvokeOptions? opts = null)
        public static Output<GetBusinessMetadataBindingResult> Invoke(GetBusinessMetadataBindingInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetBusinessMetadataBindingResult> getBusinessMetadataBinding(GetBusinessMetadataBindingArgs args, InvokeOptions options)
    // Output-based functions aren't available in Java yet
    
    fn::invoke:
      function: confluentcloud:index/getBusinessMetadataBinding:getBusinessMetadataBinding
      arguments:
        # arguments dictionary

    The following arguments are supported:

    BusinessMetadataName string
    The name of the Business Metadata to be applied, for example, PII. The name must not be empty and consist of a letter followed by a sequence of letter, number, space, or _ characters.
    EntityName string
    The qualified name of the entity., for example, ${data.confluent_schema_registry_cluster.main.id}:.:${confluent_schema.purchase.schema_identifier}, ${data.confluent_schema_registry_cluster.main.id}:${confluent_kafka_cluster.basic.id}:${confluent_kafka_topic.purchase.topic_name}.
    EntityType string
    The entity type, for example, sr_schema.
    Credentials Pulumi.ConfluentCloud.Inputs.GetBusinessMetadataBindingCredentials
    RestEndpoint string
    The REST endpoint of the Schema Registry cluster, for example, https://psrc-00000.us-central1.gcp.confluent.cloud:443).
    SchemaRegistryCluster Pulumi.ConfluentCloud.Inputs.GetBusinessMetadataBindingSchemaRegistryCluster
    BusinessMetadataName string
    The name of the Business Metadata to be applied, for example, PII. The name must not be empty and consist of a letter followed by a sequence of letter, number, space, or _ characters.
    EntityName string
    The qualified name of the entity., for example, ${data.confluent_schema_registry_cluster.main.id}:.:${confluent_schema.purchase.schema_identifier}, ${data.confluent_schema_registry_cluster.main.id}:${confluent_kafka_cluster.basic.id}:${confluent_kafka_topic.purchase.topic_name}.
    EntityType string
    The entity type, for example, sr_schema.
    Credentials GetBusinessMetadataBindingCredentials
    RestEndpoint string
    The REST endpoint of the Schema Registry cluster, for example, https://psrc-00000.us-central1.gcp.confluent.cloud:443).
    SchemaRegistryCluster GetBusinessMetadataBindingSchemaRegistryCluster
    businessMetadataName String
    The name of the Business Metadata to be applied, for example, PII. The name must not be empty and consist of a letter followed by a sequence of letter, number, space, or _ characters.
    entityName String
    The qualified name of the entity., for example, ${data.confluent_schema_registry_cluster.main.id}:.:${confluent_schema.purchase.schema_identifier}, ${data.confluent_schema_registry_cluster.main.id}:${confluent_kafka_cluster.basic.id}:${confluent_kafka_topic.purchase.topic_name}.
    entityType String
    The entity type, for example, sr_schema.
    credentials GetBusinessMetadataBindingCredentials
    restEndpoint String
    The REST endpoint of the Schema Registry cluster, for example, https://psrc-00000.us-central1.gcp.confluent.cloud:443).
    schemaRegistryCluster GetBusinessMetadataBindingSchemaRegistryCluster
    businessMetadataName string
    The name of the Business Metadata to be applied, for example, PII. The name must not be empty and consist of a letter followed by a sequence of letter, number, space, or _ characters.
    entityName string
    The qualified name of the entity., for example, ${data.confluent_schema_registry_cluster.main.id}:.:${confluent_schema.purchase.schema_identifier}, ${data.confluent_schema_registry_cluster.main.id}:${confluent_kafka_cluster.basic.id}:${confluent_kafka_topic.purchase.topic_name}.
    entityType string
    The entity type, for example, sr_schema.
    credentials GetBusinessMetadataBindingCredentials
    restEndpoint string
    The REST endpoint of the Schema Registry cluster, for example, https://psrc-00000.us-central1.gcp.confluent.cloud:443).
    schemaRegistryCluster GetBusinessMetadataBindingSchemaRegistryCluster
    business_metadata_name str
    The name of the Business Metadata to be applied, for example, PII. The name must not be empty and consist of a letter followed by a sequence of letter, number, space, or _ characters.
    entity_name str
    The qualified name of the entity., for example, ${data.confluent_schema_registry_cluster.main.id}:.:${confluent_schema.purchase.schema_identifier}, ${data.confluent_schema_registry_cluster.main.id}:${confluent_kafka_cluster.basic.id}:${confluent_kafka_topic.purchase.topic_name}.
    entity_type str
    The entity type, for example, sr_schema.
    credentials GetBusinessMetadataBindingCredentials
    rest_endpoint str
    The REST endpoint of the Schema Registry cluster, for example, https://psrc-00000.us-central1.gcp.confluent.cloud:443).
    schema_registry_cluster GetBusinessMetadataBindingSchemaRegistryCluster
    businessMetadataName String
    The name of the Business Metadata to be applied, for example, PII. The name must not be empty and consist of a letter followed by a sequence of letter, number, space, or _ characters.
    entityName String
    The qualified name of the entity., for example, ${data.confluent_schema_registry_cluster.main.id}:.:${confluent_schema.purchase.schema_identifier}, ${data.confluent_schema_registry_cluster.main.id}:${confluent_kafka_cluster.basic.id}:${confluent_kafka_topic.purchase.topic_name}.
    entityType String
    The entity type, for example, sr_schema.
    credentials Property Map
    restEndpoint String
    The REST endpoint of the Schema Registry cluster, for example, https://psrc-00000.us-central1.gcp.confluent.cloud:443).
    schemaRegistryCluster Property Map

    getBusinessMetadataBinding Result

    The following output properties are available:

    Attributes Dictionary<string, string>
    (Optional Map) The block of key-value pair attributes.
    BusinessMetadataName string
    EntityName string
    EntityType string
    Id string
    (Required String) The ID of the Business Metadata Binding, in the format <Schema Registry Cluster Id>/<Business Metadata Name>/<Entity Name>/<Entity Type>, for example, lsrc-8wrx70/PII/lsrc-8wrx70:.:100001/sr_schema.
    Credentials Pulumi.ConfluentCloud.Outputs.GetBusinessMetadataBindingCredentials
    RestEndpoint string
    SchemaRegistryCluster Pulumi.ConfluentCloud.Outputs.GetBusinessMetadataBindingSchemaRegistryCluster
    Attributes map[string]string
    (Optional Map) The block of key-value pair attributes.
    BusinessMetadataName string
    EntityName string
    EntityType string
    Id string
    (Required String) The ID of the Business Metadata Binding, in the format <Schema Registry Cluster Id>/<Business Metadata Name>/<Entity Name>/<Entity Type>, for example, lsrc-8wrx70/PII/lsrc-8wrx70:.:100001/sr_schema.
    Credentials GetBusinessMetadataBindingCredentials
    RestEndpoint string
    SchemaRegistryCluster GetBusinessMetadataBindingSchemaRegistryCluster
    attributes Map<String,String>
    (Optional Map) The block of key-value pair attributes.
    businessMetadataName String
    entityName String
    entityType String
    id String
    (Required String) The ID of the Business Metadata Binding, in the format <Schema Registry Cluster Id>/<Business Metadata Name>/<Entity Name>/<Entity Type>, for example, lsrc-8wrx70/PII/lsrc-8wrx70:.:100001/sr_schema.
    credentials GetBusinessMetadataBindingCredentials
    restEndpoint String
    schemaRegistryCluster GetBusinessMetadataBindingSchemaRegistryCluster
    attributes {[key: string]: string}
    (Optional Map) The block of key-value pair attributes.
    businessMetadataName string
    entityName string
    entityType string
    id string
    (Required String) The ID of the Business Metadata Binding, in the format <Schema Registry Cluster Id>/<Business Metadata Name>/<Entity Name>/<Entity Type>, for example, lsrc-8wrx70/PII/lsrc-8wrx70:.:100001/sr_schema.
    credentials GetBusinessMetadataBindingCredentials
    restEndpoint string
    schemaRegistryCluster GetBusinessMetadataBindingSchemaRegistryCluster
    attributes Mapping[str, str]
    (Optional Map) The block of key-value pair attributes.
    business_metadata_name str
    entity_name str
    entity_type str
    id str
    (Required String) The ID of the Business Metadata Binding, in the format <Schema Registry Cluster Id>/<Business Metadata Name>/<Entity Name>/<Entity Type>, for example, lsrc-8wrx70/PII/lsrc-8wrx70:.:100001/sr_schema.
    credentials GetBusinessMetadataBindingCredentials
    rest_endpoint str
    schema_registry_cluster GetBusinessMetadataBindingSchemaRegistryCluster
    attributes Map<String>
    (Optional Map) The block of key-value pair attributes.
    businessMetadataName String
    entityName String
    entityType String
    id String
    (Required String) The ID of the Business Metadata Binding, in the format <Schema Registry Cluster Id>/<Business Metadata Name>/<Entity Name>/<Entity Type>, for example, lsrc-8wrx70/PII/lsrc-8wrx70:.:100001/sr_schema.
    credentials Property Map
    restEndpoint String
    schemaRegistryCluster Property Map

    Supporting Types

    GetBusinessMetadataBindingCredentials

    Key string
    The Schema Registry API Key.
    Secret string

    The Schema Registry API Secret.

    Note: A Schema Registry API key consists of a key and a secret. Schema Registry API keys are required to interact with Schema Registry clusters in Confluent Cloud. Each Schema Registry API key is valid for one specific Schema Registry cluster.

    Key string
    The Schema Registry API Key.
    Secret string

    The Schema Registry API Secret.

    Note: A Schema Registry API key consists of a key and a secret. Schema Registry API keys are required to interact with Schema Registry clusters in Confluent Cloud. Each Schema Registry API key is valid for one specific Schema Registry cluster.

    key String
    The Schema Registry API Key.
    secret String

    The Schema Registry API Secret.

    Note: A Schema Registry API key consists of a key and a secret. Schema Registry API keys are required to interact with Schema Registry clusters in Confluent Cloud. Each Schema Registry API key is valid for one specific Schema Registry cluster.

    key string
    The Schema Registry API Key.
    secret string

    The Schema Registry API Secret.

    Note: A Schema Registry API key consists of a key and a secret. Schema Registry API keys are required to interact with Schema Registry clusters in Confluent Cloud. Each Schema Registry API key is valid for one specific Schema Registry cluster.

    key str
    The Schema Registry API Key.
    secret str

    The Schema Registry API Secret.

    Note: A Schema Registry API key consists of a key and a secret. Schema Registry API keys are required to interact with Schema Registry clusters in Confluent Cloud. Each Schema Registry API key is valid for one specific Schema Registry cluster.

    key String
    The Schema Registry API Key.
    secret String

    The Schema Registry API Secret.

    Note: A Schema Registry API key consists of a key and a secret. Schema Registry API keys are required to interact with Schema Registry clusters in Confluent Cloud. Each Schema Registry API key is valid for one specific Schema Registry cluster.

    GetBusinessMetadataBindingSchemaRegistryCluster

    Id string
    The ID of the Schema Registry cluster, for example, lsrc-abc123.
    Id string
    The ID of the Schema Registry cluster, for example, lsrc-abc123.
    id String
    The ID of the Schema Registry cluster, for example, lsrc-abc123.
    id string
    The ID of the Schema Registry cluster, for example, lsrc-abc123.
    id str
    The ID of the Schema Registry cluster, for example, lsrc-abc123.
    id String
    The ID of the Schema Registry cluster, for example, lsrc-abc123.

    Package Details

    Repository
    Confluent Cloud pulumi/pulumi-confluentcloud
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the confluent Terraform Provider.
    confluentcloud logo
    Confluent v2.10.0 published on Wednesday, Nov 20, 2024 by Pulumi