CreateRule

更新时间:
复制 MD 格式

Creates an event rule.

Operation description

Creates an event rule.

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

eventbridge:CreateRule

create

*Rule

acs:eventbridge:{#regionId}:{#accountId}:eventbus/{#EventBusName}/rule/{#RuleName}

None None

Request parameters

Parameter

Type

Required

Description

Example

EventBusName

string

Yes

The name of the event bus.

MyEventBus

Description

string

No

The description of the event rule.

Filter rule for Simple Message Queue (formerly MNS) (SMQ)

RuleName

string

Yes

The name of the event rule.

SMQRule

Status

string

No

The status of the event rule. Valid values: ENABLE: The rule is enabled. This is the default value. DISABLE: The rule is disabled.

ENABLE

FilterPattern

string

Yes

The event pattern, in JSON format. Supported pattern types are stringEqual and stringExpression. Each field can contain a maximum of five expressions in a map structure.

{ "source": [ { "prefix": "acs." } ], "type": [ { "prefix": "oss:ObjectReplication" } ], "subject": [ { "prefix": "acs:oss:cn-hangzhou:123456789098****:my-movie-bucket/", "suffix": ".txt" } ] }

EventTargets

array<object>

No

A list of event targets.

array<object>

No

An event target.

Id

string

Yes

The custom ID of the event target.

Mlm123456JHd2RsRoKw

Type

string

Yes

The type of the event target. For more information, see Event target parameters.

acs.mns.queue

Endpoint

string

No

The delivery endpoint for events.

acs:mns:cn-hangzhou:123456789098****:queues/myqueue

PushRetryStrategy

string

No

The push retry strategy. Valid values:
BACKOFF_RETRY: A backoff retry strategy where the system makes three retry attempts at random intervals of 10 to 20 seconds.
EXPONENTIAL_DECAY_RETRY: An exponential decay retry strategy where the system makes 176 retry attempts over 24 hours. The interval starts at 1 second and doubles with each of the first 10 attempts (up to 512 seconds). Subsequent retries occur every 512 seconds.

BACKOFF_RETRY

DeadLetterQueue

object

No

The dead-letter queue. If an event fails to be processed or exceeds the retry limit, it is sent to the dead-letter queue. Supported services for the dead-letter queue include Message Queue for Apache RocketMQ, Message Service (MNS), Message Queue for Apache Kafka, and EventBridge event buses.

Arn

string

No

The Alibaba Cloud Resource Name (ARN) of the dead-letter queue. Events that fail to be processed or exceed the retry limit are sent to this ARN. Supported services for this parameter include Message Service (MNS) and Message Queue for Apache RocketMQ.

acs:mns:cn-hangzhou:123456789098****:/queues/deadletterqueue

Network

string

No

The network type.

VpcId

string

No

The VPC ID.

VSwitchIds

string

No

The vSwitch ID.

SecurityGroupId

string

No

The security group ID.

ErrorsTolerance

string

No

The fault tolerance policy. Valid values:
ALL: Enables fault tolerance. Execution continues even if an error occurs. After all retry attempts fail, the event is sent to the dead-letter queue (if configured) or discarded.
NONE: Disables fault tolerance. Execution is blocked if an error occurs and all retry attempts fail.

ALL

ParamList

array<object>

No

The parameters for the event target.

object

No

A single parameter for the event target.

ResourceKey

string

No

The name of the target parameter. For more information, see Limits.

body

Form

string

No

The format of the event target parameter. For more information, see Limits.

TEMPLATE

Value

string

No

The value of the event target parameter.

{"key"="value"}

Template

string

No

The template for the event target parameter.

The value of ${key} is ${value}!

ConcurrentConfig

object

No

The concurrency control configuration.

Concurrency

integer

No

The maximum number of concurrent executions for the event target.

2

Sample request

POST /openapi/createRule HTTP/1.1 Host: 123456789098****.eventbridge.cn-hangzhou.aliyuncs.com Date: Sat, 18 Apr 2020 05:30:41 GMT x-eventbridge-version: 2020-04-01 Authorization: acs vZ3VL0SuJdHi****:Jo2PbT******azYAYoYslKLvWzg= Content-Type: application/json;charset=UTF-8 Content-Length: 26

{ "EventBusName":"default", "RuleName":"MNSRule", "Description":"Filter rule for MNS", "Status":"ENABLE", "filterPattern":"{\"source\": [{\"prefix\": \"acs.\"}],\"type\": [{\"prefix\":\"oss:ObjectReplication\"}],\"subject\":[{\"prefix\":\"acs:oss:cn-hangzhou:123456789098****:my-movie-bucket/\", \"suffix\":\".txt\"}]}", "EventTargets":[ { "Id":"1", "Type":"acs.mns.queue", "Endpoint":"acs:mns:cn-hangzhou:123456789098****:queues/myqueue", "PushRetryStrategy":"BACKOFF_RETRY", "DeadLetterQueue":{ "Arn":"acs:mns:cn-hangzhou:123456789098****:/queues/rule-deadletterqueue" }, "ParamList":[ { "resourceKey":"queue", "form":"CONSTANT", "value":"myqueue" }, { "resourceKey":"body", "form":"TEMPLATE", "value":"{\"key\"=\"value\"}", "template":"The value of ${key} is ${value}!" } ] } ] }

Response elements

Element

Type

Description

Example

object

Message

string

The error message.

Remote error. requestId: [xxxx], error code: [xxx], message: [The target in event rule is invalid! Endpoint is xxx

RequestId

string

The request ID.

1AD6D598-7506-5D2C-81EA-30E3241A903A

Data

object

The response data.

RuleARN

string

The ARN of the event rule, which is used for authorization.

acs:eventbridge:cn-hangzhou:123456789098****:eventbus/default/rule/MNSRule

Code

string

The response code. The value Success indicates that the request is successful. Other values indicate that the request failed. For more information about error codes, see Error codes.

Success

Success

boolean

Indicates whether the operation is successful. A value of true indicates that the operation is successful.

true

Examples

Success response

JSON format

{
  "Message": "Remote error. requestId: [xxxx], error code: [xxx], message: [The target in event rule is invalid! Endpoint is xxx",
  "RequestId": "1AD6D598-7506-5D2C-81EA-30E3241A903A",
  "Data": {
    "RuleARN": "acs:eventbridge:cn-hangzhou:123456789098****:eventbus/default/rule/MNSRule"
  },
  "Code": "Success",
  "Success": true
}

Error codes

HTTP status code

Error code

Error message

Description

403 ServiceNotEnable Service not enable

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.