文档

ModifyApiConfiguration - 修改API定义

更新时间:

本API用于修改API的草稿定义信息,区别于接口ModifyApi,不需要填充所有的API信息才能操作,只需指定要修改的参数进行修改。例如,当需要修改API的认证方式从匿名变为APP认证,只需要传入AuthType的值APP即可。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
apigateway:ModifyApiConfigurationWrite
  • 全部资源
    *

请求参数

名称类型必填描述示例值
ApiIdstring

API 的 ID 标识

baacc592e63a4cb6a41920d9d3f91f38
ApiNamestring

API 名称

testModifyApiName
Descriptionstring

api 描述

测试修改描述
Visibilitystring

API 是否公开,可以取值:

  • PUBLIC:公开,如选择此类型,该 API 的线上环境定义,会在所有用户的控制台“发现 API”页面可见。
  • PRIVATE:不公开,如选择此类型,当该组 API 在云市场上架时,私有类型的 API 不会上架。
PUBLIC
ForceNonceCheckboolean
  • 设置 ForceNonceChecktrue, 请求时强制检查 X-Ca-Nonce,这个是请求的唯一标识,一般使用 UUID 来标识。API 网关收到这个参数后会校验这个参数的有效性,同样的值,15 分内只能被使用一次。可以有效防止 API 的重放攻击。
  • 设置 ForceNonceCheckfalse, 则不检查。修改时,不设置则不修改原来的取值。
true
DisableInternetboolean
  • 设置 DisableInternettrue, 仅支持内网调用 API。
  • 设置 DisableInternetfalse, 则不限制调用。
false
AppCodeAuthTypestring

AuthTypeAPP 认证时,可选值如下:

  • DEFAULT:不传默认是 DEFAULT(随分组设置)
  • DISABLE:不允许
  • HEADER:允许 AppCode 的 Header 认证
  • HEADER_QUERY:允许 AppCode 的 Header 及 Query 认证
DEFAULT
AllowSignatureMethodstring

AuthTypeAPP 认证时,需要传该值明确签名算法。可选值如下,不传默认是 HmacSHA256:

  • HmacSHA256
  • HmacSHA1,HmacSHA256
HmacSHA256
AuthTypestring

API 安全认证类型,目前可以取值:

  • APP:只允许已授权的 APP 调用
  • ANONYMOUS:允许匿名调用,设置为允许匿名调用需要注意:
    • 任何能够获取该 API 服务信息的人,都将能够调用该 API。网关不会对调用者做身份认证,也无法设置按用户的流量控制,若开放该 API 请设置好按 API 的流量控制;
    • AppCodeAuthType 的值不会生效。
APP
RequestProtocolstring

API 支持的协议类型,可以多选,多选情况下以英文逗号隔开,如:”HTTP,HTTPS”,取值为:HTTP、HTTPS。

HTTP
RequestHttpMethodstring

HTTP Method,取值为:GET、POST、DELETE、PUT、HEADER、TRACE、PATCH、CONNECT、OPTIONS。

GET
RequestPathstring

API path,比如 API 的完全地址为http://api.a.com:8080/object/add?key1=value1&key2=value2,path 是指/object/add这一部分。

/test/api
RequestModestring

入参请求的模式,取值为:

  • MAPPING:入参映射(过滤未知参数)

  • PASSTHROUGH:入参透传

  • MAPPING_PASSTHROUGH:入参映射(透传未知参数)

MAPPING
BodyFormatstring

RequestMode 值为 MAPPING 时有效。

POST/PUT 请求时,表示数据以何种方式传递给服务器,取值为:FORMSTREAM,分别表示表单形式(k-v 对应)、字节流形式。

STREAM
PostBodyDescriptionstring

请求 body 描述

body描述
BodyModelstring

body 模型

https://apigateway.aliyun.com/models/f4e7333c****40dcbaf7c9da553ccd8d/3ab61f775b****d4bc35e993****87aa8
ModelNamestring

模型的名称

Test
BackendNamestring

后端服务名称 UseBackendService 置为 TRUE 时才会生效

testBackendService
ServiceProtocolstring

后端服务协议类型,目前支持:

  • Http: http/https 后端
  • Vpc: Vpc 后端
  • FC: 函数计算后端
  • OSS: 对象存储后端
  • Mock: mock 后端
  • EventBridge: 事件总线后端

需要指明对应后端服务的配置信息,即为对应的后端服务的 config 参数赋值。

HTTP
HttpConfigstring

http 配置信息

{"serviceAddress":"http://test.api.com","servicePath":"/test/api","serviceHttpMethod":"GET"}
VpcConfigstring

vpc 配置

{"VpcId":"vpc-xxxxxxx","Name":"testVpc","InstanceId":"i-p0ssssss","Port":80,"servicePath":"/test/vpc","serviceHttpMethod":"HEAD"}
FunctionComputeConfigstring

函数计算配置信息

{"FcType":"FCEvent","FcRegionId":"cn-hangzhou","RoleArn":"acs:ram::xxxxxxxx:role/aliyunserviceroleforapigateway","selectServiceName":"fcTest","FunctionName":"funcTest","selectFunctionName":"funcTest","Qualifier":"LATEST","Path":"","FcBaseUrl":"","ServiceName":"fcTest"}
OssConfigstring

OSS 配置信息

{"OssRegionId":"cn-hangzhou","Key":"/test.html","BucketName":"test-api-oss","Action":"GetObject"}
MockConfigstring

Mock 配置信息

{"MockResult":"test","MockHeaders":[{"HeaderName":"testHeader","HeaderValue":"testHeader"}],"MockStatusCode":"400"}
ServiceTimeoutinteger

后端服务超时时间,单位:毫秒

10000
ContentTypeCategorystring

后端请求 ContentType 配置

  • DEFAULT:API 网关默认
  • CUSTOM:自定义
DEFAULT
ContentTypeValuestring

调用后端服务 HTTP 服务,ContentTypeCatagory 的值为 DEFAULT 或者 CUSTOM 时,ContentType 头的取值。

application/x-www-form-urlencoded; charset=UTF-8
RequestParametersstring

Consumer 向网关发送 API 请求的参数描述。

更多信息,请参见 RequestParameter

[{"ParameterLocation":{"name":"Head","orderNumber":2},"ParameterType":"String","Required":"OPTIONAL","isHide":false,"ApiParameterName":"header1","DefaultValue":"123124","Location":"Head"},{"ParameterLocation":{"name":"Head","orderNumber":2},"ParameterType":"String","Required":"REQUIRED","isHide":false,"ApiParameterName":"header2","DefaultValue":"","Location":"Head"},{"ParameterLocation":{"name":"Query","orderNumber":3},"ParameterType":"String","Required":"OPTIONAL","isHide":false,"ApiParameterName":"query1","DefaultValue":"1245","Location":"Query"},{"ApiParameterName":"CaClientIp","ParameterLocation":{"name":"Query","orderNumber":0},"Location":"Query","ParameterType":"String","Required":"REQUIRED","Description":"ClientIP"},{"ApiParameterName":"testConstant","ParameterLocation":{"name":"Head","orderNumber":0},"Location":"Head","ParameterType":"String","Required":"REQUIRED","DefaultValue":"111"}]
ServiceParametersstring

网关向后端服务发送 API 请求的参数描述。

更多信息,请参见 ServiceParameter

[{"ServiceParameterName":"header1","Location":"Head","Type":"String","ParameterCatalog":"REQUEST"},{"ServiceParameterName":"header2","Location":"Query","Type":"String","ParameterCatalog":"REQUEST"},{"ServiceParameterName":"query1","Location":"Head","Type":"String","ParameterCatalog":"REQUEST"},{"ServiceParameterName":"ipp","Location":"Query","Type":"String","ParameterCatalog":"SYSTEM"},{"ServiceParameterName":"testConstant","Location":"Head","Type":"String","ParameterCatalog":"CONSTANT"}]
ServiceParametersMapstring

Consumer 向网关发送请求的参数和网关向后端服务发送的请求的参数的映射关系。

更多信息,请参见 ServiceParameterMap

[{"ServiceParameterName":"header1","RequestParameterName":"header1"},{"ServiceParameterName":"header2","RequestParameterName":"header2"},{"ServiceParameterName":"query1","RequestParameterName":"query1"},{"ServiceParameterName":"ipp","RequestParameterName":"CaClientIp"},{"ServiceParameterName":"testConstant","RequestParameterName":"testConstant"}]
ResultTypestring

后端服务返回应答的格式,目前可以设置为:JSON、TEXT、BINARY、XML、HTML。 该值仅用于生成文档使用。不对返回结果产生影响。

JSON
ResultSamplestring

后端服务返回应答的示例 该值仅用于生成文档使用。不对返回结果产生影响。

{\n \"status\": 0,\n \"data\": {\n \"count\": 1,\n \"list\": [\n \"352\"\n ]\n },\n \"message\": \"success\"\n}
FailResultSamplestring

后端服务失败返回应答的示例 该值仅用于生成文档使用。不对返回结果产生影响。

{"errorCode":"fail","errorMessage":"param invalid"}
ErrorCodeSamplesstring

后端服务返回的错误码示例。

更多信息,请参见 ErrorCodeSample

[{"Code":"400","Message":"Missing the userId","Description":"param invalid"}]
UseBackendServiceboolean

是否使用创建的后端服务资源:

  • TRUE:使用创建的后端服务
  • FALSE:自定义后端服务信息
TRUE

返回参数

名称类型描述示例值
object
RequestIdstring

请求 id

6C87A26A-6A18-4B8E-8099-705278381A2C

示例

正常返回示例

JSON格式

{
  "RequestId": "6C87A26A-6A18-4B8E-8099-705278381A2C"
}

错误码

访问错误中心查看更多错误码。

变更历史

变更时间变更内容概要操作
暂无变更历史
  • 本页导读 (0)
文档反馈