getService

Use this data source to compose and decompose AWS service DNS names.

Example Usage

Get Service DNS Name

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const current = aws.getRegion({});
const test = current.then(current => aws.getService({
region: current.name,
serviceId: "ec2",
}));
import pulumi
import pulumi_aws as aws
current = aws.get_region()
test = aws.get_service(region=current.name,
service_id="ec2")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var current = Aws.GetRegion.Invoke();
var test = Aws.GetService.Invoke(new()
{
Region = current.Apply(getRegionResult => getRegionResult.Name),
ServiceId = "ec2",
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
current, err := aws.GetRegion(ctx, &aws.GetRegionArgs{}, nil)
if err != nil {
return err
}
_, err = aws.GetService(ctx, &aws.GetServiceArgs{
Region: pulumi.StringRef(current.Name),
ServiceId: pulumi.StringRef("ec2"),
}, nil)
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.aws.AwsFunctions;
import com.pulumi.aws.inputs.GetRegionArgs;
import com.pulumi.aws.inputs.GetServiceArgs;
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 current = AwsFunctions.getRegion();
final var test = AwsFunctions.getService(GetServiceArgs.builder()
.region(current.applyValue(getRegionResult -> getRegionResult.name()))
.serviceId("ec2")
.build());
}
}
variables:
current:
fn::invoke:
function: aws:getRegion
arguments: {}
test:
fn::invoke:
function: aws:getService
arguments:
region: ${current.name}
serviceId: ec2

Use Service Reverse DNS Name to Get Components

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const s3 = aws.getService({
reverseDnsName: "cn.com.amazonaws.cn-north-1.s3",
});
import pulumi
import pulumi_aws as aws
s3 = aws.get_service(reverse_dns_name="cn.com.amazonaws.cn-north-1.s3")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var s3 = Aws.GetService.Invoke(new()
{
ReverseDnsName = "cn.com.amazonaws.cn-north-1.s3",
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := aws.GetService(ctx, &aws.GetServiceArgs{
ReverseDnsName: pulumi.StringRef("cn.com.amazonaws.cn-north-1.s3"),
}, nil)
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.aws.AwsFunctions;
import com.pulumi.aws.inputs.GetServiceArgs;
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 s3 = AwsFunctions.getService(GetServiceArgs.builder()
.reverseDnsName("cn.com.amazonaws.cn-north-1.s3")
.build());
}
}
variables:
s3:
fn::invoke:
function: aws:getService
arguments:
reverseDnsName: cn.com.amazonaws.cn-north-1.s3

Determine Regional Support for a Service

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const s3 = aws.getService({
reverseDnsName: "com.amazonaws.us-gov-west-1.waf",
});
import pulumi
import pulumi_aws as aws
s3 = aws.get_service(reverse_dns_name="com.amazonaws.us-gov-west-1.waf")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var s3 = Aws.GetService.Invoke(new()
{
ReverseDnsName = "com.amazonaws.us-gov-west-1.waf",
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := aws.GetService(ctx, &aws.GetServiceArgs{
ReverseDnsName: pulumi.StringRef("com.amazonaws.us-gov-west-1.waf"),
}, nil)
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.aws.AwsFunctions;
import com.pulumi.aws.inputs.GetServiceArgs;
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 s3 = AwsFunctions.getService(GetServiceArgs.builder()
.reverseDnsName("com.amazonaws.us-gov-west-1.waf")
.build());
}
}
variables:
s3:
fn::invoke:
function: aws:getService
arguments:
reverseDnsName: com.amazonaws.us-gov-west-1.waf

Return

A collection of values returned by getService.

Parameters

argument

A collection of arguments for invoking getService.


suspend fun getService(dnsName: String? = null, id: String? = null, region: String? = null, reverseDnsName: String? = null, reverseDnsPrefix: String? = null, serviceId: String? = null): GetServiceResult

Return

A collection of values returned by getService.

Parameters

dnsName

DNS name of the service (e.g., rds.us-east-1.amazonaws.com). One of dns_name, reverse_dns_name, or service_id is required.

id
region

Region of the service (e.g., us-west-2, ap-northeast-1).

reverseDnsName

Reverse DNS name of the service (e.g., com.amazonaws.us-west-2.s3). One of dns_name, reverse_dns_name, or service_id is required.

reverseDnsPrefix

Prefix of the service (e.g., com.amazonaws in AWS Commercial, cn.com.amazonaws in AWS China).

serviceId

Service endpoint ID (e.g., s3, rds, ec2). One of dns_name, reverse_dns_name, or service_id is required. A service's endpoint ID can be found in the AWS General Reference.

See also


suspend fun getService(argument: suspend GetServicePlainArgsBuilder.() -> Unit): GetServiceResult

Return

A collection of values returned by getService.

Parameters

argument

Builder for com.pulumi.aws.kotlin.inputs.GetServicePlainArgs.

See also