更新时间:2026-04-15 GMT+08:00
分享

更新网关 - UpdateCoreGateway

功能介绍

使用新配置更新现有网关。

URI

PUT /v1/core/gateways/{gateway_id}

表1 路径参数

参数

是否必选

参数类型

描述

gateway_id

String

参数解释:

网关的唯一标识符。

网关ID获取方式:

  1. 进入AgentArts平台,在左侧导航栏选择“开发中心 > 组件库 ”,选择“网关”页签。

  2. 在网关列表中“网关名称/ID”处复制网关ID即可。

约束范围:

不涉及。

取值范围:

匹配标准的UUID格式(8-4-4-4-12的十六进制数字串,由连字符分隔),符合正则条件^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$。

默认取值:

不涉及。

请求参数

表2 请求Body参数

参数

是否必选

参数类型

描述

description

String

参数解释:

更新后的网关描述。

约束范围:

不涉及。

取值范围:

长度为 0-1000 个字符。

默认取值:

不涉及。

authorizer_configuration

CoreGatewayAuthorizerConfiguration object

参数解释:

授权器配置。

约束范围:

  • 当authorizer_type的值为CUSTOM_JWT时,须配置custom_jwt_authorizer。

  • 当authorizer_type的值为API_KEY时,须配置key_auth。

  • 当authorizer_type的值为IAM时,此字段可选或为空。

取值范围:

不涉及。

默认取值:

不涉及。

log_delivery_configuration

CoreGatewayLogDeliveryConfigurationRequestBody object

参数解释:

日志上报配置。

约束范围:

不涉及。

取值范围:

  • enabled为true时,表示启用日志上报,需填写 log_group_id 和 log_stream_id。

  • enabled为false时,表示禁用日志上报。

默认取值:

不涉及。

tags

Array of CoreGatewayTag objects

参数解释:

资源标签列表。

约束范围:

不涉及。

取值范围:

数组长度为 0-20。

  • 键:支持大小写字母、数字、连字符、下划线和中文字符,最大长度 36,不允许为空。

  • 值:支持大小写字母、数字、连字符、下划线和中文字符,最大长度 43,可以为空。

默认取值:

不涉及。

表3 CoreGatewayAuthorizerConfiguration

参数

是否必选

参数类型

描述

custom_jwt_authorizer

CoreGatewayCustomJWTAuthorizerConfiguration object

参数解释:

自定义JWT认证配置。

约束范围:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

key_auth

CoreGatewayKeyAuthAuthorizerConfiguration object

参数解释:

API 密钥认证配置,支持多个 API 密钥同时生效(用于密钥轮换)。

约束范围:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表4 CoreGatewayCustomJWTAuthorizerConfiguration

参数

是否必选

参数类型

描述

discovery_url

String

参数解释:

JWT 发现 URL。

约束范围:

不涉及。

取值范围:

长度为 1-2048 个字符,匹配以 https:// 开头、中间至少包含一个任意字符、并以 /.well-known/openid-configuration 结尾的 URL,符合正则条件^https://.+/.well-known/openid-configuration$。

默认取值:

不涉及。

allowed_audience

Array of strings

参数解释:

允许的 JWT 受众(aud)列表,用于验证令牌的预期接收者。

约束范围:

不允许重复。

取值范围:

数组长度为 0-100。

默认取值:

不涉及。

allowed_clients

Array of strings

参数解释:

允许的客户端 ID 列表,用于限制哪些客户端可以访问。

约束范围:

不允许重复。

取值范围:

数组长度为 0-100。

默认取值:

不涉及。

allowed_scopes

Array of strings

参数解释:

允许的 JWT 作用域(scope)列表,用于控制访问权限。

约束范围:

不允许重复。

取值范围:

数组长度为 0-100。

默认取值:

不涉及。

custom_claims

Array of CoreGatewayCustomClaimValidation objects

参数解释:

自定义声明验证规则列表,用于验证 JWT 中的自定义声明。

约束范围:

不允许重复。

取值范围:

数组长度为 0-100。

默认取值:

不涉及。

表5 CoreGatewayCustomClaimValidation

参数

是否必选

参数类型

描述

inbound_token_claim_name

String

参数解释:

声明名称。

约束范围:

不涉及。

取值范围:

长度为1-255个字符,由字母、数字、下划线、点、短横线或冒号组成的一个或多个字符的完整字符串,符合正则条件^[A-Za-z0-9_.-:]+$。

默认取值:

不涉及。

inbound_token_claim_value_type

String

参数解释:

入站令牌声明值类型。

约束范围:

不涉及。

取值范围:

  • string: 字符串类型

  • string_array: 字符串数组类型

默认取值:

不涉及。

authorizing_claim_match_value

CoreGatewayAuthorizingClaimMatchValue object

参数解释:

授权声明匹配值配置,定义如何匹配声明值。

约束范围:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表6 CoreGatewayAuthorizingClaimMatchValue

参数

是否必选

参数类型

描述

match_operator

String

参数解释:

匹配操作符。

约束范围:

不涉及。

取值范围:

  • equals: 精确匹配

  • contains: 包含指定值

  • contains_any: 包含任意一个指定值

默认取值:

不涉及。

match_value

CoreGatewayMatchValue object

参数解释:

匹配值,支持单个字符串或字符串列表。

约束范围:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表7 CoreGatewayMatchValue

参数

是否必选

参数类型

描述

match_value_string

String

参数解释:

单个匹配值。

约束范围:

不涉及。

取值范围:

长度为 1-255 个字符,由字母、数字、下划线、点或短横线组成的一个或多个字符的完整字符串,符合正则条件^[A-Za-z0-9_.-]+$。

默认取值:

不涉及。

match_value_string_list

Array of strings

参数解释:

匹配值列表。

约束范围:

不涉及。

取值范围:

数组长度为 1-20。

默认取值:

不涉及。

表8 CoreGatewayKeyAuthAuthorizerConfiguration

参数

是否必选

参数类型

描述

api_keys

Array of CoreGatewayApiKeyConfiguration objects

参数解释:

API 密钥列表。

约束范围:

  • 支持多个 API 密钥同时有效(用于密钥轮换)

  • 每个密钥为独立对象,包含密钥值和可选的名称

注意:数组为空时系统将自动生成1个有效的 API 密钥。

取值范围:

数组长度为 0-10。

默认取值:

不涉及。

表9 CoreGatewayApiKeyConfiguration

参数

是否必选

参数类型

描述

api_key_name

String

参数解释:

API 密钥的资源名称。

约束范围:

不涉及。

取值范围:

长度为 1-64个字符,由字母、数字、下划线或短横线组成的一个或多个字符的完整字符串,符合正则条件^[a-zA-Z0-9_-]+$。为空时系统将自动生成随机名称。

默认取值:

不涉及。

api_key

String

参数解释:

API 密钥值。

约束范围:

不涉及。

取值范围:

长度为 0-512个字符,由字母、数字、短横线或下划线组成的一个或多个字符的完整字符串,符合正则条件^[A-Za-z0-9-_]+$。

默认取值:

不涉及。

表10 CoreGatewayLogDeliveryConfigurationRequestBody

参数

是否必选

参数类型

描述

enabled

Boolean

参数解释:

是否启用日志上报。

约束范围:

不涉及。

取值范围:

当取值为true时,表示启用日志上报。当取值为false时,标识不启用日志上报。

默认取值:

不涉及。

log_group_id

String

参数解释:

LTS日志组ID,启用日志上报时必填。

约束范围:

不涉及。

取值范围:

匹配标准的UUID格式(8-4-4-4-12的十六进制数字串,由连字符分隔),符合正则条件^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$。

默认取值:

不涉及。

log_stream_id

String

参数解释:

LTS日志流ID,启用日志上报时必填。

约束范围:

不涉及。

取值范围:

匹配标准的UUID格式(8-4-4-4-12的十六进制数字串,由连字符分隔),符合正则条件^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$。

默认取值:

不涉及。

表11 CoreGatewayTag

参数

是否必选

参数类型

描述

key

String

参数解释:

标签键。

约束范围:

不涉及。

取值范围:

长度为 1-36 个字符,支持大小写字母、数字、连字符、下划线和中文字符。

默认取值:

不涉及。

value

String

参数解释:

标签值。

约束范围:

不涉及。

取值范围:

长度为 0-43 个字符,支持大小写字母、数字、连字符、下划线和中文字符,可以为空。

默认取值:

不涉及。

响应参数

状态码:200

表12 响应Body参数

参数

参数类型

描述

gateway_id

String

参数解释:

网关的唯一标识符。

网关ID获取方式:

  1. 进入AgentArts平台,在左侧导航栏选择“开发中心 > 组件库 ”,选择“网关”页签。

  2. 在网关列表中“网关名称/ID”处复制网关ID即可。

取值范围:

匹配标准的UUID格式(8-4-4-4-12的十六进制数字串,由连字符分隔),符合正则条件^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$。

name

String

参数解释:

网关名称。

取值范围:

长度为 2-40 个字符,匹配以小写字母开头、以小写字母或数字结尾、中间可包含0到38个小写字母、数字或连字符的字符串,符合正则条件^[a-z][a-z0-9-]{0,38}[a-z0-9]$。

description

String

参数解释:

网关的详细描述。

取值范围:

长度为 1-1000 个字符。

status

String

参数解释:

网关的当前状态。

取值范围:

  • active: 运行中

  • inactive: 已停用

  • creating: 创建中

  • deleting: 删除中

  • updating: 更新中

  • failed: 创建或运行失败

protocol_type

String

参数解释:

网关协议类型。

取值范围:

  • mcp: 模型上下文协议(Model Context Protocol)

authorizer_type

String

参数解释:

入站认证类型,查询响应中不返回配置详情,可通过 workload_identity.urn 获取入站认证配置详情。

取值范围:

  • custom_jwt: 使用自定义 JWT 认证

  • iam: 使用 IAM 认证

  • api_key: 使用 API 密钥认证

agency_name

String

参数解释:

委托名称,用于指定网关使用的委托身份。

取值范围:

长度为 1-64 个字符。

endpoint_url

String

参数解释:

访问网关的 URL 端点。

取值范围:

长度为 1-512 个字符。

  • 格式:https://<gateway_id>.gateway.agentarts.<region_code>.huaweicloudapis.com

  • 示例:https://b2fc0463-8b28-46c5-87ba-6267295ffc57.gateway.agentarts.cn-north-4.huaweicloudapis.com

log_delivery_configuration

CoreGatewayLogDeliveryConfiguration object

参数解释:

日志上报配置。

取值范围:

不涉及。

workload_identity

CoreGatewayWorkloadIdentity object

参数解释:

工作负载身份标识,用于代理身份认证。

取值范围:

不涉及。

agent_gateway_id

String

参数解释:

AgentGateway ID,关联底层 AgentGateway 实例。

取值范围:

匹配标准的UUID格式(8-4-4-4-12的十六进制数字串,由连字符分隔),符合正则条件^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$。

outbound_network_configuration

CoreGatewayOutboundNetworkConfiguration object

参数解释:

出站网络配置。

约束范围:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

tags

Array of CoreGatewayTag objects

参数解释:

资源标签列表。

取值范围:

数组长度为0-20。

  • 键:支持大小写字母、数字、连字符、下划线和中文字符,最大长度 36,不允许为空

  • 值:支持大小写字母、数字、连字符、下划线和中文字符,最大长度 43,可以为空

created_at

String

参数解释:

网关创建时间戳。

取值范围:

不涉及。

updated_at

String

参数解释:

网关最后更新时间戳。

取值范围:

不涉及。

表13 CoreGatewayLogDeliveryConfiguration

参数

参数类型

描述

enabled

Boolean

参数解释:

是否启用日志。

取值范围:

当取值为true时,表示启用日志。当取值为false时,表示不启用日志。

log_group_id

String

参数解释:

LTS日志组ID。

取值范围:

匹配标准的UUID格式(8-4-4-4-12的十六进制数字串,由连字符分隔),符合正则条件^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$。

log_stream_id

String

参数解释:

LTS日志流ID。

取值范围:

匹配标准的UUID格式(8-4-4-4-12的十六进制数字串,由连字符分隔),符合正则条件^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$。

表14 CoreGatewayWorkloadIdentity

参数

参数类型

描述

urn

String

参数解释:

工作负载标识的统一资源名称,格式为'agentIdentity:<region-id>:<account-id>:workloadIdentity:gateway_<gateway-name>'。

取值范围:

长度为 1-200 个字符。

表15 CoreGatewayOutboundNetworkConfiguration

参数

参数类型

描述

network_mode

String

参数解释:

网络模式。

约束范围:

不涉及。

取值范围:

  • public: 使用公网访问

  • vpc: 使用VPC网络访问(需配置vpc_config)

默认取值:

不涉及。

vpc_config

CoreGatewayVpcConfig object

参数解释:

VPC网络配置。

约束范围:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表16 CoreGatewayVpcConfig

参数

参数类型

描述

vpc_id

String

参数解释:

VPC ID。

约束范围:

不涉及。

取值范围:

匹配标准的UUID格式(8-4-4-4-12的十六进制数字串,由连字符分隔),符合正则条件^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$。

默认取值:

不涉及。

subnet_id

String

参数解释:

子网ID。

约束范围:

不涉及。

取值范围:

匹配标准的UUID格式(8-4-4-4-12的十六进制数字串,由连字符分隔),符合正则条件^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$。

默认取值:

不涉及。

security_group_ids

Array of strings

参数解释:

安全组ID列表。

约束范围:

不涉及。

取值范围:

数组长度为0-10。

默认取值:

不涉及。

表17 CoreGatewayTag

参数

参数类型

描述

key

String

参数解释:

标签键。

约束范围:

不涉及。

取值范围:

长度为 1-36 个字符,支持大小写字母、数字、连字符、下划线和中文字符。

默认取值:

不涉及。

value

String

参数解释:

标签值。

约束范围:

不涉及。

取值范围:

长度为 0-43 个字符,支持大小写字母、数字、连字符、下划线和中文字符,可以为空。

默认取值:

不涉及。

状态码:400

表18 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

错误码。

取值范围:

取值为固定18个字符,匹配以 AgentArts. 开头、后接恰好8位数字的字符串,符合正则条件^AgentArts.[0-9]{8}$。

error_msg

String

参数解释:

错误消息。

取值范围:

取值为 1-256 个字符,匹配由字母、数字、空格、中文汉字以及常见中英文标点符号组成的非空字符串,符合正则条件^[a-zA-Z0-9\s\u4e00-\u9fff.,!?;:()'"-\u3002\uff0c\uff01\uff1f\uff1b\uff1a\uff08\uff09]+$。

error_reason

String

参数解释:

错误原因。

取值范围:

取值为 1-256 个字符,匹配由字母、数字、空格、中文汉字以及常见中英文标点符号组成的非空字符串,符合正则条件^[a-zA-Z0-9\s\u4e00-\u9fff.,!?;:()'"-\u3002\uff0c\uff01\uff1f\uff1b\uff1a\uff08\uff09]+$。

error_suggestion

String

参数解释:

错误处理建议。

取值范围:

取值为 1-256 个字符,匹配由字母、数字、空格、中文汉字以及常见中英文标点符号组成的非空字符串,符合正则条件^[a-zA-Z0-9\s\u4e00-\u9fff.,!?;:()'"-\u3002\uff0c\uff01\uff1f\uff1b\uff1a\uff08\uff09]+$。

状态码:404

表19 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

错误码。

取值范围:

取值为固定18个字符,匹配以 AgentArts. 开头、后接恰好8位数字的字符串,符合正则条件^AgentArts.[0-9]{8}$。

error_msg

String

参数解释:

错误消息。

取值范围:

取值为 1-256 个字符,匹配由字母、数字、空格、中文汉字以及常见中英文标点符号组成的非空字符串,符合正则条件^[a-zA-Z0-9\s\u4e00-\u9fff.,!?;:()'"-\u3002\uff0c\uff01\uff1f\uff1b\uff1a\uff08\uff09]+$。

error_reason

String

参数解释:

错误原因。

取值范围:

取值为 1-256 个字符,匹配由字母、数字、空格、中文汉字以及常见中英文标点符号组成的非空字符串,符合正则条件^[a-zA-Z0-9\s\u4e00-\u9fff.,!?;:()'"-\u3002\uff0c\uff01\uff1f\uff1b\uff1a\uff08\uff09]+$。

error_suggestion

String

参数解释:

错误处理建议。

取值范围:

取值为 1-256 个字符,匹配由字母、数字、空格、中文汉字以及常见中英文标点符号组成的非空字符串,符合正则条件^[a-zA-Z0-9\s\u4e00-\u9fff.,!?;:()'"-\u3002\uff0c\uff01\uff1f\uff1b\uff1a\uff08\uff09]+$。

状态码:500

表20 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

错误码。

取值范围:

取值为固定18个字符,匹配以 AgentArts. 开头、后接恰好8位数字的字符串,符合正则条件^AgentArts.[0-9]{8}$。

error_msg

String

参数解释:

错误消息。

取值范围:

取值为 1-256 个字符,匹配由字母、数字、空格、中文汉字以及常见中英文标点符号组成的非空字符串,符合正则条件^[a-zA-Z0-9\s\u4e00-\u9fff.,!?;:()'"-\u3002\uff0c\uff01\uff1f\uff1b\uff1a\uff08\uff09]+$。

error_reason

String

参数解释:

错误原因。

取值范围:

取值为 1-256 个字符,匹配由字母、数字、空格、中文汉字以及常见中英文标点符号组成的非空字符串,符合正则条件^[a-zA-Z0-9\s\u4e00-\u9fff.,!?;:()'"-\u3002\uff0c\uff01\uff1f\uff1b\uff1a\uff08\uff09]+$。

error_suggestion

String

参数解释:

错误处理建议。

取值范围:

取值为 1-256 个字符,匹配由字母、数字、空格、中文汉字以及常见中英文标点符号组成的非空字符串,符合正则条件^[a-zA-Z0-9\s\u4e00-\u9fff.,!?;:()'"-\u3002\uff0c\uff01\uff1f\uff1b\uff1a\uff08\uff09]+$。

请求示例

{
  "description" : "更新后的描述",
  "authorizer_configuration" : {
    "custom_jwt_authorizer" : {
      "discovery_url" : "https://auth.example.com/.well-known/openid-configuration"
    }
  },
  "tags" : [ {
    "key" : "环境",
    "value" : "生产"
  } ]
}

响应示例

状态码:200

网关更新成功

{
  "gateway_id" : "b2fc0463-8b28-46c5-87ba-6267295ffc57",
  "name" : "my-updated-gateway",
  "description" : "更新后的描述",
  "status" : "active",
  "protocol_type" : "mcp",
  "authorizer_type" : "iam",
  "agency_name" : "my-agency",
  "endpoint_url" : "https://b2fc0463-8b28-46c5-87ba-6267295ffc57.gateway.agentarts.cn-north-4.huaweicloudapis.com",
  "tags" : [ {
    "key" : "Environment",
    "value" : "production"
  } ],
  "created_at" : "2024-01-15T10:30:00Z",
  "updated_at" : "2024-01-15T11:30:00Z"
}

状态码:400

无效的请求体

{
  "error_code" : "AgentArts.02000001",
  "error_msg" : "请求体格式不正确"
}

状态码:404

网关未找到

{
  "error_code" : "AgentArts.02000102",
  "error_msg" : "网关未找到"
}

状态码:500

内部服务器错误

{
  "error_code" : "AgentArts.02000500",
  "error_msg" : "内部服务器错误"
}

状态码

状态码

描述

200

网关更新成功

400

无效的请求体

404

网关未找到

500

内部服务器错误

错误码

请参见错误码

相关文档