1. Packages
  2. DNSimple Provider
  3. API Docs
  4. RegisteredDomain
Viewing docs for DNSimple v5.0.2
published on Friday, Mar 6, 2026 by Pulumi
dnsimple logo
Viewing docs for DNSimple v5.0.2
published on Friday, Mar 6, 2026 by Pulumi

    Provides a DNSimple registered domain resource.

    Example Usage

    The simplest example below requires a contact (existing or a new one to be created) and basic domain information.

    import * as pulumi from "@pulumi/pulumi";
    import * as dnsimple from "@pulumi/dnsimple";
    
    const aliceMain = new dnsimple.Contact("alice_main", {
        label: "Alice",
        firstName: "Alice",
        lastName: "Appleseed",
        organizationName: "Contoso",
        jobTitle: "Manager",
        address1: "Level 1, 2 Main St",
        city: "San Francisco",
        stateProvince: "California",
        postalCode: "90210",
        country: "US",
        phone: "+1.401239523",
        email: "apple@contoso.com",
    });
    const exampleCom = new dnsimple.RegisteredDomain("example_com", {
        name: "example.com",
        contactId: aliceMain.id,
    });
    
    import pulumi
    import pulumi_dnsimple as dnsimple
    
    alice_main = dnsimple.Contact("alice_main",
        label="Alice",
        first_name="Alice",
        last_name="Appleseed",
        organization_name="Contoso",
        job_title="Manager",
        address1="Level 1, 2 Main St",
        city="San Francisco",
        state_province="California",
        postal_code="90210",
        country="US",
        phone="+1.401239523",
        email="apple@contoso.com")
    example_com = dnsimple.RegisteredDomain("example_com",
        name="example.com",
        contact_id=alice_main.id)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-dnsimple/sdk/v5/go/dnsimple"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		aliceMain, err := dnsimple.NewContact(ctx, "alice_main", &dnsimple.ContactArgs{
    			Label:            pulumi.String("Alice"),
    			FirstName:        pulumi.String("Alice"),
    			LastName:         pulumi.String("Appleseed"),
    			OrganizationName: pulumi.String("Contoso"),
    			JobTitle:         pulumi.String("Manager"),
    			Address1:         pulumi.String("Level 1, 2 Main St"),
    			City:             pulumi.String("San Francisco"),
    			StateProvince:    pulumi.String("California"),
    			PostalCode:       pulumi.String("90210"),
    			Country:          pulumi.String("US"),
    			Phone:            pulumi.String("+1.401239523"),
    			Email:            pulumi.String("apple@contoso.com"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = dnsimple.NewRegisteredDomain(ctx, "example_com", &dnsimple.RegisteredDomainArgs{
    			Name:      pulumi.String("example.com"),
    			ContactId: aliceMain.ID(),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using DNSimple = Pulumi.DNSimple;
    
    return await Deployment.RunAsync(() => 
    {
        var aliceMain = new DNSimple.Contact("alice_main", new()
        {
            Label = "Alice",
            FirstName = "Alice",
            LastName = "Appleseed",
            OrganizationName = "Contoso",
            JobTitle = "Manager",
            Address1 = "Level 1, 2 Main St",
            City = "San Francisco",
            StateProvince = "California",
            PostalCode = "90210",
            Country = "US",
            Phone = "+1.401239523",
            Email = "apple@contoso.com",
        });
    
        var exampleCom = new DNSimple.RegisteredDomain("example_com", new()
        {
            Name = "example.com",
            ContactId = aliceMain.Id,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.dnsimple.Contact;
    import com.pulumi.dnsimple.ContactArgs;
    import com.pulumi.dnsimple.RegisteredDomain;
    import com.pulumi.dnsimple.RegisteredDomainArgs;
    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) {
            var aliceMain = new Contact("aliceMain", ContactArgs.builder()
                .label("Alice")
                .firstName("Alice")
                .lastName("Appleseed")
                .organizationName("Contoso")
                .jobTitle("Manager")
                .address1("Level 1, 2 Main St")
                .city("San Francisco")
                .stateProvince("California")
                .postalCode("90210")
                .country("US")
                .phone("+1.401239523")
                .email("apple@contoso.com")
                .build());
    
            var exampleCom = new RegisteredDomain("exampleCom", RegisteredDomainArgs.builder()
                .name("example.com")
                .contactId(aliceMain.id())
                .build());
    
        }
    }
    
    resources:
      aliceMain:
        type: dnsimple:Contact
        name: alice_main
        properties:
          label: Alice
          firstName: Alice
          lastName: Appleseed
          organizationName: Contoso
          jobTitle: Manager
          address1: Level 1, 2 Main St
          city: San Francisco
          stateProvince: California
          postalCode: '90210'
          country: US
          phone: '+1.401239523'
          email: apple@contoso.com
      exampleCom:
        type: dnsimple:RegisteredDomain
        name: example_com
        properties:
          name: example.com
          contactId: ${aliceMain.id}
    

    Example with more settings

    import * as pulumi from "@pulumi/pulumi";
    import * as dnsimple from "@pulumi/dnsimple";
    
    const exampleCom = new dnsimple.RegisteredDomain("example_com", {
        name: "example.com",
        contactId: aliceMain.id,
        autoRenewEnabled: true,
        transferLockEnabled: true,
        whoisPrivacyEnabled: true,
        dnssecEnabled: false,
    });
    
    import pulumi
    import pulumi_dnsimple as dnsimple
    
    example_com = dnsimple.RegisteredDomain("example_com",
        name="example.com",
        contact_id=alice_main["id"],
        auto_renew_enabled=True,
        transfer_lock_enabled=True,
        whois_privacy_enabled=True,
        dnssec_enabled=False)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-dnsimple/sdk/v5/go/dnsimple"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := dnsimple.NewRegisteredDomain(ctx, "example_com", &dnsimple.RegisteredDomainArgs{
    			Name:                pulumi.String("example.com"),
    			ContactId:           pulumi.Any(aliceMain.Id),
    			AutoRenewEnabled:    pulumi.Bool(true),
    			TransferLockEnabled: pulumi.Bool(true),
    			WhoisPrivacyEnabled: pulumi.Bool(true),
    			DnssecEnabled:       pulumi.Bool(false),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using DNSimple = Pulumi.DNSimple;
    
    return await Deployment.RunAsync(() => 
    {
        var exampleCom = new DNSimple.RegisteredDomain("example_com", new()
        {
            Name = "example.com",
            ContactId = aliceMain.Id,
            AutoRenewEnabled = true,
            TransferLockEnabled = true,
            WhoisPrivacyEnabled = true,
            DnssecEnabled = false,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.dnsimple.RegisteredDomain;
    import com.pulumi.dnsimple.RegisteredDomainArgs;
    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) {
            var exampleCom = new RegisteredDomain("exampleCom", RegisteredDomainArgs.builder()
                .name("example.com")
                .contactId(aliceMain.id())
                .autoRenewEnabled(true)
                .transferLockEnabled(true)
                .whoisPrivacyEnabled(true)
                .dnssecEnabled(false)
                .build());
    
        }
    }
    
    resources:
      exampleCom:
        type: dnsimple:RegisteredDomain
        name: example_com
        properties:
          name: example.com
          contactId: ${aliceMain.id}
          autoRenewEnabled: true
          transferLockEnabled: true
          whoisPrivacyEnabled: true
          dnssecEnabled: false
    

    Example with extended attributes

    Some domain extensions require additional information during registration. You can check if a domain extension requires extended attributes using the TLD Extended Attributes API.

    import * as pulumi from "@pulumi/pulumi";
    import * as dnsimple from "@pulumi/dnsimple";
    
    const exampleBio = new dnsimple.RegisteredDomain("example_bio", {
        name: "example.bio",
        contactId: aliceMain.id,
        autoRenewEnabled: true,
        extendedAttributes: {
            bio_agree: "I Agree",
        },
    });
    
    import pulumi
    import pulumi_dnsimple as dnsimple
    
    example_bio = dnsimple.RegisteredDomain("example_bio",
        name="example.bio",
        contact_id=alice_main["id"],
        auto_renew_enabled=True,
        extended_attributes={
            "bio_agree": "I Agree",
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-dnsimple/sdk/v5/go/dnsimple"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := dnsimple.NewRegisteredDomain(ctx, "example_bio", &dnsimple.RegisteredDomainArgs{
    			Name:             pulumi.String("example.bio"),
    			ContactId:        pulumi.Any(aliceMain.Id),
    			AutoRenewEnabled: pulumi.Bool(true),
    			ExtendedAttributes: pulumi.StringMap{
    				"bio_agree": pulumi.String("I Agree"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using DNSimple = Pulumi.DNSimple;
    
    return await Deployment.RunAsync(() => 
    {
        var exampleBio = new DNSimple.RegisteredDomain("example_bio", new()
        {
            Name = "example.bio",
            ContactId = aliceMain.Id,
            AutoRenewEnabled = true,
            ExtendedAttributes = 
            {
                { "bio_agree", "I Agree" },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.dnsimple.RegisteredDomain;
    import com.pulumi.dnsimple.RegisteredDomainArgs;
    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) {
            var exampleBio = new RegisteredDomain("exampleBio", RegisteredDomainArgs.builder()
                .name("example.bio")
                .contactId(aliceMain.id())
                .autoRenewEnabled(true)
                .extendedAttributes(Map.of("bio_agree", "I Agree"))
                .build());
    
        }
    }
    
    resources:
      exampleBio:
        type: dnsimple:RegisteredDomain
        name: example_bio
        properties:
          name: example.bio
          contactId: ${aliceMain.id}
          autoRenewEnabled: true
          extendedAttributes:
            bio_agree: I Agree
    

    Create RegisteredDomain Resource

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

    Constructor syntax

    new RegisteredDomain(name: string, args: RegisteredDomainArgs, opts?: CustomResourceOptions);
    @overload
    def RegisteredDomain(resource_name: str,
                         args: RegisteredDomainArgs,
                         opts: Optional[ResourceOptions] = None)
    
    @overload
    def RegisteredDomain(resource_name: str,
                         opts: Optional[ResourceOptions] = None,
                         contact_id: Optional[int] = None,
                         name: Optional[str] = None,
                         auto_renew_enabled: Optional[bool] = None,
                         dnssec_enabled: Optional[bool] = None,
                         extended_attributes: Optional[Mapping[str, str]] = None,
                         premium_price: Optional[str] = None,
                         timeouts: Optional[RegisteredDomainTimeoutsArgs] = None,
                         transfer_lock_enabled: Optional[bool] = None,
                         whois_privacy_enabled: Optional[bool] = None)
    func NewRegisteredDomain(ctx *Context, name string, args RegisteredDomainArgs, opts ...ResourceOption) (*RegisteredDomain, error)
    public RegisteredDomain(string name, RegisteredDomainArgs args, CustomResourceOptions? opts = null)
    public RegisteredDomain(String name, RegisteredDomainArgs args)
    public RegisteredDomain(String name, RegisteredDomainArgs args, CustomResourceOptions options)
    
    type: dnsimple:RegisteredDomain
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args RegisteredDomainArgs
    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 RegisteredDomainArgs
    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 RegisteredDomainArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args RegisteredDomainArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args RegisteredDomainArgs
    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 registeredDomainResource = new DNSimple.RegisteredDomain("registeredDomainResource", new()
    {
        ContactId = 0,
        Name = "string",
        AutoRenewEnabled = false,
        DnssecEnabled = false,
        ExtendedAttributes = 
        {
            { "string", "string" },
        },
        PremiumPrice = "string",
        Timeouts = new DNSimple.Inputs.RegisteredDomainTimeoutsArgs
        {
            Create = "string",
            Delete = "string",
            Update = "string",
        },
        TransferLockEnabled = false,
        WhoisPrivacyEnabled = false,
    });
    
    example, err := dnsimple.NewRegisteredDomain(ctx, "registeredDomainResource", &dnsimple.RegisteredDomainArgs{
    	ContactId:        pulumi.Int(0),
    	Name:             pulumi.String("string"),
    	AutoRenewEnabled: pulumi.Bool(false),
    	DnssecEnabled:    pulumi.Bool(false),
    	ExtendedAttributes: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	PremiumPrice: pulumi.String("string"),
    	Timeouts: &dnsimple.RegisteredDomainTimeoutsArgs{
    		Create: pulumi.String("string"),
    		Delete: pulumi.String("string"),
    		Update: pulumi.String("string"),
    	},
    	TransferLockEnabled: pulumi.Bool(false),
    	WhoisPrivacyEnabled: pulumi.Bool(false),
    })
    
    var registeredDomainResource = new RegisteredDomain("registeredDomainResource", RegisteredDomainArgs.builder()
        .contactId(0)
        .name("string")
        .autoRenewEnabled(false)
        .dnssecEnabled(false)
        .extendedAttributes(Map.of("string", "string"))
        .premiumPrice("string")
        .timeouts(RegisteredDomainTimeoutsArgs.builder()
            .create("string")
            .delete("string")
            .update("string")
            .build())
        .transferLockEnabled(false)
        .whoisPrivacyEnabled(false)
        .build());
    
    registered_domain_resource = dnsimple.RegisteredDomain("registeredDomainResource",
        contact_id=0,
        name="string",
        auto_renew_enabled=False,
        dnssec_enabled=False,
        extended_attributes={
            "string": "string",
        },
        premium_price="string",
        timeouts={
            "create": "string",
            "delete": "string",
            "update": "string",
        },
        transfer_lock_enabled=False,
        whois_privacy_enabled=False)
    
    const registeredDomainResource = new dnsimple.RegisteredDomain("registeredDomainResource", {
        contactId: 0,
        name: "string",
        autoRenewEnabled: false,
        dnssecEnabled: false,
        extendedAttributes: {
            string: "string",
        },
        premiumPrice: "string",
        timeouts: {
            create: "string",
            "delete": "string",
            update: "string",
        },
        transferLockEnabled: false,
        whoisPrivacyEnabled: false,
    });
    
    type: dnsimple:RegisteredDomain
    properties:
        autoRenewEnabled: false
        contactId: 0
        dnssecEnabled: false
        extendedAttributes:
            string: string
        name: string
        premiumPrice: string
        timeouts:
            create: string
            delete: string
            update: string
        transferLockEnabled: false
        whoisPrivacyEnabled: false
    

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

    ContactId int
    The ID of the contact to be used for the domain registration. The contact ID can be changed after the domain has been registered. The change will result in a new registrant change, which may result in a 60-day lock.
    Name string
    The domain name to be registered.
    AutoRenewEnabled bool
    Whether the domain should be set to auto-renew (default: false).
    DnssecEnabled bool
    Whether the domain should have DNSSEC enabled (default: false).
    ExtendedAttributes Dictionary<string, string>
    A map of extended attributes to be set for the domain registration. To see if there are any required extended attributes for any TLD use our Lists the TLD Extended Attributes API. The values provided in the extended_attributes will also be sent when a registrant change is initiated as part of changing the contact_id.
    PremiumPrice string
    The premium price for the domain registration. This is only required if the domain is a premium domain. You can use our Check domain API to check if a domain is premium and Retrieve domain prices API to retrieve the premium price for a domain.
    Timeouts Pulumi.DNSimple.Inputs.RegisteredDomainTimeouts
    (see below for nested schema).
    TransferLockEnabled bool
    Whether the domain transfer lock protection is enabled (default: true).
    WhoisPrivacyEnabled bool
    Whether the domain should have WHOIS privacy enabled (default: false).
    ContactId int
    The ID of the contact to be used for the domain registration. The contact ID can be changed after the domain has been registered. The change will result in a new registrant change, which may result in a 60-day lock.
    Name string
    The domain name to be registered.
    AutoRenewEnabled bool
    Whether the domain should be set to auto-renew (default: false).
    DnssecEnabled bool
    Whether the domain should have DNSSEC enabled (default: false).
    ExtendedAttributes map[string]string
    A map of extended attributes to be set for the domain registration. To see if there are any required extended attributes for any TLD use our Lists the TLD Extended Attributes API. The values provided in the extended_attributes will also be sent when a registrant change is initiated as part of changing the contact_id.
    PremiumPrice string
    The premium price for the domain registration. This is only required if the domain is a premium domain. You can use our Check domain API to check if a domain is premium and Retrieve domain prices API to retrieve the premium price for a domain.
    Timeouts RegisteredDomainTimeoutsArgs
    (see below for nested schema).
    TransferLockEnabled bool
    Whether the domain transfer lock protection is enabled (default: true).
    WhoisPrivacyEnabled bool
    Whether the domain should have WHOIS privacy enabled (default: false).
    contactId Integer
    The ID of the contact to be used for the domain registration. The contact ID can be changed after the domain has been registered. The change will result in a new registrant change, which may result in a 60-day lock.
    name String
    The domain name to be registered.
    autoRenewEnabled Boolean
    Whether the domain should be set to auto-renew (default: false).
    dnssecEnabled Boolean
    Whether the domain should have DNSSEC enabled (default: false).
    extendedAttributes Map<String,String>
    A map of extended attributes to be set for the domain registration. To see if there are any required extended attributes for any TLD use our Lists the TLD Extended Attributes API. The values provided in the extended_attributes will also be sent when a registrant change is initiated as part of changing the contact_id.
    premiumPrice String
    The premium price for the domain registration. This is only required if the domain is a premium domain. You can use our Check domain API to check if a domain is premium and Retrieve domain prices API to retrieve the premium price for a domain.
    timeouts RegisteredDomainTimeouts
    (see below for nested schema).
    transferLockEnabled Boolean
    Whether the domain transfer lock protection is enabled (default: true).
    whoisPrivacyEnabled Boolean
    Whether the domain should have WHOIS privacy enabled (default: false).
    contactId number
    The ID of the contact to be used for the domain registration. The contact ID can be changed after the domain has been registered. The change will result in a new registrant change, which may result in a 60-day lock.
    name string
    The domain name to be registered.
    autoRenewEnabled boolean
    Whether the domain should be set to auto-renew (default: false).
    dnssecEnabled boolean
    Whether the domain should have DNSSEC enabled (default: false).
    extendedAttributes {[key: string]: string}
    A map of extended attributes to be set for the domain registration. To see if there are any required extended attributes for any TLD use our Lists the TLD Extended Attributes API. The values provided in the extended_attributes will also be sent when a registrant change is initiated as part of changing the contact_id.
    premiumPrice string
    The premium price for the domain registration. This is only required if the domain is a premium domain. You can use our Check domain API to check if a domain is premium and Retrieve domain prices API to retrieve the premium price for a domain.
    timeouts RegisteredDomainTimeouts
    (see below for nested schema).
    transferLockEnabled boolean
    Whether the domain transfer lock protection is enabled (default: true).
    whoisPrivacyEnabled boolean
    Whether the domain should have WHOIS privacy enabled (default: false).
    contact_id int
    The ID of the contact to be used for the domain registration. The contact ID can be changed after the domain has been registered. The change will result in a new registrant change, which may result in a 60-day lock.
    name str
    The domain name to be registered.
    auto_renew_enabled bool
    Whether the domain should be set to auto-renew (default: false).
    dnssec_enabled bool
    Whether the domain should have DNSSEC enabled (default: false).
    extended_attributes Mapping[str, str]
    A map of extended attributes to be set for the domain registration. To see if there are any required extended attributes for any TLD use our Lists the TLD Extended Attributes API. The values provided in the extended_attributes will also be sent when a registrant change is initiated as part of changing the contact_id.
    premium_price str
    The premium price for the domain registration. This is only required if the domain is a premium domain. You can use our Check domain API to check if a domain is premium and Retrieve domain prices API to retrieve the premium price for a domain.
    timeouts RegisteredDomainTimeoutsArgs
    (see below for nested schema).
    transfer_lock_enabled bool
    Whether the domain transfer lock protection is enabled (default: true).
    whois_privacy_enabled bool
    Whether the domain should have WHOIS privacy enabled (default: false).
    contactId Number
    The ID of the contact to be used for the domain registration. The contact ID can be changed after the domain has been registered. The change will result in a new registrant change, which may result in a 60-day lock.
    name String
    The domain name to be registered.
    autoRenewEnabled Boolean
    Whether the domain should be set to auto-renew (default: false).
    dnssecEnabled Boolean
    Whether the domain should have DNSSEC enabled (default: false).
    extendedAttributes Map<String>
    A map of extended attributes to be set for the domain registration. To see if there are any required extended attributes for any TLD use our Lists the TLD Extended Attributes API. The values provided in the extended_attributes will also be sent when a registrant change is initiated as part of changing the contact_id.
    premiumPrice String
    The premium price for the domain registration. This is only required if the domain is a premium domain. You can use our Check domain API to check if a domain is premium and Retrieve domain prices API to retrieve the premium price for a domain.
    timeouts Property Map
    (see below for nested schema).
    transferLockEnabled Boolean
    Whether the domain transfer lock protection is enabled (default: true).
    whoisPrivacyEnabled Boolean
    Whether the domain should have WHOIS privacy enabled (default: false).

    Outputs

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

    AccountId int
    DomainRegistration Pulumi.DNSimple.Outputs.RegisteredDomainDomainRegistration
    The domain registration details. (see below for nested schema)
    ExpiresAt string
    Id string
    The provider-assigned unique ID for this managed resource.
    RegistrantChange Pulumi.DNSimple.Outputs.RegisteredDomainRegistrantChange
    The registrant change details.
    State string
    (String) - The state of the domain registration.
    UnicodeName string
    The domain name in Unicode format.
    AccountId int
    DomainRegistration RegisteredDomainDomainRegistration
    The domain registration details. (see below for nested schema)
    ExpiresAt string
    Id string
    The provider-assigned unique ID for this managed resource.
    RegistrantChange RegisteredDomainRegistrantChange
    The registrant change details.
    State string
    (String) - The state of the domain registration.
    UnicodeName string
    The domain name in Unicode format.
    accountId Integer
    domainRegistration RegisteredDomainDomainRegistration
    The domain registration details. (see below for nested schema)
    expiresAt String
    id String
    The provider-assigned unique ID for this managed resource.
    registrantChange RegisteredDomainRegistrantChange
    The registrant change details.
    state String
    (String) - The state of the domain registration.
    unicodeName String
    The domain name in Unicode format.
    accountId number
    domainRegistration RegisteredDomainDomainRegistration
    The domain registration details. (see below for nested schema)
    expiresAt string
    id string
    The provider-assigned unique ID for this managed resource.
    registrantChange RegisteredDomainRegistrantChange
    The registrant change details.
    state string
    (String) - The state of the domain registration.
    unicodeName string
    The domain name in Unicode format.
    account_id int
    domain_registration RegisteredDomainDomainRegistration
    The domain registration details. (see below for nested schema)
    expires_at str
    id str
    The provider-assigned unique ID for this managed resource.
    registrant_change RegisteredDomainRegistrantChange
    The registrant change details.
    state str
    (String) - The state of the domain registration.
    unicode_name str
    The domain name in Unicode format.
    accountId Number
    domainRegistration Property Map
    The domain registration details. (see below for nested schema)
    expiresAt String
    id String
    The provider-assigned unique ID for this managed resource.
    registrantChange Property Map
    The registrant change details.
    state String
    (String) - The state of the domain registration.
    unicodeName String
    The domain name in Unicode format.

    Look up Existing RegisteredDomain Resource

    Get an existing RegisteredDomain 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?: RegisteredDomainState, opts?: CustomResourceOptions): RegisteredDomain
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            account_id: Optional[int] = None,
            auto_renew_enabled: Optional[bool] = None,
            contact_id: Optional[int] = None,
            dnssec_enabled: Optional[bool] = None,
            domain_registration: Optional[RegisteredDomainDomainRegistrationArgs] = None,
            expires_at: Optional[str] = None,
            extended_attributes: Optional[Mapping[str, str]] = None,
            name: Optional[str] = None,
            premium_price: Optional[str] = None,
            registrant_change: Optional[RegisteredDomainRegistrantChangeArgs] = None,
            state: Optional[str] = None,
            timeouts: Optional[RegisteredDomainTimeoutsArgs] = None,
            transfer_lock_enabled: Optional[bool] = None,
            unicode_name: Optional[str] = None,
            whois_privacy_enabled: Optional[bool] = None) -> RegisteredDomain
    func GetRegisteredDomain(ctx *Context, name string, id IDInput, state *RegisteredDomainState, opts ...ResourceOption) (*RegisteredDomain, error)
    public static RegisteredDomain Get(string name, Input<string> id, RegisteredDomainState? state, CustomResourceOptions? opts = null)
    public static RegisteredDomain get(String name, Output<String> id, RegisteredDomainState state, CustomResourceOptions options)
    resources:  _:    type: dnsimple:RegisteredDomain    get:      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:
    AccountId int
    AutoRenewEnabled bool
    Whether the domain should be set to auto-renew (default: false).
    ContactId int
    The ID of the contact to be used for the domain registration. The contact ID can be changed after the domain has been registered. The change will result in a new registrant change, which may result in a 60-day lock.
    DnssecEnabled bool
    Whether the domain should have DNSSEC enabled (default: false).
    DomainRegistration Pulumi.DNSimple.Inputs.RegisteredDomainDomainRegistration
    The domain registration details. (see below for nested schema)
    ExpiresAt string
    ExtendedAttributes Dictionary<string, string>
    A map of extended attributes to be set for the domain registration. To see if there are any required extended attributes for any TLD use our Lists the TLD Extended Attributes API. The values provided in the extended_attributes will also be sent when a registrant change is initiated as part of changing the contact_id.
    Name string
    The domain name to be registered.
    PremiumPrice string
    The premium price for the domain registration. This is only required if the domain is a premium domain. You can use our Check domain API to check if a domain is premium and Retrieve domain prices API to retrieve the premium price for a domain.
    RegistrantChange Pulumi.DNSimple.Inputs.RegisteredDomainRegistrantChange
    The registrant change details.
    State string
    (String) - The state of the domain registration.
    Timeouts Pulumi.DNSimple.Inputs.RegisteredDomainTimeouts
    (see below for nested schema).
    TransferLockEnabled bool
    Whether the domain transfer lock protection is enabled (default: true).
    UnicodeName string
    The domain name in Unicode format.
    WhoisPrivacyEnabled bool
    Whether the domain should have WHOIS privacy enabled (default: false).
    AccountId int
    AutoRenewEnabled bool
    Whether the domain should be set to auto-renew (default: false).
    ContactId int
    The ID of the contact to be used for the domain registration. The contact ID can be changed after the domain has been registered. The change will result in a new registrant change, which may result in a 60-day lock.
    DnssecEnabled bool
    Whether the domain should have DNSSEC enabled (default: false).
    DomainRegistration RegisteredDomainDomainRegistrationArgs
    The domain registration details. (see below for nested schema)
    ExpiresAt string
    ExtendedAttributes map[string]string
    A map of extended attributes to be set for the domain registration. To see if there are any required extended attributes for any TLD use our Lists the TLD Extended Attributes API. The values provided in the extended_attributes will also be sent when a registrant change is initiated as part of changing the contact_id.
    Name string
    The domain name to be registered.
    PremiumPrice string
    The premium price for the domain registration. This is only required if the domain is a premium domain. You can use our Check domain API to check if a domain is premium and Retrieve domain prices API to retrieve the premium price for a domain.
    RegistrantChange RegisteredDomainRegistrantChangeArgs
    The registrant change details.
    State string
    (String) - The state of the domain registration.
    Timeouts RegisteredDomainTimeoutsArgs
    (see below for nested schema).
    TransferLockEnabled bool
    Whether the domain transfer lock protection is enabled (default: true).
    UnicodeName string
    The domain name in Unicode format.
    WhoisPrivacyEnabled bool
    Whether the domain should have WHOIS privacy enabled (default: false).
    accountId Integer
    autoRenewEnabled Boolean
    Whether the domain should be set to auto-renew (default: false).
    contactId Integer
    The ID of the contact to be used for the domain registration. The contact ID can be changed after the domain has been registered. The change will result in a new registrant change, which may result in a 60-day lock.
    dnssecEnabled Boolean
    Whether the domain should have DNSSEC enabled (default: false).
    domainRegistration RegisteredDomainDomainRegistration
    The domain registration details. (see below for nested schema)
    expiresAt String
    extendedAttributes Map<String,String>
    A map of extended attributes to be set for the domain registration. To see if there are any required extended attributes for any TLD use our Lists the TLD Extended Attributes API. The values provided in the extended_attributes will also be sent when a registrant change is initiated as part of changing the contact_id.
    name String
    The domain name to be registered.
    premiumPrice String
    The premium price for the domain registration. This is only required if the domain is a premium domain. You can use our Check domain API to check if a domain is premium and Retrieve domain prices API to retrieve the premium price for a domain.
    registrantChange RegisteredDomainRegistrantChange
    The registrant change details.
    state String
    (String) - The state of the domain registration.
    timeouts RegisteredDomainTimeouts
    (see below for nested schema).
    transferLockEnabled Boolean
    Whether the domain transfer lock protection is enabled (default: true).
    unicodeName String
    The domain name in Unicode format.
    whoisPrivacyEnabled Boolean
    Whether the domain should have WHOIS privacy enabled (default: false).
    accountId number
    autoRenewEnabled boolean
    Whether the domain should be set to auto-renew (default: false).
    contactId number
    The ID of the contact to be used for the domain registration. The contact ID can be changed after the domain has been registered. The change will result in a new registrant change, which may result in a 60-day lock.
    dnssecEnabled boolean
    Whether the domain should have DNSSEC enabled (default: false).
    domainRegistration RegisteredDomainDomainRegistration
    The domain registration details. (see below for nested schema)
    expiresAt string
    extendedAttributes {[key: string]: string}
    A map of extended attributes to be set for the domain registration. To see if there are any required extended attributes for any TLD use our Lists the TLD Extended Attributes API. The values provided in the extended_attributes will also be sent when a registrant change is initiated as part of changing the contact_id.
    name string
    The domain name to be registered.
    premiumPrice string
    The premium price for the domain registration. This is only required if the domain is a premium domain. You can use our Check domain API to check if a domain is premium and Retrieve domain prices API to retrieve the premium price for a domain.
    registrantChange RegisteredDomainRegistrantChange
    The registrant change details.
    state string
    (String) - The state of the domain registration.
    timeouts RegisteredDomainTimeouts
    (see below for nested schema).
    transferLockEnabled boolean
    Whether the domain transfer lock protection is enabled (default: true).
    unicodeName string
    The domain name in Unicode format.
    whoisPrivacyEnabled boolean
    Whether the domain should have WHOIS privacy enabled (default: false).
    account_id int
    auto_renew_enabled bool
    Whether the domain should be set to auto-renew (default: false).
    contact_id int
    The ID of the contact to be used for the domain registration. The contact ID can be changed after the domain has been registered. The change will result in a new registrant change, which may result in a 60-day lock.
    dnssec_enabled bool
    Whether the domain should have DNSSEC enabled (default: false).
    domain_registration RegisteredDomainDomainRegistrationArgs
    The domain registration details. (see below for nested schema)
    expires_at str
    extended_attributes Mapping[str, str]
    A map of extended attributes to be set for the domain registration. To see if there are any required extended attributes for any TLD use our Lists the TLD Extended Attributes API. The values provided in the extended_attributes will also be sent when a registrant change is initiated as part of changing the contact_id.
    name str
    The domain name to be registered.
    premium_price str
    The premium price for the domain registration. This is only required if the domain is a premium domain. You can use our Check domain API to check if a domain is premium and Retrieve domain prices API to retrieve the premium price for a domain.
    registrant_change RegisteredDomainRegistrantChangeArgs
    The registrant change details.
    state str
    (String) - The state of the domain registration.
    timeouts RegisteredDomainTimeoutsArgs
    (see below for nested schema).
    transfer_lock_enabled bool
    Whether the domain transfer lock protection is enabled (default: true).
    unicode_name str
    The domain name in Unicode format.
    whois_privacy_enabled bool
    Whether the domain should have WHOIS privacy enabled (default: false).
    accountId Number
    autoRenewEnabled Boolean
    Whether the domain should be set to auto-renew (default: false).
    contactId Number
    The ID of the contact to be used for the domain registration. The contact ID can be changed after the domain has been registered. The change will result in a new registrant change, which may result in a 60-day lock.
    dnssecEnabled Boolean
    Whether the domain should have DNSSEC enabled (default: false).
    domainRegistration Property Map
    The domain registration details. (see below for nested schema)
    expiresAt String
    extendedAttributes Map<String>
    A map of extended attributes to be set for the domain registration. To see if there are any required extended attributes for any TLD use our Lists the TLD Extended Attributes API. The values provided in the extended_attributes will also be sent when a registrant change is initiated as part of changing the contact_id.
    name String
    The domain name to be registered.
    premiumPrice String
    The premium price for the domain registration. This is only required if the domain is a premium domain. You can use our Check domain API to check if a domain is premium and Retrieve domain prices API to retrieve the premium price for a domain.
    registrantChange Property Map
    The registrant change details.
    state String
    (String) - The state of the domain registration.
    timeouts Property Map
    (see below for nested schema).
    transferLockEnabled Boolean
    Whether the domain transfer lock protection is enabled (default: true).
    unicodeName String
    The domain name in Unicode format.
    whoisPrivacyEnabled Boolean
    Whether the domain should have WHOIS privacy enabled (default: false).

    Supporting Types

    RegisteredDomainDomainRegistration, RegisteredDomainDomainRegistrationArgs

    Id int
    (Number) - The ID of the domain registration.
    Period int
    (Number) - The registration period in years.
    State string
    (String) - The state of the domain registration.
    Id int
    (Number) - The ID of the domain registration.
    Period int
    (Number) - The registration period in years.
    State string
    (String) - The state of the domain registration.
    id Integer
    (Number) - The ID of the domain registration.
    period Integer
    (Number) - The registration period in years.
    state String
    (String) - The state of the domain registration.
    id number
    (Number) - The ID of the domain registration.
    period number
    (Number) - The registration period in years.
    state string
    (String) - The state of the domain registration.
    id int
    (Number) - The ID of the domain registration.
    period int
    (Number) - The registration period in years.
    state str
    (String) - The state of the domain registration.
    id Number
    (Number) - The ID of the domain registration.
    period Number
    (Number) - The registration period in years.
    state String
    (String) - The state of the domain registration.

    RegisteredDomainRegistrantChange, RegisteredDomainRegistrantChangeArgs

    AccountId int
    DNSimple Account ID to which the registrant change belongs to
    ContactId int
    The ID of the contact to be used for the domain registration. The contact ID can be changed after the domain has been registered. The change will result in a new registrant change, which may result in a 60-day lock.
    DomainId string
    DNSimple domain ID for which the registrant change is being performed
    ExtendedAttributes Dictionary<string, string>
    A map of extended attributes to be set for the domain registration. To see if there are any required extended attributes for any TLD use our Lists the TLD Extended Attributes API. The values provided in the extended_attributes will also be sent when a registrant change is initiated as part of changing the contact_id.
    Id int
    (Number) - The ID of the domain registration.
    IrtLockLiftedBy string
    Date when the registrant change lock was lifted for the domain
    RegistryOwnerChange bool
    True if the registrant change will result in a registry owner change
    State string
    (String) - The state of the domain registration.
    AccountId int
    DNSimple Account ID to which the registrant change belongs to
    ContactId int
    The ID of the contact to be used for the domain registration. The contact ID can be changed after the domain has been registered. The change will result in a new registrant change, which may result in a 60-day lock.
    DomainId string
    DNSimple domain ID for which the registrant change is being performed
    ExtendedAttributes map[string]string
    A map of extended attributes to be set for the domain registration. To see if there are any required extended attributes for any TLD use our Lists the TLD Extended Attributes API. The values provided in the extended_attributes will also be sent when a registrant change is initiated as part of changing the contact_id.
    Id int
    (Number) - The ID of the domain registration.
    IrtLockLiftedBy string
    Date when the registrant change lock was lifted for the domain
    RegistryOwnerChange bool
    True if the registrant change will result in a registry owner change
    State string
    (String) - The state of the domain registration.
    accountId Integer
    DNSimple Account ID to which the registrant change belongs to
    contactId Integer
    The ID of the contact to be used for the domain registration. The contact ID can be changed after the domain has been registered. The change will result in a new registrant change, which may result in a 60-day lock.
    domainId String
    DNSimple domain ID for which the registrant change is being performed
    extendedAttributes Map<String,String>
    A map of extended attributes to be set for the domain registration. To see if there are any required extended attributes for any TLD use our Lists the TLD Extended Attributes API. The values provided in the extended_attributes will also be sent when a registrant change is initiated as part of changing the contact_id.
    id Integer
    (Number) - The ID of the domain registration.
    irtLockLiftedBy String
    Date when the registrant change lock was lifted for the domain
    registryOwnerChange Boolean
    True if the registrant change will result in a registry owner change
    state String
    (String) - The state of the domain registration.
    accountId number
    DNSimple Account ID to which the registrant change belongs to
    contactId number
    The ID of the contact to be used for the domain registration. The contact ID can be changed after the domain has been registered. The change will result in a new registrant change, which may result in a 60-day lock.
    domainId string
    DNSimple domain ID for which the registrant change is being performed
    extendedAttributes {[key: string]: string}
    A map of extended attributes to be set for the domain registration. To see if there are any required extended attributes for any TLD use our Lists the TLD Extended Attributes API. The values provided in the extended_attributes will also be sent when a registrant change is initiated as part of changing the contact_id.
    id number
    (Number) - The ID of the domain registration.
    irtLockLiftedBy string
    Date when the registrant change lock was lifted for the domain
    registryOwnerChange boolean
    True if the registrant change will result in a registry owner change
    state string
    (String) - The state of the domain registration.
    account_id int
    DNSimple Account ID to which the registrant change belongs to
    contact_id int
    The ID of the contact to be used for the domain registration. The contact ID can be changed after the domain has been registered. The change will result in a new registrant change, which may result in a 60-day lock.
    domain_id str
    DNSimple domain ID for which the registrant change is being performed
    extended_attributes Mapping[str, str]
    A map of extended attributes to be set for the domain registration. To see if there are any required extended attributes for any TLD use our Lists the TLD Extended Attributes API. The values provided in the extended_attributes will also be sent when a registrant change is initiated as part of changing the contact_id.
    id int
    (Number) - The ID of the domain registration.
    irt_lock_lifted_by str
    Date when the registrant change lock was lifted for the domain
    registry_owner_change bool
    True if the registrant change will result in a registry owner change
    state str
    (String) - The state of the domain registration.
    accountId Number
    DNSimple Account ID to which the registrant change belongs to
    contactId Number
    The ID of the contact to be used for the domain registration. The contact ID can be changed after the domain has been registered. The change will result in a new registrant change, which may result in a 60-day lock.
    domainId String
    DNSimple domain ID for which the registrant change is being performed
    extendedAttributes Map<String>
    A map of extended attributes to be set for the domain registration. To see if there are any required extended attributes for any TLD use our Lists the TLD Extended Attributes API. The values provided in the extended_attributes will also be sent when a registrant change is initiated as part of changing the contact_id.
    id Number
    (Number) - The ID of the domain registration.
    irtLockLiftedBy String
    Date when the registrant change lock was lifted for the domain
    registryOwnerChange Boolean
    True if the registrant change will result in a registry owner change
    state String
    (String) - The state of the domain registration.

    RegisteredDomainTimeouts, RegisteredDomainTimeoutsArgs

    Create string
    (String) - The timeout for the read operation e.g. 5m
    Delete string
    Delete timeout (currently unused).
    Update string
    (String) - The timeout for the read operation e.g. 5m
    Create string
    (String) - The timeout for the read operation e.g. 5m
    Delete string
    Delete timeout (currently unused).
    Update string
    (String) - The timeout for the read operation e.g. 5m
    create String
    (String) - The timeout for the read operation e.g. 5m
    delete String
    Delete timeout (currently unused).
    update String
    (String) - The timeout for the read operation e.g. 5m
    create string
    (String) - The timeout for the read operation e.g. 5m
    delete string
    Delete timeout (currently unused).
    update string
    (String) - The timeout for the read operation e.g. 5m
    create str
    (String) - The timeout for the read operation e.g. 5m
    delete str
    Delete timeout (currently unused).
    update str
    (String) - The timeout for the read operation e.g. 5m
    create String
    (String) - The timeout for the read operation e.g. 5m
    delete String
    Delete timeout (currently unused).
    update String
    (String) - The timeout for the read operation e.g. 5m

    Import

    DNSimple registered domains can be imported using their domain name and optionally with domain registration ID.

    Importing registered domain example.com:

    $ pulumi import dnsimple:index/registeredDomain:RegisteredDomain example example.com
    

    Importing registered domain example.com with domain registration ID 1234:

    $ pulumi import dnsimple:index/registeredDomain:RegisteredDomain example example.com_1234
    

    Note: At present there is no way to retrieve the domain registration ID from the DNSimple API or UI. You will need to have noted the ID when you created the domain registration. Prefer using the domain name only when importing.

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

    Package Details

    Repository
    DNSimple pulumi/pulumi-dnsimple
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the dnsimple Terraform Provider.
    dnsimple logo
    Viewing docs for DNSimple v5.0.2
    published on Friday, Mar 6, 2026 by Pulumi
      Try Pulumi Cloud free. Your team will thank you.