Creates an archive of events with the specified settings. When you create an archive, incoming events might not immediately start being sent to the archive. Allow a short period of time for changes to take effect. If you do not specify a pattern to filter events sent to the archive, all events are sent to the archive except replayed events. Replayed events are not sent to an archive.
Important
If you have specified that EventBridge use a customer managed key for encrypting the source event bus, we strongly recommend you also specify a customer managed key for any archives for the event bus as well.
For more information, see Encrypting archives in the Amazon EventBridge User Guide.
Request Syntax
{
"ArchiveName": "string
",
"Description": "string
",
"EventPattern": "string
",
"EventSourceArn": "string
",
"KmsKeyIdentifier": "string
",
"RetentionDays": number
}
Request Parameters
For information about the parameters that are common to all actions, see Common Parameters.
The request accepts the following data in JSON format.
- ArchiveName
-
The name for the archive to create.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 48.
Pattern:
[\.\-_A-Za-z0-9]+
Required: Yes
- Description
-
A description for the archive.
Type: String
Length Constraints: Maximum length of 512.
Pattern:
.*
Required: No
- EventPattern
-
An event pattern to use to filter events sent to the archive.
Type: String
Length Constraints: Maximum length of 4096.
Required: No
- EventSourceArn
-
The ARN of the event bus that sends events to the archive.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 1600.
Pattern:
^arn:aws([a-z]|\-)*:events:([a-z]|\d|\-)*:([0-9]{12})?:.+\/.+$
Required: Yes
- KmsKeyIdentifier
-
The identifier of the AWS KMS customer managed key for EventBridge to use, if you choose to use a customer managed key to encrypt this archive. The identifier can be the key Amazon Resource Name (ARN), KeyId, key alias, or key alias ARN.
If you do not specify a customer managed key identifier, EventBridge uses an AWS owned key to encrypt the archive.
For more information, see Identify and view keys in the AWS Key Management Service Developer Guide.
Important
If you have specified that EventBridge use a customer managed key for encrypting the source event bus, we strongly recommend you also specify a customer managed key for any archives for the event bus as well.
For more information, see Encrypting archives in the Amazon EventBridge User Guide.
Type: String
Length Constraints: Maximum length of 2048.
Pattern:
^[a-zA-Z0-9_\-/:]*$
Required: No
- RetentionDays
-
The number of days to retain events for. Default value is 0. If set to 0, events are retained indefinitely
Type: Integer
Valid Range: Minimum value of 0.
Required: No
Response Syntax
{
"ArchiveArn": "string",
"CreationTime": number,
"State": "string",
"StateReason": "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.
- ArchiveArn
-
The ARN of the archive that was created.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 1600.
Pattern:
^arn:aws([a-z]|\-)*:events:([a-z]|\d|\-)*:([0-9]{12})?:.+\/.+$
- CreationTime
-
The time at which the archive was created.
Type: Timestamp
- State
-
The state of the archive that was created.
Type: String
Valid Values:
ENABLED | DISABLED | CREATING | UPDATING | CREATE_FAILED | UPDATE_FAILED
- StateReason
-
The reason that the archive is in the state.
Type: String
Length Constraints: Maximum length of 512.
Pattern:
.*
Errors
For information about the errors that are common to all actions, see Common Errors.
- ConcurrentModificationException
-
There is concurrent modification on a rule, target, archive, or replay.
HTTP Status Code: 400
- InternalException
-
This exception occurs due to unexpected causes.
HTTP Status Code: 500
- InvalidEventPatternException
-
The event pattern is not valid.
HTTP Status Code: 400
- LimitExceededException
-
The request failed because it attempted to create resource beyond the allowed service quota.
HTTP Status Code: 400
- ResourceAlreadyExistsException
-
The resource you are trying to create already exists.
HTTP Status Code: 400
- ResourceNotFoundException
-
An entity that you specified does not exist.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: