RemoveTargets - Amazon EventBridge

RemoveTargets

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

Note

A successful execution of RemoveTargets doesn't guarantee all targets are removed from the rule, it means that the target(s) listed in the request are removed.

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.

The maximum number of entries per request is 10.

Request Syntax

{ "EventBusName": "string", "Force": boolean, "Ids": [ "string" ], "Rule": "string" }

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.

EventBusName

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

Type: String

Length Constraints: Minimum length of 1. Maximum length of 1600.

Pattern: (arn:aws[\w-]*:events:[a-z]{2}-[a-z]+-[\w-]+:[0-9]{12}:event-bus\/)?[/\.\-_A-Za-z0-9]+

Required: No

Force

If this is a managed rule, created by an AWS 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.

Type: Boolean

Required: No

Ids

The IDs of the targets to remove from the rule.

Type: Array of strings

Array Members: Minimum number of 1 item. Maximum number of 100 items.

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: [\.\-_A-Za-z0-9]+

Required: Yes

Rule

The name of the rule.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: [\.\-_A-Za-z0-9]+

Required: Yes

Response Syntax

{ "FailedEntries": [ { "ErrorCode": "string", "ErrorMessage": "string", "TargetId": "string" } ], "FailedEntryCount": number }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

FailedEntries

The failed target entries.

Type: Array of RemoveTargetsResultEntry objects

FailedEntryCount

The number of failed entries.

Type: Integer

Errors

For information about the errors that are common to all actions, see Common Errors.

ConcurrentModificationException

There is concurrent modification on a rule, target, archive, or replay.

HTTP Status Code: 400

InternalException

This exception occurs due to unexpected causes.

HTTP Status Code: 500

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.

HTTP Status Code: 400

ResourceNotFoundException

An entity that you specified does not exist.

HTTP Status Code: 400

Examples

Removes a target with ID "MyTargetId" from a rule named "test"

The following is an example of a RemoveTargets request.

Sample Request

POST / HTTP/1.1 Host: events.<region>.<domain> x-amz-Date: <Date> Authorization: AWS4-HMAC-SHA256 Credential=<Credential>, SignedHeaders=content-type;date;host;user-agent;x-amz-date;x-amz-target;x-amzn-requestid, Signature=<Signature> User-Agent: <UserAgentString> Content-Type: application/x-amz-json-1.1 Content-Length: <PayloadSizeBytes> Connection: Keep-Alive X-Amz-Target: AWSEvents.RemoveTargets { "Rule": "test", "Ids": [ "MyTargetId" ] }

Sample Response

HTTP/1.1 200 OK x-amzn-RequestId: <RequestId> Content-Type: application/x-amz-json-1.1 Content-Length: <PayloadSizeBytes> Date: <Date> { "FailedEntries": [], "FailedEntryCount": 0 }

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: