1. Packages
  2. Scaleway
  3. API Docs
  4. getDomainRecord
Scaleway v1.12.0 published on Monday, Mar 11, 2024 by pulumiverse

scaleway.getDomainRecord

Explore with Pulumi AI

scaleway logo
Scaleway v1.12.0 published on Monday, Mar 11, 2024 by pulumiverse

    Gets information about a domain record.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as scaleway from "@pulumi/scaleway";
    
    const byContent = scaleway.getDomainRecord({
        data: "1.2.3.4",
        dnsZone: "domain.tld",
        name: "www",
        type: "A",
    });
    const byId = scaleway.getDomainRecord({
        dnsZone: "domain.tld",
        recordId: "11111111-1111-1111-1111-111111111111",
    });
    
    import pulumi
    import pulumi_scaleway as scaleway
    
    by_content = scaleway.get_domain_record(data="1.2.3.4",
        dns_zone="domain.tld",
        name="www",
        type="A")
    by_id = scaleway.get_domain_record(dns_zone="domain.tld",
        record_id="11111111-1111-1111-1111-111111111111")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := scaleway.LookupDomainRecord(ctx, &scaleway.LookupDomainRecordArgs{
    			Data:    pulumi.StringRef("1.2.3.4"),
    			DnsZone: pulumi.StringRef("domain.tld"),
    			Name:    pulumi.StringRef("www"),
    			Type:    pulumi.StringRef("A"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		_, err = scaleway.LookupDomainRecord(ctx, &scaleway.LookupDomainRecordArgs{
    			DnsZone:  pulumi.StringRef("domain.tld"),
    			RecordId: pulumi.StringRef("11111111-1111-1111-1111-111111111111"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Scaleway = Pulumi.Scaleway;
    
    return await Deployment.RunAsync(() => 
    {
        var byContent = Scaleway.GetDomainRecord.Invoke(new()
        {
            Data = "1.2.3.4",
            DnsZone = "domain.tld",
            Name = "www",
            Type = "A",
        });
    
        var byId = Scaleway.GetDomainRecord.Invoke(new()
        {
            DnsZone = "domain.tld",
            RecordId = "11111111-1111-1111-1111-111111111111",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.scaleway.ScalewayFunctions;
    import com.pulumi.scaleway.inputs.GetDomainRecordArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            final var byContent = ScalewayFunctions.getDomainRecord(GetDomainRecordArgs.builder()
                .data("1.2.3.4")
                .dnsZone("domain.tld")
                .name("www")
                .type("A")
                .build());
    
            final var byId = ScalewayFunctions.getDomainRecord(GetDomainRecordArgs.builder()
                .dnsZone("domain.tld")
                .recordId("11111111-1111-1111-1111-111111111111")
                .build());
    
        }
    }
    
    variables:
      byContent:
        fn::invoke:
          Function: scaleway:getDomainRecord
          Arguments:
            data: 1.2.3.4
            dnsZone: domain.tld
            name: www
            type: A
      byId:
        fn::invoke:
          Function: scaleway:getDomainRecord
          Arguments:
            dnsZone: domain.tld
            recordId: 11111111-1111-1111-1111-111111111111
    

    Using getDomainRecord

    Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

    function getDomainRecord(args: GetDomainRecordArgs, opts?: InvokeOptions): Promise<GetDomainRecordResult>
    function getDomainRecordOutput(args: GetDomainRecordOutputArgs, opts?: InvokeOptions): Output<GetDomainRecordResult>
    def get_domain_record(data: Optional[str] = None,
                          dns_zone: Optional[str] = None,
                          name: Optional[str] = None,
                          project_id: Optional[str] = None,
                          record_id: Optional[str] = None,
                          type: Optional[str] = None,
                          opts: Optional[InvokeOptions] = None) -> GetDomainRecordResult
    def get_domain_record_output(data: Optional[pulumi.Input[str]] = None,
                          dns_zone: Optional[pulumi.Input[str]] = None,
                          name: Optional[pulumi.Input[str]] = None,
                          project_id: Optional[pulumi.Input[str]] = None,
                          record_id: Optional[pulumi.Input[str]] = None,
                          type: Optional[pulumi.Input[str]] = None,
                          opts: Optional[InvokeOptions] = None) -> Output[GetDomainRecordResult]
    func LookupDomainRecord(ctx *Context, args *LookupDomainRecordArgs, opts ...InvokeOption) (*LookupDomainRecordResult, error)
    func LookupDomainRecordOutput(ctx *Context, args *LookupDomainRecordOutputArgs, opts ...InvokeOption) LookupDomainRecordResultOutput

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

    public static class GetDomainRecord 
    {
        public static Task<GetDomainRecordResult> InvokeAsync(GetDomainRecordArgs args, InvokeOptions? opts = null)
        public static Output<GetDomainRecordResult> Invoke(GetDomainRecordInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetDomainRecordResult> getDomainRecord(GetDomainRecordArgs args, InvokeOptions options)
    // Output-based functions aren't available in Java yet
    
    fn::invoke:
      function: scaleway:index/getDomainRecord:getDomainRecord
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Data string
    The content of the record (an IPv4 for an A, a string for a TXT...). Cannot be used with record_id.
    DnsZone string
    The IP address.
    Name string
    The name of the record (can be an empty string for a root record). Cannot be used with record_id.
    ProjectId string
    project_id) The ID of the project the domain is associated with.
    RecordId string
    The record ID. Cannot be used with name, type and data.
    Type string
    The type of the record (A, AAAA, MX, CNAME, DNAME, ALIAS, NS, PTR, SRV, TXT, TLSA, or CAA). Cannot be used with record_id.
    Data string
    The content of the record (an IPv4 for an A, a string for a TXT...). Cannot be used with record_id.
    DnsZone string
    The IP address.
    Name string
    The name of the record (can be an empty string for a root record). Cannot be used with record_id.
    ProjectId string
    project_id) The ID of the project the domain is associated with.
    RecordId string
    The record ID. Cannot be used with name, type and data.
    Type string
    The type of the record (A, AAAA, MX, CNAME, DNAME, ALIAS, NS, PTR, SRV, TXT, TLSA, or CAA). Cannot be used with record_id.
    data String
    The content of the record (an IPv4 for an A, a string for a TXT...). Cannot be used with record_id.
    dnsZone String
    The IP address.
    name String
    The name of the record (can be an empty string for a root record). Cannot be used with record_id.
    projectId String
    project_id) The ID of the project the domain is associated with.
    recordId String
    The record ID. Cannot be used with name, type and data.
    type String
    The type of the record (A, AAAA, MX, CNAME, DNAME, ALIAS, NS, PTR, SRV, TXT, TLSA, or CAA). Cannot be used with record_id.
    data string
    The content of the record (an IPv4 for an A, a string for a TXT...). Cannot be used with record_id.
    dnsZone string
    The IP address.
    name string
    The name of the record (can be an empty string for a root record). Cannot be used with record_id.
    projectId string
    project_id) The ID of the project the domain is associated with.
    recordId string
    The record ID. Cannot be used with name, type and data.
    type string
    The type of the record (A, AAAA, MX, CNAME, DNAME, ALIAS, NS, PTR, SRV, TXT, TLSA, or CAA). Cannot be used with record_id.
    data str
    The content of the record (an IPv4 for an A, a string for a TXT...). Cannot be used with record_id.
    dns_zone str
    The IP address.
    name str
    The name of the record (can be an empty string for a root record). Cannot be used with record_id.
    project_id str
    project_id) The ID of the project the domain is associated with.
    record_id str
    The record ID. Cannot be used with name, type and data.
    type str
    The type of the record (A, AAAA, MX, CNAME, DNAME, ALIAS, NS, PTR, SRV, TXT, TLSA, or CAA). Cannot be used with record_id.
    data String
    The content of the record (an IPv4 for an A, a string for a TXT...). Cannot be used with record_id.
    dnsZone String
    The IP address.
    name String
    The name of the record (can be an empty string for a root record). Cannot be used with record_id.
    projectId String
    project_id) The ID of the project the domain is associated with.
    recordId String
    The record ID. Cannot be used with name, type and data.
    type String
    The type of the record (A, AAAA, MX, CNAME, DNAME, ALIAS, NS, PTR, SRV, TXT, TLSA, or CAA). Cannot be used with record_id.

    getDomainRecord Result

    The following output properties are available:

    Fqdn string
    GeoIps List<Pulumiverse.Scaleway.Outputs.GetDomainRecordGeoIp>
    Dynamic record base on user geolocalisation (More information about dynamic records)
    HttpServices List<Pulumiverse.Scaleway.Outputs.GetDomainRecordHttpService>
    Dynamic record base on URL resolve (More information about dynamic records)
    Id string
    The provider-assigned unique ID for this managed resource.
    KeepEmptyZone bool
    Priority int
    The priority of the record (mostly used with an MX record)
    RootZone bool
    Ttl int
    Time To Live of the record in seconds.
    Views List<Pulumiverse.Scaleway.Outputs.GetDomainRecordView>
    Dynamic record based on the client’s (resolver) subnet (More information about dynamic records)
    Weighteds List<Pulumiverse.Scaleway.Outputs.GetDomainRecordWeighted>
    Dynamic record base on IP weights (More information about dynamic records)
    Data string
    DnsZone string
    Name string
    ProjectId string
    RecordId string
    Type string
    Fqdn string
    GeoIps []GetDomainRecordGeoIp
    Dynamic record base on user geolocalisation (More information about dynamic records)
    HttpServices []GetDomainRecordHttpService
    Dynamic record base on URL resolve (More information about dynamic records)
    Id string
    The provider-assigned unique ID for this managed resource.
    KeepEmptyZone bool
    Priority int
    The priority of the record (mostly used with an MX record)
    RootZone bool
    Ttl int
    Time To Live of the record in seconds.
    Views []GetDomainRecordView
    Dynamic record based on the client’s (resolver) subnet (More information about dynamic records)
    Weighteds []GetDomainRecordWeighted
    Dynamic record base on IP weights (More information about dynamic records)
    Data string
    DnsZone string
    Name string
    ProjectId string
    RecordId string
    Type string
    fqdn String
    geoIps List<GetDomainRecordGeoIp>
    Dynamic record base on user geolocalisation (More information about dynamic records)
    httpServices List<GetDomainRecordHttpService>
    Dynamic record base on URL resolve (More information about dynamic records)
    id String
    The provider-assigned unique ID for this managed resource.
    keepEmptyZone Boolean
    priority Integer
    The priority of the record (mostly used with an MX record)
    rootZone Boolean
    ttl Integer
    Time To Live of the record in seconds.
    views List<GetDomainRecordView>
    Dynamic record based on the client’s (resolver) subnet (More information about dynamic records)
    weighteds List<GetDomainRecordWeighted>
    Dynamic record base on IP weights (More information about dynamic records)
    data String
    dnsZone String
    name String
    projectId String
    recordId String
    type String
    fqdn string
    geoIps GetDomainRecordGeoIp[]
    Dynamic record base on user geolocalisation (More information about dynamic records)
    httpServices GetDomainRecordHttpService[]
    Dynamic record base on URL resolve (More information about dynamic records)
    id string
    The provider-assigned unique ID for this managed resource.
    keepEmptyZone boolean
    priority number
    The priority of the record (mostly used with an MX record)
    rootZone boolean
    ttl number
    Time To Live of the record in seconds.
    views GetDomainRecordView[]
    Dynamic record based on the client’s (resolver) subnet (More information about dynamic records)
    weighteds GetDomainRecordWeighted[]
    Dynamic record base on IP weights (More information about dynamic records)
    data string
    dnsZone string
    name string
    projectId string
    recordId string
    type string
    fqdn str
    geo_ips Sequence[GetDomainRecordGeoIp]
    Dynamic record base on user geolocalisation (More information about dynamic records)
    http_services Sequence[GetDomainRecordHttpService]
    Dynamic record base on URL resolve (More information about dynamic records)
    id str
    The provider-assigned unique ID for this managed resource.
    keep_empty_zone bool
    priority int
    The priority of the record (mostly used with an MX record)
    root_zone bool
    ttl int
    Time To Live of the record in seconds.
    views Sequence[GetDomainRecordView]
    Dynamic record based on the client’s (resolver) subnet (More information about dynamic records)
    weighteds Sequence[GetDomainRecordWeighted]
    Dynamic record base on IP weights (More information about dynamic records)
    data str
    dns_zone str
    name str
    project_id str
    record_id str
    type str
    fqdn String
    geoIps List<Property Map>
    Dynamic record base on user geolocalisation (More information about dynamic records)
    httpServices List<Property Map>
    Dynamic record base on URL resolve (More information about dynamic records)
    id String
    The provider-assigned unique ID for this managed resource.
    keepEmptyZone Boolean
    priority Number
    The priority of the record (mostly used with an MX record)
    rootZone Boolean
    ttl Number
    Time To Live of the record in seconds.
    views List<Property Map>
    Dynamic record based on the client’s (resolver) subnet (More information about dynamic records)
    weighteds List<Property Map>
    Dynamic record base on IP weights (More information about dynamic records)
    data String
    dnsZone String
    name String
    projectId String
    recordId String
    type String

    Supporting Types

    GetDomainRecordGeoIp

    matches List<Property Map>
    The list of matches

    GetDomainRecordGeoIpMatch

    Continents List<string>
    List of continents (eg: EU for Europe, NA for North America, AS for Asia...). List of all continents code: https://api.scaleway.com/domain-private/v2beta1/continents
    Countries List<string>
    List of countries (eg: FR for France, US for the United States, GB for Great Britain...). List of all countries code: https://api.scaleway.com/domain-private/v2beta1/countries
    Data string
    The content of the record (an IPv4 for an A, a string for a TXT...). Cannot be used with record_id.
    Continents []string
    List of continents (eg: EU for Europe, NA for North America, AS for Asia...). List of all continents code: https://api.scaleway.com/domain-private/v2beta1/continents
    Countries []string
    List of countries (eg: FR for France, US for the United States, GB for Great Britain...). List of all countries code: https://api.scaleway.com/domain-private/v2beta1/countries
    Data string
    The content of the record (an IPv4 for an A, a string for a TXT...). Cannot be used with record_id.
    continents List<String>
    List of continents (eg: EU for Europe, NA for North America, AS for Asia...). List of all continents code: https://api.scaleway.com/domain-private/v2beta1/continents
    countries List<String>
    List of countries (eg: FR for France, US for the United States, GB for Great Britain...). List of all countries code: https://api.scaleway.com/domain-private/v2beta1/countries
    data String
    The content of the record (an IPv4 for an A, a string for a TXT...). Cannot be used with record_id.
    continents string[]
    List of continents (eg: EU for Europe, NA for North America, AS for Asia...). List of all continents code: https://api.scaleway.com/domain-private/v2beta1/continents
    countries string[]
    List of countries (eg: FR for France, US for the United States, GB for Great Britain...). List of all countries code: https://api.scaleway.com/domain-private/v2beta1/countries
    data string
    The content of the record (an IPv4 for an A, a string for a TXT...). Cannot be used with record_id.
    continents Sequence[str]
    List of continents (eg: EU for Europe, NA for North America, AS for Asia...). List of all continents code: https://api.scaleway.com/domain-private/v2beta1/continents
    countries Sequence[str]
    List of countries (eg: FR for France, US for the United States, GB for Great Britain...). List of all countries code: https://api.scaleway.com/domain-private/v2beta1/countries
    data str
    The content of the record (an IPv4 for an A, a string for a TXT...). Cannot be used with record_id.
    continents List<String>
    List of continents (eg: EU for Europe, NA for North America, AS for Asia...). List of all continents code: https://api.scaleway.com/domain-private/v2beta1/continents
    countries List<String>
    List of countries (eg: FR for France, US for the United States, GB for Great Britain...). List of all countries code: https://api.scaleway.com/domain-private/v2beta1/countries
    data String
    The content of the record (an IPv4 for an A, a string for a TXT...). Cannot be used with record_id.

    GetDomainRecordHttpService

    Ips List<string>
    IPs to check
    MustContain string
    Text to search
    Strategy string
    Strategy to return an IP from the IPs list
    Url string
    URL to match the must_contain text to validate an IP
    UserAgent string
    User-agent used when checking the URL
    Ips []string
    IPs to check
    MustContain string
    Text to search
    Strategy string
    Strategy to return an IP from the IPs list
    Url string
    URL to match the must_contain text to validate an IP
    UserAgent string
    User-agent used when checking the URL
    ips List<String>
    IPs to check
    mustContain String
    Text to search
    strategy String
    Strategy to return an IP from the IPs list
    url String
    URL to match the must_contain text to validate an IP
    userAgent String
    User-agent used when checking the URL
    ips string[]
    IPs to check
    mustContain string
    Text to search
    strategy string
    Strategy to return an IP from the IPs list
    url string
    URL to match the must_contain text to validate an IP
    userAgent string
    User-agent used when checking the URL
    ips Sequence[str]
    IPs to check
    must_contain str
    Text to search
    strategy str
    Strategy to return an IP from the IPs list
    url str
    URL to match the must_contain text to validate an IP
    user_agent str
    User-agent used when checking the URL
    ips List<String>
    IPs to check
    mustContain String
    Text to search
    strategy String
    Strategy to return an IP from the IPs list
    url String
    URL to match the must_contain text to validate an IP
    userAgent String
    User-agent used when checking the URL

    GetDomainRecordView

    Data string
    The content of the record (an IPv4 for an A, a string for a TXT...). Cannot be used with record_id.
    Subnet string
    The subnet of the view
    Data string
    The content of the record (an IPv4 for an A, a string for a TXT...). Cannot be used with record_id.
    Subnet string
    The subnet of the view
    data String
    The content of the record (an IPv4 for an A, a string for a TXT...). Cannot be used with record_id.
    subnet String
    The subnet of the view
    data string
    The content of the record (an IPv4 for an A, a string for a TXT...). Cannot be used with record_id.
    subnet string
    The subnet of the view
    data str
    The content of the record (an IPv4 for an A, a string for a TXT...). Cannot be used with record_id.
    subnet str
    The subnet of the view
    data String
    The content of the record (an IPv4 for an A, a string for a TXT...). Cannot be used with record_id.
    subnet String
    The subnet of the view

    GetDomainRecordWeighted

    Ip string
    The weighted IP
    Weight int
    The weight of the IP
    Ip string
    The weighted IP
    Weight int
    The weight of the IP
    ip String
    The weighted IP
    weight Integer
    The weight of the IP
    ip string
    The weighted IP
    weight number
    The weight of the IP
    ip str
    The weighted IP
    weight int
    The weight of the IP
    ip String
    The weighted IP
    weight Number
    The weight of the IP

    Package Details

    Repository
    scaleway pulumiverse/pulumi-scaleway
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the scaleway Terraform Provider.
    scaleway logo
    Scaleway v1.12.0 published on Monday, Mar 11, 2024 by pulumiverse