Use the AWS::EventSchemas::Schema
resource to specify an event
schema.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{
"Type" : "AWS::EventSchemas::Schema",
"Properties" : {
"Content" : String
,
"Description" : String
,
"RegistryName" : String
,
"SchemaName" : String
,
"Tags" : [ TagsEntry, ... ]
,
"Type" : String
}
}
YAML
Type: AWS::EventSchemas::Schema
Properties:
Content: String
Description: String
RegistryName: String
SchemaName: String
Tags:
- TagsEntry
Type: String
Properties
Content
-
The source of the schema definition.
Required: Yes
Type: String
Update requires: No interruption
Description
-
A description of the schema.
Required: No
Type: String
Update requires: No interruption
RegistryName
-
The name of the schema registry.
Required: Yes
Type: String
Update requires: Replacement
SchemaName
-
The name of the schema.
Required: No
Type: String
Update requires: Replacement
-
Tags associated with the schema.
Required: No
Type: Array of TagsEntry
Update requires: No interruption
Type
-
The type of schema.
Valid types include
OpenApi3
andJSONSchemaDraft4
.Required: Yes
Type: String
Update requires: No interruption
Return values
Ref
When you provide the logical ID of this resource to the Ref
intrinsic
function, Ref
returns the ARN of the schema. For example:
{ "Ref": "MySchema" }
Returns a value similar to the following:
arn:aws:schemas:us-east-1:012345678901:schema/MyRegistry/MySchema
For more information about using the Ref
function, see Ref
.
Fn::GetAtt
The Fn::GetAtt
intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.
For more information about using the Fn::GetAtt
intrinsic function, see Fn::GetAtt
.
LastModified
-
The date and time that schema was modified.
SchemaArn
-
The ARN of the schema.
SchemaName
-
The name of the schema.
SchemaVersion
-
The version number of the schema.
VersionCreatedDate
-
The date the schema version was created.
Examples
YAML
Resources:
ExecutionStatusChangeSchema:
Type: AWS::EventSchemas::Schema
Properties:
RegistryName: 'aws.events'
SchemaName: ExecutionStatusChange
Description: 'event emitted when the status of a state machine execution change'
Type: OpenApi3
Content: >
{
"openapi": "3.0.0",
"info": {
"version": "1.0.0",
"title": "StepFunctionsExecutionStatusChange"
},
"paths":{},
"components": {
"schemas": {
"StepFunctionsExecutionStatusChange": {
"type": "object",
"required": [ "output", "input", "executionArn", "name", "stateMachineArn", "startDate", "stopDate", "status" ],
"properties": {
"output": {"type": "string","nullable": true},
"input": {"type": "string"},
"executionArn": {"type": "string"},
"name": {"type": "string"},
"stateMachineArn": {"type": "string"},
"startDate": {"type": "integer","format": "int64"},
"stopDate": {"type": "integer","format": "int64","nullable": true},
"status": {"type": "string","enum": [ "FAILED", "RUNNING", "SUCCEEDED", "ABORTED" ]}
}
}
}
}
}