1. Packages
  2. Vercel
  3. API Docs
  4. DnsRecord
Vercel v1.14.3 published on Monday, Oct 7, 2024 by Pulumiverse

vercel.DnsRecord

Explore with Pulumi AI

Provides a DNS Record resource.

DNS records are instructions that live in authoritative DNS servers and provide information about a domain.

The value field must be specified on all DNS record types except SRV. When using SRV DNS records, the srv field must be specified.

For more detailed information, please see the Vercel documentation

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as vercel from "@pulumiverse/vercel";

const dnsRecord = new vercel.DnsRecord("dnsRecord", {
    domain: "example.com",
    ttl: 60,
    type: "A",
    value: "192.168.0.1",
});
const aaaa = new vercel.DnsRecord("aaaa", {
    domain: "example.com",
    ttl: 60,
    type: "AAAA",
    value: "::0",
});
const alias = new vercel.DnsRecord("alias", {
    domain: "example.com",
    ttl: 60,
    type: "ALIAS",
    value: "example2.com.",
});
const caa = new vercel.DnsRecord("caa", {
    domain: "example.com",
    ttl: 60,
    type: "CAA",
    value: "1 issue \"letsencrypt.org\"",
});
const cname = new vercel.DnsRecord("cname", {
    domain: "example.com",
    ttl: 60,
    type: "CNAME",
    value: "example2.com.",
});
const mx = new vercel.DnsRecord("mx", {
    domain: "example.com",
    mxPriority: 333,
    ttl: 60,
    type: "MX",
    value: "example2.com.",
});
const srv = new vercel.DnsRecord("srv", {
    domain: "example.com",
    srv: {
        port: 6000,
        priority: 127,
        target: "example2.com.",
        weight: 60,
    },
    ttl: 60,
    type: "SRV",
});
const txt = new vercel.DnsRecord("txt", {
    domain: "example.com",
    ttl: 60,
    type: "TXT",
    value: "some text value",
});
Copy
import pulumi
import pulumiverse_vercel as vercel

dns_record = vercel.DnsRecord("dnsRecord",
    domain="example.com",
    ttl=60,
    type="A",
    value="192.168.0.1")
aaaa = vercel.DnsRecord("aaaa",
    domain="example.com",
    ttl=60,
    type="AAAA",
    value="::0")
alias = vercel.DnsRecord("alias",
    domain="example.com",
    ttl=60,
    type="ALIAS",
    value="example2.com.")
caa = vercel.DnsRecord("caa",
    domain="example.com",
    ttl=60,
    type="CAA",
    value="1 issue \"letsencrypt.org\"")
cname = vercel.DnsRecord("cname",
    domain="example.com",
    ttl=60,
    type="CNAME",
    value="example2.com.")
mx = vercel.DnsRecord("mx",
    domain="example.com",
    mx_priority=333,
    ttl=60,
    type="MX",
    value="example2.com.")
srv = vercel.DnsRecord("srv",
    domain="example.com",
    srv={
        "port": 6000,
        "priority": 127,
        "target": "example2.com.",
        "weight": 60,
    },
    ttl=60,
    type="SRV")
txt = vercel.DnsRecord("txt",
    domain="example.com",
    ttl=60,
    type="TXT",
    value="some text value")
Copy
package main

import (
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	"github.com/pulumiverse/pulumi-vercel/sdk/go/vercel"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := vercel.NewDnsRecord(ctx, "dnsRecord", &vercel.DnsRecordArgs{
			Domain: pulumi.String("example.com"),
			Ttl:    pulumi.Int(60),
			Type:   pulumi.String("A"),
			Value:  pulumi.String("192.168.0.1"),
		})
		if err != nil {
			return err
		}
		_, err = vercel.NewDnsRecord(ctx, "aaaa", &vercel.DnsRecordArgs{
			Domain: pulumi.String("example.com"),
			Ttl:    pulumi.Int(60),
			Type:   pulumi.String("AAAA"),
			Value:  pulumi.String("::0"),
		})
		if err != nil {
			return err
		}
		_, err = vercel.NewDnsRecord(ctx, "alias", &vercel.DnsRecordArgs{
			Domain: pulumi.String("example.com"),
			Ttl:    pulumi.Int(60),
			Type:   pulumi.String("ALIAS"),
			Value:  pulumi.String("example2.com."),
		})
		if err != nil {
			return err
		}
		_, err = vercel.NewDnsRecord(ctx, "caa", &vercel.DnsRecordArgs{
			Domain: pulumi.String("example.com"),
			Ttl:    pulumi.Int(60),
			Type:   pulumi.String("CAA"),
			Value:  pulumi.String("1 issue \"letsencrypt.org\""),
		})
		if err != nil {
			return err
		}
		_, err = vercel.NewDnsRecord(ctx, "cname", &vercel.DnsRecordArgs{
			Domain: pulumi.String("example.com"),
			Ttl:    pulumi.Int(60),
			Type:   pulumi.String("CNAME"),
			Value:  pulumi.String("example2.com."),
		})
		if err != nil {
			return err
		}
		_, err = vercel.NewDnsRecord(ctx, "mx", &vercel.DnsRecordArgs{
			Domain:     pulumi.String("example.com"),
			MxPriority: pulumi.Int(333),
			Ttl:        pulumi.Int(60),
			Type:       pulumi.String("MX"),
			Value:      pulumi.String("example2.com."),
		})
		if err != nil {
			return err
		}
		_, err = vercel.NewDnsRecord(ctx, "srv", &vercel.DnsRecordArgs{
			Domain: pulumi.String("example.com"),
			Srv: &vercel.DnsRecordSrvArgs{
				Port:     pulumi.Int(6000),
				Priority: pulumi.Int(127),
				Target:   pulumi.String("example2.com."),
				Weight:   pulumi.Int(60),
			},
			Ttl:  pulumi.Int(60),
			Type: pulumi.String("SRV"),
		})
		if err != nil {
			return err
		}
		_, err = vercel.NewDnsRecord(ctx, "txt", &vercel.DnsRecordArgs{
			Domain: pulumi.String("example.com"),
			Ttl:    pulumi.Int(60),
			Type:   pulumi.String("TXT"),
			Value:  pulumi.String("some text value"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Vercel = Pulumiverse.Vercel;

return await Deployment.RunAsync(() => 
{
    var dnsRecord = new Vercel.DnsRecord("dnsRecord", new()
    {
        Domain = "example.com",
        Ttl = 60,
        Type = "A",
        Value = "192.168.0.1",
    });

    var aaaa = new Vercel.DnsRecord("aaaa", new()
    {
        Domain = "example.com",
        Ttl = 60,
        Type = "AAAA",
        Value = "::0",
    });

    var @alias = new Vercel.DnsRecord("alias", new()
    {
        Domain = "example.com",
        Ttl = 60,
        Type = "ALIAS",
        Value = "example2.com.",
    });

    var caa = new Vercel.DnsRecord("caa", new()
    {
        Domain = "example.com",
        Ttl = 60,
        Type = "CAA",
        Value = "1 issue \"letsencrypt.org\"",
    });

    var cname = new Vercel.DnsRecord("cname", new()
    {
        Domain = "example.com",
        Ttl = 60,
        Type = "CNAME",
        Value = "example2.com.",
    });

    var mx = new Vercel.DnsRecord("mx", new()
    {
        Domain = "example.com",
        MxPriority = 333,
        Ttl = 60,
        Type = "MX",
        Value = "example2.com.",
    });

    var srv = new Vercel.DnsRecord("srv", new()
    {
        Domain = "example.com",
        Srv = new Vercel.Inputs.DnsRecordSrvArgs
        {
            Port = 6000,
            Priority = 127,
            Target = "example2.com.",
            Weight = 60,
        },
        Ttl = 60,
        Type = "SRV",
    });

    var txt = new Vercel.DnsRecord("txt", new()
    {
        Domain = "example.com",
        Ttl = 60,
        Type = "TXT",
        Value = "some text value",
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.vercel.DnsRecord;
import com.pulumi.vercel.DnsRecordArgs;
import com.pulumi.vercel.inputs.DnsRecordSrvArgs;
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 dnsRecord = new DnsRecord("dnsRecord", DnsRecordArgs.builder()
            .domain("example.com")
            .ttl(60)
            .type("A")
            .value("192.168.0.1")
            .build());

        var aaaa = new DnsRecord("aaaa", DnsRecordArgs.builder()
            .domain("example.com")
            .ttl(60)
            .type("AAAA")
            .value("::0")
            .build());

        var alias = new DnsRecord("alias", DnsRecordArgs.builder()
            .domain("example.com")
            .ttl(60)
            .type("ALIAS")
            .value("example2.com.")
            .build());

        var caa = new DnsRecord("caa", DnsRecordArgs.builder()
            .domain("example.com")
            .ttl(60)
            .type("CAA")
            .value("1 issue \"letsencrypt.org\"")
            .build());

        var cname = new DnsRecord("cname", DnsRecordArgs.builder()
            .domain("example.com")
            .ttl(60)
            .type("CNAME")
            .value("example2.com.")
            .build());

        var mx = new DnsRecord("mx", DnsRecordArgs.builder()
            .domain("example.com")
            .mxPriority(333)
            .ttl(60)
            .type("MX")
            .value("example2.com.")
            .build());

        var srv = new DnsRecord("srv", DnsRecordArgs.builder()
            .domain("example.com")
            .srv(DnsRecordSrvArgs.builder()
                .port(6000)
                .priority(127)
                .target("example2.com.")
                .weight(60)
                .build())
            .ttl(60)
            .type("SRV")
            .build());

        var txt = new DnsRecord("txt", DnsRecordArgs.builder()
            .domain("example.com")
            .ttl(60)
            .type("TXT")
            .value("some text value")
            .build());

    }
}
Copy
resources:
  dnsRecord:
    type: vercel:DnsRecord
    properties:
      domain: example.com
      # for subdomain.example.com
      ttl: 60
      type: A
      value: 192.168.0.1
  aaaa:
    type: vercel:DnsRecord
    properties:
      domain: example.com
      ttl: 60
      type: AAAA
      value: ::0
  alias:
    type: vercel:DnsRecord
    properties:
      domain: example.com
      ttl: 60
      type: ALIAS
      value: example2.com.
  caa:
    type: vercel:DnsRecord
    properties:
      domain: example.com
      ttl: 60
      type: CAA
      value: 1 issue "letsencrypt.org"
  cname:
    type: vercel:DnsRecord
    properties:
      domain: example.com
      ttl: 60
      type: CNAME
      value: example2.com.
  mx:
    type: vercel:DnsRecord
    properties:
      domain: example.com
      mxPriority: 333
      ttl: 60
      type: MX
      value: example2.com.
  srv:
    type: vercel:DnsRecord
    properties:
      domain: example.com
      srv:
        port: 6000
        priority: 127
        target: example2.com.
        weight: 60
      ttl: 60
      type: SRV
  txt:
    type: vercel:DnsRecord
    properties:
      domain: example.com
      ttl: 60
      type: TXT
      value: some text value
Copy

Create DnsRecord Resource

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

Constructor syntax

new DnsRecord(name: string, args: DnsRecordArgs, opts?: CustomResourceOptions);
@overload
def DnsRecord(resource_name: str,
              args: DnsRecordArgs,
              opts: Optional[ResourceOptions] = None)

@overload
def DnsRecord(resource_name: str,
              opts: Optional[ResourceOptions] = None,
              domain: Optional[str] = None,
              type: Optional[str] = None,
              comment: Optional[str] = None,
              mx_priority: Optional[int] = None,
              name: Optional[str] = None,
              srv: Optional[DnsRecordSrvArgs] = None,
              team_id: Optional[str] = None,
              ttl: Optional[int] = None,
              value: Optional[str] = None)
func NewDnsRecord(ctx *Context, name string, args DnsRecordArgs, opts ...ResourceOption) (*DnsRecord, error)
public DnsRecord(string name, DnsRecordArgs args, CustomResourceOptions? opts = null)
public DnsRecord(String name, DnsRecordArgs args)
public DnsRecord(String name, DnsRecordArgs args, CustomResourceOptions options)
type: vercel:DnsRecord
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. DnsRecordArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. DnsRecordArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. DnsRecordArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. DnsRecordArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. DnsRecordArgs
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 dnsRecordResource = new Vercel.DnsRecord("dnsRecordResource", new()
{
    Domain = "string",
    Type = "string",
    Comment = "string",
    MxPriority = 0,
    Name = "string",
    Srv = new Vercel.Inputs.DnsRecordSrvArgs
    {
        Port = 0,
        Priority = 0,
        Target = "string",
        Weight = 0,
    },
    TeamId = "string",
    Ttl = 0,
    Value = "string",
});
Copy
example, err := vercel.NewDnsRecord(ctx, "dnsRecordResource", &vercel.DnsRecordArgs{
	Domain:     pulumi.String("string"),
	Type:       pulumi.String("string"),
	Comment:    pulumi.String("string"),
	MxPriority: pulumi.Int(0),
	Name:       pulumi.String("string"),
	Srv: &vercel.DnsRecordSrvArgs{
		Port:     pulumi.Int(0),
		Priority: pulumi.Int(0),
		Target:   pulumi.String("string"),
		Weight:   pulumi.Int(0),
	},
	TeamId: pulumi.String("string"),
	Ttl:    pulumi.Int(0),
	Value:  pulumi.String("string"),
})
Copy
var dnsRecordResource = new DnsRecord("dnsRecordResource", DnsRecordArgs.builder()
    .domain("string")
    .type("string")
    .comment("string")
    .mxPriority(0)
    .name("string")
    .srv(DnsRecordSrvArgs.builder()
        .port(0)
        .priority(0)
        .target("string")
        .weight(0)
        .build())
    .teamId("string")
    .ttl(0)
    .value("string")
    .build());
Copy
dns_record_resource = vercel.DnsRecord("dnsRecordResource",
    domain="string",
    type="string",
    comment="string",
    mx_priority=0,
    name="string",
    srv={
        "port": 0,
        "priority": 0,
        "target": "string",
        "weight": 0,
    },
    team_id="string",
    ttl=0,
    value="string")
Copy
const dnsRecordResource = new vercel.DnsRecord("dnsRecordResource", {
    domain: "string",
    type: "string",
    comment: "string",
    mxPriority: 0,
    name: "string",
    srv: {
        port: 0,
        priority: 0,
        target: "string",
        weight: 0,
    },
    teamId: "string",
    ttl: 0,
    value: "string",
});
Copy
type: vercel:DnsRecord
properties:
    comment: string
    domain: string
    mxPriority: 0
    name: string
    srv:
        port: 0
        priority: 0
        target: string
        weight: 0
    teamId: string
    ttl: 0
    type: string
    value: string
Copy

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

Domain This property is required. string
The domain name, or zone, that the DNS record should be created beneath.
Type This property is required. string
The type of DNS record. Available types: A, AAAA, ALIAS, CAA, CNAME, MX, NS, SRV, TXT.
Comment string
A comment explaining what the DNS record is for.
MxPriority int
The priority of the MX record. The priority specifies the sequence that an email server receives emails. A smaller value indicates a higher priority.
Name string
The subdomain name of the record. This should be an empty string if the rercord is for the root domain.
Srv Pulumiverse.Vercel.Inputs.DnsRecordSrv
Settings for an SRV record.
TeamId string
The team ID that the domain and DNS records belong to. Required when configuring a team resource if a default team has not been set in the provider.
Ttl int
The TTL value in seconds. Must be a number between 60 and 2147483647. If unspecified, it will default to 60 seconds.
Value string
The value of the DNS record. The format depends on the 'type' property. For an 'A' record, this should be a valid IPv4 address. For an 'AAAA' record, this should be an IPv6 address. For 'ALIAS' records, this should be a hostname. For 'CAA' records, this should specify specify which Certificate Authorities (CAs) are allowed to issue certificates for the domain. For 'CNAME' records, this should be a different domain name. For 'MX' records, this should specify the mail server responsible for accepting messages on behalf of the domain name. For 'TXT' records, this can contain arbitrary text.
Domain This property is required. string
The domain name, or zone, that the DNS record should be created beneath.
Type This property is required. string
The type of DNS record. Available types: A, AAAA, ALIAS, CAA, CNAME, MX, NS, SRV, TXT.
Comment string
A comment explaining what the DNS record is for.
MxPriority int
The priority of the MX record. The priority specifies the sequence that an email server receives emails. A smaller value indicates a higher priority.
Name string
The subdomain name of the record. This should be an empty string if the rercord is for the root domain.
Srv DnsRecordSrvArgs
Settings for an SRV record.
TeamId string
The team ID that the domain and DNS records belong to. Required when configuring a team resource if a default team has not been set in the provider.
Ttl int
The TTL value in seconds. Must be a number between 60 and 2147483647. If unspecified, it will default to 60 seconds.
Value string
The value of the DNS record. The format depends on the 'type' property. For an 'A' record, this should be a valid IPv4 address. For an 'AAAA' record, this should be an IPv6 address. For 'ALIAS' records, this should be a hostname. For 'CAA' records, this should specify specify which Certificate Authorities (CAs) are allowed to issue certificates for the domain. For 'CNAME' records, this should be a different domain name. For 'MX' records, this should specify the mail server responsible for accepting messages on behalf of the domain name. For 'TXT' records, this can contain arbitrary text.
domain This property is required. String
The domain name, or zone, that the DNS record should be created beneath.
type This property is required. String
The type of DNS record. Available types: A, AAAA, ALIAS, CAA, CNAME, MX, NS, SRV, TXT.
comment String
A comment explaining what the DNS record is for.
mxPriority Integer
The priority of the MX record. The priority specifies the sequence that an email server receives emails. A smaller value indicates a higher priority.
name String
The subdomain name of the record. This should be an empty string if the rercord is for the root domain.
srv DnsRecordSrv
Settings for an SRV record.
teamId String
The team ID that the domain and DNS records belong to. Required when configuring a team resource if a default team has not been set in the provider.
ttl Integer
The TTL value in seconds. Must be a number between 60 and 2147483647. If unspecified, it will default to 60 seconds.
value String
The value of the DNS record. The format depends on the 'type' property. For an 'A' record, this should be a valid IPv4 address. For an 'AAAA' record, this should be an IPv6 address. For 'ALIAS' records, this should be a hostname. For 'CAA' records, this should specify specify which Certificate Authorities (CAs) are allowed to issue certificates for the domain. For 'CNAME' records, this should be a different domain name. For 'MX' records, this should specify the mail server responsible for accepting messages on behalf of the domain name. For 'TXT' records, this can contain arbitrary text.
domain This property is required. string
The domain name, or zone, that the DNS record should be created beneath.
type This property is required. string
The type of DNS record. Available types: A, AAAA, ALIAS, CAA, CNAME, MX, NS, SRV, TXT.
comment string
A comment explaining what the DNS record is for.
mxPriority number
The priority of the MX record. The priority specifies the sequence that an email server receives emails. A smaller value indicates a higher priority.
name string
The subdomain name of the record. This should be an empty string if the rercord is for the root domain.
srv DnsRecordSrv
Settings for an SRV record.
teamId string
The team ID that the domain and DNS records belong to. Required when configuring a team resource if a default team has not been set in the provider.
ttl number
The TTL value in seconds. Must be a number between 60 and 2147483647. If unspecified, it will default to 60 seconds.
value string
The value of the DNS record. The format depends on the 'type' property. For an 'A' record, this should be a valid IPv4 address. For an 'AAAA' record, this should be an IPv6 address. For 'ALIAS' records, this should be a hostname. For 'CAA' records, this should specify specify which Certificate Authorities (CAs) are allowed to issue certificates for the domain. For 'CNAME' records, this should be a different domain name. For 'MX' records, this should specify the mail server responsible for accepting messages on behalf of the domain name. For 'TXT' records, this can contain arbitrary text.
domain This property is required. str
The domain name, or zone, that the DNS record should be created beneath.
type This property is required. str
The type of DNS record. Available types: A, AAAA, ALIAS, CAA, CNAME, MX, NS, SRV, TXT.
comment str
A comment explaining what the DNS record is for.
mx_priority int
The priority of the MX record. The priority specifies the sequence that an email server receives emails. A smaller value indicates a higher priority.
name str
The subdomain name of the record. This should be an empty string if the rercord is for the root domain.
srv DnsRecordSrvArgs
Settings for an SRV record.
team_id str
The team ID that the domain and DNS records belong to. Required when configuring a team resource if a default team has not been set in the provider.
ttl int
The TTL value in seconds. Must be a number between 60 and 2147483647. If unspecified, it will default to 60 seconds.
value str
The value of the DNS record. The format depends on the 'type' property. For an 'A' record, this should be a valid IPv4 address. For an 'AAAA' record, this should be an IPv6 address. For 'ALIAS' records, this should be a hostname. For 'CAA' records, this should specify specify which Certificate Authorities (CAs) are allowed to issue certificates for the domain. For 'CNAME' records, this should be a different domain name. For 'MX' records, this should specify the mail server responsible for accepting messages on behalf of the domain name. For 'TXT' records, this can contain arbitrary text.
domain This property is required. String
The domain name, or zone, that the DNS record should be created beneath.
type This property is required. String
The type of DNS record. Available types: A, AAAA, ALIAS, CAA, CNAME, MX, NS, SRV, TXT.
comment String
A comment explaining what the DNS record is for.
mxPriority Number
The priority of the MX record. The priority specifies the sequence that an email server receives emails. A smaller value indicates a higher priority.
name String
The subdomain name of the record. This should be an empty string if the rercord is for the root domain.
srv Property Map
Settings for an SRV record.
teamId String
The team ID that the domain and DNS records belong to. Required when configuring a team resource if a default team has not been set in the provider.
ttl Number
The TTL value in seconds. Must be a number between 60 and 2147483647. If unspecified, it will default to 60 seconds.
value String
The value of the DNS record. The format depends on the 'type' property. For an 'A' record, this should be a valid IPv4 address. For an 'AAAA' record, this should be an IPv6 address. For 'ALIAS' records, this should be a hostname. For 'CAA' records, this should specify specify which Certificate Authorities (CAs) are allowed to issue certificates for the domain. For 'CNAME' records, this should be a different domain name. For 'MX' records, this should specify the mail server responsible for accepting messages on behalf of the domain name. For 'TXT' records, this can contain arbitrary text.

Outputs

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

Id string
The provider-assigned unique ID for this managed resource.
Id string
The provider-assigned unique ID for this managed resource.
id String
The provider-assigned unique ID for this managed resource.
id string
The provider-assigned unique ID for this managed resource.
id str
The provider-assigned unique ID for this managed resource.
id String
The provider-assigned unique ID for this managed resource.

Look up Existing DnsRecord Resource

Get an existing DnsRecord 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?: DnsRecordState, opts?: CustomResourceOptions): DnsRecord
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        comment: Optional[str] = None,
        domain: Optional[str] = None,
        mx_priority: Optional[int] = None,
        name: Optional[str] = None,
        srv: Optional[DnsRecordSrvArgs] = None,
        team_id: Optional[str] = None,
        ttl: Optional[int] = None,
        type: Optional[str] = None,
        value: Optional[str] = None) -> DnsRecord
func GetDnsRecord(ctx *Context, name string, id IDInput, state *DnsRecordState, opts ...ResourceOption) (*DnsRecord, error)
public static DnsRecord Get(string name, Input<string> id, DnsRecordState? state, CustomResourceOptions? opts = null)
public static DnsRecord get(String name, Output<String> id, DnsRecordState state, CustomResourceOptions options)
resources:  _:    type: vercel:DnsRecord    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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:
Comment string
A comment explaining what the DNS record is for.
Domain string
The domain name, or zone, that the DNS record should be created beneath.
MxPriority int
The priority of the MX record. The priority specifies the sequence that an email server receives emails. A smaller value indicates a higher priority.
Name string
The subdomain name of the record. This should be an empty string if the rercord is for the root domain.
Srv Pulumiverse.Vercel.Inputs.DnsRecordSrv
Settings for an SRV record.
TeamId string
The team ID that the domain and DNS records belong to. Required when configuring a team resource if a default team has not been set in the provider.
Ttl int
The TTL value in seconds. Must be a number between 60 and 2147483647. If unspecified, it will default to 60 seconds.
Type string
The type of DNS record. Available types: A, AAAA, ALIAS, CAA, CNAME, MX, NS, SRV, TXT.
Value string
The value of the DNS record. The format depends on the 'type' property. For an 'A' record, this should be a valid IPv4 address. For an 'AAAA' record, this should be an IPv6 address. For 'ALIAS' records, this should be a hostname. For 'CAA' records, this should specify specify which Certificate Authorities (CAs) are allowed to issue certificates for the domain. For 'CNAME' records, this should be a different domain name. For 'MX' records, this should specify the mail server responsible for accepting messages on behalf of the domain name. For 'TXT' records, this can contain arbitrary text.
Comment string
A comment explaining what the DNS record is for.
Domain string
The domain name, or zone, that the DNS record should be created beneath.
MxPriority int
The priority of the MX record. The priority specifies the sequence that an email server receives emails. A smaller value indicates a higher priority.
Name string
The subdomain name of the record. This should be an empty string if the rercord is for the root domain.
Srv DnsRecordSrvArgs
Settings for an SRV record.
TeamId string
The team ID that the domain and DNS records belong to. Required when configuring a team resource if a default team has not been set in the provider.
Ttl int
The TTL value in seconds. Must be a number between 60 and 2147483647. If unspecified, it will default to 60 seconds.
Type string
The type of DNS record. Available types: A, AAAA, ALIAS, CAA, CNAME, MX, NS, SRV, TXT.
Value string
The value of the DNS record. The format depends on the 'type' property. For an 'A' record, this should be a valid IPv4 address. For an 'AAAA' record, this should be an IPv6 address. For 'ALIAS' records, this should be a hostname. For 'CAA' records, this should specify specify which Certificate Authorities (CAs) are allowed to issue certificates for the domain. For 'CNAME' records, this should be a different domain name. For 'MX' records, this should specify the mail server responsible for accepting messages on behalf of the domain name. For 'TXT' records, this can contain arbitrary text.
comment String
A comment explaining what the DNS record is for.
domain String
The domain name, or zone, that the DNS record should be created beneath.
mxPriority Integer
The priority of the MX record. The priority specifies the sequence that an email server receives emails. A smaller value indicates a higher priority.
name String
The subdomain name of the record. This should be an empty string if the rercord is for the root domain.
srv DnsRecordSrv
Settings for an SRV record.
teamId String
The team ID that the domain and DNS records belong to. Required when configuring a team resource if a default team has not been set in the provider.
ttl Integer
The TTL value in seconds. Must be a number between 60 and 2147483647. If unspecified, it will default to 60 seconds.
type String
The type of DNS record. Available types: A, AAAA, ALIAS, CAA, CNAME, MX, NS, SRV, TXT.
value String
The value of the DNS record. The format depends on the 'type' property. For an 'A' record, this should be a valid IPv4 address. For an 'AAAA' record, this should be an IPv6 address. For 'ALIAS' records, this should be a hostname. For 'CAA' records, this should specify specify which Certificate Authorities (CAs) are allowed to issue certificates for the domain. For 'CNAME' records, this should be a different domain name. For 'MX' records, this should specify the mail server responsible for accepting messages on behalf of the domain name. For 'TXT' records, this can contain arbitrary text.
comment string
A comment explaining what the DNS record is for.
domain string
The domain name, or zone, that the DNS record should be created beneath.
mxPriority number
The priority of the MX record. The priority specifies the sequence that an email server receives emails. A smaller value indicates a higher priority.
name string
The subdomain name of the record. This should be an empty string if the rercord is for the root domain.
srv DnsRecordSrv
Settings for an SRV record.
teamId string
The team ID that the domain and DNS records belong to. Required when configuring a team resource if a default team has not been set in the provider.
ttl number
The TTL value in seconds. Must be a number between 60 and 2147483647. If unspecified, it will default to 60 seconds.
type string
The type of DNS record. Available types: A, AAAA, ALIAS, CAA, CNAME, MX, NS, SRV, TXT.
value string
The value of the DNS record. The format depends on the 'type' property. For an 'A' record, this should be a valid IPv4 address. For an 'AAAA' record, this should be an IPv6 address. For 'ALIAS' records, this should be a hostname. For 'CAA' records, this should specify specify which Certificate Authorities (CAs) are allowed to issue certificates for the domain. For 'CNAME' records, this should be a different domain name. For 'MX' records, this should specify the mail server responsible for accepting messages on behalf of the domain name. For 'TXT' records, this can contain arbitrary text.
comment str
A comment explaining what the DNS record is for.
domain str
The domain name, or zone, that the DNS record should be created beneath.
mx_priority int
The priority of the MX record. The priority specifies the sequence that an email server receives emails. A smaller value indicates a higher priority.
name str
The subdomain name of the record. This should be an empty string if the rercord is for the root domain.
srv DnsRecordSrvArgs
Settings for an SRV record.
team_id str
The team ID that the domain and DNS records belong to. Required when configuring a team resource if a default team has not been set in the provider.
ttl int
The TTL value in seconds. Must be a number between 60 and 2147483647. If unspecified, it will default to 60 seconds.
type str
The type of DNS record. Available types: A, AAAA, ALIAS, CAA, CNAME, MX, NS, SRV, TXT.
value str
The value of the DNS record. The format depends on the 'type' property. For an 'A' record, this should be a valid IPv4 address. For an 'AAAA' record, this should be an IPv6 address. For 'ALIAS' records, this should be a hostname. For 'CAA' records, this should specify specify which Certificate Authorities (CAs) are allowed to issue certificates for the domain. For 'CNAME' records, this should be a different domain name. For 'MX' records, this should specify the mail server responsible for accepting messages on behalf of the domain name. For 'TXT' records, this can contain arbitrary text.
comment String
A comment explaining what the DNS record is for.
domain String
The domain name, or zone, that the DNS record should be created beneath.
mxPriority Number
The priority of the MX record. The priority specifies the sequence that an email server receives emails. A smaller value indicates a higher priority.
name String
The subdomain name of the record. This should be an empty string if the rercord is for the root domain.
srv Property Map
Settings for an SRV record.
teamId String
The team ID that the domain and DNS records belong to. Required when configuring a team resource if a default team has not been set in the provider.
ttl Number
The TTL value in seconds. Must be a number between 60 and 2147483647. If unspecified, it will default to 60 seconds.
type String
The type of DNS record. Available types: A, AAAA, ALIAS, CAA, CNAME, MX, NS, SRV, TXT.
value String
The value of the DNS record. The format depends on the 'type' property. For an 'A' record, this should be a valid IPv4 address. For an 'AAAA' record, this should be an IPv6 address. For 'ALIAS' records, this should be a hostname. For 'CAA' records, this should specify specify which Certificate Authorities (CAs) are allowed to issue certificates for the domain. For 'CNAME' records, this should be a different domain name. For 'MX' records, this should specify the mail server responsible for accepting messages on behalf of the domain name. For 'TXT' records, this can contain arbitrary text.

Supporting Types

DnsRecordSrv
, DnsRecordSrvArgs

Port This property is required. int
The TCP or UDP port on which the service is to be found.
Priority This property is required. int
The priority of the target host, lower value means more preferred.
Target This property is required. string
The canonical hostname of the machine providing the service, ending in a dot.
Weight This property is required. int
A relative weight for records with the same priority, higher value means higher chance of getting picked.
Port This property is required. int
The TCP or UDP port on which the service is to be found.
Priority This property is required. int
The priority of the target host, lower value means more preferred.
Target This property is required. string
The canonical hostname of the machine providing the service, ending in a dot.
Weight This property is required. int
A relative weight for records with the same priority, higher value means higher chance of getting picked.
port This property is required. Integer
The TCP or UDP port on which the service is to be found.
priority This property is required. Integer
The priority of the target host, lower value means more preferred.
target This property is required. String
The canonical hostname of the machine providing the service, ending in a dot.
weight This property is required. Integer
A relative weight for records with the same priority, higher value means higher chance of getting picked.
port This property is required. number
The TCP or UDP port on which the service is to be found.
priority This property is required. number
The priority of the target host, lower value means more preferred.
target This property is required. string
The canonical hostname of the machine providing the service, ending in a dot.
weight This property is required. number
A relative weight for records with the same priority, higher value means higher chance of getting picked.
port This property is required. int
The TCP or UDP port on which the service is to be found.
priority This property is required. int
The priority of the target host, lower value means more preferred.
target This property is required. str
The canonical hostname of the machine providing the service, ending in a dot.
weight This property is required. int
A relative weight for records with the same priority, higher value means higher chance of getting picked.
port This property is required. Number
The TCP or UDP port on which the service is to be found.
priority This property is required. Number
The priority of the target host, lower value means more preferred.
target This property is required. String
The canonical hostname of the machine providing the service, ending in a dot.
weight This property is required. Number
A relative weight for records with the same priority, higher value means higher chance of getting picked.

Import

If importing into a personal account, or with a team configured on

the provider, simply use the record id.

  • record_id can be taken from the network tab inside developer tools, while you are on the domains page,

or can be queried from the Vercel API directly (https://vercel.com/docs/rest-api/endpoints/dns#list-existing-dns-records).

$ pulumi import vercel:index/dnsRecord:DnsRecord example rec_xxxxxxxxxxxxxxxxxxxxxxxxxxxx
Copy

Alternatively, you can import via the team_id and record_id.

  • team_id can be found in the team settings tab in the Vercel UI.

  • record_id can be taken from the network tab inside developer tools, while you are on the domains page,

or can be queried from the Vercel API directly (https://vercel.com/docs/rest-api/endpoints/dns#list-existing-dns-records).

$ pulumi import vercel:index/dnsRecord:DnsRecord example team_xxxxxxxxxxxxxxxxxxxxxxxx/rec_xxxxxxxxxxxxxxxxxxxxxxxxxxxx
Copy

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

Package Details

Repository
vercel pulumiverse/pulumi-vercel
License
Apache-2.0
Notes
This Pulumi package is based on the vercel Terraform Provider.