All Downloads are FREE. Search and download functionalities are using the official Maven repository.

software.amazon.awssdk.services.cloudwatchevents.CloudWatchEventsClient Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Amazon CloudWatch Events module holds the client classes that are used for communicating with Amazon CloudWatch Events Service

There is a newer version: 2.29.39
Show newest version
/*
 * Copyright 2014-2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */

package software.amazon.awssdk.services.cloudwatchevents;

import java.util.function.Consumer;
import software.amazon.awssdk.annotations.Generated;
import software.amazon.awssdk.awscore.exception.AwsServiceException;
import software.amazon.awssdk.core.SdkClient;
import software.amazon.awssdk.core.exception.SdkClientException;
import software.amazon.awssdk.regions.ServiceMetadata;
import software.amazon.awssdk.services.cloudwatchevents.model.CloudWatchEventsException;
import software.amazon.awssdk.services.cloudwatchevents.model.ConcurrentModificationException;
import software.amazon.awssdk.services.cloudwatchevents.model.DeleteRuleRequest;
import software.amazon.awssdk.services.cloudwatchevents.model.DeleteRuleResponse;
import software.amazon.awssdk.services.cloudwatchevents.model.DescribeEventBusRequest;
import software.amazon.awssdk.services.cloudwatchevents.model.DescribeEventBusResponse;
import software.amazon.awssdk.services.cloudwatchevents.model.DescribeRuleRequest;
import software.amazon.awssdk.services.cloudwatchevents.model.DescribeRuleResponse;
import software.amazon.awssdk.services.cloudwatchevents.model.DisableRuleRequest;
import software.amazon.awssdk.services.cloudwatchevents.model.DisableRuleResponse;
import software.amazon.awssdk.services.cloudwatchevents.model.EnableRuleRequest;
import software.amazon.awssdk.services.cloudwatchevents.model.EnableRuleResponse;
import software.amazon.awssdk.services.cloudwatchevents.model.InternalException;
import software.amazon.awssdk.services.cloudwatchevents.model.InvalidEventPatternException;
import software.amazon.awssdk.services.cloudwatchevents.model.LimitExceededException;
import software.amazon.awssdk.services.cloudwatchevents.model.ListRuleNamesByTargetRequest;
import software.amazon.awssdk.services.cloudwatchevents.model.ListRuleNamesByTargetResponse;
import software.amazon.awssdk.services.cloudwatchevents.model.ListRulesRequest;
import software.amazon.awssdk.services.cloudwatchevents.model.ListRulesResponse;
import software.amazon.awssdk.services.cloudwatchevents.model.ListTagsForResourceRequest;
import software.amazon.awssdk.services.cloudwatchevents.model.ListTagsForResourceResponse;
import software.amazon.awssdk.services.cloudwatchevents.model.ListTargetsByRuleRequest;
import software.amazon.awssdk.services.cloudwatchevents.model.ListTargetsByRuleResponse;
import software.amazon.awssdk.services.cloudwatchevents.model.ManagedRuleException;
import software.amazon.awssdk.services.cloudwatchevents.model.PolicyLengthExceededException;
import software.amazon.awssdk.services.cloudwatchevents.model.PutEventsRequest;
import software.amazon.awssdk.services.cloudwatchevents.model.PutEventsResponse;
import software.amazon.awssdk.services.cloudwatchevents.model.PutPermissionRequest;
import software.amazon.awssdk.services.cloudwatchevents.model.PutPermissionResponse;
import software.amazon.awssdk.services.cloudwatchevents.model.PutRuleRequest;
import software.amazon.awssdk.services.cloudwatchevents.model.PutRuleResponse;
import software.amazon.awssdk.services.cloudwatchevents.model.PutTargetsRequest;
import software.amazon.awssdk.services.cloudwatchevents.model.PutTargetsResponse;
import software.amazon.awssdk.services.cloudwatchevents.model.RemovePermissionRequest;
import software.amazon.awssdk.services.cloudwatchevents.model.RemovePermissionResponse;
import software.amazon.awssdk.services.cloudwatchevents.model.RemoveTargetsRequest;
import software.amazon.awssdk.services.cloudwatchevents.model.RemoveTargetsResponse;
import software.amazon.awssdk.services.cloudwatchevents.model.ResourceNotFoundException;
import software.amazon.awssdk.services.cloudwatchevents.model.TagResourceRequest;
import software.amazon.awssdk.services.cloudwatchevents.model.TagResourceResponse;
import software.amazon.awssdk.services.cloudwatchevents.model.TestEventPatternRequest;
import software.amazon.awssdk.services.cloudwatchevents.model.TestEventPatternResponse;
import software.amazon.awssdk.services.cloudwatchevents.model.UntagResourceRequest;
import software.amazon.awssdk.services.cloudwatchevents.model.UntagResourceResponse;

/**
 * Service client for accessing Amazon CloudWatch Events. This can be created using the static {@link #builder()}
 * method.
 *
 * 

* Amazon CloudWatch Events helps you to respond to state changes in your AWS resources. When your resources change * state, they automatically send events into an event stream. You can create rules that match selected events in the * stream and route them to targets to take action. You can also use rules to take action on a predetermined schedule. * For example, you can configure rules to: *

*
    *
  • *

    * Automatically invoke an AWS Lambda function to update DNS entries when an event notifies you that Amazon EC2 instance * enters the running state. *

    *
  • *
  • *

    * Direct specific API records from AWS CloudTrail to an Amazon Kinesis data stream for detailed analysis of potential * security or availability risks. *

    *
  • *
  • *

    * Periodically invoke a built-in target to create a snapshot of an Amazon EBS volume. *

    *
  • *
*

* For more information about the features of Amazon CloudWatch Events, see the Amazon CloudWatch Events User Guide. *

*/ @Generated("software.amazon.awssdk:codegen") public interface CloudWatchEventsClient extends SdkClient { String SERVICE_NAME = "events"; /** * Create a {@link CloudWatchEventsClient} with the region loaded from the * {@link software.amazon.awssdk.regions.providers.DefaultAwsRegionProviderChain} and credentials loaded from the * {@link software.amazon.awssdk.auth.credentials.DefaultCredentialsProvider}. */ static CloudWatchEventsClient create() { return builder().build(); } /** * Create a builder that can be used to configure and create a {@link CloudWatchEventsClient}. */ static CloudWatchEventsClientBuilder builder() { return new DefaultCloudWatchEventsClientBuilder(); } /** *

* Deletes the specified rule. *

*

* Before you can delete the rule, you must remove all targets, using RemoveTargets. *

*

* When you delete a rule, incoming events might continue to match to the deleted rule. Allow a short period of time * for changes to take effect. *

*

* Managed rules are rules created and managed by another AWS service on your behalf. These rules are created by * those other AWS services to support functionality in those services. You can delete these rules using the * Force option, but you should do so only if you are sure the other service is not still using that * rule. *

* * @param deleteRuleRequest * @return Result of the DeleteRule operation returned by the service. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws ManagedRuleException * This rule was created by an AWS service on behalf of your account. It is managed by that service. If you * see this error in response to DeleteRule or RemoveTargets, you can use the * Force parameter in those calls to delete the rule or remove targets from the rule. You * cannot modify these managed rules by using DisableRule, EnableRule, * PutTargets, PutRule, TagResource, or UntagResource. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.DeleteRule * @see AWS API * Documentation */ default DeleteRuleResponse deleteRule(DeleteRuleRequest deleteRuleRequest) throws ConcurrentModificationException, ManagedRuleException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { throw new UnsupportedOperationException(); } /** *

* Deletes the specified rule. *

*

* Before you can delete the rule, you must remove all targets, using RemoveTargets. *

*

* When you delete a rule, incoming events might continue to match to the deleted rule. Allow a short period of time * for changes to take effect. *

*

* Managed rules are rules created and managed by another AWS service on your behalf. These rules are created by * those other AWS services to support functionality in those services. You can delete these rules using the * Force option, but you should do so only if you are sure the other service is not still using that * rule. *

*
*

* This is a convenience which creates an instance of the {@link DeleteRuleRequest.Builder} avoiding the need to * create one manually via {@link DeleteRuleRequest#builder()} *

* * @param deleteRuleRequest * A {@link Consumer} that will call methods on {@link DeleteRuleRequest.Builder} to create a request. * @return Result of the DeleteRule operation returned by the service. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws ManagedRuleException * This rule was created by an AWS service on behalf of your account. It is managed by that service. If you * see this error in response to DeleteRule or RemoveTargets, you can use the * Force parameter in those calls to delete the rule or remove targets from the rule. You * cannot modify these managed rules by using DisableRule, EnableRule, * PutTargets, PutRule, TagResource, or UntagResource. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.DeleteRule * @see AWS API * Documentation */ default DeleteRuleResponse deleteRule(Consumer deleteRuleRequest) throws ConcurrentModificationException, ManagedRuleException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { return deleteRule(DeleteRuleRequest.builder().applyMutation(deleteRuleRequest).build()); } /** *

* Displays the external AWS accounts that are permitted to write events to your account using your account's event * bus, and the associated policy. To enable your account to receive events from other accounts, use * PutPermission. *

* * @return Result of the DescribeEventBus operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.DescribeEventBus * @see #describeEventBus(DescribeEventBusRequest) * @see AWS API * Documentation */ default DescribeEventBusResponse describeEventBus() throws ResourceNotFoundException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { return describeEventBus(DescribeEventBusRequest.builder().build()); } /** *

* Displays the external AWS accounts that are permitted to write events to your account using your account's event * bus, and the associated policy. To enable your account to receive events from other accounts, use * PutPermission. *

* * @param describeEventBusRequest * @return Result of the DescribeEventBus operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.DescribeEventBus * @see AWS API * Documentation */ default DescribeEventBusResponse describeEventBus(DescribeEventBusRequest describeEventBusRequest) throws ResourceNotFoundException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { throw new UnsupportedOperationException(); } /** *

* Displays the external AWS accounts that are permitted to write events to your account using your account's event * bus, and the associated policy. To enable your account to receive events from other accounts, use * PutPermission. *

*
*

* This is a convenience which creates an instance of the {@link DescribeEventBusRequest.Builder} avoiding the need * to create one manually via {@link DescribeEventBusRequest#builder()} *

* * @param describeEventBusRequest * A {@link Consumer} that will call methods on {@link DescribeEventBusRequest.Builder} to create a request. * @return Result of the DescribeEventBus operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.DescribeEventBus * @see AWS API * Documentation */ default DescribeEventBusResponse describeEventBus(Consumer describeEventBusRequest) throws ResourceNotFoundException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { return describeEventBus(DescribeEventBusRequest.builder().applyMutation(describeEventBusRequest).build()); } /** *

* Describes the specified rule. *

*

* DescribeRule does not list the targets of a rule. To see the targets associated with a rule, use * ListTargetsByRule. *

* * @param describeRuleRequest * @return Result of the DescribeRule operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.DescribeRule * @see AWS API * Documentation */ default DescribeRuleResponse describeRule(DescribeRuleRequest describeRuleRequest) throws ResourceNotFoundException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { throw new UnsupportedOperationException(); } /** *

* Describes the specified rule. *

*

* DescribeRule does not list the targets of a rule. To see the targets associated with a rule, use * ListTargetsByRule. *

*
*

* This is a convenience which creates an instance of the {@link DescribeRuleRequest.Builder} avoiding the need to * create one manually via {@link DescribeRuleRequest#builder()} *

* * @param describeRuleRequest * A {@link Consumer} that will call methods on {@link DescribeRuleRequest.Builder} to create a request. * @return Result of the DescribeRule operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.DescribeRule * @see AWS API * Documentation */ default DescribeRuleResponse describeRule(Consumer describeRuleRequest) throws ResourceNotFoundException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { return describeRule(DescribeRuleRequest.builder().applyMutation(describeRuleRequest).build()); } /** *

* Disables the specified rule. A disabled rule won't match any events, and won't self-trigger if it has a schedule * expression. *

*

* When you disable a rule, incoming events might continue to match to the disabled rule. Allow a short period of * time for changes to take effect. *

* * @param disableRuleRequest * @return Result of the DisableRule operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws ManagedRuleException * This rule was created by an AWS service on behalf of your account. It is managed by that service. If you * see this error in response to DeleteRule or RemoveTargets, you can use the * Force parameter in those calls to delete the rule or remove targets from the rule. You * cannot modify these managed rules by using DisableRule, EnableRule, * PutTargets, PutRule, TagResource, or UntagResource. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.DisableRule * @see AWS API * Documentation */ default DisableRuleResponse disableRule(DisableRuleRequest disableRuleRequest) throws ResourceNotFoundException, ConcurrentModificationException, ManagedRuleException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { throw new UnsupportedOperationException(); } /** *

* Disables the specified rule. A disabled rule won't match any events, and won't self-trigger if it has a schedule * expression. *

*

* When you disable a rule, incoming events might continue to match to the disabled rule. Allow a short period of * time for changes to take effect. *

*
*

* This is a convenience which creates an instance of the {@link DisableRuleRequest.Builder} avoiding the need to * create one manually via {@link DisableRuleRequest#builder()} *

* * @param disableRuleRequest * A {@link Consumer} that will call methods on {@link DisableRuleRequest.Builder} to create a request. * @return Result of the DisableRule operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws ManagedRuleException * This rule was created by an AWS service on behalf of your account. It is managed by that service. If you * see this error in response to DeleteRule or RemoveTargets, you can use the * Force parameter in those calls to delete the rule or remove targets from the rule. You * cannot modify these managed rules by using DisableRule, EnableRule, * PutTargets, PutRule, TagResource, or UntagResource. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.DisableRule * @see AWS API * Documentation */ default DisableRuleResponse disableRule(Consumer disableRuleRequest) throws ResourceNotFoundException, ConcurrentModificationException, ManagedRuleException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { return disableRule(DisableRuleRequest.builder().applyMutation(disableRuleRequest).build()); } /** *

* Enables the specified rule. If the rule does not exist, the operation fails. *

*

* When you enable a rule, incoming events might not immediately start matching to a newly enabled rule. Allow a * short period of time for changes to take effect. *

* * @param enableRuleRequest * @return Result of the EnableRule operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws ManagedRuleException * This rule was created by an AWS service on behalf of your account. It is managed by that service. If you * see this error in response to DeleteRule or RemoveTargets, you can use the * Force parameter in those calls to delete the rule or remove targets from the rule. You * cannot modify these managed rules by using DisableRule, EnableRule, * PutTargets, PutRule, TagResource, or UntagResource. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.EnableRule * @see AWS API * Documentation */ default EnableRuleResponse enableRule(EnableRuleRequest enableRuleRequest) throws ResourceNotFoundException, ConcurrentModificationException, ManagedRuleException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { throw new UnsupportedOperationException(); } /** *

* Enables the specified rule. If the rule does not exist, the operation fails. *

*

* When you enable a rule, incoming events might not immediately start matching to a newly enabled rule. Allow a * short period of time for changes to take effect. *

*
*

* This is a convenience which creates an instance of the {@link EnableRuleRequest.Builder} avoiding the need to * create one manually via {@link EnableRuleRequest#builder()} *

* * @param enableRuleRequest * A {@link Consumer} that will call methods on {@link EnableRuleRequest.Builder} to create a request. * @return Result of the EnableRule operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws ManagedRuleException * This rule was created by an AWS service on behalf of your account. It is managed by that service. If you * see this error in response to DeleteRule or RemoveTargets, you can use the * Force parameter in those calls to delete the rule or remove targets from the rule. You * cannot modify these managed rules by using DisableRule, EnableRule, * PutTargets, PutRule, TagResource, or UntagResource. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.EnableRule * @see AWS API * Documentation */ default EnableRuleResponse enableRule(Consumer enableRuleRequest) throws ResourceNotFoundException, ConcurrentModificationException, ManagedRuleException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { return enableRule(EnableRuleRequest.builder().applyMutation(enableRuleRequest).build()); } /** *

* Lists the rules for the specified target. You can see which of the rules in Amazon CloudWatch Events can invoke a * specific target in your account. *

* * @param listRuleNamesByTargetRequest * @return Result of the ListRuleNamesByTarget operation returned by the service. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.ListRuleNamesByTarget * @see AWS * API Documentation */ default ListRuleNamesByTargetResponse listRuleNamesByTarget(ListRuleNamesByTargetRequest listRuleNamesByTargetRequest) throws InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { throw new UnsupportedOperationException(); } /** *

* Lists the rules for the specified target. You can see which of the rules in Amazon CloudWatch Events can invoke a * specific target in your account. *

*
*

* This is a convenience which creates an instance of the {@link ListRuleNamesByTargetRequest.Builder} avoiding the * need to create one manually via {@link ListRuleNamesByTargetRequest#builder()} *

* * @param listRuleNamesByTargetRequest * A {@link Consumer} that will call methods on {@link ListRuleNamesByTargetRequest.Builder} to create a * request. * @return Result of the ListRuleNamesByTarget operation returned by the service. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.ListRuleNamesByTarget * @see AWS * API Documentation */ default ListRuleNamesByTargetResponse listRuleNamesByTarget( Consumer listRuleNamesByTargetRequest) throws InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { return listRuleNamesByTarget(ListRuleNamesByTargetRequest.builder().applyMutation(listRuleNamesByTargetRequest).build()); } /** *

* Lists your Amazon CloudWatch Events rules. You can either list all the rules or you can provide a prefix to match * to the rule names. *

*

* ListRules does not list the targets of a rule. To see the targets associated with a rule, use * ListTargetsByRule. *

* * @return Result of the ListRules operation returned by the service. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.ListRules * @see #listRules(ListRulesRequest) * @see AWS API * Documentation */ default ListRulesResponse listRules() throws InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { return listRules(ListRulesRequest.builder().build()); } /** *

* Lists your Amazon CloudWatch Events rules. You can either list all the rules or you can provide a prefix to match * to the rule names. *

*

* ListRules does not list the targets of a rule. To see the targets associated with a rule, use * ListTargetsByRule. *

* * @param listRulesRequest * @return Result of the ListRules operation returned by the service. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.ListRules * @see AWS API * Documentation */ default ListRulesResponse listRules(ListRulesRequest listRulesRequest) throws InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { throw new UnsupportedOperationException(); } /** *

* Lists your Amazon CloudWatch Events rules. You can either list all the rules or you can provide a prefix to match * to the rule names. *

*

* ListRules does not list the targets of a rule. To see the targets associated with a rule, use * ListTargetsByRule. *

*
*

* This is a convenience which creates an instance of the {@link ListRulesRequest.Builder} avoiding the need to * create one manually via {@link ListRulesRequest#builder()} *

* * @param listRulesRequest * A {@link Consumer} that will call methods on {@link ListRulesRequest.Builder} to create a request. * @return Result of the ListRules operation returned by the service. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.ListRules * @see AWS API * Documentation */ default ListRulesResponse listRules(Consumer listRulesRequest) throws InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { return listRules(ListRulesRequest.builder().applyMutation(listRulesRequest).build()); } /** *

* Displays the tags associated with a CloudWatch Events resource. In CloudWatch Events, rules can be tagged. *

* * @param listTagsForResourceRequest * @return Result of the ListTagsForResource operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.ListTagsForResource * @see AWS API * Documentation */ default ListTagsForResourceResponse listTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest) throws ResourceNotFoundException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { throw new UnsupportedOperationException(); } /** *

* Displays the tags associated with a CloudWatch Events resource. In CloudWatch Events, rules can be tagged. *

*
*

* This is a convenience which creates an instance of the {@link ListTagsForResourceRequest.Builder} avoiding the * need to create one manually via {@link ListTagsForResourceRequest#builder()} *

* * @param listTagsForResourceRequest * A {@link Consumer} that will call methods on {@link ListTagsForResourceRequest.Builder} to create a * request. * @return Result of the ListTagsForResource operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.ListTagsForResource * @see AWS API * Documentation */ default ListTagsForResourceResponse listTagsForResource( Consumer listTagsForResourceRequest) throws ResourceNotFoundException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { return listTagsForResource(ListTagsForResourceRequest.builder().applyMutation(listTagsForResourceRequest).build()); } /** *

* Lists the targets assigned to the specified rule. *

* * @param listTargetsByRuleRequest * @return Result of the ListTargetsByRule operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.ListTargetsByRule * @see AWS API * Documentation */ default ListTargetsByRuleResponse listTargetsByRule(ListTargetsByRuleRequest listTargetsByRuleRequest) throws ResourceNotFoundException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { throw new UnsupportedOperationException(); } /** *

* Lists the targets assigned to the specified rule. *

*
*

* This is a convenience which creates an instance of the {@link ListTargetsByRuleRequest.Builder} avoiding the need * to create one manually via {@link ListTargetsByRuleRequest#builder()} *

* * @param listTargetsByRuleRequest * A {@link Consumer} that will call methods on {@link ListTargetsByRuleRequest.Builder} to create a request. * @return Result of the ListTargetsByRule operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.ListTargetsByRule * @see AWS API * Documentation */ default ListTargetsByRuleResponse listTargetsByRule(Consumer listTargetsByRuleRequest) throws ResourceNotFoundException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { return listTargetsByRule(ListTargetsByRuleRequest.builder().applyMutation(listTargetsByRuleRequest).build()); } /** *

* Sends custom events to Amazon CloudWatch Events so that they can be matched to rules. *

* * @param putEventsRequest * @return Result of the PutEvents operation returned by the service. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.PutEvents * @see AWS API * Documentation */ default PutEventsResponse putEvents(PutEventsRequest putEventsRequest) throws InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { throw new UnsupportedOperationException(); } /** *

* Sends custom events to Amazon CloudWatch Events so that they can be matched to rules. *

*
*

* This is a convenience which creates an instance of the {@link PutEventsRequest.Builder} avoiding the need to * create one manually via {@link PutEventsRequest#builder()} *

* * @param putEventsRequest * A {@link Consumer} that will call methods on {@link PutEventsRequest.Builder} to create a request. * @return Result of the PutEvents operation returned by the service. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.PutEvents * @see AWS API * Documentation */ default PutEventsResponse putEvents(Consumer putEventsRequest) throws InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { return putEvents(PutEventsRequest.builder().applyMutation(putEventsRequest).build()); } /** *

* Running PutPermission permits the specified AWS account or AWS organization to put events to your * account's default event bus. CloudWatch Events rules in your account are triggered by these events * arriving to your default event bus. *

*

* For another account to send events to your account, that external account must have a CloudWatch Events rule with * your account's default event bus as a target. *

*

* To enable multiple AWS accounts to put events to your default event bus, run PutPermission once for * each of these accounts. Or, if all the accounts are members of the same AWS organization, you can run * PutPermission once specifying Principal as "*" and specifying the AWS organization ID * in Condition, to grant permissions to all accounts in that organization. *

*

* If you grant permissions using an organization, then accounts in that organization must specify a * RoleArn with proper permissions when they use PutTarget to add your account's event bus * as a target. For more information, see Sending and Receiving Events Between AWS Accounts in the Amazon CloudWatch Events User Guide. *

*

* The permission policy on the default event bus cannot exceed 10 KB in size. *

* * @param putPermissionRequest * @return Result of the PutPermission operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws PolicyLengthExceededException * The event bus policy is too long. For more information, see the limits. * @throws InternalException * This exception occurs due to unexpected causes. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.PutPermission * @see AWS API * Documentation */ default PutPermissionResponse putPermission(PutPermissionRequest putPermissionRequest) throws ResourceNotFoundException, PolicyLengthExceededException, InternalException, ConcurrentModificationException, AwsServiceException, SdkClientException, CloudWatchEventsException { throw new UnsupportedOperationException(); } /** *

* Running PutPermission permits the specified AWS account or AWS organization to put events to your * account's default event bus. CloudWatch Events rules in your account are triggered by these events * arriving to your default event bus. *

*

* For another account to send events to your account, that external account must have a CloudWatch Events rule with * your account's default event bus as a target. *

*

* To enable multiple AWS accounts to put events to your default event bus, run PutPermission once for * each of these accounts. Or, if all the accounts are members of the same AWS organization, you can run * PutPermission once specifying Principal as "*" and specifying the AWS organization ID * in Condition, to grant permissions to all accounts in that organization. *

*

* If you grant permissions using an organization, then accounts in that organization must specify a * RoleArn with proper permissions when they use PutTarget to add your account's event bus * as a target. For more information, see Sending and Receiving Events Between AWS Accounts in the Amazon CloudWatch Events User Guide. *

*

* The permission policy on the default event bus cannot exceed 10 KB in size. *

*
*

* This is a convenience which creates an instance of the {@link PutPermissionRequest.Builder} avoiding the need to * create one manually via {@link PutPermissionRequest#builder()} *

* * @param putPermissionRequest * A {@link Consumer} that will call methods on {@link PutPermissionRequest.Builder} to create a request. * @return Result of the PutPermission operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws PolicyLengthExceededException * The event bus policy is too long. For more information, see the limits. * @throws InternalException * This exception occurs due to unexpected causes. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.PutPermission * @see AWS API * Documentation */ default PutPermissionResponse putPermission(Consumer putPermissionRequest) throws ResourceNotFoundException, PolicyLengthExceededException, InternalException, ConcurrentModificationException, AwsServiceException, SdkClientException, CloudWatchEventsException { return putPermission(PutPermissionRequest.builder().applyMutation(putPermissionRequest).build()); } /** *

* Creates or updates the specified rule. Rules are enabled by default, or based on value of the state. You can * disable a rule using DisableRule. *

*

* If you are updating an existing rule, the rule is replaced with what you specify in this PutRule * command. If you omit arguments in PutRule, the old values for those arguments are not kept. Instead, * they are replaced with null values. *

*

* When you create or update a rule, incoming events might not immediately start matching to new or updated rules. * Allow a short period of time for changes to take effect. *

*

* A rule must contain at least an EventPattern or ScheduleExpression. Rules with EventPatterns are triggered when a * matching event is observed. Rules with ScheduleExpressions self-trigger based on the given schedule. A rule can * have both an EventPattern and a ScheduleExpression, in which case the rule triggers on matching events as well as * on a schedule. *

*

* When you initially create a rule, you can optionally assign one or more tags to the rule. Tags can help you * organize and categorize your resources. You can also use them to scope user permissions, by granting a user * permission to access or change only rules with certain tag values. To use the PutRule operation and * assign tags, you must have both the events:PutRule and events:TagResource permissions. *

*

* If you are updating an existing rule, any tags you specify in the PutRule operation are ignored. To * update the tags of an existing rule, use TagResource and UntagResource. *

*

* Most services in AWS treat : or / as the same character in Amazon Resource Names (ARNs). However, CloudWatch * Events uses an exact match in event patterns and rules. Be sure to use the correct ARN characters when creating * event patterns so that they match the ARN syntax in the event you want to match. *

*

* In CloudWatch Events, it is possible to create rules that lead to infinite loops, where a rule is fired * repeatedly. For example, a rule might detect that ACLs have changed on an S3 bucket, and trigger software to * change them to the desired state. If the rule is not written carefully, the subsequent change to the ACLs fires * the rule again, creating an infinite loop. *

*

* To prevent this, write the rules so that the triggered actions do not re-fire the same rule. For example, your * rule could fire only if ACLs are found to be in a bad state, instead of after any change. *

*

* An infinite loop can quickly cause higher than expected charges. We recommend that you use budgeting, which * alerts you when charges exceed your specified limit. For more information, see Managing Your * Costs with Budgets. *

* * @param putRuleRequest * @return Result of the PutRule operation returned by the service. * @throws InvalidEventPatternException * The event pattern is not valid. * @throws LimitExceededException * You tried to create more rules or add more targets to a rule than is allowed. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws ManagedRuleException * This rule was created by an AWS service on behalf of your account. It is managed by that service. If you * see this error in response to DeleteRule or RemoveTargets, you can use the * Force parameter in those calls to delete the rule or remove targets from the rule. You * cannot modify these managed rules by using DisableRule, EnableRule, * PutTargets, PutRule, TagResource, or UntagResource. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.PutRule * @see AWS API * Documentation */ default PutRuleResponse putRule(PutRuleRequest putRuleRequest) throws InvalidEventPatternException, LimitExceededException, ConcurrentModificationException, ManagedRuleException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { throw new UnsupportedOperationException(); } /** *

* Creates or updates the specified rule. Rules are enabled by default, or based on value of the state. You can * disable a rule using DisableRule. *

*

* If you are updating an existing rule, the rule is replaced with what you specify in this PutRule * command. If you omit arguments in PutRule, the old values for those arguments are not kept. Instead, * they are replaced with null values. *

*

* When you create or update a rule, incoming events might not immediately start matching to new or updated rules. * Allow a short period of time for changes to take effect. *

*

* A rule must contain at least an EventPattern or ScheduleExpression. Rules with EventPatterns are triggered when a * matching event is observed. Rules with ScheduleExpressions self-trigger based on the given schedule. A rule can * have both an EventPattern and a ScheduleExpression, in which case the rule triggers on matching events as well as * on a schedule. *

*

* When you initially create a rule, you can optionally assign one or more tags to the rule. Tags can help you * organize and categorize your resources. You can also use them to scope user permissions, by granting a user * permission to access or change only rules with certain tag values. To use the PutRule operation and * assign tags, you must have both the events:PutRule and events:TagResource permissions. *

*

* If you are updating an existing rule, any tags you specify in the PutRule operation are ignored. To * update the tags of an existing rule, use TagResource and UntagResource. *

*

* Most services in AWS treat : or / as the same character in Amazon Resource Names (ARNs). However, CloudWatch * Events uses an exact match in event patterns and rules. Be sure to use the correct ARN characters when creating * event patterns so that they match the ARN syntax in the event you want to match. *

*

* In CloudWatch Events, it is possible to create rules that lead to infinite loops, where a rule is fired * repeatedly. For example, a rule might detect that ACLs have changed on an S3 bucket, and trigger software to * change them to the desired state. If the rule is not written carefully, the subsequent change to the ACLs fires * the rule again, creating an infinite loop. *

*

* To prevent this, write the rules so that the triggered actions do not re-fire the same rule. For example, your * rule could fire only if ACLs are found to be in a bad state, instead of after any change. *

*

* An infinite loop can quickly cause higher than expected charges. We recommend that you use budgeting, which * alerts you when charges exceed your specified limit. For more information, see Managing Your * Costs with Budgets. *

*
*

* This is a convenience which creates an instance of the {@link PutRuleRequest.Builder} avoiding the need to create * one manually via {@link PutRuleRequest#builder()} *

* * @param putRuleRequest * A {@link Consumer} that will call methods on {@link PutRuleRequest.Builder} to create a request. * @return Result of the PutRule operation returned by the service. * @throws InvalidEventPatternException * The event pattern is not valid. * @throws LimitExceededException * You tried to create more rules or add more targets to a rule than is allowed. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws ManagedRuleException * This rule was created by an AWS service on behalf of your account. It is managed by that service. If you * see this error in response to DeleteRule or RemoveTargets, you can use the * Force parameter in those calls to delete the rule or remove targets from the rule. You * cannot modify these managed rules by using DisableRule, EnableRule, * PutTargets, PutRule, TagResource, or UntagResource. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.PutRule * @see AWS API * Documentation */ default PutRuleResponse putRule(Consumer putRuleRequest) throws InvalidEventPatternException, LimitExceededException, ConcurrentModificationException, ManagedRuleException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { return putRule(PutRuleRequest.builder().applyMutation(putRuleRequest).build()); } /** *

* Adds the specified targets to the specified rule, or updates the targets if they are already associated with the * rule. *

*

* Targets are the resources that are invoked when a rule is triggered. *

*

* You can configure the following as targets for CloudWatch Events: *

*
    *
  • *

    * EC2 instances *

    *
  • *
  • *

    * SSM Run Command *

    *
  • *
  • *

    * SSM Automation *

    *
  • *
  • *

    * AWS Lambda functions *

    *
  • *
  • *

    * Data streams in Amazon Kinesis Data Streams *

    *
  • *
  • *

    * Data delivery streams in Amazon Kinesis Data Firehose *

    *
  • *
  • *

    * Amazon ECS tasks *

    *
  • *
  • *

    * AWS Step Functions state machines *

    *
  • *
  • *

    * AWS Batch jobs *

    *
  • *
  • *

    * AWS CodeBuild projects *

    *
  • *
  • *

    * Pipelines in AWS CodePipeline *

    *
  • *
  • *

    * Amazon Inspector assessment templates *

    *
  • *
  • *

    * Amazon SNS topics *

    *
  • *
  • *

    * Amazon SQS queues, including FIFO queues *

    *
  • *
  • *

    * The default event bus of another AWS account *

    *
  • *
*

* Creating rules with built-in targets is supported only in the AWS Management Console. The built-in targets are * EC2 CreateSnapshot API call, EC2 RebootInstances API call, * EC2 StopInstances API call, and EC2 TerminateInstances API call. *

*

* For some target types, PutTargets provides target-specific parameters. If the target is a Kinesis * data stream, you can optionally specify which shard the event goes to by using the KinesisParameters * argument. To invoke a command on multiple EC2 instances with one rule, you can use the * RunCommandParameters field. *

*

* To be able to make API calls against the resources that you own, Amazon CloudWatch Events needs the appropriate * permissions. For AWS Lambda and Amazon SNS resources, CloudWatch Events relies on resource-based policies. For * EC2 instances, Kinesis data streams, and AWS Step Functions state machines, CloudWatch Events relies on IAM roles * that you specify in the RoleARN argument in PutTargets. For more information, see Authentication * and Access Control in the Amazon CloudWatch Events User Guide. *

*

* If another AWS account is in the same region and has granted you permission (using PutPermission), * you can send events to that account. Set that account's event bus as a target of the rules in your account. To * send the matched events to the other account, specify that account's event bus as the Arn value when * you run PutTargets. If your account sends events to another account, your account is charged for * each sent event. Each event sent to another account is charged as a custom event. The account receiving the event * is not charged. For more information, see Amazon CloudWatch * Pricing. *

*

* 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 AWS Accounts in the Amazon CloudWatch Events User Guide. *

*

* For more information about enabling cross-account events, see PutPermission. *

*

* Input, InputPath, and InputTransformer are mutually exclusive and optional parameters of a * target. When a rule is triggered due to a matched event: *

*
    *
  • *

    * If none of the following arguments are specified for a target, then the entire event is passed to the target in * JSON format (unless the target is Amazon EC2 Run Command or Amazon ECS task, in which case nothing from the event * is passed to the target). *

    *
  • *
  • *

    * If Input is specified in the form of valid JSON, then the matched event is overridden with this constant. *

    *
  • *
  • *

    * If InputPath is specified in the form of JSONPath (for example, $.detail), then only the * part of the event specified in the path is passed to the target (for example, only the detail part of the event * is passed). *

    *
  • *
  • *

    * If InputTransformer is specified, then one or more specified JSONPaths are extracted from the event and * used as values in a template that you specify as the input to the target. *

    *
  • *
*

* When you specify InputPath or InputTransformer, you must use JSON dot notation, not * bracket notation. *

*

* When you add targets to a rule and the associated rule triggers soon after, new or updated targets might not be * immediately invoked. Allow a short period of time for changes to take effect. *

*

* This action can partially fail if too many requests are made at the same time. If that happens, * FailedEntryCount is non-zero in the response and each entry in FailedEntries provides * the ID of the failed target and the error code. *

* * @param putTargetsRequest * @return Result of the PutTargets operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws LimitExceededException * You tried to create more rules or add more targets to a rule than is allowed. * @throws ManagedRuleException * This rule was created by an AWS service on behalf of your account. It is managed by that service. If you * see this error in response to DeleteRule or RemoveTargets, you can use the * Force parameter in those calls to delete the rule or remove targets from the rule. You * cannot modify these managed rules by using DisableRule, EnableRule, * PutTargets, PutRule, TagResource, or UntagResource. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.PutTargets * @see AWS API * Documentation */ default PutTargetsResponse putTargets(PutTargetsRequest putTargetsRequest) throws ResourceNotFoundException, ConcurrentModificationException, LimitExceededException, ManagedRuleException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { throw new UnsupportedOperationException(); } /** *

* Adds the specified targets to the specified rule, or updates the targets if they are already associated with the * rule. *

*

* Targets are the resources that are invoked when a rule is triggered. *

*

* You can configure the following as targets for CloudWatch Events: *

*
    *
  • *

    * EC2 instances *

    *
  • *
  • *

    * SSM Run Command *

    *
  • *
  • *

    * SSM Automation *

    *
  • *
  • *

    * AWS Lambda functions *

    *
  • *
  • *

    * Data streams in Amazon Kinesis Data Streams *

    *
  • *
  • *

    * Data delivery streams in Amazon Kinesis Data Firehose *

    *
  • *
  • *

    * Amazon ECS tasks *

    *
  • *
  • *

    * AWS Step Functions state machines *

    *
  • *
  • *

    * AWS Batch jobs *

    *
  • *
  • *

    * AWS CodeBuild projects *

    *
  • *
  • *

    * Pipelines in AWS CodePipeline *

    *
  • *
  • *

    * Amazon Inspector assessment templates *

    *
  • *
  • *

    * Amazon SNS topics *

    *
  • *
  • *

    * Amazon SQS queues, including FIFO queues *

    *
  • *
  • *

    * The default event bus of another AWS account *

    *
  • *
*

* Creating rules with built-in targets is supported only in the AWS Management Console. The built-in targets are * EC2 CreateSnapshot API call, EC2 RebootInstances API call, * EC2 StopInstances API call, and EC2 TerminateInstances API call. *

*

* For some target types, PutTargets provides target-specific parameters. If the target is a Kinesis * data stream, you can optionally specify which shard the event goes to by using the KinesisParameters * argument. To invoke a command on multiple EC2 instances with one rule, you can use the * RunCommandParameters field. *

*

* To be able to make API calls against the resources that you own, Amazon CloudWatch Events needs the appropriate * permissions. For AWS Lambda and Amazon SNS resources, CloudWatch Events relies on resource-based policies. For * EC2 instances, Kinesis data streams, and AWS Step Functions state machines, CloudWatch Events relies on IAM roles * that you specify in the RoleARN argument in PutTargets. For more information, see Authentication * and Access Control in the Amazon CloudWatch Events User Guide. *

*

* If another AWS account is in the same region and has granted you permission (using PutPermission), * you can send events to that account. Set that account's event bus as a target of the rules in your account. To * send the matched events to the other account, specify that account's event bus as the Arn value when * you run PutTargets. If your account sends events to another account, your account is charged for * each sent event. Each event sent to another account is charged as a custom event. The account receiving the event * is not charged. For more information, see Amazon CloudWatch * Pricing. *

*

* 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 AWS Accounts in the Amazon CloudWatch Events User Guide. *

*

* For more information about enabling cross-account events, see PutPermission. *

*

* Input, InputPath, and InputTransformer are mutually exclusive and optional parameters of a * target. When a rule is triggered due to a matched event: *

*
    *
  • *

    * If none of the following arguments are specified for a target, then the entire event is passed to the target in * JSON format (unless the target is Amazon EC2 Run Command or Amazon ECS task, in which case nothing from the event * is passed to the target). *

    *
  • *
  • *

    * If Input is specified in the form of valid JSON, then the matched event is overridden with this constant. *

    *
  • *
  • *

    * If InputPath is specified in the form of JSONPath (for example, $.detail), then only the * part of the event specified in the path is passed to the target (for example, only the detail part of the event * is passed). *

    *
  • *
  • *

    * If InputTransformer is specified, then one or more specified JSONPaths are extracted from the event and * used as values in a template that you specify as the input to the target. *

    *
  • *
*

* When you specify InputPath or InputTransformer, you must use JSON dot notation, not * bracket notation. *

*

* When you add targets to a rule and the associated rule triggers soon after, new or updated targets might not be * immediately invoked. Allow a short period of time for changes to take effect. *

*

* This action can partially fail if too many requests are made at the same time. If that happens, * FailedEntryCount is non-zero in the response and each entry in FailedEntries provides * the ID of the failed target and the error code. *

*
*

* This is a convenience which creates an instance of the {@link PutTargetsRequest.Builder} avoiding the need to * create one manually via {@link PutTargetsRequest#builder()} *

* * @param putTargetsRequest * A {@link Consumer} that will call methods on {@link PutTargetsRequest.Builder} to create a request. * @return Result of the PutTargets operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws LimitExceededException * You tried to create more rules or add more targets to a rule than is allowed. * @throws ManagedRuleException * This rule was created by an AWS service on behalf of your account. It is managed by that service. If you * see this error in response to DeleteRule or RemoveTargets, you can use the * Force parameter in those calls to delete the rule or remove targets from the rule. You * cannot modify these managed rules by using DisableRule, EnableRule, * PutTargets, PutRule, TagResource, or UntagResource. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.PutTargets * @see AWS API * Documentation */ default PutTargetsResponse putTargets(Consumer putTargetsRequest) throws ResourceNotFoundException, ConcurrentModificationException, LimitExceededException, ManagedRuleException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { return putTargets(PutTargetsRequest.builder().applyMutation(putTargetsRequest).build()); } /** *

* Revokes the permission of another AWS account to be able to put events to your default event bus. Specify the * account to revoke by the StatementId value that you associated with the account when you granted it * permission with PutPermission. You can find the StatementId by using * DescribeEventBus. *

* * @param removePermissionRequest * @return Result of the RemovePermission operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws InternalException * This exception occurs due to unexpected causes. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.RemovePermission * @see AWS API * Documentation */ default RemovePermissionResponse removePermission(RemovePermissionRequest removePermissionRequest) throws ResourceNotFoundException, InternalException, ConcurrentModificationException, AwsServiceException, SdkClientException, CloudWatchEventsException { throw new UnsupportedOperationException(); } /** *

* Revokes the permission of another AWS account to be able to put events to your default event bus. Specify the * account to revoke by the StatementId value that you associated with the account when you granted it * permission with PutPermission. You can find the StatementId by using * DescribeEventBus. *

*
*

* This is a convenience which creates an instance of the {@link RemovePermissionRequest.Builder} avoiding the need * to create one manually via {@link RemovePermissionRequest#builder()} *

* * @param removePermissionRequest * A {@link Consumer} that will call methods on {@link RemovePermissionRequest.Builder} to create a request. * @return Result of the RemovePermission operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws InternalException * This exception occurs due to unexpected causes. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.RemovePermission * @see AWS API * Documentation */ default RemovePermissionResponse removePermission(Consumer removePermissionRequest) throws ResourceNotFoundException, InternalException, ConcurrentModificationException, AwsServiceException, SdkClientException, CloudWatchEventsException { return removePermission(RemovePermissionRequest.builder().applyMutation(removePermissionRequest).build()); } /** *

* Removes the specified targets from the specified rule. When the rule is triggered, those targets are no longer be * invoked. *

*

* When you remove a target, when the associated rule triggers, removed targets might continue to be invoked. Allow * a short period of time for changes to take effect. *

*

* This action can partially fail if too many requests are made at the same time. If that happens, * FailedEntryCount is non-zero in the response and each entry in FailedEntries provides * the ID of the failed target and the error code. *

* * @param removeTargetsRequest * @return Result of the RemoveTargets operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws ManagedRuleException * This rule was created by an AWS service on behalf of your account. It is managed by that service. If you * see this error in response to DeleteRule or RemoveTargets, you can use the * Force parameter in those calls to delete the rule or remove targets from the rule. You * cannot modify these managed rules by using DisableRule, EnableRule, * PutTargets, PutRule, TagResource, or UntagResource. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.RemoveTargets * @see AWS API * Documentation */ default RemoveTargetsResponse removeTargets(RemoveTargetsRequest removeTargetsRequest) throws ResourceNotFoundException, ConcurrentModificationException, ManagedRuleException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { throw new UnsupportedOperationException(); } /** *

* Removes the specified targets from the specified rule. When the rule is triggered, those targets are no longer be * invoked. *

*

* When you remove a target, when the associated rule triggers, removed targets might continue to be invoked. Allow * a short period of time for changes to take effect. *

*

* This action can partially fail if too many requests are made at the same time. If that happens, * FailedEntryCount is non-zero in the response and each entry in FailedEntries provides * the ID of the failed target and the error code. *

*
*

* This is a convenience which creates an instance of the {@link RemoveTargetsRequest.Builder} avoiding the need to * create one manually via {@link RemoveTargetsRequest#builder()} *

* * @param removeTargetsRequest * A {@link Consumer} that will call methods on {@link RemoveTargetsRequest.Builder} to create a request. * @return Result of the RemoveTargets operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws ManagedRuleException * This rule was created by an AWS service on behalf of your account. It is managed by that service. If you * see this error in response to DeleteRule or RemoveTargets, you can use the * Force parameter in those calls to delete the rule or remove targets from the rule. You * cannot modify these managed rules by using DisableRule, EnableRule, * PutTargets, PutRule, TagResource, or UntagResource. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.RemoveTargets * @see AWS API * Documentation */ default RemoveTargetsResponse removeTargets(Consumer removeTargetsRequest) throws ResourceNotFoundException, ConcurrentModificationException, ManagedRuleException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { return removeTargets(RemoveTargetsRequest.builder().applyMutation(removeTargetsRequest).build()); } /** *

* Assigns one or more tags (key-value pairs) to the specified CloudWatch Events resource. Tags can help you * organize and categorize your resources. You can also use them to scope user permissions by granting a user * permission to access or change only resources with certain tag values. In CloudWatch Events, rules can be tagged. *

*

* Tags don't have any semantic meaning to AWS and are interpreted strictly as strings of characters. *

*

* You can use the TagResource action with a rule that already has tags. If you specify a new tag key * for the rule, this tag is appended to the list of tags associated with the rule. If you specify a tag key that is * already associated with the rule, the new tag value that you specify replaces the previous value for that tag. *

*

* You can associate as many as 50 tags with a resource. *

* * @param tagResourceRequest * @return Result of the TagResource operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws InternalException * This exception occurs due to unexpected causes. * @throws ManagedRuleException * This rule was created by an AWS service on behalf of your account. It is managed by that service. If you * see this error in response to DeleteRule or RemoveTargets, you can use the * Force parameter in those calls to delete the rule or remove targets from the rule. You * cannot modify these managed rules by using DisableRule, EnableRule, * PutTargets, PutRule, TagResource, or UntagResource. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.TagResource * @see AWS API * Documentation */ default TagResourceResponse tagResource(TagResourceRequest tagResourceRequest) throws ResourceNotFoundException, ConcurrentModificationException, InternalException, ManagedRuleException, AwsServiceException, SdkClientException, CloudWatchEventsException { throw new UnsupportedOperationException(); } /** *

* Assigns one or more tags (key-value pairs) to the specified CloudWatch Events resource. Tags can help you * organize and categorize your resources. You can also use them to scope user permissions by granting a user * permission to access or change only resources with certain tag values. In CloudWatch Events, rules can be tagged. *

*

* Tags don't have any semantic meaning to AWS and are interpreted strictly as strings of characters. *

*

* You can use the TagResource action with a rule that already has tags. If you specify a new tag key * for the rule, this tag is appended to the list of tags associated with the rule. If you specify a tag key that is * already associated with the rule, the new tag value that you specify replaces the previous value for that tag. *

*

* You can associate as many as 50 tags with a resource. *

*
*

* This is a convenience which creates an instance of the {@link TagResourceRequest.Builder} avoiding the need to * create one manually via {@link TagResourceRequest#builder()} *

* * @param tagResourceRequest * A {@link Consumer} that will call methods on {@link TagResourceRequest.Builder} to create a request. * @return Result of the TagResource operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws InternalException * This exception occurs due to unexpected causes. * @throws ManagedRuleException * This rule was created by an AWS service on behalf of your account. It is managed by that service. If you * see this error in response to DeleteRule or RemoveTargets, you can use the * Force parameter in those calls to delete the rule or remove targets from the rule. You * cannot modify these managed rules by using DisableRule, EnableRule, * PutTargets, PutRule, TagResource, or UntagResource. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.TagResource * @see AWS API * Documentation */ default TagResourceResponse tagResource(Consumer tagResourceRequest) throws ResourceNotFoundException, ConcurrentModificationException, InternalException, ManagedRuleException, AwsServiceException, SdkClientException, CloudWatchEventsException { return tagResource(TagResourceRequest.builder().applyMutation(tagResourceRequest).build()); } /** *

* Tests whether the specified event pattern matches the provided event. *

*

* Most services in AWS treat : or / as the same character in Amazon Resource Names (ARNs). However, CloudWatch * Events uses an exact match in event patterns and rules. Be sure to use the correct ARN characters when creating * event patterns so that they match the ARN syntax in the event you want to match. *

* * @param testEventPatternRequest * @return Result of the TestEventPattern operation returned by the service. * @throws InvalidEventPatternException * The event pattern is not valid. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.TestEventPattern * @see AWS API * Documentation */ default TestEventPatternResponse testEventPattern(TestEventPatternRequest testEventPatternRequest) throws InvalidEventPatternException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { throw new UnsupportedOperationException(); } /** *

* Tests whether the specified event pattern matches the provided event. *

*

* Most services in AWS treat : or / as the same character in Amazon Resource Names (ARNs). However, CloudWatch * Events uses an exact match in event patterns and rules. Be sure to use the correct ARN characters when creating * event patterns so that they match the ARN syntax in the event you want to match. *

*
*

* This is a convenience which creates an instance of the {@link TestEventPatternRequest.Builder} avoiding the need * to create one manually via {@link TestEventPatternRequest#builder()} *

* * @param testEventPatternRequest * A {@link Consumer} that will call methods on {@link TestEventPatternRequest.Builder} to create a request. * @return Result of the TestEventPattern operation returned by the service. * @throws InvalidEventPatternException * The event pattern is not valid. * @throws InternalException * This exception occurs due to unexpected causes. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.TestEventPattern * @see AWS API * Documentation */ default TestEventPatternResponse testEventPattern(Consumer testEventPatternRequest) throws InvalidEventPatternException, InternalException, AwsServiceException, SdkClientException, CloudWatchEventsException { return testEventPattern(TestEventPatternRequest.builder().applyMutation(testEventPatternRequest).build()); } /** *

* Removes one or more tags from the specified CloudWatch Events resource. In CloudWatch Events, rules can be * tagged. *

* * @param untagResourceRequest * @return Result of the UntagResource operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws InternalException * This exception occurs due to unexpected causes. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws ManagedRuleException * This rule was created by an AWS service on behalf of your account. It is managed by that service. If you * see this error in response to DeleteRule or RemoveTargets, you can use the * Force parameter in those calls to delete the rule or remove targets from the rule. You * cannot modify these managed rules by using DisableRule, EnableRule, * PutTargets, PutRule, TagResource, or UntagResource. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.UntagResource * @see AWS API * Documentation */ default UntagResourceResponse untagResource(UntagResourceRequest untagResourceRequest) throws ResourceNotFoundException, InternalException, ConcurrentModificationException, ManagedRuleException, AwsServiceException, SdkClientException, CloudWatchEventsException { throw new UnsupportedOperationException(); } /** *

* Removes one or more tags from the specified CloudWatch Events resource. In CloudWatch Events, rules can be * tagged. *

*
*

* This is a convenience which creates an instance of the {@link UntagResourceRequest.Builder} avoiding the need to * create one manually via {@link UntagResourceRequest#builder()} *

* * @param untagResourceRequest * A {@link Consumer} that will call methods on {@link UntagResourceRequest.Builder} to create a request. * @return Result of the UntagResource operation returned by the service. * @throws ResourceNotFoundException * An entity that you specified does not exist. * @throws InternalException * This exception occurs due to unexpected causes. * @throws ConcurrentModificationException * There is concurrent modification on a rule or target. * @throws ManagedRuleException * This rule was created by an AWS service on behalf of your account. It is managed by that service. If you * see this error in response to DeleteRule or RemoveTargets, you can use the * Force parameter in those calls to delete the rule or remove targets from the rule. You * cannot modify these managed rules by using DisableRule, EnableRule, * PutTargets, PutRule, TagResource, or UntagResource. * @throws SdkException * Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for * catch all scenarios. * @throws SdkClientException * If any client side error occurs such as an IO related failure, failure to get credentials, etc. * @throws CloudWatchEventsException * Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type. * @sample CloudWatchEventsClient.UntagResource * @see AWS API * Documentation */ default UntagResourceResponse untagResource(Consumer untagResourceRequest) throws ResourceNotFoundException, InternalException, ConcurrentModificationException, ManagedRuleException, AwsServiceException, SdkClientException, CloudWatchEventsException { return untagResource(UntagResourceRequest.builder().applyMutation(untagResourceRequest).build()); } static ServiceMetadata serviceMetadata() { return ServiceMetadata.of("events"); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy