Registration

class Registration : KotlinCustomResource

Example Usage

Clouddomains Registration Full

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const myRegistration = new gcp.clouddomains.Registration("my_registration", {
domainName: "example-domain.com",
location: "global",
labels: {
labelkey: "labelvalue",
},
yearlyPrice: {
currencyCode: "USD",
units: "12",
},
dnsSettings: {
customDns: {
nameServers: [
"ns-cloud-a1.googledomains.com.",
"ns-cloud-a2.googledomains.com.",
"ns-cloud-a3.googledomains.com.",
"ns-cloud-a4.googledomains.com.",
],
},
},
contactSettings: {
privacy: "REDACTED_CONTACT_DATA",
registrantContact: {
phoneNumber: "+12345000000",
email: "user@example.com",
postalAddress: {
regionCode: "US",
postalCode: "95050",
administrativeArea: "CA",
locality: "Example City",
addressLines: ["1234 Example street"],
recipients: ["example recipient"],
},
},
adminContact: {
phoneNumber: "+12345000000",
email: "user@example.com",
postalAddress: {
regionCode: "US",
postalCode: "95050",
administrativeArea: "CA",
locality: "Example City",
addressLines: ["1234 Example street"],
recipients: ["example recipient"],
},
},
technicalContact: {
phoneNumber: "+12345000000",
email: "user@example.com",
postalAddress: {
regionCode: "US",
postalCode: "95050",
administrativeArea: "CA",
locality: "Example City",
addressLines: ["1234 Example street"],
recipients: ["example recipient"],
},
},
},
});
import pulumi
import pulumi_gcp as gcp
my_registration = gcp.clouddomains.Registration("my_registration",
domain_name="example-domain.com",
location="global",
labels={
"labelkey": "labelvalue",
},
yearly_price={
"currency_code": "USD",
"units": "12",
},
dns_settings={
"custom_dns": {
"name_servers": [
"ns-cloud-a1.googledomains.com.",
"ns-cloud-a2.googledomains.com.",
"ns-cloud-a3.googledomains.com.",
"ns-cloud-a4.googledomains.com.",
],
},
},
contact_settings={
"privacy": "REDACTED_CONTACT_DATA",
"registrant_contact": {
"phone_number": "+12345000000",
"email": "user@example.com",
"postal_address": {
"region_code": "US",
"postal_code": "95050",
"administrative_area": "CA",
"locality": "Example City",
"address_lines": ["1234 Example street"],
"recipients": ["example recipient"],
},
},
"admin_contact": {
"phone_number": "+12345000000",
"email": "user@example.com",
"postal_address": {
"region_code": "US",
"postal_code": "95050",
"administrative_area": "CA",
"locality": "Example City",
"address_lines": ["1234 Example street"],
"recipients": ["example recipient"],
},
},
"technical_contact": {
"phone_number": "+12345000000",
"email": "user@example.com",
"postal_address": {
"region_code": "US",
"postal_code": "95050",
"administrative_area": "CA",
"locality": "Example City",
"address_lines": ["1234 Example street"],
"recipients": ["example recipient"],
},
},
})
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var myRegistration = new Gcp.CloudDomains.Registration("my_registration", new()
{
DomainName = "example-domain.com",
Location = "global",
Labels =
{
{ "labelkey", "labelvalue" },
},
YearlyPrice = new Gcp.CloudDomains.Inputs.RegistrationYearlyPriceArgs
{
CurrencyCode = "USD",
Units = "12",
},
DnsSettings = new Gcp.CloudDomains.Inputs.RegistrationDnsSettingsArgs
{
CustomDns = new Gcp.CloudDomains.Inputs.RegistrationDnsSettingsCustomDnsArgs
{
NameServers = new[]
{
"ns-cloud-a1.googledomains.com.",
"ns-cloud-a2.googledomains.com.",
"ns-cloud-a3.googledomains.com.",
"ns-cloud-a4.googledomains.com.",
},
},
},
ContactSettings = new Gcp.CloudDomains.Inputs.RegistrationContactSettingsArgs
{
Privacy = "REDACTED_CONTACT_DATA",
RegistrantContact = new Gcp.CloudDomains.Inputs.RegistrationContactSettingsRegistrantContactArgs
{
PhoneNumber = "+12345000000",
Email = "user@example.com",
PostalAddress = new Gcp.CloudDomains.Inputs.RegistrationContactSettingsRegistrantContactPostalAddressArgs
{
RegionCode = "US",
PostalCode = "95050",
AdministrativeArea = "CA",
Locality = "Example City",
AddressLines = new[]
{
"1234 Example street",
},
Recipients = new[]
{
"example recipient",
},
},
},
AdminContact = new Gcp.CloudDomains.Inputs.RegistrationContactSettingsAdminContactArgs
{
PhoneNumber = "+12345000000",
Email = "user@example.com",
PostalAddress = new Gcp.CloudDomains.Inputs.RegistrationContactSettingsAdminContactPostalAddressArgs
{
RegionCode = "US",
PostalCode = "95050",
AdministrativeArea = "CA",
Locality = "Example City",
AddressLines = new[]
{
"1234 Example street",
},
Recipients = new[]
{
"example recipient",
},
},
},
TechnicalContact = new Gcp.CloudDomains.Inputs.RegistrationContactSettingsTechnicalContactArgs
{
PhoneNumber = "+12345000000",
Email = "user@example.com",
PostalAddress = new Gcp.CloudDomains.Inputs.RegistrationContactSettingsTechnicalContactPostalAddressArgs
{
RegionCode = "US",
PostalCode = "95050",
AdministrativeArea = "CA",
Locality = "Example City",
AddressLines = new[]
{
"1234 Example street",
},
Recipients = new[]
{
"example recipient",
},
},
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/clouddomains"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := clouddomains.NewRegistration(ctx, "my_registration", &clouddomains.RegistrationArgs{
DomainName: pulumi.String("example-domain.com"),
Location: pulumi.String("global"),
Labels: pulumi.StringMap{
"labelkey": pulumi.String("labelvalue"),
},
YearlyPrice: &clouddomains.RegistrationYearlyPriceArgs{
CurrencyCode: pulumi.String("USD"),
Units: pulumi.String("12"),
},
DnsSettings: &clouddomains.RegistrationDnsSettingsArgs{
CustomDns: &clouddomains.RegistrationDnsSettingsCustomDnsArgs{
NameServers: pulumi.StringArray{
pulumi.String("ns-cloud-a1.googledomains.com."),
pulumi.String("ns-cloud-a2.googledomains.com."),
pulumi.String("ns-cloud-a3.googledomains.com."),
pulumi.String("ns-cloud-a4.googledomains.com."),
},
},
},
ContactSettings: &clouddomains.RegistrationContactSettingsArgs{
Privacy: pulumi.String("REDACTED_CONTACT_DATA"),
RegistrantContact: &clouddomains.RegistrationContactSettingsRegistrantContactArgs{
PhoneNumber: pulumi.String("+12345000000"),
Email: pulumi.String("user@example.com"),
PostalAddress: &clouddomains.RegistrationContactSettingsRegistrantContactPostalAddressArgs{
RegionCode: pulumi.String("US"),
PostalCode: pulumi.String("95050"),
AdministrativeArea: pulumi.String("CA"),
Locality: pulumi.String("Example City"),
AddressLines: pulumi.StringArray{
pulumi.String("1234 Example street"),
},
Recipients: pulumi.StringArray{
pulumi.String("example recipient"),
},
},
},
AdminContact: &clouddomains.RegistrationContactSettingsAdminContactArgs{
PhoneNumber: pulumi.String("+12345000000"),
Email: pulumi.String("user@example.com"),
PostalAddress: &clouddomains.RegistrationContactSettingsAdminContactPostalAddressArgs{
RegionCode: pulumi.String("US"),
PostalCode: pulumi.String("95050"),
AdministrativeArea: pulumi.String("CA"),
Locality: pulumi.String("Example City"),
AddressLines: pulumi.StringArray{
pulumi.String("1234 Example street"),
},
Recipients: pulumi.StringArray{
pulumi.String("example recipient"),
},
},
},
TechnicalContact: &clouddomains.RegistrationContactSettingsTechnicalContactArgs{
PhoneNumber: pulumi.String("+12345000000"),
Email: pulumi.String("user@example.com"),
PostalAddress: &clouddomains.RegistrationContactSettingsTechnicalContactPostalAddressArgs{
RegionCode: pulumi.String("US"),
PostalCode: pulumi.String("95050"),
AdministrativeArea: pulumi.String("CA"),
Locality: pulumi.String("Example City"),
AddressLines: pulumi.StringArray{
pulumi.String("1234 Example street"),
},
Recipients: pulumi.StringArray{
pulumi.String("example recipient"),
},
},
},
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.clouddomains.Registration;
import com.pulumi.gcp.clouddomains.RegistrationArgs;
import com.pulumi.gcp.clouddomains.inputs.RegistrationYearlyPriceArgs;
import com.pulumi.gcp.clouddomains.inputs.RegistrationDnsSettingsArgs;
import com.pulumi.gcp.clouddomains.inputs.RegistrationDnsSettingsCustomDnsArgs;
import com.pulumi.gcp.clouddomains.inputs.RegistrationContactSettingsArgs;
import com.pulumi.gcp.clouddomains.inputs.RegistrationContactSettingsRegistrantContactArgs;
import com.pulumi.gcp.clouddomains.inputs.RegistrationContactSettingsRegistrantContactPostalAddressArgs;
import com.pulumi.gcp.clouddomains.inputs.RegistrationContactSettingsAdminContactArgs;
import com.pulumi.gcp.clouddomains.inputs.RegistrationContactSettingsAdminContactPostalAddressArgs;
import com.pulumi.gcp.clouddomains.inputs.RegistrationContactSettingsTechnicalContactArgs;
import com.pulumi.gcp.clouddomains.inputs.RegistrationContactSettingsTechnicalContactPostalAddressArgs;
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 myRegistration = new Registration("myRegistration", RegistrationArgs.builder()
.domainName("example-domain.com")
.location("global")
.labels(Map.of("labelkey", "labelvalue"))
.yearlyPrice(RegistrationYearlyPriceArgs.builder()
.currencyCode("USD")
.units("12")
.build())
.dnsSettings(RegistrationDnsSettingsArgs.builder()
.customDns(RegistrationDnsSettingsCustomDnsArgs.builder()
.nameServers(
"ns-cloud-a1.googledomains.com.",
"ns-cloud-a2.googledomains.com.",
"ns-cloud-a3.googledomains.com.",
"ns-cloud-a4.googledomains.com.")
.build())
.build())
.contactSettings(RegistrationContactSettingsArgs.builder()
.privacy("REDACTED_CONTACT_DATA")
.registrantContact(RegistrationContactSettingsRegistrantContactArgs.builder()
.phoneNumber("+12345000000")
.email("user@example.com")
.postalAddress(RegistrationContactSettingsRegistrantContactPostalAddressArgs.builder()
.regionCode("US")
.postalCode("95050")
.administrativeArea("CA")
.locality("Example City")
.addressLines("1234 Example street")
.recipients("example recipient")
.build())
.build())
.adminContact(RegistrationContactSettingsAdminContactArgs.builder()
.phoneNumber("+12345000000")
.email("user@example.com")
.postalAddress(RegistrationContactSettingsAdminContactPostalAddressArgs.builder()
.regionCode("US")
.postalCode("95050")
.administrativeArea("CA")
.locality("Example City")
.addressLines("1234 Example street")
.recipients("example recipient")
.build())
.build())
.technicalContact(RegistrationContactSettingsTechnicalContactArgs.builder()
.phoneNumber("+12345000000")
.email("user@example.com")
.postalAddress(RegistrationContactSettingsTechnicalContactPostalAddressArgs.builder()
.regionCode("US")
.postalCode("95050")
.administrativeArea("CA")
.locality("Example City")
.addressLines("1234 Example street")
.recipients("example recipient")
.build())
.build())
.build())
.build());
}
}
resources:
myRegistration:
type: gcp:clouddomains:Registration
name: my_registration
properties:
domainName: example-domain.com
location: global
labels:
labelkey: labelvalue
yearlyPrice:
currencyCode: USD
units: 12
dnsSettings:
customDns:
nameServers:
- ns-cloud-a1.googledomains.com.
- ns-cloud-a2.googledomains.com.
- ns-cloud-a3.googledomains.com.
- ns-cloud-a4.googledomains.com.
contactSettings:
privacy: REDACTED_CONTACT_DATA
registrantContact:
phoneNumber: '+12345000000'
email: user@example.com
postalAddress:
regionCode: US
postalCode: '95050'
administrativeArea: CA
locality: Example City
addressLines:
- 1234 Example street
recipients:
- example recipient
adminContact:
phoneNumber: '+12345000000'
email: user@example.com
postalAddress:
regionCode: US
postalCode: '95050'
administrativeArea: CA
locality: Example City
addressLines:
- 1234 Example street
recipients:
- example recipient
technicalContact:
phoneNumber: '+12345000000'
email: user@example.com
postalAddress:
regionCode: US
postalCode: '95050'
administrativeArea: CA
locality: Example City
addressLines:
- 1234 Example street
recipients:
- example recipient

Import

Registration can be imported using any of these accepted formats:

  • projects/{{project}}/locations/{{location}}/registrations/{{domain_name}}

  • {{project}}/{{location}}/{{domain_name}}

  • {{location}}/{{domain_name}} When using the pulumi import command, Registration can be imported using one of the formats above. For example:

$ pulumi import gcp:clouddomains/registration:Registration default projects/{{project}}/locations/{{location}}/registrations/{{domain_name}}
$ pulumi import gcp:clouddomains/registration:Registration default {{project}}/{{location}}/{{domain_name}}
$ pulumi import gcp:clouddomains/registration:Registration default {{location}}/{{domain_name}}

Properties

Link copied to clipboard
val contactNotices: Output<List<String>>?

The list of contact notices that the caller acknowledges. Possible value is PUBLIC_CONTACT_DATA_ACKNOWLEDGEMENT

Link copied to clipboard

Required. Settings for contact information linked to the Registration. Structure is documented below.

Link copied to clipboard
val createTime: Output<String>

Output only. Time at which the automation was created.

Link copied to clipboard

Settings controlling the DNS configuration of the Registration.

Link copied to clipboard
val domainName: Output<String>

Required. The domain name. Unicode domain names must be expressed in Punycode format.

Link copied to clipboard
val domainNotices: Output<List<String>>?

The list of domain notices that you acknowledge. Possible value is HSTS_PRELOADED

Link copied to clipboard

All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.

Link copied to clipboard
val expireTime: Output<String>

Output only. Time at which the automation was updated.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard
val issues: Output<List<String>>

Output only. The set of issues with the Registration that require attention.

Link copied to clipboard
val labels: Output<Map<String, String>>?

Set of labels associated with the Registration. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.

Link copied to clipboard
val location: Output<String>

The location for the resource

Link copied to clipboard

Settings for management of the Registration, including renewal, billing, and transfer

Link copied to clipboard
val name: Output<String>

Output only. Name of the Registration resource, in the format projects//locations//registrations/. //

Link copied to clipboard
val project: Output<String>
Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
val pulumiLabels: Output<Map<String, String>>

The combination of labels configured directly on the resource and default labels configured on the provider.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Output only. The reason the domain registration failed. Only set for domains in REGISTRATION_FAILED state.

Link copied to clipboard
val state: Output<String>

Output only. The current state of the Registration.

Link copied to clipboard

Output only. Set of options for the contactSettings.privacy field that this Registration supports.

Link copied to clipboard
val urn: Output<String>
Link copied to clipboard

Required. Yearly price to register or renew the domain. The value that should be put here can be obtained from registrations.retrieveRegisterParameters or registrations.searchDomains calls. Structure is documented below.