import type { ApiDestinationHttpMethod, ApiDestinationState, ArchiveState, AssignPublicIp, ConnectionAuthorizationType, ConnectionOAuthHttpMethod, ConnectionState, EndpointState, EventSourceState, IncludeDetail, LaunchType, Level, PlacementConstraintType, PlacementStrategyType, PropagateTags, ReplayState, ReplicationState, RuleState } from "./enums"; /** * @public */ export interface ActivateEventSourceRequest { /** *

The name of the partner event source to activate.

* @public */ Name: string | undefined; } /** *

Contains details about an API destination.

* @public */ export interface ApiDestination { /** *

The ARN of the API destination.

* @public */ ApiDestinationArn?: string | undefined; /** *

The name of the API destination.

* @public */ Name?: string | undefined; /** *

The state of the API destination.

* @public */ ApiDestinationState?: ApiDestinationState | undefined; /** *

The ARN of the connection specified for the API destination.

* @public */ ConnectionArn?: string | undefined; /** *

The URL to the endpoint for the API destination.

* @public */ InvocationEndpoint?: string | undefined; /** *

The method to use to connect to the HTTP endpoint.

* @public */ HttpMethod?: ApiDestinationHttpMethod | undefined; /** *

The maximum number of invocations per second to send to the HTTP endpoint.

* @public */ InvocationRateLimitPerSecond?: number | undefined; /** *

A time stamp for the time that the API destination was created.

* @public */ CreationTime?: Date | undefined; /** *

A time stamp for the time that the API destination was last modified.

* @public */ LastModifiedTime?: Date | undefined; } /** *

Contains the GraphQL operation to be parsed and executed, if the event target is an * AppSync API.

* @public */ export interface AppSyncParameters { /** *

The GraphQL operation; that is, the query, mutation, or subscription to be parsed and * executed by the GraphQL service.

*

For more information, see Operations in the AppSync User Guide.

* @public */ GraphQLOperation?: string | undefined; } /** *

An Archive object that contains details about an archive.

* @public */ export interface Archive { /** *

The name of the archive.

* @public */ ArchiveName?: string | undefined; /** *

The ARN of the event bus associated with the archive. Only events from this event bus are * sent to the archive.

* @public */ EventSourceArn?: string | undefined; /** *

The current state of the archive.

* @public */ State?: ArchiveState | undefined; /** *

A description for the reason that the archive is in the current state.

* @public */ StateReason?: string | undefined; /** *

The number of days to retain events in the archive before they are deleted.

* @public */ RetentionDays?: number | undefined; /** *

The size of the archive, in bytes.

* @public */ SizeBytes?: number | undefined; /** *

The number of events in the archive.

* @public */ EventCount?: number | undefined; /** *

The time stamp for the time that the archive was created.

* @public */ CreationTime?: Date | undefined; } /** * @public */ export interface CancelReplayRequest { /** *

The name of the replay to cancel.

* @public */ ReplayName: string | undefined; } /** * @public */ export interface CancelReplayResponse { /** *

The ARN of the replay to cancel.

* @public */ ReplayArn?: string | undefined; /** *

The current state of the replay.

* @public */ State?: ReplayState | undefined; /** *

The reason that the replay is in the current state.

* @public */ StateReason?: string | undefined; } /** * @public */ export interface CreateApiDestinationRequest { /** *

The name for the API destination to create.

* @public */ Name: string | undefined; /** *

A description for the API destination to create.

* @public */ Description?: string | undefined; /** *

The ARN of the connection to use for the API destination. The destination endpoint must * support the authorization type specified for the connection.

* @public */ ConnectionArn: string | undefined; /** *

The URL to the HTTP invocation endpoint for the API destination.

* @public */ InvocationEndpoint: string | undefined; /** *

The method to use for the request to the HTTP invocation endpoint.

* @public */ HttpMethod: ApiDestinationHttpMethod | undefined; /** *

The maximum number of requests per second to send to the HTTP invocation endpoint.

* @public */ InvocationRateLimitPerSecond?: number | undefined; } /** * @public */ export interface CreateApiDestinationResponse { /** *

The ARN of the API destination that was created by the request.

* @public */ ApiDestinationArn?: string | undefined; /** *

The state of the API destination that was created by the request.

* @public */ ApiDestinationState?: ApiDestinationState | undefined; /** *

A time stamp indicating the time that the API destination was created.

* @public */ CreationTime?: Date | undefined; /** *

A time stamp indicating the time that the API destination was last modified.

* @public */ LastModifiedTime?: Date | undefined; } /** * @public */ export interface CreateArchiveRequest { /** *

The name for the archive to create.

* @public */ ArchiveName: string | undefined; /** *

The ARN of the event bus that sends events to the archive.

* @public */ EventSourceArn: string | undefined; /** *

A description for the archive.

* @public */ Description?: string | undefined; /** *

An event pattern to use to filter events sent to the archive.

* @public */ EventPattern?: string | undefined; /** *

The number of days to retain events for. Default value is 0. If set to 0, events are * retained indefinitely

* @public */ RetentionDays?: number | undefined; /** *

The identifier of the 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 * Amazon Web Services owned key to encrypt the archive.

*

For more information, see Identify and view keys in the Key Management Service * Developer Guide.

* *

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.

*
* @public */ KmsKeyIdentifier?: string | undefined; } /** * @public */ export interface CreateArchiveResponse { /** *

The ARN of the archive that was created.

* @public */ ArchiveArn?: string | undefined; /** *

The state of the archive that was created.

* @public */ State?: ArchiveState | undefined; /** *

The reason that the archive is in the state.

* @public */ StateReason?: string | undefined; /** *

The time at which the archive was created.

* @public */ CreationTime?: Date | undefined; } /** *

The API key authorization parameters for the connection.

* @public */ export interface CreateConnectionApiKeyAuthRequestParameters { /** *

The name of the API key to use for authorization.

* @public */ ApiKeyName: string | undefined; /** *

The value for the API key to use for authorization.

* @public */ ApiKeyValue: string | undefined; } /** *

Contains the Basic authorization parameters to use for the connection.

* @public */ export interface CreateConnectionBasicAuthRequestParameters { /** *

The user name to use for Basic authorization.

* @public */ Username: string | undefined; /** *

The password associated with the user name to use for Basic authorization.

* @public */ Password: string | undefined; } /** *

The Amazon Resource Name (ARN) of the Amazon VPC Lattice resource configuration for the resource endpoint.

* @public */ export interface ConnectivityResourceConfigurationArn { /** *

The Amazon Resource Name (ARN) of the Amazon VPC Lattice resource configuration for the resource endpoint.

* @public */ ResourceConfigurationArn: string | undefined; } /** *

The parameters for EventBridge to use when invoking the resource endpoint.

* @public */ export interface ConnectivityResourceParameters { /** *

The parameters for EventBridge to use when invoking the resource endpoint.

* @public */ ResourceParameters: ConnectivityResourceConfigurationArn | undefined; } /** *

Additional parameter included in the body. You can include up to 100 additional body * parameters per request. An event payload cannot exceed 64 KB.

* @public */ export interface ConnectionBodyParameter { /** *

The key for the parameter.

* @public */ Key?: string | undefined; /** *

The value associated with the key.

* @public */ Value?: string | undefined; /** *

Specifies whether the value is secret.

* @public */ IsValueSecret?: boolean | undefined; } /** *

Additional parameter included in the header. You can include up to 100 additional header * parameters per request. An event payload cannot exceed 64 KB.

* @public */ export interface ConnectionHeaderParameter { /** *

The key for the parameter.

* @public */ Key?: string | undefined; /** *

The value associated with the key.

* @public */ Value?: string | undefined; /** *

Specifies whether the value is a secret.

* @public */ IsValueSecret?: boolean | undefined; } /** *

Any additional query string parameter for the connection. You can include up to 100 additional * query string parameters per request. Each additional parameter counts towards the event * payload size, which cannot exceed 64 KB.

* @public */ export interface ConnectionQueryStringParameter { /** *

The key for a query string parameter.

* @public */ Key?: string | undefined; /** *

The value associated with the key for the query string parameter.

* @public */ Value?: string | undefined; /** *

Specifies whether the value is secret.

* @public */ IsValueSecret?: boolean | undefined; } /** *

Any additional parameters for the connection.

* @public */ export interface ConnectionHttpParameters { /** *

Any additional header parameters for the connection.

* @public */ HeaderParameters?: ConnectionHeaderParameter[] | undefined; /** *

Any additional query string parameters for the connection.

* @public */ QueryStringParameters?: ConnectionQueryStringParameter[] | undefined; /** *

Any additional body string parameters for the connection.

* @public */ BodyParameters?: ConnectionBodyParameter[] | undefined; } /** *

The Basic authorization parameters to use for the connection.

* @public */ export interface CreateConnectionOAuthClientRequestParameters { /** *

The client ID to use for OAuth authorization for the connection.

* @public */ ClientID: string | undefined; /** *

The client secret associated with the client ID to use for OAuth authorization for the * connection.

* @public */ ClientSecret: string | undefined; } /** *

Contains the OAuth authorization parameters to use for the connection.

* @public */ export interface CreateConnectionOAuthRequestParameters { /** *

The client parameters for OAuth authorization.

* @public */ ClientParameters: CreateConnectionOAuthClientRequestParameters | undefined; /** *

The URL to the authorization endpoint when OAuth is specified as the authorization * type.

* @public */ AuthorizationEndpoint: string | undefined; /** *

The method to use for the authorization request.

* @public */ HttpMethod: ConnectionOAuthHttpMethod | undefined; /** *

Details about the additional * parameters to use for the connection.

* @public */ OAuthHttpParameters?: ConnectionHttpParameters | undefined; } /** *

The authorization parameters for the connection.

*

You must include only authorization parameters for the AuthorizationType you specify.

* @public */ export interface CreateConnectionAuthRequestParameters { /** *

The Basic * authorization parameters to use for the connection.

* @public */ BasicAuthParameters?: CreateConnectionBasicAuthRequestParameters | undefined; /** *

The OAuth * authorization parameters to use for the connection.

* @public */ OAuthParameters?: CreateConnectionOAuthRequestParameters | undefined; /** *

The API * key authorization parameters to use for the connection.

* @public */ ApiKeyAuthParameters?: CreateConnectionApiKeyAuthRequestParameters | undefined; /** *

The API key authorization * parameters to use for the connection. Note that if you include additional parameters for the * target of a rule via HttpParameters, including query strings, the parameters * added for the connection take precedence.

* @public */ InvocationHttpParameters?: ConnectionHttpParameters | undefined; /** *

If you specify a private OAuth endpoint, the parameters for EventBridge to use when authenticating against the endpoint.

*

For more information, see Authorization methods for connections in the * Amazon EventBridge User Guide * .

* @public */ ConnectivityParameters?: ConnectivityResourceParameters | undefined; } /** * @public */ export interface CreateConnectionRequest { /** *

The name for the connection to create.

* @public */ Name: string | undefined; /** *

A description for the connection to create.

* @public */ Description?: string | undefined; /** *

The type of authorization to use for the connection.

* *

OAUTH tokens are refreshed when a 401 or 407 response is returned.

*
* @public */ AuthorizationType: ConnectionAuthorizationType | undefined; /** *

The * authorization parameters to use to authorize with the endpoint.

*

You must include only authorization parameters for the AuthorizationType you specify.

* @public */ AuthParameters: CreateConnectionAuthRequestParameters | undefined; /** *

For connections to private APIs, the parameters to use for invoking the API.

*

For more information, see Connecting to private APIs in the * Amazon EventBridge User Guide * .

* @public */ InvocationConnectivityParameters?: ConnectivityResourceParameters | undefined; /** *

The identifier of the KMS * customer managed key for EventBridge to use, if you choose to use a customer managed key to encrypt this connection. 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 * Amazon Web Services owned key to encrypt the connection.

*

For more information, see Identify and view keys in the Key Management Service * Developer Guide.

* @public */ KmsKeyIdentifier?: string | undefined; } /** * @public */ export interface CreateConnectionResponse { /** *

The ARN of the connection that was created by the request.

* @public */ ConnectionArn?: string | undefined; /** *

The state of the connection that was created by the request.

* @public */ ConnectionState?: ConnectionState | undefined; /** *

A time stamp for the time that the connection was created.

* @public */ CreationTime?: Date | undefined; /** *

A time stamp for the time that the connection was last updated.

* @public */ LastModifiedTime?: Date | undefined; } /** *

The event buses the endpoint is associated with.

* @public */ export interface EndpointEventBus { /** *

The ARN of the event bus the endpoint is associated with.

* @public */ EventBusArn: string | undefined; } /** *

Endpoints can replicate all events to the secondary Region.

* @public */ export interface ReplicationConfig { /** *

The state of event replication.

* @public */ State?: ReplicationState | undefined; } /** *

The primary Region of the endpoint.

* @public */ export interface Primary { /** *

The ARN of the health check used by the endpoint to determine whether failover is * triggered.

* @public */ HealthCheck: string | undefined; } /** *

The secondary Region that processes events when failover is triggered or replication is * enabled.

* @public */ export interface Secondary { /** *

Defines the secondary Region.

* @public */ Route: string | undefined; } /** *

The failover configuration for an endpoint. This includes what triggers failover and what * happens when it's triggered.

* @public */ export interface FailoverConfig { /** *

The main Region of the endpoint.

* @public */ Primary: Primary | undefined; /** *

The Region that events are routed to when failover is triggered or event replication is * enabled.

* @public */ Secondary: Secondary | undefined; } /** *

The routing configuration of the endpoint.

* @public */ export interface RoutingConfig { /** *

The failover configuration for an endpoint. This includes what triggers failover and what * happens when it's triggered.

* @public */ FailoverConfig: FailoverConfig | undefined; } /** * @public */ export interface CreateEndpointRequest { /** *

The name of the global endpoint. For example, * "Name":"us-east-2-custom_bus_A-endpoint".

* @public */ Name: string | undefined; /** *

A description of the global endpoint.

* @public */ Description?: string | undefined; /** *

Configure the routing policy, including the health check and secondary Region..

* @public */ RoutingConfig: RoutingConfig | undefined; /** *

Enable or disable event replication. The default state is ENABLED which means * you must supply a RoleArn. If you don't have a RoleArn or you don't * want event replication enabled, set the state to DISABLED.

* @public */ ReplicationConfig?: ReplicationConfig | undefined; /** *

Define the event buses used.

* *

The names of the event buses must be identical in each Region.

*
* @public */ EventBuses: EndpointEventBus[] | undefined; /** *

The ARN of the role used for replication.

* @public */ RoleArn?: string | undefined; } /** * @public */ export interface CreateEndpointResponse { /** *

The name of the endpoint that was created by this request.

* @public */ Name?: string | undefined; /** *

The ARN of the endpoint that was created by this request.

* @public */ Arn?: string | undefined; /** *

The routing configuration defined by this request.

* @public */ RoutingConfig?: RoutingConfig | undefined; /** *

Whether event replication was enabled or disabled by this request.

* @public */ ReplicationConfig?: ReplicationConfig | undefined; /** *

The event buses used by this request.

* @public */ EventBuses?: EndpointEventBus[] | undefined; /** *

The ARN of the role used by event replication for this request.

* @public */ RoleArn?: string | undefined; /** *

The state of the endpoint that was created by this request.

* @public */ State?: EndpointState | undefined; } /** *

Configuration details of the Amazon SQS queue for EventBridge to use as a * dead-letter queue (DLQ).

*

For more information, see Using dead-letter queues to process undelivered events in the EventBridge User * Guide.

* @public */ export interface DeadLetterConfig { /** *

The ARN of the SQS queue specified as the target for the dead-letter queue.

* @public */ Arn?: string | undefined; } /** *

The logging configuration settings for the event bus.

*

For more information, see Configuring logs for event buses in the EventBridge User Guide.

* @public */ export interface LogConfig { /** *

Whether EventBridge include detailed event information in the records it generates. * Detailed data can be useful for troubleshooting and debugging. This information includes details of the event itself, as well as target details.

*

For more information, see Including detail data in event bus logs in the EventBridge User Guide.

* @public */ IncludeDetail?: IncludeDetail | undefined; /** *

The level of logging detail to include. This applies to all log destinations for the event bus.

*

For more information, see Specifying event bus log level in the EventBridge User Guide.

* @public */ Level?: Level | undefined; } /** *

A key-value pair associated with an Amazon Web Services resource. In EventBridge, * rules and event buses support tagging.

* @public */ export interface Tag { /** *

A string you can use to assign a value. The combination of tag keys and values can help * you organize and categorize your resources.

* @public */ Key: string | undefined; /** *

The value for the specified tag key.

* @public */ Value: string | undefined; } /** * @public */ export interface CreateEventBusRequest { /** *

The name of the new event bus.

*

Custom event bus names can't contain the / character, but you can use the * / character in partner event bus names. In addition, for partner event buses, * the name must exactly match the name of the partner event source that this event bus is * matched to.

*

You can't use the name default for a custom event bus, as this name is * already used for your account's default event bus.

* @public */ Name: string | undefined; /** *

If you are creating a partner event bus, this specifies the partner event source that the * new event bus will be matched with.

* @public */ EventSourceName?: string | undefined; /** *

The event bus description.

* @public */ Description?: string | undefined; /** *

The identifier of the KMS * customer managed key for EventBridge to use, if you choose to use a customer managed key to encrypt events on this event bus. 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 * Amazon Web Services owned key to encrypt events on the event bus.

*

For more information, see Identify and view keys in the Key Management Service * Developer Guide.

* *

Schema discovery is not supported for event buses encrypted using a * customer managed key. EventBridge returns an error if:

* *

To enable schema discovery on an event bus, choose to * use an Amazon Web Services owned key. For more information, see Encrypting events in the Amazon EventBridge User Guide.

*
* *

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.

*
* @public */ KmsKeyIdentifier?: string | undefined; /** *

Configuration details of the Amazon SQS queue for EventBridge to use as a * dead-letter queue (DLQ).

*

For more information, see Using dead-letter queues to process undelivered events in the EventBridge User * Guide.

* @public */ DeadLetterConfig?: DeadLetterConfig | undefined; /** *

The logging configuration settings for the event bus.

*

For more information, see Configuring logs for event buses in the EventBridge User Guide.

* @public */ LogConfig?: LogConfig | undefined; /** *

Tags to associate with the event bus.

* @public */ Tags?: Tag[] | undefined; } /** * @public */ export interface CreateEventBusResponse { /** *

The ARN of the new event bus.

* @public */ EventBusArn?: string | undefined; /** *

The event bus description.

* @public */ Description?: string | undefined; /** *

The identifier of the KMS * customer managed key for EventBridge to use to encrypt events on this event bus, if one has been specified.

*

For more information, see Data encryption in EventBridge in the Amazon EventBridge User Guide.

* @public */ KmsKeyIdentifier?: string | undefined; /** *

Configuration details of the Amazon SQS queue for EventBridge to use as a * dead-letter queue (DLQ).

*

For more information, see Using dead-letter queues to process undelivered events in the EventBridge User * Guide.

* @public */ DeadLetterConfig?: DeadLetterConfig | undefined; /** *

The logging configuration settings for the event bus.

*

For more information, see Configuring logs for event buses in the EventBridge User Guide.

* @public */ LogConfig?: LogConfig | undefined; } /** * @public */ export interface CreatePartnerEventSourceRequest { /** *

The name of the partner event source. This name must be unique and must be in the format * * partner_name/event_namespace/event_name * . * The Amazon Web Services account that wants to use this partner event source must create a * partner event bus with a name that matches the name of the partner event source.

* @public */ Name: string | undefined; /** *

The Amazon Web Services account ID that is permitted to create a matching partner event bus * for this partner event source.

* @public */ Account: string | undefined; } /** * @public */ export interface CreatePartnerEventSourceResponse { /** *

The ARN of the partner event source.

* @public */ EventSourceArn?: string | undefined; } /** * @public */ export interface DeactivateEventSourceRequest { /** *

The name of the partner event source to deactivate.

* @public */ Name: string | undefined; } /** * @public */ export interface DeauthorizeConnectionRequest { /** *

The name of the connection to remove authorization from.

* @public */ Name: string | undefined; } /** * @public */ export interface DeauthorizeConnectionResponse { /** *

The ARN of the connection that authorization was removed from.

* @public */ ConnectionArn?: string | undefined; /** *

The state of the connection.

* @public */ ConnectionState?: ConnectionState | undefined; /** *

A time stamp for the time that the connection was created.

* @public */ CreationTime?: Date | undefined; /** *

A time stamp for the time that the connection was last updated.

* @public */ LastModifiedTime?: Date | undefined; /** *

A time stamp for the time that the connection was last authorized.

* @public */ LastAuthorizedTime?: Date | undefined; } /** * @public */ export interface DeleteApiDestinationRequest { /** *

The name of the destination to delete.

* @public */ Name: string | undefined; } /** * @public */ export interface DeleteApiDestinationResponse { } /** * @public */ export interface DeleteArchiveRequest { /** *

The name of the archive to delete.

* @public */ ArchiveName: string | undefined; } /** * @public */ export interface DeleteArchiveResponse { } /** * @public */ export interface DeleteConnectionRequest { /** *

The name of the connection to delete.

* @public */ Name: string | undefined; } /** * @public */ export interface DeleteConnectionResponse { /** *

The ARN of the connection that was deleted.

* @public */ ConnectionArn?: string | undefined; /** *

The state of the connection before it was deleted.

* @public */ ConnectionState?: ConnectionState | undefined; /** *

A time stamp for the time that the connection was created.

* @public */ CreationTime?: Date | undefined; /** *

A time stamp for the time that the connection was last modified before it was * deleted.

* @public */ LastModifiedTime?: Date | undefined; /** *

A time stamp for the time that the connection was last authorized before it wa * deleted.

* @public */ LastAuthorizedTime?: Date | undefined; } /** * @public */ export interface DeleteEndpointRequest { /** *

The name of the endpoint you want to delete. For example, * "Name":"us-east-2-custom_bus_A-endpoint"..

* @public */ Name: string | undefined; } /** * @public */ export interface DeleteEndpointResponse { } /** * @public */ export interface DeleteEventBusRequest { /** *

The name of the event bus to delete.

* @public */ Name: string | undefined; } /** * @public */ export interface DeletePartnerEventSourceRequest { /** *

The name of the event source to delete.

* @public */ Name: string | undefined; /** *

The Amazon Web Services account ID of the Amazon Web Services customer that the event source * was created for.

* @public */ Account: string | undefined; } /** * @public */ export interface DeleteRuleRequest { /** *

The name of the rule.

* @public */ Name: string | undefined; /** *

The name or ARN of the event bus associated with the rule. If you omit this, the default * event bus is used.

* @public */ EventBusName?: string | undefined; /** *

If this is a managed rule, created by an Amazon Web Services service on your behalf, you * must specify Force as True to delete the rule. This parameter is * ignored for rules that are not managed rules. You can check whether a rule is a managed rule * by using DescribeRule or ListRules and checking the * ManagedBy field of the response.

* @public */ Force?: boolean | undefined; } /** * @public */ export interface DescribeApiDestinationRequest { /** *

The name of the API destination to retrieve.

* @public */ Name: string | undefined; } /** * @public */ export interface DescribeApiDestinationResponse { /** *

The ARN of the API destination retrieved.

* @public */ ApiDestinationArn?: string | undefined; /** *

The name of the API destination retrieved.

* @public */ Name?: string | undefined; /** *

The description for the API destination retrieved.

* @public */ Description?: string | undefined; /** *

The state of the API destination retrieved.

* @public */ ApiDestinationState?: ApiDestinationState | undefined; /** *

The ARN of the connection specified for the API destination retrieved.

* @public */ ConnectionArn?: string | undefined; /** *

The URL to use to connect to the HTTP endpoint.

* @public */ InvocationEndpoint?: string | undefined; /** *

The method to use to connect to the HTTP endpoint.

* @public */ HttpMethod?: ApiDestinationHttpMethod | undefined; /** *

The maximum number of invocations per second to specified for the API destination. Note * that if you set the invocation rate maximum to a value lower the rate necessary to send all * events received on to the destination HTTP endpoint, some events may not be delivered within * the 24-hour retry window. If you plan to set the rate lower than the rate necessary to deliver * all events, consider using a dead-letter queue to catch events that are not delivered within * 24 hours.

* @public */ InvocationRateLimitPerSecond?: number | undefined; /** *

A time stamp for the time that the API destination was created.

* @public */ CreationTime?: Date | undefined; /** *

A time stamp for the time that the API destination was last modified.

* @public */ LastModifiedTime?: Date | undefined; } /** * @public */ export interface DescribeArchiveRequest { /** *

The name of the archive to retrieve.

* @public */ ArchiveName: string | undefined; } /** * @public */ export interface DescribeArchiveResponse { /** *

The ARN of the archive.

* @public */ ArchiveArn?: string | undefined; /** *

The name of the archive.

* @public */ ArchiveName?: string | undefined; /** *

The ARN of the event source associated with the archive.

* @public */ EventSourceArn?: string | undefined; /** *

The description of the archive.

* @public */ Description?: string | undefined; /** *

The event pattern used to filter events sent to the archive.

* @public */ EventPattern?: string | undefined; /** *

The state of the archive.

* @public */ State?: ArchiveState | undefined; /** *

The reason that the archive is in the state.

* @public */ StateReason?: string | undefined; /** *

The identifier of the KMS * customer managed key for EventBridge to use to encrypt this archive, if one has been specified.

*

For more information, see Encrypting archives in the Amazon EventBridge User Guide.

* @public */ KmsKeyIdentifier?: string | undefined; /** *

The number of days to retain events for in the archive.

* @public */ RetentionDays?: number | undefined; /** *

The size of the archive in bytes.

* @public */ SizeBytes?: number | undefined; /** *

The number of events in the archive.

* @public */ EventCount?: number | undefined; /** *

The time at which the archive was created.

* @public */ CreationTime?: Date | undefined; } /** * @public */ export interface DescribeConnectionRequest { /** *

The name of the connection to retrieve.

* @public */ Name: string | undefined; } /** *

Contains the authorization parameters for the connection if API Key is specified as the * authorization type.

* @public */ export interface ConnectionApiKeyAuthResponseParameters { /** *

The name of the header to use for the APIKeyValue used for * authorization.

* @public */ ApiKeyName?: string | undefined; } /** *

The authorization parameters for the connection if Basic is specified as the * authorization type.

* @public */ export interface ConnectionBasicAuthResponseParameters { /** *

The user name to use for Basic authorization.

* @public */ Username?: string | undefined; } /** *

The parameters for EventBridge to use when invoking the resource endpoint.

* @public */ export interface DescribeConnectionResourceParameters { /** *

The Amazon Resource Name (ARN) of the resource configuration for the private API.

* @public */ ResourceConfigurationArn: string | undefined; /** *

For connections to private APIs, the Amazon Resource Name (ARN) of the resource association EventBridge created between the connection and the private API's resource configuration.

*

For more information, see * Managing service network resource associations for connections in the * Amazon EventBridge User Guide * .

* @public */ ResourceAssociationArn: string | undefined; } /** *

If the connection uses a private OAuth endpoint, the parameters for EventBridge to use when authenticating against the endpoint.

*

For more information, see Authorization methods for connections in the * Amazon EventBridge User Guide * .

* @public */ export interface DescribeConnectionConnectivityParameters { /** *

The parameters for EventBridge to use when invoking the resource endpoint.

* @public */ ResourceParameters: DescribeConnectionResourceParameters | undefined; } /** *

The client response parameters for the connection when OAuth is specified as the * authorization type.

* @public */ export interface ConnectionOAuthClientResponseParameters { /** *

The client ID associated with the response to the connection request.

* @public */ ClientID?: string | undefined; } /** *

The response parameters when OAuth is specified as the authorization type.

* @public */ export interface ConnectionOAuthResponseParameters { /** *

Details about the client parameters returned when OAuth is specified as the authorization type.

* @public */ ClientParameters?: ConnectionOAuthClientResponseParameters | undefined; /** *

The URL to the HTTP endpoint that authorized the request.

* @public */ AuthorizationEndpoint?: string | undefined; /** *

The method used to connect to the HTTP endpoint.

* @public */ HttpMethod?: ConnectionOAuthHttpMethod | undefined; /** *

The additional HTTP parameters used for the OAuth authorization request.

* @public */ OAuthHttpParameters?: ConnectionHttpParameters | undefined; } /** *

Tthe authorization parameters to use for the connection.

* @public */ export interface ConnectionAuthResponseParameters { /** *

The authorization parameters for Basic authorization.

* @public */ BasicAuthParameters?: ConnectionBasicAuthResponseParameters | undefined; /** *

The OAuth parameters to use for authorization.

* @public */ OAuthParameters?: ConnectionOAuthResponseParameters | undefined; /** *

The API Key parameters to use for authorization.

* @public */ ApiKeyAuthParameters?: ConnectionApiKeyAuthResponseParameters | undefined; /** *

Additional parameters for the connection that are passed through with every invocation to * the HTTP endpoint.

* @public */ InvocationHttpParameters?: ConnectionHttpParameters | undefined; /** *

For private OAuth authentication endpoints. The parameters EventBridge uses to authenticate against the endpoint.

*

For more information, see Authorization methods for connections in the * Amazon EventBridge User Guide * .

* @public */ ConnectivityParameters?: DescribeConnectionConnectivityParameters | undefined; } /** * @public */ export interface DescribeConnectionResponse { /** *

The ARN of the connection retrieved.

* @public */ ConnectionArn?: string | undefined; /** *

The name of the connection retrieved.

* @public */ Name?: string | undefined; /** *

The description for the connection retrieved.

* @public */ Description?: string | undefined; /** *

For connections to private APIs The parameters EventBridge uses to invoke the resource * endpoint.

*

For more information, see Connecting to private APIs in the * Amazon EventBridge User Guide * .

* @public */ InvocationConnectivityParameters?: DescribeConnectionConnectivityParameters | undefined; /** *

The state of the connection retrieved.

* @public */ ConnectionState?: ConnectionState | undefined; /** *

The reason that the connection is in the current connection state.

* @public */ StateReason?: string | undefined; /** *

The type of authorization specified for the connection.

* @public */ AuthorizationType?: ConnectionAuthorizationType | undefined; /** *

The ARN of the secret created from the authorization parameters specified for the * connection.

* @public */ SecretArn?: string | undefined; /** *

The identifier of the KMS * customer managed key for EventBridge to use to encrypt the connection, if one has been specified.

*

For more information, see Encrypting connections in the Amazon EventBridge User Guide.

* @public */ KmsKeyIdentifier?: string | undefined; /** *

The parameters to use for authorization for the connection.

* @public */ AuthParameters?: ConnectionAuthResponseParameters | undefined; /** *

A time stamp for the time that the connection was created.

* @public */ CreationTime?: Date | undefined; /** *

A time stamp for the time that the connection was last modified.

* @public */ LastModifiedTime?: Date | undefined; /** *

A time stamp for the time that the connection was last authorized.

* @public */ LastAuthorizedTime?: Date | undefined; } /** * @public */ export interface DescribeEndpointRequest { /** *

The name of the endpoint you want to get information about. For example, * "Name":"us-east-2-custom_bus_A-endpoint".

* @public */ Name: string | undefined; /** *

The primary Region of the endpoint you want to get information about. For example * "HomeRegion": "us-east-1".

* @public */ HomeRegion?: string | undefined; } /** * @public */ export interface DescribeEndpointResponse { /** *

The name of the endpoint you asked for information about.

* @public */ Name?: string | undefined; /** *

The description of the endpoint you asked for information about.

* @public */ Description?: string | undefined; /** *

The ARN of the endpoint you asked for information about.

* @public */ Arn?: string | undefined; /** *

The routing configuration of the endpoint you asked for information about.

* @public */ RoutingConfig?: RoutingConfig | undefined; /** *

Whether replication is enabled or disabled for the endpoint you asked for information * about.

* @public */ ReplicationConfig?: ReplicationConfig | undefined; /** *

The event buses being used by the endpoint you asked for information about.

* @public */ EventBuses?: EndpointEventBus[] | undefined; /** *

The ARN of the role used by the endpoint you asked for information about.

* @public */ RoleArn?: string | undefined; /** *

The ID of the endpoint you asked for information about.

* @public */ EndpointId?: string | undefined; /** *

The URL of the endpoint you asked for information about.

* @public */ EndpointUrl?: string | undefined; /** *

The current state of the endpoint you asked for information about.

* @public */ State?: EndpointState | undefined; /** *

The reason the endpoint you asked for information about is in its current state.

* @public */ StateReason?: string | undefined; /** *

The time the endpoint you asked for information about was created.

* @public */ CreationTime?: Date | undefined; /** *

The last time the endpoint you asked for information about was modified.

* @public */ LastModifiedTime?: Date | undefined; } /** * @public */ export interface DescribeEventBusRequest { /** *

The name or ARN of the event bus to show details for. If you omit this, the default event * bus is displayed.

* @public */ Name?: string | undefined; } /** * @public */ export interface DescribeEventBusResponse { /** *

The name of the event bus. Currently, this is always default.

* @public */ Name?: string | undefined; /** *

The Amazon Resource Name (ARN) of the account permitted to write events to the current account.

* @public */ Arn?: string | undefined; /** *

The event bus description.

* @public */ Description?: string | undefined; /** *

The identifier of the KMS * customer managed key for EventBridge to use to encrypt events on this event bus, if one has been specified.

*

For more information, see Data encryption in EventBridge in the Amazon EventBridge User Guide.

* @public */ KmsKeyIdentifier?: string | undefined; /** *

Configuration details of the Amazon SQS queue for EventBridge to use as a * dead-letter queue (DLQ).

*

For more information, see Using dead-letter queues to process undelivered events in the EventBridge User * Guide.

* @public */ DeadLetterConfig?: DeadLetterConfig | undefined; /** *

The policy that enables the external account to send events to your account.

* @public */ Policy?: string | undefined; /** *

The logging configuration settings for the event bus.

*

For more information, see Configuring logs for event buses in the EventBridge User Guide.

* @public */ LogConfig?: LogConfig | undefined; /** *

The time the event bus was created.

* @public */ CreationTime?: Date | undefined; /** *

The time the event bus was last modified.

* @public */ LastModifiedTime?: Date | undefined; } /** * @public */ export interface DescribeEventSourceRequest { /** *

The name of the partner event source to display the details of.

* @public */ Name: string | undefined; } /** * @public */ export interface DescribeEventSourceResponse { /** *

The ARN of the partner event source.

* @public */ Arn?: string | undefined; /** *

The name of the SaaS partner that created the event source.

* @public */ CreatedBy?: string | undefined; /** *

The date and time that the event source was created.

* @public */ CreationTime?: Date | undefined; /** *

The date and time that the event source will expire if you do not create a matching event * bus.

* @public */ ExpirationTime?: Date | undefined; /** *

The name of the partner event source.

* @public */ Name?: string | undefined; /** *

The state of the event source. If it is ACTIVE, you have already created a matching event * bus for this event source, and that event bus is active. If it is PENDING, either you haven't * yet created a matching event bus, or that event bus is deactivated. If it is DELETED, you have * created a matching event bus, but the event source has since been deleted.

* @public */ State?: EventSourceState | undefined; } /** * @public */ export interface DescribePartnerEventSourceRequest { /** *

The name of the event source to display.

* @public */ Name: string | undefined; } /** * @public */ export interface DescribePartnerEventSourceResponse { /** *

The ARN of the event source.

* @public */ Arn?: string | undefined; /** *

The name of the event source.

* @public */ Name?: string | undefined; } /** * @public */ export interface DescribeReplayRequest { /** *

The name of the replay to retrieve.

* @public */ ReplayName: string | undefined; } /** *

A ReplayDestination object that contains details about a replay.

* @public */ export interface ReplayDestination { /** *

The ARN of the event bus to replay event to. You can replay events only to the event bus * specified to create the archive.

* @public */ Arn: string | undefined; /** *

A list of ARNs for rules to replay events to.

* @public */ FilterArns?: string[] | undefined; } /** * @public */ export interface DescribeReplayResponse { /** *

The name of the replay.

* @public */ ReplayName?: string | undefined; /** *

The ARN of the replay.

* @public */ ReplayArn?: string | undefined; /** *

The description of the replay.

* @public */ Description?: string | undefined; /** *

The current state of the replay.

* @public */ State?: ReplayState | undefined; /** *

The reason that the replay is in the current state.

* @public */ StateReason?: string | undefined; /** *

The ARN of the archive events were replayed from.

* @public */ EventSourceArn?: string | undefined; /** *

A ReplayDestination object that contains details about the replay.

* @public */ Destination?: ReplayDestination | undefined; /** *

The time stamp of the first event that was last replayed from the archive.

* @public */ EventStartTime?: Date | undefined; /** *

The time stamp for the last event that was replayed from the archive.

* @public */ EventEndTime?: Date | undefined; /** *

The time that the event was last replayed.

* @public */ EventLastReplayedTime?: Date | undefined; /** *

A time stamp for the time that the replay started.

* @public */ ReplayStartTime?: Date | undefined; /** *

A time stamp for the time that the replay stopped.

* @public */ ReplayEndTime?: Date | undefined; } /** * @public */ export interface DescribeRuleRequest { /** *

The name of the rule.

* @public */ Name: string | undefined; /** *

The name or ARN of the event bus associated with the rule. If you omit this, the default * event bus is used.

* @public */ EventBusName?: string | undefined; } /** * @public */ export interface DescribeRuleResponse { /** *

The name of the rule.

* @public */ Name?: string | undefined; /** *

The Amazon Resource Name (ARN) of the rule.

* @public */ Arn?: string | undefined; /** *

The event pattern. For more information, see Events and Event * Patterns in the * Amazon EventBridge User Guide * .

* @public */ EventPattern?: string | undefined; /** *

The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)".

* @public */ ScheduleExpression?: string | undefined; /** *

Specifies whether the rule is enabled or disabled.

* @public */ State?: RuleState | undefined; /** *

The description of the rule.

* @public */ Description?: string | undefined; /** *

The Amazon Resource Name (ARN) of the IAM role associated with the rule.

* @public */ RoleArn?: string | undefined; /** *

If this is a managed rule, created by an Amazon Web Services service on your behalf, this * field displays the principal name of the Amazon Web Services service that created the * rule.

* @public */ ManagedBy?: string | undefined; /** *

The name of the event bus associated with the rule.

* @public */ EventBusName?: string | undefined; /** *

The account ID of the user that created the rule. If you use PutRule to put a * rule on an event bus in another account, the other account is the owner of the rule, and the * rule ARN includes the account ID for that account. However, the value for * CreatedBy is the account ID as the account that created the rule in the other * account.

* @public */ CreatedBy?: string | undefined; } /** * @public */ export interface DisableRuleRequest { /** *

The name of the rule.

* @public */ Name: string | undefined; /** *

The name or ARN of the event bus associated with the rule. If you omit this, the default * event bus is used.

* @public */ EventBusName?: string | undefined; } /** * @public */ export interface EnableRuleRequest { /** *

The name of the rule.

* @public */ Name: string | undefined; /** *

The name or ARN of the event bus associated with the rule. If you omit this, the default * event bus is used.

* @public */ EventBusName?: string | undefined; } /** * @public */ export interface ListApiDestinationsRequest { /** *

A name prefix to filter results returned. Only API destinations with a name that starts * with the prefix are returned.

* @public */ NamePrefix?: string | undefined; /** *

The ARN of the connection specified for the API destination.

* @public */ ConnectionArn?: string | undefined; /** *

The token returned by a previous call, which you can use to retrieve the next set of results.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; /** *

The maximum number of API destinations to include in the response.

* @public */ Limit?: number | undefined; } /** * @public */ export interface ListApiDestinationsResponse { /** *

An array that includes information about each API * destination.

* @public */ ApiDestinations?: ApiDestination[] | undefined; /** *

A token indicating there are more results available. If there are no more results, no token is included in the response.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; } /** * @public */ export interface ListArchivesRequest { /** *

A name prefix to filter the archives returned. Only archives with name that match the * prefix are returned.

* @public */ NamePrefix?: string | undefined; /** *

The ARN of the event source associated with the archive.

* @public */ EventSourceArn?: string | undefined; /** *

The state of the archive.

* @public */ State?: ArchiveState | undefined; /** *

The token returned by a previous call, which you can use to retrieve the next set of results.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; /** *

The maximum number of results to return.

* @public */ Limit?: number | undefined; } /** * @public */ export interface ListArchivesResponse { /** *

An array of Archive objects that include details about an archive.

* @public */ Archives?: Archive[] | undefined; /** *

A token indicating there are more results available. If there are no more results, no token is included in the response.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; } /** * @public */ export interface ListConnectionsRequest { /** *

A name prefix to filter results returned. Only connections with a name that starts with * the prefix are returned.

* @public */ NamePrefix?: string | undefined; /** *

The state of the connection.

* @public */ ConnectionState?: ConnectionState | undefined; /** *

The token returned by a previous call, which you can use to retrieve the next set of results.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; /** *

The maximum number of connections to return.

* @public */ Limit?: number | undefined; } /** *

Contains information about a connection.

* @public */ export interface Connection { /** *

The ARN of the connection.

* @public */ ConnectionArn?: string | undefined; /** *

The name of the connection.

* @public */ Name?: string | undefined; /** *

The state of the connection.

* @public */ ConnectionState?: ConnectionState | undefined; /** *

The reason that the connection is in the connection state.

* @public */ StateReason?: string | undefined; /** *

The authorization type specified for the connection.

* *

OAUTH tokens are refreshed when a 401 or 407 response is returned.

*
* @public */ AuthorizationType?: ConnectionAuthorizationType | undefined; /** *

A time stamp for the time that the connection was created.

* @public */ CreationTime?: Date | undefined; /** *

A time stamp for the time that the connection was last modified.

* @public */ LastModifiedTime?: Date | undefined; /** *

A time stamp for the time that the connection was last authorized.

* @public */ LastAuthorizedTime?: Date | undefined; } /** * @public */ export interface ListConnectionsResponse { /** *

An array of connections objects that include details about the connections.

* @public */ Connections?: Connection[] | undefined; /** *

A token indicating there are more results available. If there are no more results, no token is included in the response.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; } /** * @public */ export interface ListEndpointsRequest { /** *

A value that will return a subset of the endpoints associated with this account. For * example, "NamePrefix": "ABC" will return all endpoints with "ABC" in the * name.

* @public */ NamePrefix?: string | undefined; /** *

The primary Region of the endpoints associated with this account. For example * "HomeRegion": "us-east-1".

* @public */ HomeRegion?: string | undefined; /** *

The token returned by a previous call, which you can use to retrieve the next set of results.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; /** *

The maximum number of results returned by the call.

* @public */ MaxResults?: number | undefined; } /** *

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 * .

* @public */ export interface Endpoint { /** *

The name of the endpoint.

* @public */ Name?: string | undefined; /** *

A description for the endpoint.

* @public */ Description?: string | undefined; /** *

The ARN of the endpoint.

* @public */ Arn?: string | undefined; /** *

The routing configuration of the endpoint.

* @public */ RoutingConfig?: RoutingConfig | undefined; /** *

Whether event replication was enabled or disabled for this endpoint. The default state is * ENABLED which means you must supply a RoleArn. If you don't have a * RoleArn or you don't want event replication enabled, set the state to * DISABLED.

* @public */ ReplicationConfig?: ReplicationConfig | undefined; /** *

The event buses being used by the endpoint.

* @public */ EventBuses?: EndpointEventBus[] | undefined; /** *

The ARN of the role used by event replication for the endpoint.

* @public */ RoleArn?: string | undefined; /** *

The URL subdomain of the endpoint. For example, if the URL for Endpoint is * https://abcde.veo.endpoints.event.amazonaws.com, then the EndpointId is * abcde.veo.

* @public */ EndpointId?: string | undefined; /** *

The URL of the endpoint.

* @public */ EndpointUrl?: string | undefined; /** *

The current state of the endpoint.

* @public */ State?: EndpointState | undefined; /** *

The reason the endpoint is in its current state.

* @public */ StateReason?: string | undefined; /** *

The time the endpoint was created.

* @public */ CreationTime?: Date | undefined; /** *

The last time the endpoint was modified.

* @public */ LastModifiedTime?: Date | undefined; } /** * @public */ export interface ListEndpointsResponse { /** *

The endpoints returned by the call.

* @public */ Endpoints?: Endpoint[] | undefined; /** *

A token indicating there are more results available. If there are no more results, no token is included in the response.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; } /** * @public */ export interface ListEventBusesRequest { /** *

Specifying this limits the results to only those event buses with names that start with * the specified prefix.

* @public */ NamePrefix?: string | undefined; /** *

The token returned by a previous call, which you can use to retrieve the next set of results.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; /** *

Specifying this limits the number of results returned by this operation. The operation * also returns a NextToken which you can use in a subsequent operation to retrieve the next set * of results.

* @public */ Limit?: number | undefined; } /** *

An event bus receives events from a source, uses rules to evaluate them, applies any * configured input transformation, and routes them to the appropriate target(s). Your account's * default event bus receives events from Amazon Web Services services. A custom event bus can * receive events from your custom applications and services. A partner event bus receives events * from an event source created by an SaaS partner. These events come from the partners services * or applications.

* @public */ export interface EventBus { /** *

The name of the event bus.

* @public */ Name?: string | undefined; /** *

The ARN of the event bus.

* @public */ Arn?: string | undefined; /** *

The event bus description.

* @public */ Description?: string | undefined; /** *

The permissions policy of the event bus, describing which other Amazon Web Services * accounts can write events to this event bus.

* @public */ Policy?: string | undefined; /** *

The time the event bus was created.

* @public */ CreationTime?: Date | undefined; /** *

The time the event bus was last modified.

* @public */ LastModifiedTime?: Date | undefined; } /** * @public */ export interface ListEventBusesResponse { /** *

This list of event buses.

* @public */ EventBuses?: EventBus[] | undefined; /** *

A token indicating there are more results available. If there are no more results, no token is included in the response.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; } /** * @public */ export interface ListEventSourcesRequest { /** *

Specifying this limits the results to only those partner event sources with names that * start with the specified prefix.

* @public */ NamePrefix?: string | undefined; /** *

The token returned by a previous call, which you can use to retrieve the next set of results.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; /** *

Specifying this limits the number of results returned by this operation. The operation * also returns a NextToken which you can use in a subsequent operation to retrieve the next set * of results.

* @public */ Limit?: number | undefined; } /** *

A partner event source is created by an SaaS partner. If a customer creates a partner * event bus that matches this event source, that Amazon Web Services account can receive events * from the partner's applications or services.

* @public */ export interface EventSource { /** *

The ARN of the event source.

* @public */ Arn?: string | undefined; /** *

The name of the partner that created the event source.

* @public */ CreatedBy?: string | undefined; /** *

The date and time the event source was created.

* @public */ CreationTime?: Date | undefined; /** *

The date and time that the event source will expire, if the Amazon Web Services account * doesn't create a matching event bus for it.

* @public */ ExpirationTime?: Date | undefined; /** *

The name of the event source.

* @public */ Name?: string | undefined; /** *

The state of the event source. If it is ACTIVE, you have already created a matching event * bus for this event source, and that event bus is active. If it is PENDING, either you haven't * yet created a matching event bus, or that event bus is deactivated. If it is DELETED, you have * created a matching event bus, but the event source has since been deleted.

* @public */ State?: EventSourceState | undefined; } /** * @public */ export interface ListEventSourcesResponse { /** *

The list of event sources.

* @public */ EventSources?: EventSource[] | undefined; /** *

A token indicating there are more results available. If there are no more results, no token is included in the response.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; } /** * @public */ export interface ListPartnerEventSourceAccountsRequest { /** *

The name of the partner event source to display account information about.

* @public */ EventSourceName: string | undefined; /** *

The token returned by a previous call, which you can use to retrieve the next set of results.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; /** *

Specifying this limits the number of results returned by this operation. The operation * also returns a NextToken which you can use in a subsequent operation to retrieve the next set * of results.

* @public */ Limit?: number | undefined; } /** *

The Amazon Web Services account that a partner event source has been offered to.

* @public */ export interface PartnerEventSourceAccount { /** *

The Amazon Web Services account ID that the partner event source was offered to.

* @public */ Account?: string | undefined; /** *

The date and time the event source was created.

* @public */ CreationTime?: Date | undefined; /** *

The date and time that the event source will expire, if the Amazon Web Services account * doesn't create a matching event bus for it.

* @public */ ExpirationTime?: Date | undefined; /** *

The state of the event source. If it is ACTIVE, you have already created a matching event * bus for this event source, and that event bus is active. If it is PENDING, either you haven't * yet created a matching event bus, or that event bus is deactivated. If it is DELETED, you have * created a matching event bus, but the event source has since been deleted.

* @public */ State?: EventSourceState | undefined; } /** * @public */ export interface ListPartnerEventSourceAccountsResponse { /** *

The list of partner event sources returned by the operation.

* @public */ PartnerEventSourceAccounts?: PartnerEventSourceAccount[] | undefined; /** *

A token indicating there are more results available. If there are no more results, no token is included in the response.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; } /** * @public */ export interface ListPartnerEventSourcesRequest { /** *

If you specify this, the results are limited to only those partner event sources that * start with the string you specify.

* @public */ NamePrefix: string | undefined; /** *

The token returned by a previous call, which you can use to retrieve the next set of results.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; /** *

pecifying this limits the number of results returned by this operation. The operation also * returns a NextToken which you can use in a subsequent operation to retrieve the next set of * results.

* @public */ Limit?: number | undefined; } /** *

A partner event source is created by an SaaS partner. If a customer creates a partner * event bus that matches this event source, that Amazon Web Services account can receive events * from the partner's applications or services.

* @public */ export interface PartnerEventSource { /** *

The ARN of the partner event source.

* @public */ Arn?: string | undefined; /** *

The name of the partner event source.

* @public */ Name?: string | undefined; } /** * @public */ export interface ListPartnerEventSourcesResponse { /** *

The list of partner event sources returned by the operation.

* @public */ PartnerEventSources?: PartnerEventSource[] | undefined; /** *

A token indicating there are more results available. If there are no more results, no token is included in the response.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; } /** * @public */ export interface ListReplaysRequest { /** *

A name prefix to filter the replays returned. Only replays with name that match the prefix * are returned.

* @public */ NamePrefix?: string | undefined; /** *

The state of the replay.

* @public */ State?: ReplayState | undefined; /** *

The ARN of the archive from which the events are replayed.

* @public */ EventSourceArn?: string | undefined; /** *

The token returned by a previous call, which you can use to retrieve the next set of results.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; /** *

The maximum number of replays to retrieve.

* @public */ Limit?: number | undefined; } /** *

A Replay object that contains details about a replay.

* @public */ export interface Replay { /** *

The name of the replay.

* @public */ ReplayName?: string | undefined; /** *

The ARN of the archive to replay event from.

* @public */ EventSourceArn?: string | undefined; /** *

The current state of the replay.

* @public */ State?: ReplayState | undefined; /** *

A description of why the replay is in the current state.

* @public */ StateReason?: string | undefined; /** *

A time stamp for the time to start replaying events. This is determined by the time in the * event as described in Time.

* @public */ EventStartTime?: Date | undefined; /** *

A time stamp for the time to start replaying events. Any event with a creation time prior * to the EventEndTime specified is replayed.

* @public */ EventEndTime?: Date | undefined; /** *

A time stamp for the time that the last event was replayed.

* @public */ EventLastReplayedTime?: Date | undefined; /** *

A time stamp for the time that the replay started.

* @public */ ReplayStartTime?: Date | undefined; /** *

A time stamp for the time that the replay completed.

* @public */ ReplayEndTime?: Date | undefined; } /** * @public */ export interface ListReplaysResponse { /** *

An array of Replay objects that contain information about the replay.

* @public */ Replays?: Replay[] | undefined; /** *

A token indicating there are more results available. If there are no more results, no token is included in the response.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; } /** * @public */ export interface ListRuleNamesByTargetRequest { /** *

The Amazon Resource Name (ARN) of the target resource.

* @public */ TargetArn: string | undefined; /** *

The name or ARN of the event bus to list rules for. If you omit this, the default event * bus is used.

* @public */ EventBusName?: string | undefined; /** *

The token returned by a previous call, which you can use to retrieve the next set of results.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; /** *

The maximum number of results to return.

* @public */ Limit?: number | undefined; } /** * @public */ export interface ListRuleNamesByTargetResponse { /** *

The names of the rules that can invoke the given target.

* @public */ RuleNames?: string[] | undefined; /** *

A token indicating there are more results available. If there are no more results, no token is included in the response.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; } /** * @public */ export interface ListRulesRequest { /** *

The prefix matching the rule name.

* @public */ NamePrefix?: string | undefined; /** *

The name or ARN of the event bus to list the rules for. If you omit this, the default * event bus is used.

* @public */ EventBusName?: string | undefined; /** *

The token returned by a previous call, which you can use to retrieve the next set of results.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; /** *

The maximum number of results to return.

* @public */ Limit?: number | undefined; } /** *

Contains information about a rule in Amazon EventBridge.

* @public */ export interface Rule { /** *

The name of the rule.

* @public */ Name?: string | undefined; /** *

The Amazon Resource Name (ARN) of the rule.

* @public */ Arn?: string | undefined; /** *

The event pattern of the rule. For more information, see Events and Event * Patterns in the * Amazon EventBridge User Guide * .

* @public */ EventPattern?: string | undefined; /** *

The state of the rule.

*

Valid values include:

* * @public */ State?: RuleState | undefined; /** *

The description of the rule.

* @public */ Description?: string | undefined; /** *

The scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". For more * information, see Creating an Amazon EventBridge rule * that runs on a schedule.

* @public */ ScheduleExpression?: string | undefined; /** *

The Amazon Resource Name (ARN) of the role that is used for target invocation.

*

If you're setting an event bus in another account as the target and that account granted * permission to your account through an organization instead of directly by the account ID, you * must specify a RoleArn with proper permissions in the Target * structure, instead of here in this parameter.

* @public */ RoleArn?: string | undefined; /** *

If the rule was created on behalf of your account by an Amazon Web Services service, this * field displays the principal name of the service that created the rule.

* @public */ ManagedBy?: string | undefined; /** *

The name or ARN of the event bus associated with the rule. If you omit this, the default * event bus is used.

* @public */ EventBusName?: string | undefined; } /** * @public */ export interface ListRulesResponse { /** *

The rules that match the specified criteria.

* @public */ Rules?: Rule[] | undefined; /** *

A token indicating there are more results available. If there are no more results, no token is included in the response.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; } /** * @public */ export interface ListTagsForResourceRequest { /** *

The ARN of the EventBridge resource for which you want to view tags.

* @public */ ResourceARN: string | undefined; } /** * @public */ export interface ListTagsForResourceResponse { /** *

The list of tag keys and values associated with the resource you specified

* @public */ Tags?: Tag[] | undefined; } /** * @public */ export interface ListTargetsByRuleRequest { /** *

The name of the rule.

* @public */ Rule: string | undefined; /** *

The name or ARN of the event bus associated with the rule. If you omit this, the default * event bus is used.

* @public */ EventBusName?: string | undefined; /** *

The token returned by a previous call, which you can use to retrieve the next set of results.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; /** *

The maximum number of results to return.

* @public */ Limit?: number | undefined; } /** *

The array properties for the submitted job, such as the size of the array. The array size * can be between 2 and 10,000. If you specify array properties for a job, it becomes an array * job. This parameter is used only if the target is an Batch job.

* @public */ export interface BatchArrayProperties { /** *

The size of the array, if this is an array batch job. Valid values are integers between 2 * and 10,000.

* @public */ Size?: number | undefined; } /** *

The retry strategy to use for failed jobs, if the target is an Batch job. * If you specify a retry strategy here, it overrides the retry strategy defined in the job * definition.

* @public */ export interface BatchRetryStrategy { /** *

The number of times to attempt to retry, if the job fails. Valid values are 1–10.

* @public */ Attempts?: number | undefined; } /** *

The custom parameters to be used when the target is an Batch job.

* @public */ export interface BatchParameters { /** *

The ARN or name of the job definition to use if the event target is an Batch job. This job definition must already exist.

* @public */ JobDefinition: string | undefined; /** *

The name to use for this execution of the job, if the target is an Batch * job.

* @public */ JobName: string | undefined; /** *

The array properties for the submitted job, such as the size of the array. The array size * can be between 2 and 10,000. If you specify array properties for a job, it becomes an array * job. This parameter is used only if the target is an Batch job.

* @public */ ArrayProperties?: BatchArrayProperties | undefined; /** *

The retry strategy to use for failed jobs, if the target is an Batch job. * The retry strategy is the number of times to retry the failed job execution. Valid values are * 1–10. When you specify a retry strategy here, it overrides the retry strategy defined in the * job definition.

* @public */ RetryStrategy?: BatchRetryStrategy | undefined; } /** *

The details of a capacity provider strategy. To learn more, see CapacityProviderStrategyItem in the Amazon ECS API Reference.

* @public */ export interface CapacityProviderStrategyItem { /** *

The short name of the capacity provider.

* @public */ capacityProvider: string | undefined; /** *

The weight value designates the relative percentage of the total number of tasks launched * that should use the specified capacity provider. The weight value is taken into consideration * after the base value, if defined, is satisfied.

* @public */ weight?: number | undefined; /** *

The base value designates how many tasks, at a minimum, to run on the specified capacity * provider. Only one capacity provider in a capacity provider strategy can have a base defined. * If no value is specified, the default value of 0 is used.

* @public */ base?: number | undefined; } /** *

This structure specifies the VPC subnets and security groups for the task, and whether a * public IP address is to be used. This structure is relevant only for ECS tasks that use the * awsvpc network mode.

* @public */ export interface AwsVpcConfiguration { /** *

Specifies the subnets associated with the task. These subnets must all be in the same VPC. * You can specify as many as 16 subnets.

* @public */ Subnets: string[] | undefined; /** *

Specifies the security groups associated with the task. These security groups must all be * in the same VPC. You can specify as many as five security groups. If you do not specify a * security group, the default security group for the VPC is used.

* @public */ SecurityGroups?: string[] | undefined; /** *

Specifies whether the task's elastic network interface receives a public IP address. You * can specify ENABLED only when LaunchType in * EcsParameters is set to FARGATE.

* @public */ AssignPublicIp?: AssignPublicIp | undefined; } /** *

This structure specifies the network configuration for an ECS task.

* @public */ export interface NetworkConfiguration { /** *

Use this structure to specify the VPC subnets and security groups for the task, and * whether a public IP address is to be used. This structure is relevant only for ECS tasks that * use the awsvpc network mode.

* @public */ awsvpcConfiguration?: AwsVpcConfiguration | undefined; } /** *

An object representing a constraint on task placement. To learn more, see Task Placement Constraints in the Amazon Elastic Container Service Developer Guide.

* @public */ export interface PlacementConstraint { /** *

The type of constraint. Use distinctInstance to ensure that each task in a particular * group is running on a different container instance. Use memberOf to restrict the selection to * a group of valid candidates.

* @public */ type?: PlacementConstraintType | undefined; /** *

A cluster query language expression to apply to the constraint. You cannot specify an * expression if the constraint type is distinctInstance. To learn more, see Cluster Query Language in the Amazon Elastic Container Service Developer Guide.

* @public */ expression?: string | undefined; } /** *

The task placement strategy for a task or service. To learn more, see Task Placement Strategies in the Amazon Elastic Container Service Service Developer * Guide.

* @public */ export interface PlacementStrategy { /** *

The type of placement strategy. The random placement strategy randomly places tasks on * available candidates. The spread placement strategy spreads placement across available * candidates evenly based on the field parameter. The binpack strategy places tasks on available * candidates that have the least available amount of the resource that is specified with the * field parameter. For example, if you binpack on memory, a task is placed on the instance with * the least amount of remaining memory (but still enough to run the task).

* @public */ type?: PlacementStrategyType | undefined; /** *

The field to apply the placement strategy against. For the spread placement strategy, * valid values are instanceId (or host, which has the same effect), or any platform or custom * attribute that is applied to a container instance, such as attribute:ecs.availability-zone. * For the binpack placement strategy, valid values are cpu and memory. For the random placement * strategy, this field is not used.

* @public */ field?: string | undefined; } /** *

The custom parameters to be used when the target is an Amazon ECS task.

* @public */ export interface EcsParameters { /** *

The ARN of the task definition to use if the event target is an Amazon ECS task.

* @public */ TaskDefinitionArn: string | undefined; /** *

The number of tasks to create based on TaskDefinition. The default is * 1.

* @public */ TaskCount?: number | undefined; /** *

Specifies the launch type on which your task is running. The launch type that you specify * here must match one of the launch type (compatibilities) of the target task. The * FARGATE value is supported only in the Regions where Fargate * with Amazon ECS is supported. For more information, see Fargate on Amazon ECS in the Amazon Elastic Container Service Developer * Guide.

* @public */ LaunchType?: LaunchType | undefined; /** *

Use this structure if the Amazon ECS task uses the awsvpc network * mode. This structure specifies the VPC subnets and security groups associated with the task, * and whether a public IP address is to be used. This structure is required if * LaunchType is FARGATE because the awsvpc mode is * required for Fargate tasks.

*

If you specify NetworkConfiguration when the target ECS task does not use the * awsvpc network mode, the task fails.

* @public */ NetworkConfiguration?: NetworkConfiguration | undefined; /** *

Specifies the platform version for the task. Specify only the numeric portion of the * platform version, such as 1.1.0.

*

This structure is used only if LaunchType is FARGATE. For more * information about valid platform versions, see Fargate * Platform Versions in the Amazon Elastic Container Service Developer * Guide.

* @public */ PlatformVersion?: string | undefined; /** *

Specifies an ECS task group for the task. The maximum length is 255 characters.

* @public */ Group?: string | undefined; /** *

The capacity provider strategy to use for the task.

*

If a capacityProviderStrategy is specified, the launchType * parameter must be omitted. If no capacityProviderStrategy or launchType is * specified, the defaultCapacityProviderStrategy for the cluster is used.

* @public */ CapacityProviderStrategy?: CapacityProviderStrategyItem[] | undefined; /** *

Specifies whether to enable Amazon ECS managed tags for the task. For more * information, see Tagging Your Amazon ECS * Resources in the Amazon Elastic Container Service Developer Guide.

* @public */ EnableECSManagedTags?: boolean | undefined; /** *

Whether or not to enable the execute command functionality for the containers in this * task. If true, this enables execute command functionality on all containers in the * task.

* @public */ EnableExecuteCommand?: boolean | undefined; /** *

An array of placement constraint objects to use for the task. You can specify up to 10 * constraints per task (including constraints in the task definition and those specified at * runtime).

* @public */ PlacementConstraints?: PlacementConstraint[] | undefined; /** *

The placement strategy objects to use for the task. You can specify a maximum of five * strategy rules per task.

* @public */ PlacementStrategy?: PlacementStrategy[] | undefined; /** *

Specifies whether to propagate the tags from the task definition to the task. If no value * is specified, the tags are not propagated. Tags can only be propagated to the task during task * creation. To add tags to a task after task creation, use the TagResource API action.

* @public */ PropagateTags?: PropagateTags | undefined; /** *

The reference ID to use for the task.

* @public */ ReferenceId?: string | undefined; /** *

The metadata that you apply to the task to help you categorize and organize them. Each tag * consists of a key and an optional value, both of which you define. To learn more, see RunTask in the Amazon ECS API Reference.

* @public */ Tags?: Tag[] | undefined; } /** *

These are custom parameter to be used when the target is an API Gateway APIs or * EventBridge ApiDestinations. In the latter case, these are merged with any * InvocationParameters specified on the Connection, with any values from the Connection taking * precedence.

* @public */ export interface HttpParameters { /** *

The path parameter values to be used to populate API Gateway API or EventBridge ApiDestination path wildcards ("*").

* @public */ PathParameterValues?: string[] | undefined; /** *

The headers that need to be sent as part of request invoking the API Gateway API or * EventBridge ApiDestination.

* @public */ HeaderParameters?: Record | undefined; /** *

The query string keys/values that need to be sent as part of request invoking the API Gateway API or EventBridge ApiDestination.

* @public */ QueryStringParameters?: Record | undefined; } /** *

Contains the parameters needed for you to provide custom input to a target based on one or * more pieces of data extracted from the event.

* @public */ export interface InputTransformer { /** *

Map of JSON paths to be extracted from the event. You can then insert these in the * template in InputTemplate to produce the output you want to be sent to the * target.

*

* InputPathsMap is an array key-value pairs, where each value is a valid JSON * path. You can have as many as 100 key-value pairs. You must use JSON dot notation, not bracket * notation.

*

The keys cannot start with "Amazon Web Services."

* @public */ InputPathsMap?: Record | undefined; /** *

Input template where you specify placeholders that will be filled with the values of the * keys from InputPathsMap to customize the data sent to the target. Enclose each * InputPathsMaps value in brackets: <value>

*

If InputTemplate is a JSON object (surrounded by curly braces), the following * restrictions apply:

*
    *
  • *

    The placeholder cannot be used as an object key.

    *
  • *
*

The following example shows the syntax for using InputPathsMap and * InputTemplate.

*

* "InputTransformer": *

*

* \{ *

*

* "InputPathsMap": \{"instance": "$.detail.instance","status": * "$.detail.status"\}, *

*

* "InputTemplate": " is in state " *

*

* \} *

*

To have the InputTemplate include quote marks within a JSON string, escape * each quote marks with a slash, as in the following example:

*

* "InputTransformer": *

*

* \{ *

*

* "InputPathsMap": \{"instance": "$.detail.instance","status": * "$.detail.status"\}, *

*

* "InputTemplate": " is in state \"\"" *

*

* \} *

*

The InputTemplate can also be valid JSON with varibles in quotes or out, as * in the following example:

*

* "InputTransformer": *

*

* \{ *

*

* "InputPathsMap": \{"instance": "$.detail.instance","status": * "$.detail.status"\}, *

*

* "InputTemplate": '\{"myInstance": ,"myStatus": " is * in state \"\""\}' *

*

* \} *

* @public */ InputTemplate: string | undefined; } /** *

This object enables you to specify a JSON path to extract from the event and use as the * partition key for the Amazon Kinesis data stream, so that you can control the shard to which * the event goes. If you do not include this parameter, the default is to use the * eventId as the partition key.

* @public */ export interface KinesisParameters { /** *

The JSON path to be extracted from the event and used as the partition key. For more * information, see Amazon Kinesis Streams Key * Concepts in the Amazon Kinesis Streams Developer Guide.

* @public */ PartitionKeyPath: string | undefined; } /** *

These are custom parameters to be used when the target is a Amazon Redshift cluster * to invoke the Amazon Redshift Data API * ExecuteStatement based on EventBridge events.

* @public */ export interface RedshiftDataParameters { /** *

The name or ARN of the secret that enables access to the database. Required when * authenticating using Amazon Web Services Secrets Manager.

* @public */ SecretManagerArn?: string | undefined; /** *

The name of the database. Required when authenticating using temporary credentials.

* @public */ Database: string | undefined; /** *

The database user name. Required when authenticating using temporary credentials.

* @public */ DbUser?: string | undefined; /** *

The SQL statement text to run.

* @public */ Sql?: string | undefined; /** *

The name of the SQL statement. You can name the SQL statement when you create it to * identify the query.

* @public */ StatementName?: string | undefined; /** *

Indicates whether to send an event back to EventBridge after the SQL statement * runs.

* @public */ WithEvent?: boolean | undefined; /** *

One or more SQL statements to run. The SQL statements are run as a single transaction. * They run serially in the order of the array. Subsequent SQL statements don't start until the * previous statement in the array completes. If any SQL statement fails, then because they are * run as one transaction, all work is rolled back.

* @public */ Sqls?: string[] | undefined; } /** *

A RetryPolicy object that includes information about the retry policy * settings.

* @public */ export interface RetryPolicy { /** *

The maximum number of retry attempts to make before the request fails. Retry attempts * continue until either the maximum number of attempts is made or until the duration of the * MaximumEventAgeInSeconds is met.

* @public */ MaximumRetryAttempts?: number | undefined; /** *

The maximum amount of time, in seconds, to continue to make retry attempts.

* @public */ MaximumEventAgeInSeconds?: number | undefined; } /** *

Information about the EC2 instances that are to be sent the command, specified as * key-value pairs. Each RunCommandTarget block can include only one key, but this * key may specify multiple values.

* @public */ export interface RunCommandTarget { /** *

Can be either tag: * tag-key or * InstanceIds.

* @public */ Key: string | undefined; /** *

If Key is tag: * tag-key, Values * is a list of tag values. If Key is InstanceIds, Values * is a list of Amazon EC2 instance IDs.

* @public */ Values: string[] | undefined; } /** *

This parameter contains the criteria (either InstanceIds or a tag) used to specify which * EC2 instances are to be sent the command.

* @public */ export interface RunCommandParameters { /** *

Currently, we support including only one RunCommandTarget block, which specifies either an * array of InstanceIds or a tag.

* @public */ RunCommandTargets: RunCommandTarget[] | undefined; } /** *

Name/Value pair of a parameter to start execution of a SageMaker AI Model Building * Pipeline.

* @public */ export interface SageMakerPipelineParameter { /** *

Name of parameter to start execution of a SageMaker AI Model Building * Pipeline.

* @public */ Name: string | undefined; /** *

Value of parameter to start execution of a SageMaker AI Model Building * Pipeline.

* @public */ Value: string | undefined; } /** *

These are custom parameters to use when the target is a SageMaker AI Model Building * Pipeline that starts based on EventBridge events.

* @public */ export interface SageMakerPipelineParameters { /** *

List of Parameter names and values for SageMaker AI Model Building Pipeline * execution.

* @public */ PipelineParameterList?: SageMakerPipelineParameter[] | undefined; } /** *

This structure includes the custom parameter to be used when the target is an SQS FIFO * queue.

* @public */ export interface SqsParameters { /** *

The FIFO message group ID to use as the target.

* @public */ MessageGroupId?: string | undefined; } /** *

Targets are the resources to be invoked when a rule is triggered. For a complete list of * services and resources that can be set as a target, see PutTargets.

*

If you are setting the event bus of another account as the target, and that account * granted permission to your account through an organization instead of directly by the account * ID, then you must specify a RoleArn with proper permissions in the * Target structure. For more information, see Sending and * Receiving Events Between Amazon Web Services Accounts in the Amazon EventBridge User Guide.

* @public */ export interface Target { /** *

The ID of the target within the specified rule. Use this ID to reference the target when * updating the rule. We recommend using a memorable and unique string.

* @public */ Id: string | undefined; /** *

The Amazon Resource Name (ARN) of the target.

* @public */ Arn: string | undefined; /** *

The Amazon Resource Name (ARN) of the IAM role to be used for this target when the rule is triggered. If * one rule triggers multiple targets, you can use a different IAM role for each target.

* @public */ RoleArn?: string | undefined; /** *

Valid JSON text passed to the target. In this case, nothing from the event itself is * passed to the target. For more information, see The JavaScript Object Notation (JSON) Data * Interchange Format.

* @public */ Input?: string | undefined; /** *

The value of the JSONPath that is used for extracting part of the matched event when * passing it to the target. You may use JSON dot notation or bracket notation. For more * information about JSON paths, see JSONPath.

* @public */ InputPath?: string | undefined; /** *

Settings to enable you to provide custom input to a target based on certain event data. * You can extract one or more key-value pairs from the event and then use that data to send * customized input to the target.

* @public */ InputTransformer?: InputTransformer | undefined; /** *

The custom parameter you can use to control the shard assignment, when the target is a * Kinesis data stream. If you do not include this parameter, the default is to use the * eventId as the partition key.

* @public */ KinesisParameters?: KinesisParameters | undefined; /** *

Parameters used when you are using the rule to invoke Amazon EC2 Run Command.

* @public */ RunCommandParameters?: RunCommandParameters | undefined; /** *

Contains the Amazon ECS task definition and task count to be used, if the event target is * an Amazon ECS task. For more information about Amazon ECS tasks, see Task * Definitions in the Amazon EC2 Container Service Developer * Guide.

* @public */ EcsParameters?: EcsParameters | undefined; /** *

If the event target is an Batch job, this contains the job definition, job * name, and other parameters. For more information, see Jobs in the Batch * User Guide.

* @public */ BatchParameters?: BatchParameters | undefined; /** *

Contains the message group ID to use when the target is a FIFO queue.

*

If you specify an SQS FIFO queue as a target, the queue must have content-based * deduplication enabled.

* @public */ SqsParameters?: SqsParameters | undefined; /** *

Contains the HTTP parameters to use when the target is a API Gateway endpoint or * EventBridge ApiDestination.

*

If you specify an API Gateway API or EventBridge ApiDestination as a target, * you can use this parameter to specify headers, path parameters, and query string keys/values * as part of your target invoking request. If you're using ApiDestinations, the corresponding * Connection can also have these values configured. In case of any conflicting keys, values from * the Connection take precedence.

* @public */ HttpParameters?: HttpParameters | undefined; /** *

Contains the Amazon Redshift Data API parameters to use when the target is a Amazon Redshift cluster.

*

If you specify a Amazon Redshift Cluster as a Target, you can use this to specify * parameters to invoke the Amazon Redshift Data API ExecuteStatement based on EventBridge events.

* @public */ RedshiftDataParameters?: RedshiftDataParameters | undefined; /** *

Contains the SageMaker AI Model Building Pipeline parameters to start execution of a * SageMaker AI Model Building Pipeline.

*

If you specify a SageMaker AI Model Building Pipeline as a target, you can use this * to specify parameters to start a pipeline execution based on EventBridge events.

* @public */ SageMakerPipelineParameters?: SageMakerPipelineParameters | undefined; /** *

The DeadLetterConfig that defines the target queue to send dead-letter queue * events to.

* @public */ DeadLetterConfig?: DeadLetterConfig | undefined; /** *

The retry policy configuration to use * for the dead-letter queue.

* @public */ RetryPolicy?: RetryPolicy | undefined; /** *

Contains the GraphQL operation to be parsed and executed, if the event target is an * AppSync API.

* @public */ AppSyncParameters?: AppSyncParameters | undefined; } /** * @public */ export interface ListTargetsByRuleResponse { /** *

The targets assigned to the rule.

* @public */ Targets?: Target[] | undefined; /** *

A token indicating there are more results available. If there are no more results, no token is included in the response.

*

The value of nextToken is a unique pagination token for each page. To retrieve the next page of results, make the call again using * the returned token. Keep all other arguments unchanged.

*

Using an expired pagination token results in an HTTP 400 InvalidToken error.

* @public */ NextToken?: string | undefined; } /** *

Represents an event to be submitted.

* @public */ export interface PutEventsRequestEntry { /** *

The time stamp of the event, per RFC3339. If no time stamp is provided, the time stamp of the PutEvents call is used.

* @public */ Time?: Date | undefined; /** *

The source of the event.

* *

* Detail, DetailType, and Source are required for EventBridge to successfully send an event to an event bus. * If you include event entries in a request that do not include each of those properties, EventBridge fails that entry. * If you submit a request in which none of the entries have each of these properties, EventBridge fails the entire request. *

*
* @public */ Source?: string | undefined; /** *

Amazon Web Services resources, identified by Amazon Resource Name (ARN), which the event primarily concerns. * Any number, including zero, may be present.

* @public */ Resources?: string[] | undefined; /** *

Free-form string, with a maximum of 128 characters, used to decide what fields to expect * in the event detail.

* *

* Detail, DetailType, and Source are required for EventBridge to successfully send an event to an event bus. * If you include event entries in a request that do not include each of those properties, EventBridge fails that entry. * If you submit a request in which none of the entries have each of these properties, EventBridge fails the entire request. *

*
* @public */ DetailType?: string | undefined; /** *

A valid JSON object. There is no other schema imposed. The JSON object may contain fields * and nested sub-objects.

* *

* Detail, DetailType, and Source are required for EventBridge to successfully send an event to an event bus. * If you include event entries in a request that do not include each of those properties, EventBridge fails that entry. * If you submit a request in which none of the entries have each of these properties, EventBridge fails the entire request. *

*
* @public */ Detail?: string | undefined; /** *

The name or ARN of the event bus to receive the event. Only the rules that are associated * with this event bus are used to match the event. If you omit this, the default event bus is * used.

* *

If you're using a global endpoint with a custom bus, you can enter either the name or * Amazon Resource Name (ARN) of the event bus in either the primary or secondary Region here. EventBridge then * determines the corresponding event bus in the other Region based on the endpoint referenced * by the EndpointId. Specifying the event bus ARN is preferred.

*
* @public */ EventBusName?: string | undefined; /** *

An X-Ray trace header, which is an http header (X-Amzn-Trace-Id) that * contains the trace-id associated with the event.

*

To learn more about X-Ray trace headers, see Tracing * header in the X-Ray Developer Guide.

* @public */ TraceHeader?: string | undefined; } /** * @public */ export interface PutEventsRequest { /** *

The entry that defines an event in your system. You can specify several parameters for the * entry such as the source and type of the event, resources associated with the event, and so * on.

* @public */ Entries: PutEventsRequestEntry[] | undefined; /** *

The URL subdomain of the endpoint. For example, if the URL for Endpoint is * https://abcde.veo.endpoints.event.amazonaws.com, then the EndpointId is * abcde.veo.

* *

When using Java, you must include auth-crt on the class path.

*
* @public */ EndpointId?: string | undefined; } /** *

Represents the results of an event submitted to an event bus.

*

If the submission was successful, the entry has the event ID in it. Otherwise, you can use * the error code and error message to identify the problem with the entry.

*

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

* @public */ export interface PutEventsResultEntry { /** *

The ID of the event.

* @public */ EventId?: string | undefined; /** *

The error code that indicates why the event submission failed.

*

Retryable errors include:

*
    *
  • *

    * * InternalFailure * *

    *

    The request processing has failed because of an unknown error, exception or * failure.

    *
  • *
  • *

    * * ThrottlingException * *

    *

    The request was denied due to request throttling.

    *
  • *
*

Non-retryable errors include:

*
    *
  • *

    * * AccessDeniedException * *

    *

    You do not have sufficient access to perform this action.

    *
  • *
  • *

    * InvalidAccountIdException *

    *

    The account ID provided is not valid.

    *
  • *
  • *

    * InvalidArgument *

    *

    A specified parameter is not valid.

    *
  • *
  • *

    * MalformedDetail *

    *

    The JSON provided is not valid.

    *
  • *
  • *

    * RedactionFailure *

    *

    Redacting the CloudTrail event failed.

    *
  • *
  • *

    * NotAuthorizedForSourceException *

    *

    You do not have permissions to publish events with this source onto this event * bus.

    *
  • *
  • *

    * NotAuthorizedForDetailTypeException *

    *

    You do not have permissions to publish events with this detail type onto this event * bus.

    *
  • *
* @public */ ErrorCode?: string | undefined; /** *

The error message that explains why the event submission failed.

* @public */ ErrorMessage?: string | undefined; } /** * @public */ export interface PutEventsResponse { /** *

The number of failed entries.

* @public */ FailedEntryCount?: number | undefined; /** *

The successfully and unsuccessfully ingested events results. If the ingestion was * successful, the entry has the event ID in it. Otherwise, you can use the error code and error * message to identify the problem with the entry.

*

For each record, the index of the response element is the same as the index in the request * array.

* @public */ Entries?: PutEventsResultEntry[] | undefined; } /** *

The details about an event generated by an SaaS partner.

* @public */ export interface PutPartnerEventsRequestEntry { /** *

The date and time of the event.

* @public */ Time?: Date | undefined; /** *

The event source that is generating the entry.

* *

* Detail, DetailType, and Source are required for EventBridge to successfully send an event to an event bus. * If you include event entries in a request that do not include each of those properties, EventBridge fails that entry. * If you submit a request in which none of the entries have each of these properties, EventBridge fails the entire request. *

*
* @public */ Source?: string | undefined; /** *

Amazon Web Services resources, identified by Amazon Resource Name (ARN), which the event primarily concerns. * Any number, including zero, may be present.

* @public */ Resources?: string[] | undefined; /** *

A free-form string, with a maximum of 128 characters, used to decide what fields to expect * in the event detail.

* *

* Detail, DetailType, and Source are required for EventBridge to successfully send an event to an event bus. * If you include event entries in a request that do not include each of those properties, EventBridge fails that entry. * If you submit a request in which none of the entries have each of these properties, EventBridge fails the entire request. *

*
* @public */ DetailType?: string | undefined; /** *

A valid JSON string. There is no other schema imposed. The JSON string may contain fields * and nested sub-objects.

* *

* Detail, DetailType, and Source are required for EventBridge to successfully send an event to an event bus. * If you include event entries in a request that do not include each of those properties, EventBridge fails that entry. * If you submit a request in which none of the entries have each of these properties, EventBridge fails the entire request. *

*
* @public */ Detail?: string | undefined; } /** * @public */ export interface PutPartnerEventsRequest { /** *

The list of events to write to the event bus.

* @public */ Entries: PutPartnerEventsRequestEntry[] | undefined; } /** *

The result of an event entry the partner submitted in this request. If the event was * successfully submitted, the entry has the event ID in it. Otherwise, you can use the error * code and error message to identify the problem with the entry.

* @public */ export interface PutPartnerEventsResultEntry { /** *

The ID of the event.

* @public */ EventId?: string | undefined; /** *

The error code that indicates why the event submission failed.

* @public */ ErrorCode?: string | undefined; /** *

The error message that explains why the event submission failed.

* @public */ ErrorMessage?: string | undefined; } /** * @public */ export interface PutPartnerEventsResponse { /** *

The number of events from this operation that could not be written to the partner event * bus.

* @public */ FailedEntryCount?: number | undefined; /** *

The results for each event entry the partner submitted in this request. If the event was * successfully submitted, the entry has the event ID in it. Otherwise, you can use the error * code and error message to identify the problem with the entry.

*

For each record, the index of the response element is the same as the index in the request * array.

* @public */ Entries?: PutPartnerEventsResultEntry[] | undefined; } /** *

A JSON string which you can use to limit the event bus permissions you are granting to * only accounts that fulfill the condition. Currently, the only supported condition is * membership in a certain Amazon Web Services organization. The string must contain * Type, Key, and Value fields. The Value * field specifies the ID of the Amazon Web Services organization. Following is an example value * for Condition:

*

* '\{"Type" : "StringEquals", "Key": "aws:PrincipalOrgID", "Value": * "o-1234567890"\}' *

* @public */ export interface Condition { /** *

Specifies the type of condition. Currently the only supported value is * StringEquals.

* @public */ Type: string | undefined; /** *

Specifies the key for the condition. Currently the only supported key is * aws:PrincipalOrgID.

* @public */ Key: string | undefined; /** *

Specifies the value for the key. Currently, this must be the ID of the * organization.

* @public */ Value: string | undefined; } /** * @public */ export interface PutPermissionRequest { /** *

The name of the event bus associated with the rule. If you omit this, the default event * bus is used.

* @public */ EventBusName?: string | undefined; /** *

The action that you are enabling the other account to perform.

* @public */ Action?: string | undefined; /** *

The 12-digit Amazon Web Services account ID that you are permitting to put events to your * default event bus. Specify "*" to permit any account to put events to your default event * bus.

*

If you specify "*" without specifying Condition, avoid creating rules that * may match undesirable events. To create more secure rules, make sure that the event pattern * for each rule contains an account field with a specific account ID from which to * receive events. Rules with an account field do not match any events sent from other * accounts.

* @public */ Principal?: string | undefined; /** *

An identifier string for the external account that you are granting permissions to. If you * later want to revoke the permission for this external account, specify this * StatementId when you run RemovePermission.

* *

Each StatementId must be unique.

*
* @public */ StatementId?: string | undefined; /** *

This parameter enables you to limit the permission to accounts that fulfill a certain * condition, such as being a member of a certain Amazon Web Services organization. For more * information about Amazon Web Services Organizations, see What Is Amazon Web Services * Organizations in the Amazon Web Services Organizations User * Guide.

*

If you specify Condition with an Amazon Web Services organization ID, and * specify "*" as the value for Principal, you grant permission to all the accounts * in the named organization.

*

The Condition is a JSON string which must contain Type, * Key, and Value fields.

* @public */ Condition?: Condition | undefined; /** *

A JSON string that describes the permission policy statement. You can include a * Policy parameter in the request instead of using the StatementId, * Action, Principal, or Condition parameters.

* @public */ Policy?: string | undefined; } /** * @public */ export interface PutRuleRequest { /** *

The name of the rule that you are creating or updating.

* @public */ Name: string | undefined; /** *

The scheduling expression. For example, "cron(0 20 * * ? *)" or "rate(5 minutes)".

* @public */ ScheduleExpression?: string | undefined; /** *

The event pattern. For more information, see Amazon EventBridge event * patterns in the * Amazon EventBridge User Guide * .

* @public */ EventPattern?: string | undefined; /** *

The state of the rule.

*

Valid values include:

*
    *
  • *

    * DISABLED: The rule is disabled. EventBridge does not match any events against the rule.

    *
  • *
  • *

    * ENABLED: The rule is enabled. * EventBridge matches events against the rule, except for Amazon Web Services management events delivered through CloudTrail.

    *
  • *
  • *

    * ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS: The rule is enabled for all * events, including Amazon Web Services management events delivered through CloudTrail.

    *

    Management events provide visibility into management operations that are performed on * resources in your Amazon Web Services account. These are also known as control plane * operations. For more information, see Logging management events in the CloudTrail User * Guide, and Filtering management events from Amazon Web Services services in the * * Amazon EventBridge User Guide * .

    *

    This value is only valid for rules on the default event bus * or custom event buses. * It does not apply to partner event buses.

    *
  • *
* @public */ State?: RuleState | undefined; /** *

A description of the rule.

* @public */ Description?: string | undefined; /** *

The Amazon Resource Name (ARN) of the IAM role associated with the rule.

*

If you're setting an event bus in another account as the target and that account granted * permission to your account through an organization instead of directly by the account ID, you * must specify a RoleArn with proper permissions in the Target * structure, instead of here in this parameter.

* @public */ RoleArn?: string | undefined; /** *

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

* @public */ Tags?: Tag[] | undefined; /** *

The name or ARN of the event bus to associate with this rule. If you omit this, the * default event bus is used.

* @public */ EventBusName?: string | undefined; } /** * @public */ export interface PutRuleResponse { /** *

The Amazon Resource Name (ARN) of the rule.

* @public */ RuleArn?: string | undefined; } /** * @public */ export interface PutTargetsRequest { /** *

The name of the rule.

* @public */ Rule: string | undefined; /** *

The name or ARN of the event bus associated with the rule. If you omit this, the default * event bus is used.

* @public */ EventBusName?: string | undefined; /** *

The targets to update or add to the rule.

* @public */ Targets: Target[] | undefined; } /** *

Represents a target that failed to be added to a rule.

* @public */ export interface PutTargetsResultEntry { /** *

The ID of the target.

* @public */ TargetId?: string | undefined; /** *

The error code that indicates why the target addition failed. If the value is * ConcurrentModificationException, too many requests were made at the same * time.

* @public */ ErrorCode?: string | undefined; /** *

The error message that explains why the target addition failed.

* @public */ ErrorMessage?: string | undefined; } /** * @public */ export interface PutTargetsResponse { /** *

The number of failed entries.

* @public */ FailedEntryCount?: number | undefined; /** *

The failed target entries.

* @public */ FailedEntries?: PutTargetsResultEntry[] | undefined; } /** * @public */ export interface RemovePermissionRequest { /** *

The statement ID corresponding to the account that is no longer allowed to put events to * the default event bus.

* @public */ StatementId?: string | undefined; /** *

Specifies whether to remove all permissions.

* @public */ RemoveAllPermissions?: boolean | undefined; /** *

The name of the event bus to revoke permissions for. If you omit this, the default event * bus is used.

* @public */ EventBusName?: string | undefined; } /** * @public */ export interface RemoveTargetsRequest { /** *

The name of the rule.

* @public */ Rule: string | undefined; /** *

The name or ARN of the event bus associated with the rule. If you omit this, the default * event bus is used.

* @public */ EventBusName?: string | undefined; /** *

The IDs of the targets to remove from the rule.

* @public */ Ids: string[] | undefined; /** *

If this is a managed rule, created by an Amazon Web Services service on your behalf, you * must specify Force as True to remove targets. This parameter is * ignored for rules that are not managed rules. You can check whether a rule is a managed rule * by using DescribeRule or ListRules and checking the * ManagedBy field of the response.

* @public */ Force?: boolean | undefined; } /** *

Represents a target that failed to be removed from a rule.

* @public */ export interface RemoveTargetsResultEntry { /** *

The ID of the target.

* @public */ TargetId?: string | undefined; /** *

The error code that indicates why the target removal failed. If the value is * ConcurrentModificationException, too many requests were made at the same * time.

* @public */ ErrorCode?: string | undefined; /** *

The error message that explains why the target removal failed.

* @public */ ErrorMessage?: string | undefined; } /** * @public */ export interface RemoveTargetsResponse { /** *

The number of failed entries.

* @public */ FailedEntryCount?: number | undefined; /** *

The failed target entries.

* @public */ FailedEntries?: RemoveTargetsResultEntry[] | undefined; } /** * @public */ export interface StartReplayRequest { /** *

The name of the replay to start.

* @public */ ReplayName: string | undefined; /** *

A description for the replay to start.

* @public */ Description?: string | undefined; /** *

The ARN of the archive to replay events from.

* @public */ EventSourceArn: string | undefined; /** *

A time stamp for the time to start replaying events. Only events that occurred between the * EventStartTime and EventEndTime are replayed.

* @public */ EventStartTime: Date | undefined; /** *

A time stamp for the time to stop replaying events. Only events that occurred between the * EventStartTime and EventEndTime are replayed.

* @public */ EventEndTime: Date | undefined; /** *

A ReplayDestination object that includes details about the destination for * the replay.

* @public */ Destination: ReplayDestination | undefined; } /** * @public */ export interface StartReplayResponse { /** *

The ARN of the replay.

* @public */ ReplayArn?: string | undefined; /** *

The state of the replay.

* @public */ State?: ReplayState | undefined; /** *

The reason that the replay is in the state.

* @public */ StateReason?: string | undefined; /** *

The time at which the replay started.

* @public */ ReplayStartTime?: Date | undefined; } /** * @public */ export interface TagResourceRequest { /** *

The ARN of the EventBridge resource that you're adding tags to.

* @public */ ResourceARN: string | undefined; /** *

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

* @public */ Tags: Tag[] | undefined; } /** * @public */ export interface TagResourceResponse { } /** * @public */ export interface TestEventPatternRequest { /** *

The event pattern. For more information, see Events and Event * Patterns in the * Amazon EventBridge User Guide * .

* @public */ EventPattern: string | undefined; /** *

The event, in JSON format, to test against the event pattern. The JSON must follow the * format specified in Amazon Web Services Events, and * the following fields are mandatory:

*
    *
  • *

    * id *

    *
  • *
  • *

    * account *

    *
  • *
  • *

    * source *

    *
  • *
  • *

    * time *

    *
  • *
  • *

    * region *

    *
  • *
  • *

    * resources *

    *
  • *
  • *

    * detail-type *

    *
  • *
* @public */ Event: string | undefined; } /** * @public */ export interface TestEventPatternResponse { /** *

Indicates whether the event matches the event pattern.

* @public */ Result?: boolean | undefined; } /** * @public */ export interface UntagResourceRequest { /** *

The ARN of the EventBridge resource from which you are removing tags.

* @public */ ResourceARN: string | undefined; /** *

The list of tag keys to remove from the resource.

* @public */ TagKeys: string[] | undefined; } /** * @public */ export interface UntagResourceResponse { } /** * @public */ export interface UpdateApiDestinationRequest { /** *

The name of the API destination to update.

* @public */ Name: string | undefined; /** *

The name of the API destination to update.

* @public */ Description?: string | undefined; /** *

The ARN of the connection to use for the API destination.

* @public */ ConnectionArn?: string | undefined; /** *

The URL to the endpoint to use for the API destination.

* @public */ InvocationEndpoint?: string | undefined; /** *

The method to use for the API destination.

* @public */ HttpMethod?: ApiDestinationHttpMethod | undefined; /** *

The maximum number of invocations per second to send to the API destination.

* @public */ InvocationRateLimitPerSecond?: number | undefined; } /** * @public */ export interface UpdateApiDestinationResponse { /** *

The ARN of the API destination that was updated.

* @public */ ApiDestinationArn?: string | undefined; /** *

The state of the API destination that was updated.

* @public */ ApiDestinationState?: ApiDestinationState | undefined; /** *

A time stamp for the time that the API destination was created.

* @public */ CreationTime?: Date | undefined; /** *

A time stamp for the time that the API destination was last modified.

* @public */ LastModifiedTime?: Date | undefined; } /** * @public */ export interface UpdateArchiveRequest { /** *

The name of the archive to update.

* @public */ ArchiveName: string | undefined; /** *

The description for the archive.

* @public */ Description?: string | undefined; /** *

The event pattern to use to filter events sent to the archive.

* @public */ EventPattern?: string | undefined; /** *

The number of days to retain events in the archive.

* @public */ RetentionDays?: number | undefined; /** *

The identifier of the 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 * Amazon Web Services owned key to encrypt the archive.

*

For more information, see Identify and view keys in the Key Management Service * Developer Guide.

* *

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.

*
* @public */ KmsKeyIdentifier?: string | undefined; } /** * @public */ export interface UpdateArchiveResponse { /** *

The ARN of the archive.

* @public */ ArchiveArn?: string | undefined; /** *

The state of the archive.

* @public */ State?: ArchiveState | undefined; /** *

The reason that the archive is in the current state.

* @public */ StateReason?: string | undefined; /** *

The time at which the archive was updated.

* @public */ CreationTime?: Date | undefined; } /** *

Contains the API key authorization parameters to use to update the connection.

* @public */ export interface UpdateConnectionApiKeyAuthRequestParameters { /** *

The name of the API key to use for authorization.

* @public */ ApiKeyName?: string | undefined; /** *

The value associated with the API key to use for authorization.

* @public */ ApiKeyValue?: string | undefined; } /** *

The Basic authorization parameters for the connection.

* @public */ export interface UpdateConnectionBasicAuthRequestParameters { /** *

The user name to use for Basic authorization.

* @public */ Username?: string | undefined; /** *

The password associated with the user name to use for Basic authorization.

* @public */ Password?: string | undefined; } /** *

The OAuth authorization parameters to use for the connection.

* @public */ export interface UpdateConnectionOAuthClientRequestParameters { /** *

The client ID to use for OAuth authorization.

* @public */ ClientID?: string | undefined; /** *

The client secret assciated with the client ID to use for OAuth authorization.

* @public */ ClientSecret?: string | undefined; } /** *

The OAuth request parameters to use for the connection.

* @public */ export interface UpdateConnectionOAuthRequestParameters { /** *

The * client parameters to use for the connection when OAuth is specified as the authorization * type.

* @public */ ClientParameters?: UpdateConnectionOAuthClientRequestParameters | undefined; /** *

The URL to the authorization endpoint when OAuth is specified as the authorization * type.

* @public */ AuthorizationEndpoint?: string | undefined; /** *

The method used to connect to the HTTP endpoint.

* @public */ HttpMethod?: ConnectionOAuthHttpMethod | undefined; /** *

The additional HTTP parameters used for the OAuth authorization request.

* @public */ OAuthHttpParameters?: ConnectionHttpParameters | undefined; } /** *

Contains the additional parameters to use for the connection.

* @public */ export interface UpdateConnectionAuthRequestParameters { /** *

The * authorization parameters for Basic authorization.

* @public */ BasicAuthParameters?: UpdateConnectionBasicAuthRequestParameters | undefined; /** *

The * authorization parameters for OAuth authorization.

* @public */ OAuthParameters?: UpdateConnectionOAuthRequestParameters | undefined; /** *

The * authorization parameters for API key authorization.

* @public */ ApiKeyAuthParameters?: UpdateConnectionApiKeyAuthRequestParameters | undefined; /** *

The additional parameters to * use for the connection.

* @public */ InvocationHttpParameters?: ConnectionHttpParameters | undefined; /** *

If you specify a private OAuth endpoint, the parameters for EventBridge to use when authenticating against the endpoint.

*

For more information, see Authorization methods for connections in the * Amazon EventBridge User Guide * .

* @public */ ConnectivityParameters?: ConnectivityResourceParameters | undefined; } /** * @public */ export interface UpdateConnectionRequest { /** *

The name of the connection to update.

* @public */ Name: string | undefined; /** *

A description for the connection.

* @public */ Description?: string | undefined; /** *

The type of authorization to use for the connection.

* @public */ AuthorizationType?: ConnectionAuthorizationType | undefined; /** *

The authorization parameters to use for the connection.

* @public */ AuthParameters?: UpdateConnectionAuthRequestParameters | undefined; /** *

For connections to private APIs, the parameters to use for invoking the API.

*

For more information, see Connecting to private APIs in the * Amazon EventBridge User Guide * .

* @public */ InvocationConnectivityParameters?: ConnectivityResourceParameters | undefined; /** *

The identifier of the KMS * customer managed key for EventBridge to use, if you choose to use a customer managed key to encrypt this connection. 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 * Amazon Web Services owned key to encrypt the connection.

*

For more information, see Identify and view keys in the Key Management Service * Developer Guide.

* @public */ KmsKeyIdentifier?: string | undefined; } /** * @public */ export interface UpdateConnectionResponse { /** *

The ARN of the connection that was updated.

* @public */ ConnectionArn?: string | undefined; /** *

The state of the connection that was updated.

* @public */ ConnectionState?: ConnectionState | undefined; /** *

A time stamp for the time that the connection was created.

* @public */ CreationTime?: Date | undefined; /** *

A time stamp for the time that the connection was last modified.

* @public */ LastModifiedTime?: Date | undefined; /** *

A time stamp for the time that the connection was last authorized.

* @public */ LastAuthorizedTime?: Date | undefined; } /** * @public */ export interface UpdateEndpointRequest { /** *

The name of the endpoint you want to update.

* @public */ Name: string | undefined; /** *

A description for the endpoint.

* @public */ Description?: string | undefined; /** *

Configure the routing policy, including the health check and secondary Region.

* @public */ RoutingConfig?: RoutingConfig | undefined; /** *

Whether event replication was enabled or disabled by this request.

* @public */ ReplicationConfig?: ReplicationConfig | undefined; /** *

Define event buses used for replication.

* @public */ EventBuses?: EndpointEventBus[] | undefined; /** *

The ARN of the role used by event replication for this request.

* @public */ RoleArn?: string | undefined; } /** * @public */ export interface UpdateEndpointResponse { /** *

The name of the endpoint you updated in this request.

* @public */ Name?: string | undefined; /** *

The ARN of the endpoint you updated in this request.

* @public */ Arn?: string | undefined; /** *

The routing configuration you updated in this request.

* @public */ RoutingConfig?: RoutingConfig | undefined; /** *

Whether event replication was enabled or disabled for the endpoint you updated in this * request.

* @public */ ReplicationConfig?: ReplicationConfig | undefined; /** *

The event buses used for replication for the endpoint you updated in this request.

* @public */ EventBuses?: EndpointEventBus[] | undefined; /** *

The ARN of the role used by event replication for the endpoint you updated in this * request.

* @public */ RoleArn?: string | undefined; /** *

The ID of the endpoint you updated in this request.

* @public */ EndpointId?: string | undefined; /** *

The URL of the endpoint you updated in this request.

* @public */ EndpointUrl?: string | undefined; /** *

The state of the endpoint you updated in this request.

* @public */ State?: EndpointState | undefined; } /** * @public */ export interface UpdateEventBusRequest { /** *

The name of the event bus.

* @public */ Name?: string | undefined; /** *

The identifier of the KMS * customer managed key for EventBridge to use, if you choose to use a customer managed key to encrypt events on this event bus. 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 * Amazon Web Services owned key to encrypt events on the event bus.

*

For more information, see Identify and view keys in the Key Management Service * Developer Guide.

* *

Schema discovery is not supported for event buses encrypted using a * customer managed key. EventBridge returns an error if:

*
    *
  • *

    You call * CreateDiscoverer * on an event bus set to use a customer managed key for encryption.

    *
  • *
  • *

    You call * UpdatedEventBus * to set a customer managed key on an event bus with schema discovery enabled.

    *
  • *
*

To enable schema discovery on an event bus, choose to * use an Amazon Web Services owned key. For more information, see Encrypting events in the Amazon EventBridge User Guide.

*
* *

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.

*
* @public */ KmsKeyIdentifier?: string | undefined; /** *

The event bus description.

* @public */ Description?: string | undefined; /** *

Configuration details of the Amazon SQS queue for EventBridge to use as a * dead-letter queue (DLQ).

*

For more information, see Using dead-letter queues to process undelivered events in the EventBridge User * Guide.

* @public */ DeadLetterConfig?: DeadLetterConfig | undefined; /** *

The logging configuration settings for the event bus.

*

For more information, see Configuring logs for event buses in the EventBridge User Guide.

* @public */ LogConfig?: LogConfig | undefined; } /** * @public */ export interface UpdateEventBusResponse { /** *

The event bus Amazon Resource Name (ARN).

* @public */ Arn?: string | undefined; /** *

The event bus name.

* @public */ Name?: string | undefined; /** *

The identifier of the KMS * customer managed key for EventBridge to use to encrypt events on this event bus, if one has been specified.

*

For more information, see Data encryption in EventBridge in the Amazon EventBridge User Guide.

* @public */ KmsKeyIdentifier?: string | undefined; /** *

The event bus description.

* @public */ Description?: string | undefined; /** *

Configuration details of the Amazon SQS queue for EventBridge to use as a * dead-letter queue (DLQ).

*

For more information, see Using dead-letter queues to process undelivered events in the EventBridge User * Guide.

* @public */ DeadLetterConfig?: DeadLetterConfig | undefined; /** *

The logging configuration settings for the event bus.

*

For more information, see Configuring logs for event buses in the EventBridge User Guide.

* @public */ LogConfig?: LogConfig | undefined; }