CreatePipe - Amazon EventBridge Pipes

CreatePipe

Create a pipe. Amazon EventBridge Pipes connect event sources to targets and reduces the need for specialized knowledge and integration code.

Request Syntax

POST /v1/pipes/Name HTTP/1.1 Content-type: application/json { "Description": "string", "DesiredState": "string", "Enrichment": "string", "EnrichmentParameters": { "HttpParameters": { "HeaderParameters": { "string" : "string" }, "PathParameterValues": [ "string" ], "QueryStringParameters": { "string" : "string" } }, "InputTemplate": "string" }, "LogConfiguration": { "CloudwatchLogsLogDestination": { "LogGroupArn": "string" }, "FirehoseLogDestination": { "DeliveryStreamArn": "string" }, "IncludeExecutionData": [ "string" ], "Level": "string", "S3LogDestination": { "BucketName": "string", "BucketOwner": "string", "OutputFormat": "string", "Prefix": "string" } }, "RoleArn": "string", "Source": "string", "SourceParameters": { "ActiveMQBrokerParameters": { "BatchSize": number, "Credentials": { ... }, "MaximumBatchingWindowInSeconds": number, "QueueName": "string" }, "DynamoDBStreamParameters": { "BatchSize": number, "DeadLetterConfig": { "Arn": "string" }, "MaximumBatchingWindowInSeconds": number, "MaximumRecordAgeInSeconds": number, "MaximumRetryAttempts": number, "OnPartialBatchItemFailure": "string", "ParallelizationFactor": number, "StartingPosition": "string" }, "FilterCriteria": { "Filters": [ { "Pattern": "string" } ] }, "KinesisStreamParameters": { "BatchSize": number, "DeadLetterConfig": { "Arn": "string" }, "MaximumBatchingWindowInSeconds": number, "MaximumRecordAgeInSeconds": number, "MaximumRetryAttempts": number, "OnPartialBatchItemFailure": "string", "ParallelizationFactor": number, "StartingPosition": "string", "StartingPositionTimestamp": number }, "ManagedStreamingKafkaParameters": { "BatchSize": number, "ConsumerGroupID": "string", "Credentials": { ... }, "MaximumBatchingWindowInSeconds": number, "StartingPosition": "string", "TopicName": "string" }, "RabbitMQBrokerParameters": { "BatchSize": number, "Credentials": { ... }, "MaximumBatchingWindowInSeconds": number, "QueueName": "string", "VirtualHost": "string" }, "SelfManagedKafkaParameters": { "AdditionalBootstrapServers": [ "string" ], "BatchSize": number, "ConsumerGroupID": "string", "Credentials": { ... }, "MaximumBatchingWindowInSeconds": number, "ServerRootCaCertificate": "string", "StartingPosition": "string", "TopicName": "string", "Vpc": { "SecurityGroup": [ "string" ], "Subnets": [ "string" ] } }, "SqsQueueParameters": { "BatchSize": number, "MaximumBatchingWindowInSeconds": number } }, "Tags": { "string" : "string" }, "Target": "string", "TargetParameters": { "BatchJobParameters": { "ArrayProperties": { "Size": number }, "ContainerOverrides": { "Command": [ "string" ], "Environment": [ { "Name": "string", "Value": "string" } ], "InstanceType": "string", "ResourceRequirements": [ { "Type": "string", "Value": "string" } ] }, "DependsOn": [ { "JobId": "string", "Type": "string" } ], "JobDefinition": "string", "JobName": "string", "Parameters": { "string" : "string" }, "RetryStrategy": { "Attempts": number } }, "CloudWatchLogsParameters": { "LogStreamName": "string", "Timestamp": "string" }, "EcsTaskParameters": { "CapacityProviderStrategy": [ { "base": number, "capacityProvider": "string", "weight": number } ], "EnableECSManagedTags": boolean, "EnableExecuteCommand": boolean, "Group": "string", "LaunchType": "string", "NetworkConfiguration": { "awsvpcConfiguration": { "AssignPublicIp": "string", "SecurityGroups": [ "string" ], "Subnets": [ "string" ] } }, "Overrides": { "ContainerOverrides": [ { "Command": [ "string" ], "Cpu": number, "Environment": [ { "name": "string", "value": "string" } ], "EnvironmentFiles": [ { "type": "string", "value": "string" } ], "Memory": number, "MemoryReservation": number, "Name": "string", "ResourceRequirements": [ { "type": "string", "value": "string" } ] } ], "Cpu": "string", "EphemeralStorage": { "sizeInGiB": number }, "ExecutionRoleArn": "string", "InferenceAcceleratorOverrides": [ { "deviceName": "string", "deviceType": "string" } ], "Memory": "string", "TaskRoleArn": "string" }, "PlacementConstraints": [ { "expression": "string", "type": "string" } ], "PlacementStrategy": [ { "field": "string", "type": "string" } ], "PlatformVersion": "string", "PropagateTags": "string", "ReferenceId": "string", "Tags": [ { "Key": "string", "Value": "string" } ], "TaskCount": number, "TaskDefinitionArn": "string" }, "EventBridgeEventBusParameters": { "DetailType": "string", "EndpointId": "string", "Resources": [ "string" ], "Source": "string", "Time": "string" }, "HttpParameters": { "HeaderParameters": { "string" : "string" }, "PathParameterValues": [ "string" ], "QueryStringParameters": { "string" : "string" } }, "InputTemplate": "string", "KinesisStreamParameters": { "PartitionKey": "string" }, "LambdaFunctionParameters": { "InvocationType": "string" }, "RedshiftDataParameters": { "Database": "string", "DbUser": "string", "SecretManagerArn": "string", "Sqls": [ "string" ], "StatementName": "string", "WithEvent": boolean }, "SageMakerPipelineParameters": { "PipelineParameterList": [ { "Name": "string", "Value": "string" } ] }, "SqsQueueParameters": { "MessageDeduplicationId": "string", "MessageGroupId": "string" }, "StepFunctionStateMachineParameters": { "InvocationType": "string" } } }

URI Request Parameters

The request uses the following URI parameters.

Name

The name of the pipe.

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: [\.\-_A-Za-z0-9]+

Required: Yes

Request Body

The request accepts the following data in JSON format.

Description

A description of the pipe.

Type: String

Length Constraints: Minimum length of 0. Maximum length of 512.

Pattern: .*

Required: No

DesiredState

The state the pipe should be in.

Type: String

Valid Values: RUNNING | STOPPED

Required: No

Enrichment

The ARN of the enrichment resource.

Type: String

Length Constraints: Minimum length of 0. Maximum length of 1600.

Pattern: $|arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\-]+):([a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-\d{1})?:(\d{12})?:(.+)

Required: No

EnrichmentParameters

The parameters required to set up enrichment on your pipe.

Type: PipeEnrichmentParameters object

Required: No

LogConfiguration

The logging configuration settings for the pipe.

Type: PipeLogConfigurationParameters object

Required: No

RoleArn

The ARN of the role that allows the pipe to send data to the target.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 1600.

Pattern: arn:(aws[a-zA-Z-]*)?:iam::\d{12}:role/?[a-zA-Z0-9+=,.@\-_/]+

Required: Yes

Source

The ARN of the source resource.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 1600.

Pattern: smk://(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9]):[0-9]{1,5}|arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\-]+):([a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-\d{1})?:(\d{12})?:(.+)

Required: Yes

SourceParameters

The parameters required to set up a source for your pipe.

Type: PipeSourceParameters object

Required: No

Tags

The list of key-value pairs to associate with the pipe.

Type: String to string map

Map Entries: Maximum number of 50 items.

Key Length Constraints: Minimum length of 1. Maximum length of 128.

Value Length Constraints: Minimum length of 0. Maximum length of 256.

Required: No

Target

The ARN of the target resource.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 1600.

Pattern: arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\-]+):([a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-\d{1})?:(\d{12})?:(.+)

Required: Yes

TargetParameters

The parameters required to set up a target for your pipe.

For more information about pipe target parameters, including how to use dynamic path parameters, see Target parameters in the Amazon EventBridge User Guide.

Type: PipeTargetParameters object

Required: No

Response Syntax

HTTP/1.1 200 Content-type: application/json { "Arn": "string", "CreationTime": number, "CurrentState": "string", "DesiredState": "string", "LastModifiedTime": number, "Name": "string" }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

Arn

The ARN of the pipe.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 1600.

Pattern: arn:aws([a-z]|\-)*:([a-zA-Z0-9\-]+):([a-z]|\d|\-)*:([0-9]{12})?:(.+)

CreationTime

The time the pipe was created.

Type: Timestamp

CurrentState

The state the pipe is in.

Type: String

Valid Values: RUNNING | STOPPED | CREATING | UPDATING | DELETING | STARTING | STOPPING | CREATE_FAILED | UPDATE_FAILED | START_FAILED | STOP_FAILED | DELETE_FAILED | CREATE_ROLLBACK_FAILED | DELETE_ROLLBACK_FAILED | UPDATE_ROLLBACK_FAILED

DesiredState

The state the pipe should be in.

Type: String

Valid Values: RUNNING | STOPPED

LastModifiedTime

When the pipe was last updated, in ISO-8601 format (YYYY-MM-DDThh:mm:ss.sTZD).

Type: Timestamp

Name

The name of the pipe.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: [\.\-_A-Za-z0-9]+

Errors

For information about the errors that are common to all actions, see Common Errors.

ConflictException

An action you attempted resulted in an exception.

HTTP Status Code: 409

InternalException

This exception occurs due to unexpected causes.

HTTP Status Code: 500

NotFoundException

An entity that you specified does not exist.

HTTP Status Code: 404

ServiceQuotaExceededException

A quota has been exceeded.

HTTP Status Code: 402

ThrottlingException

An action was throttled.

HTTP Status Code: 429

ValidationException

Indicates that an error has occurred while performing a validate operation.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: