1. Packages
  2. Ibm Provider
  3. API Docs
  4. getDnsDomainRegistration
ibm 1.78.0 published on Wednesday, Apr 30, 2025 by ibm-cloud

ibm.getDnsDomainRegistration

Explore with Pulumi AI

ibm logo
ibm 1.78.0 published on Wednesday, Apr 30, 2025 by ibm-cloud

    Retrieve information of an existing IBM DNS domain registration service. The domain must initially be registered through the console of the IBM Cloud DNS registration service. Typically, the domain registration data source is used in configuration with global load-balancing services. For example, Cloudflare, Akamai or IBM Cloud Internet Services (Cloudflare). For more information, about DNS domain registration, see getting started with Domain Name registration.

    Example Usage

    The following example shows how you can use this data source to reference the domain ID in the ibm_dns_registration_nameservers resource, since the numeric IDs are often unknown.

    import * as pulumi from "@pulumi/pulumi";
    import * as ibm from "@pulumi/ibm";
    
    const dnstestdomainDnsDomainRegistration = ibm.getDnsDomainRegistration({
        name: "dnstestdomain.com",
    });
    const dnstestdomainDnsDomainRegistrationNameservers = new ibm.DnsDomainRegistrationNameservers("dnstestdomainDnsDomainRegistrationNameservers", {dnsRegistrationId: dnstestdomainDnsDomainRegistration.then(dnstestdomainDnsDomainRegistration => dnstestdomainDnsDomainRegistration.id)});
    
    import pulumi
    import pulumi_ibm as ibm
    
    dnstestdomain_dns_domain_registration = ibm.get_dns_domain_registration(name="dnstestdomain.com")
    dnstestdomain_dns_domain_registration_nameservers = ibm.DnsDomainRegistrationNameservers("dnstestdomainDnsDomainRegistrationNameservers", dns_registration_id=dnstestdomain_dns_domain_registration.id)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/ibm/ibm"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		dnstestdomainDnsDomainRegistration, err := ibm.GetDnsDomainRegistration(ctx, &ibm.GetDnsDomainRegistrationArgs{
    			Name: "dnstestdomain.com",
    		}, nil)
    		if err != nil {
    			return err
    		}
    		_, err = ibm.NewDnsDomainRegistrationNameservers(ctx, "dnstestdomainDnsDomainRegistrationNameservers", &ibm.DnsDomainRegistrationNameserversArgs{
    			DnsRegistrationId: pulumi.Float64(dnstestdomainDnsDomainRegistration.Id),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Ibm = Pulumi.Ibm;
    
    return await Deployment.RunAsync(() => 
    {
        var dnstestdomainDnsDomainRegistration = Ibm.GetDnsDomainRegistration.Invoke(new()
        {
            Name = "dnstestdomain.com",
        });
    
        var dnstestdomainDnsDomainRegistrationNameservers = new Ibm.DnsDomainRegistrationNameservers("dnstestdomainDnsDomainRegistrationNameservers", new()
        {
            DnsRegistrationId = dnstestdomainDnsDomainRegistration.Apply(getDnsDomainRegistrationResult => getDnsDomainRegistrationResult.Id),
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.ibm.IbmFunctions;
    import com.pulumi.ibm.inputs.GetDnsDomainRegistrationArgs;
    import com.pulumi.ibm.DnsDomainRegistrationNameservers;
    import com.pulumi.ibm.DnsDomainRegistrationNameserversArgs;
    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 dnstestdomainDnsDomainRegistration = IbmFunctions.getDnsDomainRegistration(GetDnsDomainRegistrationArgs.builder()
                .name("dnstestdomain.com")
                .build());
    
            var dnstestdomainDnsDomainRegistrationNameservers = new DnsDomainRegistrationNameservers("dnstestdomainDnsDomainRegistrationNameservers", DnsDomainRegistrationNameserversArgs.builder()
                .dnsRegistrationId(dnstestdomainDnsDomainRegistration.applyValue(getDnsDomainRegistrationResult -> getDnsDomainRegistrationResult.id()))
                .build());
    
        }
    }
    
    resources:
      dnstestdomainDnsDomainRegistrationNameservers:
        type: ibm:DnsDomainRegistrationNameservers
        properties:
          dnsRegistrationId: ${dnstestdomainDnsDomainRegistration.id}
    variables:
      dnstestdomainDnsDomainRegistration:
        fn::invoke:
          function: ibm:getDnsDomainRegistration
          arguments:
            name: dnstestdomain.com
    

    Using getDnsDomainRegistration

    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 getDnsDomainRegistration(args: GetDnsDomainRegistrationArgs, opts?: InvokeOptions): Promise<GetDnsDomainRegistrationResult>
    function getDnsDomainRegistrationOutput(args: GetDnsDomainRegistrationOutputArgs, opts?: InvokeOptions): Output<GetDnsDomainRegistrationResult>
    def get_dns_domain_registration(name: Optional[str] = None,
                                    opts: Optional[InvokeOptions] = None) -> GetDnsDomainRegistrationResult
    def get_dns_domain_registration_output(name: Optional[pulumi.Input[str]] = None,
                                    opts: Optional[InvokeOptions] = None) -> Output[GetDnsDomainRegistrationResult]
    func GetDnsDomainRegistration(ctx *Context, args *GetDnsDomainRegistrationArgs, opts ...InvokeOption) (*GetDnsDomainRegistrationResult, error)
    func GetDnsDomainRegistrationOutput(ctx *Context, args *GetDnsDomainRegistrationOutputArgs, opts ...InvokeOption) GetDnsDomainRegistrationResultOutput

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

    public static class GetDnsDomainRegistration 
    {
        public static Task<GetDnsDomainRegistrationResult> InvokeAsync(GetDnsDomainRegistrationArgs args, InvokeOptions? opts = null)
        public static Output<GetDnsDomainRegistrationResult> Invoke(GetDnsDomainRegistrationInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetDnsDomainRegistrationResult> getDnsDomainRegistration(GetDnsDomainRegistrationArgs args, InvokeOptions options)
    public static Output<GetDnsDomainRegistrationResult> getDnsDomainRegistration(GetDnsDomainRegistrationArgs args, InvokeOptions options)
    
    fn::invoke:
      function: ibm:index/getDnsDomainRegistration:getDnsDomainRegistration
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Name string
    The name of the DNS domain registration as it was defined in IBM Cloud Infrastructure DNS Registration Service.
    Name string
    The name of the DNS domain registration as it was defined in IBM Cloud Infrastructure DNS Registration Service.
    name String
    The name of the DNS domain registration as it was defined in IBM Cloud Infrastructure DNS Registration Service.
    name string
    The name of the DNS domain registration as it was defined in IBM Cloud Infrastructure DNS Registration Service.
    name str
    The name of the DNS domain registration as it was defined in IBM Cloud Infrastructure DNS Registration Service.
    name String
    The name of the DNS domain registration as it was defined in IBM Cloud Infrastructure DNS Registration Service.

    getDnsDomainRegistration Result

    The following output properties are available:

    Id double
    (String) The unique identifier of the domain.
    Name string
    NameServers List<string>
    Id float64
    (String) The unique identifier of the domain.
    Name string
    NameServers []string
    id Double
    (String) The unique identifier of the domain.
    name String
    nameServers List<String>
    id number
    (String) The unique identifier of the domain.
    name string
    nameServers string[]
    id float
    (String) The unique identifier of the domain.
    name str
    name_servers Sequence[str]
    id Number
    (String) The unique identifier of the domain.
    name String
    nameServers List<String>

    Package Details

    Repository
    ibm ibm-cloud/terraform-provider-ibm
    License
    Notes
    This Pulumi package is based on the ibm Terraform Provider.
    ibm logo
    ibm 1.78.0 published on Wednesday, Apr 30, 2025 by ibm-cloud