1. Packages
  2. Vercel
  3. API Docs
  4. DnsRecord
Vercel v1.11.0 published on Thursday, May 23, 2024 by Pulumiverse

vercel.DnsRecord

Explore with Pulumi AI

vercel logo
Vercel v1.11.0 published on Thursday, May 23, 2024 by Pulumiverse

    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",
    });
    
    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=vercel.DnsRecordSrvArgs(
            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")
    
    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
    	})
    }
    
    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",
        });
    
    });
    
    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());
    
        }
    }
    
    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
    

    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 string
    The unique name of the resource.
    args DnsRecordArgs
    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 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 string
    The unique name of the resource.
    args DnsRecordArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args DnsRecordArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args DnsRecordArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    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",
    });
    
    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"),
    })
    
    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());
    
    dns_record_resource = vercel.DnsRecord("dnsRecordResource",
        domain="string",
        type="string",
        comment="string",
        mx_priority=0,
        name="string",
        srv=vercel.DnsRecordSrvArgs(
            port=0,
            priority=0,
            target="string",
            weight=0,
        ),
        team_id="string",
        ttl=0,
        value="string")
    
    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",
    });
    
    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
    

    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

    The DnsRecord resource accepts the following input properties:

    Domain string
    The domain name, or zone, that the DNS record should be created beneath.
    Type 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 string
    The domain name, or zone, that the DNS record should be created beneath.
    Type 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 String
    The domain name, or zone, that the DNS record should be created beneath.
    type 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 string
    The domain name, or zone, that the DNS record should be created beneath.
    type 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 str
    The domain name, or zone, that the DNS record should be created beneath.
    type 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 String
    The domain name, or zone, that the DNS record should be created beneath.
    type 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)
    Resource lookup is not supported in YAML
    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:
    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 int
    The TCP or UDP port on which the service is to be found.
    Priority int
    The priority of the target host, lower value means more preferred.
    Target string
    The canonical hostname of the machine providing the service, ending in a dot.
    Weight int
    A relative weight for records with the same priority, higher value means higher chance of getting picked.
    Port int
    The TCP or UDP port on which the service is to be found.
    Priority int
    The priority of the target host, lower value means more preferred.
    Target string
    The canonical hostname of the machine providing the service, ending in a dot.
    Weight int
    A relative weight for records with the same priority, higher value means higher chance of getting picked.
    port Integer
    The TCP or UDP port on which the service is to be found.
    priority Integer
    The priority of the target host, lower value means more preferred.
    target String
    The canonical hostname of the machine providing the service, ending in a dot.
    weight Integer
    A relative weight for records with the same priority, higher value means higher chance of getting picked.
    port number
    The TCP or UDP port on which the service is to be found.
    priority number
    The priority of the target host, lower value means more preferred.
    target string
    The canonical hostname of the machine providing the service, ending in a dot.
    weight number
    A relative weight for records with the same priority, higher value means higher chance of getting picked.
    port int
    The TCP or UDP port on which the service is to be found.
    priority int
    The priority of the target host, lower value means more preferred.
    target str
    The canonical hostname of the machine providing the service, ending in a dot.
    weight int
    A relative weight for records with the same priority, higher value means higher chance of getting picked.
    port Number
    The TCP or UDP port on which the service is to be found.
    priority Number
    The priority of the target host, lower value means more preferred.
    target String
    The canonical hostname of the machine providing the service, ending in a dot.
    weight 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
    

    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
    

    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.
    vercel logo
    Vercel v1.11.0 published on Thursday, May 23, 2024 by Pulumiverse