published on Tuesday, Mar 10, 2026 by Pulumi
published on Tuesday, Mar 10, 2026 by Pulumi
Resource for managing an AWS EventBridge Pipes Pipe.
You can find out more about EventBridge Pipes in the User Guide.
Note: EventBridge was formerly known as CloudWatch Events. The functionality is identical.
Example Usage
Basic Usage
using System.Collections.Generic;
using System.Linq;
using System.Text.Json;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var main = Aws.GetCallerIdentity.Invoke();
var test = new Aws.Iam.Role("test", new()
{
AssumeRolePolicy = JsonSerializer.Serialize(new Dictionary<string, object?>
{
["Version"] = "2012-10-17",
["Statement"] = new Dictionary<string, object?>
{
["Effect"] = "Allow",
["Action"] = "sts:AssumeRole",
["Principal"] = new Dictionary<string, object?>
{
["Service"] = "pipes.amazonaws.com",
},
["Condition"] = new Dictionary<string, object?>
{
["StringEquals"] = new Dictionary<string, object?>
{
["aws:SourceAccount"] = main.Apply(getCallerIdentityResult => getCallerIdentityResult.AccountId),
},
},
},
}),
});
var sourceQueue = new Aws.Sqs.Queue("sourceQueue");
var sourceRolePolicy = new Aws.Iam.RolePolicy("sourceRolePolicy", new()
{
Role = test.Id,
Policy = sourceQueue.Arn.Apply(arn => JsonSerializer.Serialize(new Dictionary<string, object?>
{
["Version"] = "2012-10-17",
["Statement"] = new[]
{
new Dictionary<string, object?>
{
["Effect"] = "Allow",
["Action"] = new[]
{
"sqs:DeleteMessage",
"sqs:GetQueueAttributes",
"sqs:ReceiveMessage",
},
["Resource"] = new[]
{
arn,
},
},
},
})),
});
var targetQueue = new Aws.Sqs.Queue("targetQueue");
var targetRolePolicy = new Aws.Iam.RolePolicy("targetRolePolicy", new()
{
Role = test.Id,
Policy = targetQueue.Arn.Apply(arn => JsonSerializer.Serialize(new Dictionary<string, object?>
{
["Version"] = "2012-10-17",
["Statement"] = new[]
{
new Dictionary<string, object?>
{
["Effect"] = "Allow",
["Action"] = new[]
{
"sqs:SendMessage",
},
["Resource"] = new[]
{
arn,
},
},
},
})),
});
var example = new Aws.Pipes.Pipe("example", new()
{
RoleArn = aws_iam_role.Example.Arn,
Source = sourceQueue.Arn,
Target = targetQueue.Arn,
SourceParameters = null,
TargetParameters = null,
}, new CustomResourceOptions
{
DependsOn = new[]
{
sourceRolePolicy,
targetRolePolicy,
},
});
});
package main
import (
"encoding/json"
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws"
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/iam"
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/pipes"
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/sqs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
main, err := aws.GetCallerIdentity(ctx, nil, nil)
if err != nil {
return err
}
tmpJSON0, err := json.Marshal(map[string]interface{}{
"Version": "2012-10-17",
"Statement": map[string]interface{}{
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Principal": map[string]interface{}{
"Service": "pipes.amazonaws.com",
},
"Condition": map[string]interface{}{
"StringEquals": map[string]interface{}{
"aws:SourceAccount": main.AccountId,
},
},
},
})
if err != nil {
return err
}
json0 := string(tmpJSON0)
test, err := iam.NewRole(ctx, "test", &iam.RoleArgs{
AssumeRolePolicy: pulumi.String(json0),
})
if err != nil {
return err
}
sourceQueue, err := sqs.NewQueue(ctx, "sourceQueue", nil)
if err != nil {
return err
}
sourceRolePolicy, err := iam.NewRolePolicy(ctx, "sourceRolePolicy", &iam.RolePolicyArgs{
Role: test.ID(),
Policy: sourceQueue.Arn.ApplyT(func(arn string) (pulumi.String, error) {
var _zero pulumi.String
tmpJSON1, err := json.Marshal(map[string]interface{}{
"Version": "2012-10-17",
"Statement": []map[string]interface{}{
map[string]interface{}{
"Effect": "Allow",
"Action": []string{
"sqs:DeleteMessage",
"sqs:GetQueueAttributes",
"sqs:ReceiveMessage",
},
"Resource": []string{
arn,
},
},
},
})
if err != nil {
return _zero, err
}
json1 := string(tmpJSON1)
return pulumi.String(json1), nil
}).(pulumi.StringOutput),
})
if err != nil {
return err
}
targetQueue, err := sqs.NewQueue(ctx, "targetQueue", nil)
if err != nil {
return err
}
targetRolePolicy, err := iam.NewRolePolicy(ctx, "targetRolePolicy", &iam.RolePolicyArgs{
Role: test.ID(),
Policy: targetQueue.Arn.ApplyT(func(arn string) (pulumi.String, error) {
var _zero pulumi.String
tmpJSON2, err := json.Marshal(map[string]interface{}{
"Version": "2012-10-17",
"Statement": []map[string]interface{}{
map[string]interface{}{
"Effect": "Allow",
"Action": []string{
"sqs:SendMessage",
},
"Resource": []string{
arn,
},
},
},
})
if err != nil {
return _zero, err
}
json2 := string(tmpJSON2)
return pulumi.String(json2), nil
}).(pulumi.StringOutput),
})
if err != nil {
return err
}
_, err = pipes.NewPipe(ctx, "example", &pipes.PipeArgs{
RoleArn: pulumi.Any(aws_iam_role.Example.Arn),
Source: sourceQueue.Arn,
Target: targetQueue.Arn,
SourceParameters: nil,
TargetParameters: nil,
}, pulumi.DependsOn([]pulumi.Resource{
sourceRolePolicy,
targetRolePolicy,
}))
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.iam.Role;
import com.pulumi.aws.iam.RoleArgs;
import com.pulumi.aws.sqs.Queue;
import com.pulumi.aws.iam.RolePolicy;
import com.pulumi.aws.iam.RolePolicyArgs;
import com.pulumi.aws.pipes.Pipe;
import com.pulumi.aws.pipes.PipeArgs;
import com.pulumi.aws.pipes.inputs.PipeSourceParametersArgs;
import com.pulumi.aws.pipes.inputs.PipeTargetParametersArgs;
import static com.pulumi.codegen.internal.Serialization.*;
import com.pulumi.resources.CustomResourceOptions;
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 main = AwsFunctions.getCallerIdentity();
var test = new Role("test", RoleArgs.builder()
.assumeRolePolicy(serializeJson(
jsonObject(
jsonProperty("Version", "2012-10-17"),
jsonProperty("Statement", jsonObject(
jsonProperty("Effect", "Allow"),
jsonProperty("Action", "sts:AssumeRole"),
jsonProperty("Principal", jsonObject(
jsonProperty("Service", "pipes.amazonaws.com")
)),
jsonProperty("Condition", jsonObject(
jsonProperty("StringEquals", jsonObject(
jsonProperty("aws:SourceAccount", main.applyValue(getCallerIdentityResult -> getCallerIdentityResult.accountId()))
))
))
))
)))
.build());
var sourceQueue = new Queue("sourceQueue");
var sourceRolePolicy = new RolePolicy("sourceRolePolicy", RolePolicyArgs.builder()
.role(test.id())
.policy(sourceQueue.arn().applyValue(arn -> serializeJson(
jsonObject(
jsonProperty("Version", "2012-10-17"),
jsonProperty("Statement", jsonArray(jsonObject(
jsonProperty("Effect", "Allow"),
jsonProperty("Action", jsonArray(
"sqs:DeleteMessage",
"sqs:GetQueueAttributes",
"sqs:ReceiveMessage"
)),
jsonProperty("Resource", jsonArray(arn))
)))
))))
.build());
var targetQueue = new Queue("targetQueue");
var targetRolePolicy = new RolePolicy("targetRolePolicy", RolePolicyArgs.builder()
.role(test.id())
.policy(targetQueue.arn().applyValue(arn -> serializeJson(
jsonObject(
jsonProperty("Version", "2012-10-17"),
jsonProperty("Statement", jsonArray(jsonObject(
jsonProperty("Effect", "Allow"),
jsonProperty("Action", jsonArray("sqs:SendMessage")),
jsonProperty("Resource", jsonArray(arn))
)))
))))
.build());
var example = new Pipe("example", PipeArgs.builder()
.roleArn(aws_iam_role.example().arn())
.source(sourceQueue.arn())
.target(targetQueue.arn())
.sourceParameters()
.targetParameters()
.build(), CustomResourceOptions.builder()
.dependsOn(
sourceRolePolicy,
targetRolePolicy)
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const main = aws.getCallerIdentity({});
const test = new aws.iam.Role("test", {assumeRolePolicy: main.then(main => JSON.stringify({
Version: "2012-10-17",
Statement: {
Effect: "Allow",
Action: "sts:AssumeRole",
Principal: {
Service: "pipes.amazonaws.com",
},
Condition: {
StringEquals: {
"aws:SourceAccount": main.accountId,
},
},
},
}))});
const sourceQueue = new aws.sqs.Queue("sourceQueue", {});
const sourceRolePolicy = new aws.iam.RolePolicy("sourceRolePolicy", {
role: test.id,
policy: sourceQueue.arn.apply(arn => JSON.stringify({
Version: "2012-10-17",
Statement: [{
Effect: "Allow",
Action: [
"sqs:DeleteMessage",
"sqs:GetQueueAttributes",
"sqs:ReceiveMessage",
],
Resource: [arn],
}],
})),
});
const targetQueue = new aws.sqs.Queue("targetQueue", {});
const targetRolePolicy = new aws.iam.RolePolicy("targetRolePolicy", {
role: test.id,
policy: targetQueue.arn.apply(arn => JSON.stringify({
Version: "2012-10-17",
Statement: [{
Effect: "Allow",
Action: ["sqs:SendMessage"],
Resource: [arn],
}],
})),
});
const example = new aws.pipes.Pipe("example", {
roleArn: aws_iam_role.example.arn,
source: sourceQueue.arn,
target: targetQueue.arn,
sourceParameters: {},
targetParameters: {},
}, {
dependsOn: [
sourceRolePolicy,
targetRolePolicy,
],
});
import pulumi
import json
import pulumi_aws as aws
main = aws.get_caller_identity()
test = aws.iam.Role("test", assume_role_policy=json.dumps({
"Version": "2012-10-17",
"Statement": {
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Principal": {
"Service": "pipes.amazonaws.com",
},
"Condition": {
"StringEquals": {
"aws:SourceAccount": main.account_id,
},
},
},
}))
source_queue = aws.sqs.Queue("sourceQueue")
source_role_policy = aws.iam.RolePolicy("sourceRolePolicy",
role=test.id,
policy=source_queue.arn.apply(lambda arn: json.dumps({
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": [
"sqs:DeleteMessage",
"sqs:GetQueueAttributes",
"sqs:ReceiveMessage",
],
"Resource": [arn],
}],
})))
target_queue = aws.sqs.Queue("targetQueue")
target_role_policy = aws.iam.RolePolicy("targetRolePolicy",
role=test.id,
policy=target_queue.arn.apply(lambda arn: json.dumps({
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": ["sqs:SendMessage"],
"Resource": [arn],
}],
})))
example = aws.pipes.Pipe("example",
role_arn=aws_iam_role["example"]["arn"],
source=source_queue.arn,
target=target_queue.arn,
source_parameters=aws.pipes.PipeSourceParametersArgs(),
target_parameters=aws.pipes.PipeTargetParametersArgs(),
opts=pulumi.ResourceOptions(depends_on=[
source_role_policy,
target_role_policy,
]))
resources:
test:
type: aws:iam:Role
properties:
assumeRolePolicy:
fn::toJSON:
Version: 2012-10-17
Statement:
Effect: Allow
Action: sts:AssumeRole
Principal:
Service: pipes.amazonaws.com
Condition:
StringEquals:
aws:SourceAccount: ${main.accountId}
sourceRolePolicy:
type: aws:iam:RolePolicy
properties:
role: ${test.id}
policy:
fn::toJSON:
Version: 2012-10-17
Statement:
- Effect: Allow
Action:
- sqs:DeleteMessage
- sqs:GetQueueAttributes
- sqs:ReceiveMessage
Resource:
- ${sourceQueue.arn}
sourceQueue:
type: aws:sqs:Queue
targetRolePolicy:
type: aws:iam:RolePolicy
properties:
role: ${test.id}
policy:
fn::toJSON:
Version: 2012-10-17
Statement:
- Effect: Allow
Action:
- sqs:SendMessage
Resource:
- ${targetQueue.arn}
targetQueue:
type: aws:sqs:Queue
example:
type: aws:pipes:Pipe
properties:
roleArn: ${aws_iam_role.example.arn}
source: ${sourceQueue.arn}
target: ${targetQueue.arn}
sourceParameters: {}
targetParameters: {}
options:
dependson:
- ${sourceRolePolicy}
- ${targetRolePolicy}
variables:
main:
fn::invoke:
Function: aws:getCallerIdentity
Arguments: {}
Create Pipe Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Pipe(name: string, args: PipeArgs, opts?: CustomResourceOptions);@overload
def Pipe(resource_name: str,
args: PipeArgs,
opts: Optional[ResourceOptions] = None)
@overload
def Pipe(resource_name: str,
opts: Optional[ResourceOptions] = None,
role_arn: Optional[str] = None,
source: Optional[str] = None,
source_parameters: Optional[PipeSourceParametersArgs] = None,
target: Optional[str] = None,
target_parameters: Optional[PipeTargetParametersArgs] = None,
description: Optional[str] = None,
desired_state: Optional[str] = None,
enrichment: Optional[str] = None,
name: Optional[str] = None,
name_prefix: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None)func NewPipe(ctx *Context, name string, args PipeArgs, opts ...ResourceOption) (*Pipe, error)public Pipe(string name, PipeArgs args, CustomResourceOptions? opts = null)type: aws:pipes:Pipe
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 PipeArgs
- 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 PipeArgs
- 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 PipeArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args PipeArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args PipeArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var pipeResource = new Aws.Pipes.Pipe("pipeResource", new()
{
RoleArn = "string",
Source = "string",
SourceParameters = new Aws.Pipes.Inputs.PipeSourceParametersArgs
{
FilterCriteria = new Aws.Pipes.Inputs.PipeSourceParametersFilterCriteriaArgs
{
Filters = new[]
{
new Aws.Pipes.Inputs.PipeSourceParametersFilterCriteriaFilterArgs
{
Pattern = "string",
},
},
},
},
Target = "string",
TargetParameters = new Aws.Pipes.Inputs.PipeTargetParametersArgs
{
InputTemplate = "string",
},
Description = "string",
DesiredState = "string",
Enrichment = "string",
Name = "string",
NamePrefix = "string",
Tags =
{
{ "string", "string" },
},
});
example, err := pipes.NewPipe(ctx, "pipeResource", &pipes.PipeArgs{
RoleArn: pulumi.String("string"),
Source: pulumi.String("string"),
SourceParameters: &pipes.PipeSourceParametersArgs{
FilterCriteria: &pipes.PipeSourceParametersFilterCriteriaArgs{
Filters: pipes.PipeSourceParametersFilterCriteriaFilterArray{
&pipes.PipeSourceParametersFilterCriteriaFilterArgs{
Pattern: pulumi.String("string"),
},
},
},
},
Target: pulumi.String("string"),
TargetParameters: &pipes.PipeTargetParametersArgs{
InputTemplate: pulumi.String("string"),
},
Description: pulumi.String("string"),
DesiredState: pulumi.String("string"),
Enrichment: pulumi.String("string"),
Name: pulumi.String("string"),
NamePrefix: pulumi.String("string"),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
})
var pipeResource = new Pipe("pipeResource", PipeArgs.builder()
.roleArn("string")
.source("string")
.sourceParameters(PipeSourceParametersArgs.builder()
.filterCriteria(PipeSourceParametersFilterCriteriaArgs.builder()
.filters(PipeSourceParametersFilterCriteriaFilterArgs.builder()
.pattern("string")
.build())
.build())
.build())
.target("string")
.targetParameters(PipeTargetParametersArgs.builder()
.inputTemplate("string")
.build())
.description("string")
.desiredState("string")
.enrichment("string")
.name("string")
.namePrefix("string")
.tags(Map.of("string", "string"))
.build());
pipe_resource = aws.pipes.Pipe("pipeResource",
role_arn="string",
source="string",
source_parameters={
"filter_criteria": {
"filters": [{
"pattern": "string",
}],
},
},
target="string",
target_parameters={
"input_template": "string",
},
description="string",
desired_state="string",
enrichment="string",
name="string",
name_prefix="string",
tags={
"string": "string",
})
const pipeResource = new aws.pipes.Pipe("pipeResource", {
roleArn: "string",
source: "string",
sourceParameters: {
filterCriteria: {
filters: [{
pattern: "string",
}],
},
},
target: "string",
targetParameters: {
inputTemplate: "string",
},
description: "string",
desiredState: "string",
enrichment: "string",
name: "string",
namePrefix: "string",
tags: {
string: "string",
},
});
type: aws:pipes:Pipe
properties:
description: string
desiredState: string
enrichment: string
name: string
namePrefix: string
roleArn: string
source: string
sourceParameters:
filterCriteria:
filters:
- pattern: string
tags:
string: string
target: string
targetParameters:
inputTemplate: string
Pipe Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Pipe resource accepts the following input properties:
- Role
Arn string - ARN of the role that allows the pipe to send data to the target.
- Source string
- Source resource of the pipe (typically an ARN).
- Source
Parameters PipeSource Parameters - Parameters required to set up a source for the pipe. Detailed below.
- Target string
- Target resource of the pipe (typically an ARN).
- Target
Parameters PipeTarget Parameters Parameters required to set up a target for your pipe. Detailed below.
The following arguments are optional:
- Description string
- A description of the pipe. At most 512 characters.
- Desired
State string - The state the pipe should be in. One of:
RUNNING,STOPPED. - Enrichment string
- Enrichment resource of the pipe (typically an ARN). Read more about enrichment in the User Guide.
- Name string
- Name of the pipe. If omitted, the provider will assign a random, unique name. Conflicts with
name_prefix. - Name
Prefix string - Creates a unique name beginning with the specified prefix. Conflicts with
name. - Dictionary<string, string>
- Key-value mapping of resource tags. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- Role
Arn string - ARN of the role that allows the pipe to send data to the target.
- Source string
- Source resource of the pipe (typically an ARN).
- Source
Parameters PipeSource Parameters Args - Parameters required to set up a source for the pipe. Detailed below.
- Target string
- Target resource of the pipe (typically an ARN).
- Target
Parameters PipeTarget Parameters Args Parameters required to set up a target for your pipe. Detailed below.
The following arguments are optional:
- Description string
- A description of the pipe. At most 512 characters.
- Desired
State string - The state the pipe should be in. One of:
RUNNING,STOPPED. - Enrichment string
- Enrichment resource of the pipe (typically an ARN). Read more about enrichment in the User Guide.
- Name string
- Name of the pipe. If omitted, the provider will assign a random, unique name. Conflicts with
name_prefix. - Name
Prefix string - Creates a unique name beginning with the specified prefix. Conflicts with
name. - map[string]string
- Key-value mapping of resource tags. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- role
Arn String - ARN of the role that allows the pipe to send data to the target.
- source String
- Source resource of the pipe (typically an ARN).
- source
Parameters PipeSource Parameters - Parameters required to set up a source for the pipe. Detailed below.
- target String
- Target resource of the pipe (typically an ARN).
- target
Parameters PipeTarget Parameters Parameters required to set up a target for your pipe. Detailed below.
The following arguments are optional:
- description String
- A description of the pipe. At most 512 characters.
- desired
State String - The state the pipe should be in. One of:
RUNNING,STOPPED. - enrichment String
- Enrichment resource of the pipe (typically an ARN). Read more about enrichment in the User Guide.
- name String
- Name of the pipe. If omitted, the provider will assign a random, unique name. Conflicts with
name_prefix. - name
Prefix String - Creates a unique name beginning with the specified prefix. Conflicts with
name. - Map<String,String>
- Key-value mapping of resource tags. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- role
Arn string - ARN of the role that allows the pipe to send data to the target.
- source string
- Source resource of the pipe (typically an ARN).
- source
Parameters PipeSource Parameters - Parameters required to set up a source for the pipe. Detailed below.
- target string
- Target resource of the pipe (typically an ARN).
- target
Parameters PipeTarget Parameters Parameters required to set up a target for your pipe. Detailed below.
The following arguments are optional:
- description string
- A description of the pipe. At most 512 characters.
- desired
State string - The state the pipe should be in. One of:
RUNNING,STOPPED. - enrichment string
- Enrichment resource of the pipe (typically an ARN). Read more about enrichment in the User Guide.
- name string
- Name of the pipe. If omitted, the provider will assign a random, unique name. Conflicts with
name_prefix. - name
Prefix string - Creates a unique name beginning with the specified prefix. Conflicts with
name. - {[key: string]: string}
- Key-value mapping of resource tags. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- role_
arn str - ARN of the role that allows the pipe to send data to the target.
- source str
- Source resource of the pipe (typically an ARN).
- source_
parameters PipeSource Parameters Args - Parameters required to set up a source for the pipe. Detailed below.
- target str
- Target resource of the pipe (typically an ARN).
- target_
parameters PipeTarget Parameters Args Parameters required to set up a target for your pipe. Detailed below.
The following arguments are optional:
- description str
- A description of the pipe. At most 512 characters.
- desired_
state str - The state the pipe should be in. One of:
RUNNING,STOPPED. - enrichment str
- Enrichment resource of the pipe (typically an ARN). Read more about enrichment in the User Guide.
- name str
- Name of the pipe. If omitted, the provider will assign a random, unique name. Conflicts with
name_prefix. - name_
prefix str - Creates a unique name beginning with the specified prefix. Conflicts with
name. - Mapping[str, str]
- Key-value mapping of resource tags. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- role
Arn String - ARN of the role that allows the pipe to send data to the target.
- source String
- Source resource of the pipe (typically an ARN).
- source
Parameters Property Map - Parameters required to set up a source for the pipe. Detailed below.
- target String
- Target resource of the pipe (typically an ARN).
- target
Parameters Property Map Parameters required to set up a target for your pipe. Detailed below.
The following arguments are optional:
- description String
- A description of the pipe. At most 512 characters.
- desired
State String - The state the pipe should be in. One of:
RUNNING,STOPPED. - enrichment String
- Enrichment resource of the pipe (typically an ARN). Read more about enrichment in the User Guide.
- name String
- Name of the pipe. If omitted, the provider will assign a random, unique name. Conflicts with
name_prefix. - name
Prefix String - Creates a unique name beginning with the specified prefix. Conflicts with
name. - Map<String>
- Key-value mapping of resource tags. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
Outputs
All input properties are implicitly available as output properties. Additionally, the Pipe resource produces the following output properties:
Look up Existing Pipe Resource
Get an existing Pipe 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?: PipeState, opts?: CustomResourceOptions): Pipe@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
arn: Optional[str] = None,
description: Optional[str] = None,
desired_state: Optional[str] = None,
enrichment: Optional[str] = None,
name: Optional[str] = None,
name_prefix: Optional[str] = None,
role_arn: Optional[str] = None,
source: Optional[str] = None,
source_parameters: Optional[PipeSourceParametersArgs] = None,
tags: Optional[Mapping[str, str]] = None,
tags_all: Optional[Mapping[str, str]] = None,
target: Optional[str] = None,
target_parameters: Optional[PipeTargetParametersArgs] = None) -> Pipefunc GetPipe(ctx *Context, name string, id IDInput, state *PipeState, opts ...ResourceOption) (*Pipe, error)public static Pipe Get(string name, Input<string> id, PipeState? state, CustomResourceOptions? opts = null)public static Pipe get(String name, Output<String> id, PipeState state, CustomResourceOptions options)resources: _: type: aws:pipes:Pipe get: id: ${id}- 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.
- Arn string
- ARN of this pipe.
- Description string
- A description of the pipe. At most 512 characters.
- Desired
State string - The state the pipe should be in. One of:
RUNNING,STOPPED. - Enrichment string
- Enrichment resource of the pipe (typically an ARN). Read more about enrichment in the User Guide.
- Name string
- Name of the pipe. If omitted, the provider will assign a random, unique name. Conflicts with
name_prefix. - Name
Prefix string - Creates a unique name beginning with the specified prefix. Conflicts with
name. - Role
Arn string - ARN of the role that allows the pipe to send data to the target.
- Source string
- Source resource of the pipe (typically an ARN).
- Source
Parameters PipeSource Parameters - Parameters required to set up a source for the pipe. Detailed below.
- Dictionary<string, string>
- Key-value mapping of resource tags. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Dictionary<string, string>
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block. - Target string
- Target resource of the pipe (typically an ARN).
- Target
Parameters PipeTarget Parameters Parameters required to set up a target for your pipe. Detailed below.
The following arguments are optional:
- Arn string
- ARN of this pipe.
- Description string
- A description of the pipe. At most 512 characters.
- Desired
State string - The state the pipe should be in. One of:
RUNNING,STOPPED. - Enrichment string
- Enrichment resource of the pipe (typically an ARN). Read more about enrichment in the User Guide.
- Name string
- Name of the pipe. If omitted, the provider will assign a random, unique name. Conflicts with
name_prefix. - Name
Prefix string - Creates a unique name beginning with the specified prefix. Conflicts with
name. - Role
Arn string - ARN of the role that allows the pipe to send data to the target.
- Source string
- Source resource of the pipe (typically an ARN).
- Source
Parameters PipeSource Parameters Args - Parameters required to set up a source for the pipe. Detailed below.
- map[string]string
- Key-value mapping of resource tags. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - map[string]string
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block. - Target string
- Target resource of the pipe (typically an ARN).
- Target
Parameters PipeTarget Parameters Args Parameters required to set up a target for your pipe. Detailed below.
The following arguments are optional:
- arn String
- ARN of this pipe.
- description String
- A description of the pipe. At most 512 characters.
- desired
State String - The state the pipe should be in. One of:
RUNNING,STOPPED. - enrichment String
- Enrichment resource of the pipe (typically an ARN). Read more about enrichment in the User Guide.
- name String
- Name of the pipe. If omitted, the provider will assign a random, unique name. Conflicts with
name_prefix. - name
Prefix String - Creates a unique name beginning with the specified prefix. Conflicts with
name. - role
Arn String - ARN of the role that allows the pipe to send data to the target.
- source String
- Source resource of the pipe (typically an ARN).
- source
Parameters PipeSource Parameters - Parameters required to set up a source for the pipe. Detailed below.
- Map<String,String>
- Key-value mapping of resource tags. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Map<String,String>
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block. - target String
- Target resource of the pipe (typically an ARN).
- target
Parameters PipeTarget Parameters Parameters required to set up a target for your pipe. Detailed below.
The following arguments are optional:
- arn string
- ARN of this pipe.
- description string
- A description of the pipe. At most 512 characters.
- desired
State string - The state the pipe should be in. One of:
RUNNING,STOPPED. - enrichment string
- Enrichment resource of the pipe (typically an ARN). Read more about enrichment in the User Guide.
- name string
- Name of the pipe. If omitted, the provider will assign a random, unique name. Conflicts with
name_prefix. - name
Prefix string - Creates a unique name beginning with the specified prefix. Conflicts with
name. - role
Arn string - ARN of the role that allows the pipe to send data to the target.
- source string
- Source resource of the pipe (typically an ARN).
- source
Parameters PipeSource Parameters - Parameters required to set up a source for the pipe. Detailed below.
- {[key: string]: string}
- Key-value mapping of resource tags. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - {[key: string]: string}
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block. - target string
- Target resource of the pipe (typically an ARN).
- target
Parameters PipeTarget Parameters Parameters required to set up a target for your pipe. Detailed below.
The following arguments are optional:
- arn str
- ARN of this pipe.
- description str
- A description of the pipe. At most 512 characters.
- desired_
state str - The state the pipe should be in. One of:
RUNNING,STOPPED. - enrichment str
- Enrichment resource of the pipe (typically an ARN). Read more about enrichment in the User Guide.
- name str
- Name of the pipe. If omitted, the provider will assign a random, unique name. Conflicts with
name_prefix. - name_
prefix str - Creates a unique name beginning with the specified prefix. Conflicts with
name. - role_
arn str - ARN of the role that allows the pipe to send data to the target.
- source str
- Source resource of the pipe (typically an ARN).
- source_
parameters PipeSource Parameters Args - Parameters required to set up a source for the pipe. Detailed below.
- Mapping[str, str]
- Key-value mapping of resource tags. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Mapping[str, str]
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block. - target str
- Target resource of the pipe (typically an ARN).
- target_
parameters PipeTarget Parameters Args Parameters required to set up a target for your pipe. Detailed below.
The following arguments are optional:
- arn String
- ARN of this pipe.
- description String
- A description of the pipe. At most 512 characters.
- desired
State String - The state the pipe should be in. One of:
RUNNING,STOPPED. - enrichment String
- Enrichment resource of the pipe (typically an ARN). Read more about enrichment in the User Guide.
- name String
- Name of the pipe. If omitted, the provider will assign a random, unique name. Conflicts with
name_prefix. - name
Prefix String - Creates a unique name beginning with the specified prefix. Conflicts with
name. - role
Arn String - ARN of the role that allows the pipe to send data to the target.
- source String
- Source resource of the pipe (typically an ARN).
- source
Parameters Property Map - Parameters required to set up a source for the pipe. Detailed below.
- Map<String>
- Key-value mapping of resource tags. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Map<String>
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block. - target String
- Target resource of the pipe (typically an ARN).
- target
Parameters Property Map Parameters required to set up a target for your pipe. Detailed below.
The following arguments are optional:
Supporting Types
PipeSourceParameters, PipeSourceParametersArgs
- Filter
Criteria PipeSource Parameters Filter Criteria - The collection of event patterns used to filter events. Detailed below.
- Filter
Criteria PipeSource Parameters Filter Criteria - The collection of event patterns used to filter events. Detailed below.
- filter
Criteria PipeSource Parameters Filter Criteria - The collection of event patterns used to filter events. Detailed below.
- filter
Criteria PipeSource Parameters Filter Criteria - The collection of event patterns used to filter events. Detailed below.
- filter_
criteria PipeSource Parameters Filter Criteria - The collection of event patterns used to filter events. Detailed below.
- filter
Criteria Property Map - The collection of event patterns used to filter events. Detailed below.
PipeSourceParametersFilterCriteria, PipeSourceParametersFilterCriteriaArgs
- Filters
List<Pipe
Source Parameters Filter Criteria Filter> - An array of up to 5 event patterns. Detailed below.
- Filters
[]Pipe
Source Parameters Filter Criteria Filter - An array of up to 5 event patterns. Detailed below.
- filters
List<Pipe
Source Parameters Filter Criteria Filter> - An array of up to 5 event patterns. Detailed below.
- filters
Pipe
Source Parameters Filter Criteria Filter[] - An array of up to 5 event patterns. Detailed below.
- filters
Sequence[Pipe
Source Parameters Filter Criteria Filter] - An array of up to 5 event patterns. Detailed below.
- filters List<Property Map>
- An array of up to 5 event patterns. Detailed below.
PipeSourceParametersFilterCriteriaFilter, PipeSourceParametersFilterCriteriaFilterArgs
- Pattern string
- The event pattern. At most 4096 characters.
- Pattern string
- The event pattern. At most 4096 characters.
- pattern String
- The event pattern. At most 4096 characters.
- pattern string
- The event pattern. At most 4096 characters.
- pattern str
- The event pattern. At most 4096 characters.
- pattern String
- The event pattern. At most 4096 characters.
PipeTargetParameters, PipeTargetParametersArgs
- Input
Template string - Valid JSON text passed to the target. In this case, nothing from the event itself is passed to the target.
- Input
Template string - Valid JSON text passed to the target. In this case, nothing from the event itself is passed to the target.
- input
Template String - Valid JSON text passed to the target. In this case, nothing from the event itself is passed to the target.
- input
Template string - Valid JSON text passed to the target. In this case, nothing from the event itself is passed to the target.
- input_
template str - Valid JSON text passed to the target. In this case, nothing from the event itself is passed to the target.
- input
Template String - Valid JSON text passed to the target. In this case, nothing from the event itself is passed to the target.
Import
Pipes can be imported using the name. For example
$ pulumi import aws:pipes/pipe:Pipe example my-pipe
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
awsTerraform Provider.
published on Tuesday, Mar 10, 2026 by Pulumi