getZone

suspend fun getZone(argument: GetZonePlainArgs): GetZoneResult

Use this data source to look up zone info. This is the singular alternative to cloudflare.getZones.

Note Cloudflare zone names are not unique. It is possible for multiple accounts to have the same zone created but in different states. If you are using this setup, it is advised to use the account_id attribute on this resource or swap to cloudflare.getZones to further filter the results.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as cloudflare from "@pulumi/cloudflare";
const example = cloudflare.getZone({
name: "example.com",
});
const exampleRecord = new cloudflare.Record("example", {
zoneId: example.then(example => example.id),
name: "www",
content: "203.0.113.1",
type: "A",
proxied: true,
});
import pulumi
import pulumi_cloudflare as cloudflare
example = cloudflare.get_zone(name="example.com")
example_record = cloudflare.Record("example",
zone_id=example.id,
name="www",
content="203.0.113.1",
type="A",
proxied=True)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Cloudflare = Pulumi.Cloudflare;
return await Deployment.RunAsync(() =>
{
var example = Cloudflare.GetZone.Invoke(new()
{
Name = "example.com",
});
var exampleRecord = new Cloudflare.Record("example", new()
{
ZoneId = example.Apply(getZoneResult => getZoneResult.Id),
Name = "www",
Content = "203.0.113.1",
Type = "A",
Proxied = true,
});
});
package main
import (
"github.com/pulumi/pulumi-cloudflare/sdk/v5/go/cloudflare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := cloudflare.LookupZone(ctx, &cloudflare.LookupZoneArgs{
Name: pulumi.StringRef("example.com"),
}, nil)
if err != nil {
return err
}
_, err = cloudflare.NewRecord(ctx, "example", &cloudflare.RecordArgs{
ZoneId: pulumi.String(example.Id),
Name: pulumi.String("www"),
Content: pulumi.String("203.0.113.1"),
Type: pulumi.String("A"),
Proxied: pulumi.Bool(true),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.cloudflare.CloudflareFunctions;
import com.pulumi.cloudflare.inputs.GetZoneArgs;
import com.pulumi.cloudflare.Record;
import com.pulumi.cloudflare.RecordArgs;
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 example = CloudflareFunctions.getZone(GetZoneArgs.builder()
.name("example.com")
.build());
var exampleRecord = new Record("exampleRecord", RecordArgs.builder()
.zoneId(example.applyValue(getZoneResult -> getZoneResult.id()))
.name("www")
.content("203.0.113.1")
.type("A")
.proxied(true)
.build());
}
}
resources:
exampleRecord:
type: cloudflare:Record
name: example
properties:
zoneId: ${example.id}
name: www
content: 203.0.113.1
type: A
proxied: true
variables:
example:
fn::invoke:
function: cloudflare:getZone
arguments:
name: example.com

Return

A collection of values returned by getZone.

Parameters

argument

A collection of arguments for invoking getZone.


suspend fun getZone(accountId: String? = null, name: String? = null, zoneId: String? = null): GetZoneResult

Return

A collection of values returned by getZone.

Parameters

accountId

The account identifier to target for the resource.

name

The name of the zone. Must provide only one of zone_id, name.

zoneId

The zone identifier to target for the resource. Must provide only one of zone_id, name.

See also


suspend fun getZone(argument: suspend GetZonePlainArgsBuilder.() -> Unit): GetZoneResult

Return

A collection of values returned by getZone.

Parameters

argument

Builder for com.pulumi.cloudflare.kotlin.inputs.GetZonePlainArgs.

See also