1. 接口描述
接口请求域名: apigateway.tencentcloudapi.com 。
本接口(CreateApi)用于创建 API 接口,创建 API 前,用户需要先创建服务,每个 API 都有自己归属的服务。
默认接口请求频率限制:20次/秒。
推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。
2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
参数名称 | 必选 | 类型 | 描述 |
---|---|---|---|
Action | 是 | String | 公共参数,本接口取值:CreateApi。 |
Version | 是 | String | 公共参数,本接口取值:2018-08-08。 |
Region | 是 | String | 公共参数,详见产品支持的 地域列表。 |
ServiceId | 是 | String | API 所在的服务唯一 ID。 示例值:service-ody35h5e |
ServiceType | 是 | String | API 的后端服务类型。支持HTTP、MOCK、TSF、SCF、EB、TARGET、VPC、UPSTREAM、GRPC、COS、WEBSOCKET。 示例值:MOCK |
ServiceTimeout | 是 | Integer | API 的后端服务超时时间,单位是秒。 示例值:15 |
Protocol | 是 | String | API 的前端请求协议,支持HTTP和WEBSOCKET。 示例值:HTTP |
RequestConfig | 是 | ApiRequestConfig | 请求的前端配置。 |
ApiName | 否 | String | 用户自定义的 API 名称。 示例值:name |
ApiDesc | 否 | String | 用户自定义的 API 接口描述。 示例值:desc |
ApiType | 否 | String | API 类型,支持NORMAL(普通API)和TSF(微服务API),默认为NORMAL。 示例值:NORMAL |
AuthType | 否 | String | API 鉴权类型。支持SECRET(密钥对鉴权)、NONE(免鉴权)、OAUTH、APP(应用认证)。默认为NONE。 示例值:NONE |
EnableCORS | 否 | Boolean | 是否开启跨域。 示例值:false |
ConstantParameters.N | 否 | Array of ConstantParameter | 常量参数。 |
RequestParameters.N | 否 | Array of RequestParameter | 前端请求参数。 |
ApiBusinessType | 否 | String | 当AuthType 为 OAUTH时,该字段有效, NORMAL:业务api OAUTH:授权API。 示例值:NORMAL |
ServiceMockReturnMessage | 否 | String | API 的后端 Mock 返回信息。如果 ServiceType 是 Mock,则此参数必传。 示例值:mock |
MicroServices.N | 否 | Array of MicroServiceReq | API绑定微服务列表。 |
ServiceTsfLoadBalanceConf | 否 | TsfLoadBalanceConfResp | 微服务的负载均衡配置。 |
ServiceTsfHealthCheckConf | 否 | HealthCheckConf | 微服务的健康检查配置。 |
TargetServices.N | 否 | Array of TargetServicesReq | target类型后端资源信息。(内测阶段) |
TargetServicesLoadBalanceConf | 否 | Integer | target类型负载均衡配置。(内测阶段) 示例值:0 |
TargetServicesHealthCheckConf | 否 | HealthCheckConf | target健康检查配置。(内测阶段) |
ServiceScfFunctionName | 否 | String | scf 函数名称。当后端类型是SCF时生效。 示例值:xxx |
ServiceWebsocketRegisterFunctionName | 否 | String | scf websocket注册函数。当前端类型是WEBSOCKET且后端类型是SCF时生效。 示例值:xxx |
ServiceWebsocketCleanupFunctionName | 否 | String | scf websocket清理函数。当前端类型是WEBSOCKET且后端类型是SCF时生效。 示例值:xxx |
ServiceWebsocketTransportFunctionName | 否 | String | scf websocket传输函数。当前端类型是WEBSOCKET且后端类型是SCF时生效。 示例值:xxx |
ServiceScfFunctionNamespace | 否 | String | scf 函数命名空间。当后端类型是SCF时生效。 示例值:xxx |
ServiceScfFunctionQualifier | 否 | String | scf函数版本。当后端类型是SCF时生效。 示例值:xxx |
ServiceWebsocketRegisterFunctionNamespace | 否 | String | scf websocket注册函数命名空间。当前端类型是WEBSOCKET且后端类型是SCF时生效。 示例值:xxx |
ServiceWebsocketRegisterFunctionQualifier | 否 | String | scf websocket传输函数版本。当前端类型是WEBSOCKET且后端类型是SCF时生效。 示例值:xxx |
ServiceWebsocketTransportFunctionNamespace | 否 | String | scf websocket传输函数命名空间。当前端类型是WEBSOCKET且后端类型是SCF时生效。 示例值:xxx |
ServiceWebsocketTransportFunctionQualifier | 否 | String | scf websocket传输函数版本。当前端类型是WEBSOCKET且后端类型是SCF时生效。 示例值:xxx |
ServiceWebsocketCleanupFunctionNamespace | 否 | String | scf websocket清理函数命名空间。当前端类型是WEBSOCKET且后端类型是SCF时生效。 示例值:xxx |
ServiceWebsocketCleanupFunctionQualifier | 否 | String | scf websocket清理函数版本。当前端类型是WEBSOCKET且后端类型是SCF时生效。 示例值:xxx |
ServiceScfIsIntegratedResponse | 否 | Boolean | 是否开启响应集成。当后端类型是SCF时生效。 示例值:false |
IsDebugAfterCharge | 否 | Boolean | 开始调试后计费。(云市场预留字段) 示例值:false |
IsDeleteResponseErrorCodes | 否 | Boolean | 是否删除自定义响应配置错误码,如果不传或者传 False,不删除,当传 True 时,则删除此 API 所有自定义响应配置错误码。 示例值:false |
ResponseType | 否 | String | 返回类型。 示例值:html |
ResponseSuccessExample | 否 | String | 自定义响应配置成功响应示例。 示例值:xxx |
ResponseFailExample | 否 | String | 自定义响应配置失败响应示例。 示例值:xxx |
ServiceConfig | 否 | ServiceConfig | API 的后端服务配置。 |
AuthRelationApiId | 否 | String | 关联的授权API 唯一 ID,当AuthType为OAUTH且ApiBusinessType为NORMAL时生效。标示业务API绑定的oauth2.0授权API唯一ID。 示例值:api-xxx |
ServiceParameters.N | 否 | Array of ServiceParameter | API的后端服务参数。 |
OauthConfig | 否 | OauthConfig | oauth配置。当AuthType是OAUTH时生效。 |
ResponseErrorCodes.N | 否 | Array of ResponseErrorCodeReq | 用户自定义错误码配置。 |
TargetNamespaceId | 否 | String | tsf serverless 命名空间ID。(内测中) 示例值:xxx |
UserType | 否 | String | 用户类型。 示例值:xxx |
IsBase64Encoded | 否 | Boolean | 是否打开Base64编码,只有后端是scf时才会生效。 示例值:false |
EventBusId | 否 | String | 事件总线ID。 示例值:eb-xsae3sdf |
ServiceScfFunctionType | 否 | String | scf函数类型。当后端类型是SCF时生效。支持事件触发(EVENT),http直通云函数(HTTP)。 示例值:EVENT |
ServiceScfEventIsAsyncCall | 否 | Boolean | 是否开启SCF Event异步调用。 示例值:true |
EIAMAppType | 否 | String | EIAM应用类型。 示例值:Client |
EIAMAuthType | 否 | String | EIAM应用认证类型,支持仅认证(AuthenticationOnly)、认证和鉴权(Authorization)。 示例值:Authorization |
TokenTimeout | 否 | Integer | EIAM应用Token 有效时间,单位为秒,默认为7200秒。 示例值:7200 |
EIAMAppId | 否 | String | EIAM应用ID。 |
Owner | 否 | String | 资源的Owner |
3. 输出参数
参数名称 | 类型 | 描述 |
---|---|---|
Result | CreateApiResultInfo | api信息 注意:此字段可能返回 null,表示取不到有效值。 |
RequestId | String | 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 |
4. 示例
示例1 CreateApi
CreateApi
输入示例
https://apigateway.tencentcloudapi.com/?Action=CreateApi
&ServiceId=service-ody35h5e
&ApiName=name
&ApiDesc=desc
&ApiType=NORMAL
&AuthType=NONE
&ServiceType=MOCK
&ServiceTimeout=15
&Protocol=HTTP
&RequestConfig.Path=/test
&RequestConfig.Method=GET
&EnableCORS=false
&ApiBusinessType=NORMAL
&ServiceMockReturnMessage=mock
&<公共请求参数>
输出示例
{
"Response": {
"Result": {
"ApiId": "abc",
"Path": "abc",
"Method": "abc",
"CreatedTime": "2020-09-22T00:00:00+00:00"
},
"RequestId": "abc"
}
}
5. 开发者资源
腾讯云 API 平台
腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。
API Inspector
用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。
SDK
云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。
- Tencent Cloud SDK 3.0 for Python: GitHub Gitee
- Tencent Cloud SDK 3.0 for Java: GitHub Gitee
- Tencent Cloud SDK 3.0 for PHP: GitHub Gitee
- Tencent Cloud SDK 3.0 for Go: GitHub Gitee
- Tencent Cloud SDK 3.0 for Node.js: GitHub Gitee
- Tencent Cloud SDK 3.0 for .NET: GitHub Gitee
- Tencent Cloud SDK 3.0 for C++: GitHub Gitee
- Tencent Cloud SDK 3.0 for Ruby: GitHub Gitee
命令行工具
6. 错误码
以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。
错误码 | 描述 |
---|---|
FailedOperation.ApiInOperation | 当前API正在操作中,请稍后再试。 |
FailedOperation.BackendDomainError | 返回域名错误 |
FailedOperation.DomainNeedBeian | 该域名还未在腾讯云备案,请备案之后再绑定域名。 |
FailedOperation.EIAMError | EIAM返回错误。 |
FailedOperation.EbError | 事件总线绑定/解绑失败。 |
FailedOperation.GetRoleError | 获取角色失败,请确认完成API网关相关服务接口授权。 |
FailedOperation.ScfError | SCF触发器绑定/解绑操作失败。 |
FailedOperation.ServiceError | 服务相关的错误。 |
FailedOperation.ServiceInOperation | 当前Service正在操作中, 请稍后再试。 |
InternalError.ApigwException | API网关内部请求错误,请稍后重试。若无法解决,请联系智能客服或提交工单。 |
InternalError.CauthException | CAuth内部请求错误,请稍后重试。若无法解决,请联系智能客服或提交工单。 |
InternalError.ClbException | CLB内部请求错误,请稍后重试。若无法解决,请联系智能客服或提交工单。 |
InternalError.OssException | oss内部请求错误,请稍后重试。若无法解决,请联系智能客服或提交工单。 |
InternalError.ScfException | SCF内部请求错误,请稍后重试。若无法解决,请联系智能客服或提交工单。 |
InternalError.TsfException | TSF内部请求错误,请稍后重试。若无法解决,请联系智能客服或提交工单。 |
InternalError.VpcException | vpc内部请求错误,请稍后重试。若无法解决,请联系智能客服或提交工单。 |
InvalidParameter.FormatError | 参数格式错误。 |
InvalidParameterValue.IllegalProxyIp | 非法的后端ip地址。 |
InvalidParameterValue.InvalidApiBusinessType | 传入的Api业务类型必须为OAUTH。 |
InvalidParameterValue.InvalidApiRequestConfig | 无效的API配置。 |
InvalidParameterValue.InvalidApiType | API类型错误,微服务API只支持TSF后端服务类型。 |
InvalidParameterValue.InvalidBackendPath | 后端服务路径配置错误。 |
InvalidParameterValue.InvalidClb | 不合法的clb。 |
InvalidParameterValue.InvalidIPAddress | 参数后端地址取值错误。 |
InvalidParameterValue.InvalidPort | 后端服务端口错误。 |
InvalidParameterValue.InvalidPublicKey | OAUTH2.0 API 公钥参数格式错误。 |
InvalidParameterValue.InvalidRegion | 地域错误。 |
InvalidParameterValue.InvalidRequestParameters | 不合法的请求参数。 |
InvalidParameterValue.InvalidScfConfig | SCF类型API参数错误。 |
InvalidParameterValue.InvalidServiceConfig | 不合法的服务配置。 |
InvalidParameterValue.InvalidServiceMockReturnMessage | 参数ServiceMockReturnMessage错误。 |
InvalidParameterValue.InvalidServiceParam | 参数配置错误,未配置在后端参数配置列表中。 |
InvalidParameterValue.InvalidServiceParameters | 参数ServiceParameters错误。 |
InvalidParameterValue.InvalidServiceType | 后端服务类型错误。WEBSOCKET类型的后端服务,前端协议需要配置为WEBSOCKET。 |
InvalidParameterValue.InvalidTsfConfig | TSF类型API配置错误。 |
InvalidParameterValue.InvalidUpstream | 当前后端通道不存在或者是无效状态。 |
InvalidParameterValue.InvalidUrl | URL参数错误。 |
InvalidParameterValue.InvalidVpcConfig | 无效vpc信息。 |
InvalidParameterValue.InvalidWSMethod | 方法错误。WEBSOCKET类型的后端服务,前端方法需要配置为GET。 |
InvalidParameterValue.LimitExceeded | 参数个数超出限制,上限为100。 |
InvalidParameterValue.NotInOptions | 参数取值错误。当前值不在可选范围内。 |
InvalidParameterValue.ParameterNotMatch | 后端参数配置错误,未配置相关前端参数。 |
InvalidParameterValue.RangeExceeded | 参数取值错误,不在参数范围内。 |
LimitExceeded.ApiCountLimitExceeded | API数量超过限制。 |
MissingParameter | 缺少参数错误。 |
ResourceNotFound.InvalidOauthApi | OAuth业务API错误。 |
ResourceNotFound.InvalidService | 对应服务不可见。 |
UnsupportedOperation.BasicServiceNoMoreApi | 基础版服务不能创建超过一个API。 |
UnsupportedOperation.InvalidAction | 接口错误。 |
UnsupportedOperation.InvalidEndpointType | 不支持后端类型。 |
UnsupportedOperation.ServiceExist | 服务不存在 |
UnsupportedOperation.UnpackError | Unpack函数错误 |
UnsupportedOperation.UnsupportedNetType | 不支持网络类型。 |