AWS::Events::Endpoint - AWS CloudFormation (original) (raw)
A global endpoint used to improve your application's availability by making it regional-fault tolerant. For more information about global endpoints, see Making applications Regional-fault tolerant with global endpoints and event replication in the _Amazon EventBridge User Guide .
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
Properties
Description
A description for the endpoint.
Required: No
Type: String
Pattern: .*
Maximum: 512
Update requires: No interruption
EventBuses
The event buses being used by the endpoint.
Exactly: 2
Required: Yes
Type: Array of EndpointEventBus
Minimum: 2
Maximum: 2
Update requires: No interruption
Name
The name of the endpoint.
Required: No
Type: String
Pattern: ^[\.\-_A-Za-z0-9]+$
Minimum: 1
Maximum: 64
Update requires: Replacement
ReplicationConfig
Whether event replication was enabled or disabled for this endpoint. The default state isENABLED
which means you must supply a RoleArn
. If you don't have aRoleArn
or you don't want event replication enabled, set the state toDISABLED
.
Required: No
Type: ReplicationConfig
Update requires: No interruption
RoleArn
The ARN of the role used by event replication for the endpoint.
Required: No
Type: String
Pattern: ^arn:aws[a-z-]*:iam::\d{12}:role\/[\w+=,.@/-]+$
Minimum: 1
Maximum: 256
Update requires: No interruption
RoutingConfig
The routing configuration of the endpoint.
Required: Yes
Type: RoutingConfig
Update requires: No interruption
Return values
Ref
When you pass the logical ID of this resource to the intrinsic Ref
function, Ref
returns Endpoint ID, such asmystack-Endpoint-ABCDEFGHIJK
.
For more information about using the Ref
function, see Ref.
Fn::GetAtt
Arn
The ARN of the endpoint.
EndpointId
The ID of the endpoint.
EndpointUrl
The URL of the endpoint.
State
The main Region of the endpoint.
StateReason
The reason the endpoint is in its current state.
Examples
Create a global endpoint with event replication
The following example creates a global endpoint with event replication enabled.
JSON
{
"AWSTemplateFormatVersion": "2010-09-09",
"Description": "This template will create an Endpoint resource",
"Resources": {
"SampleEndpoint": {
"Type": "AWS::Events::Endpoint",
"Properties": {
"Name": "CreateExampleEndpoint",
"RoutingConfig": {
"FailoverConfig": {
"Primary": {
"HealthCheck": {
"arn:aws:route53:::healthcheck/0123456789abc"
}
},
"Secondary": {
"Route": {
"us-east-1"
}
}
}
},
"ReplicationConfig": {
"State": "ENABLED"
},
"RoleArn": {
"arn:aws:iam::123456789012:role/EndpointReplicationRole"
},
"EventBuses": [
{
"EventBusArn": {
"arn:aws:events:us-west-2:123456789012:event-bus/ExampleEventBus"
}
},
{
"EventBusArn": {
"arn:aws:events:us-east-1:123456789012:event-bus/ExampleEventBus"
}
}
]
}
}
},
"Outputs": {
"SampleEndpointName": {
"Value": {
"Ref": "SampleEndpoint"
}
}
}
}
YAML
AWSTemplateFormatVersion: "2010-09-09"
Description: "This template will create an Endpoint resource"
Resources:
SampleEndpoint:
Type: AWS::Events::Endpoint
Properties:
Name: CreateExampleEndpoint
RoutingConfig:
FailoverConfig:
Primary:
HealthCheck: "arn:aws:route53:::healthcheck/0123456789abc"
Secondary:
Route: "us-east-1"
ReplicationConfig:
State: "ENABLED"
RoleArn: "arn:aws:iam::123456789012:role/EndpointReplicationRole"
EventBuses:
- EventBusArn: "arn:aws:events:us-west-2:123456789012:event-bus/ExampleEventBus"
- EventBusArn: "arn:aws:events:us-east-1:123456789012:event-bus/ExampleEventBus"
Outputs:
SampleEndpointName:
Value: !Ref SampleEndpoint
Create a global endpoint without event replication
The following example creates a global endpoint with event replication disabled.
JSON
{
"AWSTemplateFormatVersion": "2010-09-09",
"Description": "This template will create an Endpoint resource",
"Resources": {
"SampleEndpoint": {
"Type": "AWS::Events::Endpoint",
"Properties": {
"Name": "CreateExampleEndpoint",
"RoutingConfig": {
"FailoverConfig": {
"Primary": {
"HealthCheck": {
"arn:aws:route53:::healthcheck/0123456789abc"
}
},
"Secondary": {
"Route": {
"us-east-1"
}
}
}
},
"ReplicationConfig": {
"State": "DISABLED"
},
"EventBuses": [
{
"EventBusArn": {
"arn:aws:events:us-west-2:123456789012:event-bus/ExampleEventBus"
}
},
{
"EventBusArn": {
"arn:aws:events:us-east-1:123456789012:event-bus/ExampleEventBus"
}
}
]
}
}
},
"Outputs": {
"SampleEndpointName": {
"Value": {
"Ref": "SampleEndpoint"
}
}
}
}
YAML
AWSTemplateFormatVersion: "2010-09-09"
Description: "This template will create an Endpoint resource"
Resources:
SampleEndpoint:
Type: AWS::Events::Endpoint
Properties:
Name: CreateExampleEndpoint
RoutingConfig:
FailoverConfig:
Primary:
HealthCheck: "arn:aws:route53:::healthcheck/0123456789abc"
Secondary:
Route: "us-east-1"
ReplicationConfig:
State: "DISABLED"
EventBuses:
- EventBusArn: "arn:aws:events:us-west-2:123456789012:event-bus/ExampleEventBus"
- EventBusArn: "arn:aws:events:us-east-1:123456789012:event-bus/ExampleEventBus"
Outputs:
SampleEndpointName:
Value: !Ref SampleEndpoint