> For the complete documentation index, see [llms.txt](https://docs.console.zenlayer.com/api-reference/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.console.zenlayer.com/api-reference/cn/networking/zga/accelerator/modifyacceleratorrule.md).

# ModifyAcceleratorRule

## 1. 接口描述

本接口(ModifyAcceleratorRule)用于修改加速器加速规则。

{% hint style="info" %}
**注意事项**

* 若加速器为IP加速器，仅支持配置L4加速规则。
* 修改单个加速规则配置也需要全量提交其他加速规则配置，建议修改前调用`DescribeAccelerators`接口，获取加速规则整个配置。
* 本接口为异步接口，接口返回成功后，此时修改加速器操作并未立即完成。在此期间加速器的状态将会处于`Deploying`，加速器状态可以通过调用`DescribeAccelerators` 接口查询，如果加速器状态(acceleratorStatus)由`Deploying`(部署中)变为`Accelerating`(加速中），则代表加速成功，`AccelerateFailure`代表加速失败，可调用redeploy接口重试部署。
  {% endhint %}

## 2. 请求参数

以下请求参数列表仅列出了接口中需要的请求参数

| 参数名称          | 必选 | 类型                                                                                                                  | 描述                              |
| ------------- | -- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------- |
| acceleratorId | 是  | String                                                                                                              | 加速器Id                           |
| l4Listeners   | 否  | Array of [AccelerationRuleL4Listener](/api-reference/cn/networking/zga/datastructure.md#accelerationrulel4listener) | <p>L4加速规则</p><p>不允许L4,L7全为空</p> |
| l7Listeners   | 否  | Array of [AccelerationRuleL7Listener](/api-reference/cn/networking/zga/datastructure.md#accelerationrulel7listener) | <p>L7加速规则</p><p>不允许L4,L7全为空</p> |

## 3. 响应结果

| 参数名称      | 类型     | 描述                                         |
| --------- | ------ | ------------------------------------------ |
| requestId | String | 唯一请求 ID，每次请求都会返回。定位问题时需要提供该次请求的 requestId。 |

## 4. 代码示例

{% tabs %}
{% tab title="示例" %}

1. **修改加速器加速规则**

```json
POST /api/v2/zga HTTP/1.1
Host: console.zenlayer.com
Content-Type: application/json
X-ZC-Action: ModifyAcceleratorRule
<Common Request Params>

Request:
{
    "acceleratorId": "acceleratorIdxxxxx",
     "l4Listeners": [
        {
            "portRange": "53/54",
            "protocol": "udp"
        }
    ],
    "l7Listeners": [
        {
            "port": 443,
            "backPort": 443,
            "backProtocol": "https",
            "protocol": "https"
        }
    ]
}


Response:
{
    "requestId": "TEEFDCA5B-76FB-4E91-A18E-DF7F5D2CE41F",
}
```

{% endtab %}
{% endtabs %}

## 5. 开发者工具

Zenlayer Cloud API 2.0 提供了配套的[开发工具集（SDK）](/api-reference/cn/api-introduction/toolkit.md)，未来会陆续支持更多开发语言，方便快速接入和使用Zenlayer的产品和服务。

## 6. 错误码

下面包含业务逻辑中遇到的错误码，其他错误码见[公共错误码](/api-reference/cn/api-introduction/instruction/commonerrorcode.md)

| HTTP状态码 | 错误码                   | 说明            |
| ------- | --------------------- | ------------- |
| 400     | PORT\_NOT\_AVAILABLE  | 端口不可用，请检查端口范围 |
| 400     | PORT\_CONFLICT        | 端口冲突          |
| 400     | PORT\_FORBIDDEN       | 加速端口被禁止       |
| 400     | HTTPS\_NEED\_CRT      | https需要配置证书   |
| 400     | PORT\_EXCEEDED\_LIMIT | 端口数超出限制       |
