# 更新收信规则

更新收信规则
**注意事项**：使用 tenant_access_token 时，需要申请收信规则资源的数据权限。

## 请求

基本 | &nbsp;
---|---
HTTP URL | https://open.feishu.cn/open-apis/mail/v1/user_mailboxes/:user_mailbox_id/rules/:rule_id
HTTP Method | PUT
接口频率限制 | [5 次/秒](https://open.feishu.cn/document/ukTMukTMukTM/uUzN04SN3QjL1cDN)
支持的应用类型 | Custom App
权限要求<br>**调用该 API 所需的权限。开启其中任意一项权限即可调用** | 查看、创建、更新、删除收信规则(mail:user_mailbox.rule:write)

### 请求头

名称 | 类型 | 必填 | 描述
---|---|---|---
Authorization | string | 是 | `tenant_access_token`<br>或<br>`user_access_token`<br>**值格式**："Bearer `access_token`"<br>**示例值**："Bearer u-7f1bcd13fc57d46bac21793a18e560"<br>[了解更多：如何选择与获取 access token](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/trouble-shooting/how-to-choose-which-type-of-token-to-use)
Content-Type | string | 是 | **固定值**："application/json; charset=utf-8"

### 路径参数

名称 | 类型 | 描述
---|---|---
user_mailbox_id | string | 用户邮箱地址 或 输入me代表当前调用接口用户<br>**示例值**："user@xxx.xx 或 me"
rule_id | string | 规则 id，获取方式见 [列出收信规则](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/mail-v1/user_mailbox-rule/list)<br>**示例值**："123123123"

### 请求体

名称 | 类型 | 必填 | 描述
---|---|---|---
condition | rule_condition | 是 | 匹配条件
match_type | int | 是 | 匹配类型<br>**示例值**：1<br>**可选值有**：<br>- 1：满足所有条件<br>- 2：满足任意条件<br>**数据校验规则**：<br>- 取值范围：`1` ～ `2`
items | rule_condition_item\[\] | 是 | 匹配规则列表<br>**数据校验规则**：<br>- 长度范围：`1` ～ `32`
type | int | 是 | 匹配条件左值<br>**示例值**：1<br>**可选值有**：<br>- 1：发件人地址<br>- 2：收件人地址<br>- 3：抄送地址<br>- 4：收件人或抄送地址<br>- 6：主题<br>- 7：正文<br>- 8：附件名字<br>- 9：附件类型<br>- 10：任意地址<br>- 12：所有邮件<br>- 13：是外部邮件<br>- 14：是垃圾邮件<br>- 15：不是垃圾邮件<br>- 16：有附件<br>**数据校验规则**：<br>- 取值范围：`1` ～ `16`
operator | int | 否 | 匹配条件操作符<br>**示例值**：1<br>**可选值有**：<br>- 1：包含<br>- 2：不包含<br>- 3：开头是<br>- 4：结尾是<br>- 5：是<br>- 6：不是<br>- 7：包含自己<br>- 10：为空<br>**数据校验规则**：<br>- 取值范围：`1` ～ `10`
input | string | 否 | 匹配条件右值<br>**示例值**："hello@world.com"
action | rule_action | 是 | 匹配命中后的操作
items | rule_action_item\[\] | 是 | 匹配命中规则后的操作列表<br>**数据校验规则**：<br>- 长度范围：`1` ～ `32`
type | int | 是 | 操作类型<br>**示例值**：1<br>**可选值有**：<br>- 1：归档<br>- 2：删除邮件<br>- 3：标记为已读<br>- 4：移至垃圾邮件<br>- 5：不移至垃圾邮件<br>- 8：添加用户标签（暂不支持）<br>- 9：添加旗标<br>- 10：不弹出通知<br>- 11：移至用户文件夹<br>- 12：自动转发（暂不支持）<br>- 13：分享到会话（暂不支持）<br>**数据校验规则**：<br>- 取值范围：`1` ～ `13`
input | string | 否 | 当 type 为移动到文件夹时，该字段填文件夹的 id<br>**示例值**："283412371233"
ignore_the_rest_of_rules | boolean | 是 | 是否终止规则<br>**示例值**：false
name | string | 是 | 规则名称<br>**示例值**："将李三的邮件标记为垃圾邮件"<br>**数据校验规则**：<br>- 长度范围：`1` ～ `255` 字符
is_enable | boolean | 是 | 是否启用<br>**示例值**：false

### 请求体示例
```json
{
    "condition": {
        "match_type": 1,
        "items": [
            {
                "type": 1,
                "operator": 1,
                "input": "hello@world.com"
            }
        ]
    },
    "action": {
        "items": [
            {
                "type": 1,
                "input": "283412371233"
            }
        ]
    },
    "ignore_the_rest_of_rules": false,
    "name": "将李三的邮件标记为垃圾邮件",
    "is_enable": false
}
```

## 响应

### 响应体

名称 | 类型 | 描述
---|---|---
code | int | 错误码，非 0 表示失败
msg | string | 错误描述
data | \- | \-

### 响应体示例
```json
{
    "code": 0,
    "msg": "success",
    "data": {}
}
```

### 错误码

HTTP状态码 | 错误码 | 描述 | 排查建议
---|---|---|---
400 | 1230001 | 参数错误 | 修改参数后重试
500 | 1230003 | 内部错误 | 请稍后重试
403 | 1230002 | 无权限 | 成为公共邮箱成员或申请相关数据权限后调用该接口

