Scaleway v1.14.0 published on Thursday, Jun 6, 2024 by pulumiverse
scaleway.getDomainRecord
Explore with Pulumi AI
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 dictionaryThe following arguments are supported:
- Data string
 - The content of the record (an IPv4 for an 
A, a string for aTXT...). Cannot be used withrecord_id. - Dns
Zone 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. - Project
Id string project_id) The ID of the project the domain is associated with.- Record
Id string - The record ID.
Cannot be used with 
name,typeanddata. - Type string
 - The type of the record (
A,AAAA,MX,CNAME,DNAME,ALIAS,NS,PTR,SRV,TXT,TLSA, orCAA). Cannot be used withrecord_id. 
- Data string
 - The content of the record (an IPv4 for an 
A, a string for aTXT...). Cannot be used withrecord_id. - Dns
Zone 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. - Project
Id string project_id) The ID of the project the domain is associated with.- Record
Id string - The record ID.
Cannot be used with 
name,typeanddata. - Type string
 - The type of the record (
A,AAAA,MX,CNAME,DNAME,ALIAS,NS,PTR,SRV,TXT,TLSA, orCAA). Cannot be used withrecord_id. 
- data String
 - The content of the record (an IPv4 for an 
A, a string for aTXT...). Cannot be used withrecord_id. - dns
Zone 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. - project
Id String project_id) The ID of the project the domain is associated with.- record
Id String - The record ID.
Cannot be used with 
name,typeanddata. - type String
 - The type of the record (
A,AAAA,MX,CNAME,DNAME,ALIAS,NS,PTR,SRV,TXT,TLSA, orCAA). Cannot be used withrecord_id. 
- data string
 - The content of the record (an IPv4 for an 
A, a string for aTXT...). Cannot be used withrecord_id. - dns
Zone 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. - project
Id string project_id) The ID of the project the domain is associated with.- record
Id string - The record ID.
Cannot be used with 
name,typeanddata. - type string
 - The type of the record (
A,AAAA,MX,CNAME,DNAME,ALIAS,NS,PTR,SRV,TXT,TLSA, orCAA). Cannot be used withrecord_id. 
- data str
 - The content of the record (an IPv4 for an 
A, a string for aTXT...). Cannot be used withrecord_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,typeanddata. - type str
 - The type of the record (
A,AAAA,MX,CNAME,DNAME,ALIAS,NS,PTR,SRV,TXT,TLSA, orCAA). Cannot be used withrecord_id. 
- data String
 - The content of the record (an IPv4 for an 
A, a string for aTXT...). Cannot be used withrecord_id. - dns
Zone 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. - project
Id String project_id) The ID of the project the domain is associated with.- record
Id String - The record ID.
Cannot be used with 
name,typeanddata. - type String
 - The type of the record (
A,AAAA,MX,CNAME,DNAME,ALIAS,NS,PTR,SRV,TXT,TLSA, orCAA). Cannot be used withrecord_id. 
getDomainRecord Result
The following output properties are available:
- Fqdn string
 - Geo
Ips List<Pulumiverse.Scaleway. Outputs. Get Domain Record Geo Ip>  - Dynamic record base on user geolocalisation (More information about dynamic records)
 - Http
Services List<Pulumiverse.Scaleway. Outputs. Get Domain Record Http Service>  - Dynamic record base on URL resolve (More information about dynamic records)
 - Id string
 - The provider-assigned unique ID for this managed resource.
 - Keep
Empty boolZone  - Priority int
 - The priority of the record (mostly used with an 
MXrecord) - Root
Zone bool - Ttl int
 - Time To Live of the record in seconds.
 - Views
List<Pulumiverse.
Scaleway. Outputs. Get Domain Record View>  - Dynamic record based on the client’s (resolver) subnet (More information about dynamic records)
 - Weighteds
List<Pulumiverse.
Scaleway. Outputs. Get Domain Record Weighted>  - Dynamic record base on IP weights (More information about dynamic records)
 - Data string
 - Dns
Zone string - Name string
 - Project
Id string - Record
Id string - Type string
 
- Fqdn string
 - Geo
Ips []GetDomain Record Geo Ip  - Dynamic record base on user geolocalisation (More information about dynamic records)
 - Http
Services []GetDomain Record Http Service  - Dynamic record base on URL resolve (More information about dynamic records)
 - Id string
 - The provider-assigned unique ID for this managed resource.
 - Keep
Empty boolZone  - Priority int
 - The priority of the record (mostly used with an 
MXrecord) - Root
Zone bool - Ttl int
 - Time To Live of the record in seconds.
 - Views
[]Get
Domain Record View  - Dynamic record based on the client’s (resolver) subnet (More information about dynamic records)
 - Weighteds
[]Get
Domain Record Weighted  - Dynamic record base on IP weights (More information about dynamic records)
 - Data string
 - Dns
Zone string - Name string
 - Project
Id string - Record
Id string - Type string
 
- fqdn String
 - geo
Ips List<GetDomain Record Geo Ip>  - Dynamic record base on user geolocalisation (More information about dynamic records)
 - http
Services List<GetDomain Record Http Service>  - Dynamic record base on URL resolve (More information about dynamic records)
 - id String
 - The provider-assigned unique ID for this managed resource.
 - keep
Empty BooleanZone  - priority Integer
 - The priority of the record (mostly used with an 
MXrecord) - root
Zone Boolean - ttl Integer
 - Time To Live of the record in seconds.
 - views
List<Get
Domain Record View>  - Dynamic record based on the client’s (resolver) subnet (More information about dynamic records)
 - weighteds
List<Get
Domain Record Weighted>  - Dynamic record base on IP weights (More information about dynamic records)
 - data String
 - dns
Zone String - name String
 - project
Id String - record
Id String - type String
 
- fqdn string
 - geo
Ips GetDomain Record Geo Ip[]  - Dynamic record base on user geolocalisation (More information about dynamic records)
 - http
Services GetDomain Record Http Service[]  - Dynamic record base on URL resolve (More information about dynamic records)
 - id string
 - The provider-assigned unique ID for this managed resource.
 - keep
Empty booleanZone  - priority number
 - The priority of the record (mostly used with an 
MXrecord) - root
Zone boolean - ttl number
 - Time To Live of the record in seconds.
 - views
Get
Domain Record View[]  - Dynamic record based on the client’s (resolver) subnet (More information about dynamic records)
 - weighteds
Get
Domain Record Weighted[]  - Dynamic record base on IP weights (More information about dynamic records)
 - data string
 - dns
Zone string - name string
 - project
Id string - record
Id string - type string
 
- fqdn str
 - geo_
ips Sequence[GetDomain Record Geo Ip]  - Dynamic record base on user geolocalisation (More information about dynamic records)
 - http_
services Sequence[GetDomain Record Http Service]  - Dynamic record base on URL resolve (More information about dynamic records)
 - id str
 - The provider-assigned unique ID for this managed resource.
 - keep_
empty_ boolzone  - priority int
 - The priority of the record (mostly used with an 
MXrecord) - root_
zone bool - ttl int
 - Time To Live of the record in seconds.
 - views
Sequence[Get
Domain Record View]  - Dynamic record based on the client’s (resolver) subnet (More information about dynamic records)
 - weighteds
Sequence[Get
Domain Record Weighted]  - 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
 - geo
Ips List<Property Map> - Dynamic record base on user geolocalisation (More information about dynamic records)
 - http
Services 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.
 - keep
Empty BooleanZone  - priority Number
 - The priority of the record (mostly used with an 
MXrecord) - root
Zone 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
 - dns
Zone String - name String
 - project
Id String - record
Id String - type String
 
Supporting Types
GetDomainRecordGeoIp    
- Matches
List<Pulumiverse.
Scaleway. Inputs. Get Domain Record Geo Ip Match>  - The list of matches
 
- Matches
[]Get
Domain Record Geo Ip Match  - The list of matches
 
- matches
List<Get
Domain Record Geo Ip Match>  - The list of matches
 
- matches
Get
Domain Record Geo Ip Match[]  - The list of matches
 
- matches
Sequence[Get
Domain Record Geo Ip Match]  - The list of matches
 
- 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 aTXT...). Cannot be used withrecord_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 aTXT...). Cannot be used withrecord_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 aTXT...). Cannot be used withrecord_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 aTXT...). Cannot be used withrecord_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 aTXT...). Cannot be used withrecord_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 aTXT...). Cannot be used withrecord_id. 
GetDomainRecordHttpService    
- Ips List<string>
 - IPs to check
 - Must
Contain 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
 - User
Agent string - User-agent used when checking the URL
 
- Ips []string
 - IPs to check
 - Must
Contain 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
 - User
Agent string - User-agent used when checking the URL
 
- ips List<String>
 - IPs to check
 - must
Contain 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
 - user
Agent String - User-agent used when checking the URL
 
- ips string[]
 - IPs to check
 - must
Contain 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
 - user
Agent 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
 - must
Contain 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
 - user
Agent String - User-agent used when checking the URL
 
GetDomainRecordView   
GetDomainRecordWeighted   
Package Details
- Repository
 - scaleway pulumiverse/pulumi-scaleway
 - License
 - Apache-2.0
 - Notes
 - This Pulumi package is based on the 
scalewayTerraform Provider.