1. 接口描述
接口请求域名: scf.tencentcloudapi.com 。
该接口根据传入参数创建新的函数。
默认接口请求频率限制:100次/秒。
推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。
2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
参数名称 | 必选 | 类型 | 描述 |
---|---|---|---|
Action | 是 | String | 公共参数,本接口取值:CreateFunction。 |
Version | 是 | String | 公共参数,本接口取值:2018-04-16。 |
Region | 是 | String | 公共参数,详见产品支持的 地域列表。 |
FunctionName | 是 | String | 创建的函数名称,函数名称支持26个英文字母大小写、数字、连接符和下划线,第一个字符只能以字母开头,最后一个字符不能为连接符或者下划线,名称长度2-60 示例值:helloworld |
Code | 是 | Code | 函数代码. 注意:不能同时指定Cos、ZipFile或 DemoId。 |
Handler | 否 | String | 函数处理方法名称,名称格式支持 "文件名称.方法名称" 形式(java 名称格式 包名.类名::方法名),文件名称和函数名称之间以"."隔开,文件名称和函数名称要求以字母开始和结尾,中间允许插入字母、数字、下划线和连接符,文件名称和函数名字的长度要求是 2-60 个字符 示例值:index.main_handler |
Description | 否 | String | 函数描述,最大支持 1000 个英文字母、数字、空格、逗号、换行符和英文句号,支持中文 示例值:hello world! |
MemorySize | 否 | Integer | 函数运行时内存大小,默认为 128M,可选范围 64、128MB-3072MB,并且以 128MB 为阶梯 示例值:128 |
Timeout | 否 | Integer | 函数最长执行时间,单位为秒,可选值范围 1-900 秒,默认为 3 秒 示例值:3 |
Environment | 否 | Environment | 函数的环境变量 |
Runtime | 否 | String | 函数运行环境,目前仅支持 Python2.7,Python3.6,Nodejs6.10,Nodejs8.9,Nodejs10.15,Nodejs12.16, Php5.2, Php7.4,Go1,Java8 和 CustomRuntime,默认Python2.7 示例值:Python3.6 |
VpcConfig | 否 | VpcConfig | 函数的私有网络配置 |
Namespace | 否 | String | 函数所属命名空间 示例值:default |
Role | 否 | String | 函数绑定的角色 示例值:SCF_ExecuteRole |
InstallDependency | 否 | String | 在线依赖安装,TRUE 表示安装,默认值为 FALSE。仅支持 Node.js 函数。 示例值:FALSE |
ClsLogsetId | 否 | String | 函数日志投递到的CLS LogsetID 示例值:xxxxx |
ClsTopicId | 否 | String | 函数日志投递到的CLS TopicID 示例值:xxxxx |
Type | 否 | String | 函数类型,默认值为Event,创建触发器函数请填写Event,创建HTTP函数级服务请填写HTTP 示例值:Event |
CodeSource | 否 | String | CodeSource 代码来源,支持ZipFile, Cos, Demo 其中之一 示例值:xxxxx |
Layers.N | 否 | Array of LayerVersionSimple | 函数要关联的Layer版本列表,Layer会按照在列表中顺序依次覆盖。 |
DeadLetterConfig | 否 | DeadLetterConfig | 死信队列参数 |
PublicNetConfig | 否 | PublicNetConfigIn | 公网访问配置 |
CfsConfig | 否 | CfsConfig | 文件系统配置参数,用于云函数挂载文件系统 |
InitTimeout | 否 | Integer | 函数初始化超时时间,默认 65s,镜像部署函数默认 90s。 示例值:3 |
Tags.N | 否 | Array of Tag | 函数 Tag 参数,以键值对数组形式传入 |
AsyncRunEnable | 否 | String | 是否开启异步属性,TRUE 为开启,FALSE为关闭 示例值:FALSE |
TraceEnable | 否 | String | 是否开启事件追踪,TRUE 为开启,FALSE为关闭 示例值:FALSE |
AutoDeployClsTopicIndex | 否 | String | 是否自动创建cls索引,TRUE 为开启,FALSE为关闭 示例值:FALSE |
AutoCreateClsTopic | 否 | String | 是否自动创建cls主题,TRUE 为开启,FALSE为关闭 示例值:FALSE |
ProtocolType | 否 | String | HTTP函数支持的访问协议。当前支持WebSockets协议,值为WS 示例值:WS |
ProtocolParams | 否 | ProtocolParams | HTTP函数配置ProtocolType访问协议,当前协议可配置的参数 |
InstanceConcurrencyConfig | 否 | InstanceConcurrencyConfig | 单实例多并发配置。只支持Web函数。 |
DnsCache | 否 | String | 是否开启Dns缓存能力。只支持EVENT函数。默认为FALSE,TRUE 为开启,FALSE为关闭 示例值:FALSE |
IntranetConfig | 否 | IntranetConfigIn | 内网访问配置 |
3. 输出参数
参数名称 | 类型 | 描述 |
---|---|---|
RequestId | String | 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 |
4. 示例
示例1 创建函数
创建函数
输入示例
POST / HTTP/1.1
Host: scf.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateFunction
<公共请求参数>
{
"Code": {
"CosBucketName": "<CosBucketName>",
"CosObjectName": "<CosObjectName>"
},
"Handler": "<function.handler>",
"FunctionName": "<FunctionName>"
}
输出示例
{
"Response": {
"RequestId": "eac6b301-a322-493a-8e36-83b295459397"
}
}
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 | 操作失败。 |
FailedOperation.AccountInsufficient | 账户余额不足。 |
FailedOperation.ApmConfigInstanceId | 获取Apm InstanceId失败。 |
FailedOperation.CallNetDeployFailed | 调用 NetDeploy 失败。 |
FailedOperation.CallRoleFailed | 请求role信息失败。 |
FailedOperation.ClsServiceUnregistered | CLS服务未注册。 |
FailedOperation.ClusterNotFound | 函数集群不存在。 |
FailedOperation.CreateFunction | 操作失败。 |
FailedOperation.InstanceNotFound | InstanceNotFound 实例不存在。 |
FailedOperation.InsufficientResources | 本地域资源售罄。 |
FailedOperation.Namespace | 命名空间已存在,请勿重复创建。 |
FailedOperation.OpenService | 服务开通失败。 |
FailedOperation.QcsRoleNotFound | 角色不存在。 |
FailedOperation.TotalConcurrencyMemoryInProgress | 用户并发内存配额设置任务处于进行中,请稍后重试。 |
FailedOperation.UnOpenedService | 指定的服务未开通,可以提交工单申请开通服务。 |
InternalError | 内部错误。 |
InternalError.GetRoleError | 内部服务错误。 |
InternalError.GetStsTokenFailed | 获取sts票据信息失败。 |
InternalError.System | 内部系统错误。 |
InternalError.SystemError | 内部服务错误。 |
InvalidParameter.ParamError | 创建函数传参异常。 |
InvalidParameter.Payload | 请求参数不合法。 |
InvalidParameterValue | 参数取值错误。 |
InvalidParameterValue.Action | Action取值与规范不符,请修正后再试。可参考:https://cloud.tencent.com/document/product/583/17235。 |
InvalidParameterValue.ApmConfig | ApmConfig参数传入错误。 |
InvalidParameterValue.ApmConfigInstanceId | ApmConfigInstanceId参数传入错误。 |
InvalidParameterValue.ApmConfigRegion | ApmConfigRegion参数传入错误。 |
InvalidParameterValue.Args | Args 参数值有误。 |
InvalidParameterValue.ArgsList | 容器启动参数取值与规范不符。 |
InvalidParameterValue.AsyncRunEnable | AsyncRunEnable 取值不正确。 |
InvalidParameterValue.CfsParameterDuplicate | cfs配置项重复。 |
InvalidParameterValue.CfsParameterError | cfs配置项取值与规范不符。 |
InvalidParameterValue.CfsStructionError | cfs参数格式与规范不符。 |
InvalidParameterValue.Cls | Cls传入错误。 |
InvalidParameterValue.Code | Code传入错误。 |
InvalidParameterValue.CodeSecret | CodeSecret传入错误。 |
InvalidParameterValue.CodeSource | CodeSource传入错误。 |
InvalidParameterValue.Command | Command[Entrypoint] 参数值有误。 |
InvalidParameterValue.CommandList | 容器启动命令参数值与规范不符。 |
InvalidParameterValue.Cos | Cos传入错误。 |
InvalidParameterValue.CosBucketName | CosBucketName不符合规范。 |
InvalidParameterValue.CosBucketRegion | CosBucketRegion取值与规范不符,请修正后再试。可参考:https://cloud.tencent.com/document/product/583/17244#Code。 |
InvalidParameterValue.CosObjectName | CosObjectName不符合规范。 |
InvalidParameterValue.DeadLetterConfig | DeadLetterConfig取值与规范不符,请修正后再试。可参考:https://cloud.tencent.com/document/product/583/17244#DeadLetterConfig。 |
InvalidParameterValue.Description | Description传入错误。 |
InvalidParameterValue.DiskSize | DiskSize 参数取值不规范。 |
InvalidParameterValue.DnsInfo | 环境变量DNS[OS_NAMESERVER]配置有误。 |
InvalidParameterValue.DynamicEnabled | DynamicEnabled 参数传入错误。 |
InvalidParameterValue.EipConfig | EipConfig参数错误。 |
InvalidParameterValue.Environment | Environment传入错误。 |
InvalidParameterValue.EnvironmentExceededLimit | 环境变量大小超限,请保持在 4KB 以内。 |
InvalidParameterValue.EnvironmentSystemProtect | 不支持修改函数系统环境变量和运行环境变量。 |
InvalidParameterValue.FunctionName | 函数不存在。 |
InvalidParameterValue.FunctionType | FunctionType参数错误。 |
InvalidParameterValue.GitCommitId | GitCommitId取值与规范不符,请修正后再试。 |
InvalidParameterValue.GitPasswordSecret | GitPasswordSecret 传参有误。 |
InvalidParameterValue.GitUrl | GitUrl不符合规范。 |
InvalidParameterValue.GitUserNameSecret | GitUserNameSecret 传参有误。 |
InvalidParameterValue.Handler | Handler传入错误。 |
InvalidParameterValue.IdleTimeOut | IdleTimeOut参数传入错误。 |
InvalidParameterValue.ImageType | ImageType 参数值有误。 |
InvalidParameterValue.ImageUri | imageUri 传入有误。 |
InvalidParameterValue.InstanceConcurrencyConfig | InstanceConcurrencyConfig 参数传入错误。 |
InvalidParameterValue.L5Enable | L5Enable取值与规范不符,请修正后再试。 |
InvalidParameterValue.Layers | Layers参数传入错误。 |
InvalidParameterValue.LimitExceeded | 参数超出长度限制。 |
InvalidParameterValue.LogFormat | 日志格式不正确。 |
InvalidParameterValue.MaxConcurrency | MaxConcurrency 参数传入错误。 |
InvalidParameterValue.Memory | Memory 取值与规范不符,函数运行时内存大小默认为128MB,可选范围64MB、128MB - 3072MB,以128MB为阶梯,请修正后重试。 |
InvalidParameterValue.MemorySize | MemorySize错误。 |
InvalidParameterValue.Namespace | Namespace参数传入错误。 |
InvalidParameterValue.NodeSpec | NodeSpec 参数传入错误。 |
InvalidParameterValue.NodeType | NodeType 参数传入错误。 |
InvalidParameterValue.ProtocolType | ProtocolType参数传入错误。 |
InvalidParameterValue.PublicNetConfig | PublicNetConfig参数错误。 |
InvalidParameterValue.RegistryId | 企业版镜像实例ID[RegistryId]传值错误。 |
InvalidParameterValue.Runtime | Runtime传入错误。 |
InvalidParameterValue.Stamp | Stamp取值与规范不符,请修正后再试。 |
InvalidParameterValue.TempCosObjectName | 非法的TempCosObjectName。 |
InvalidParameterValue.TraceEnable | TraceEnable取值与规范不符,请修正后再试。 |
InvalidParameterValue.Type | Type传入错误。 |
InvalidParameterValue.Vpc | VPC不正确。 |
InvalidParameterValue.VpcNotSetWhenOpenCfs | 开启cfs配置的同时必须开启vpc。 |
InvalidParameterValue.WebSocketsParams | WebSocketsParams参数传入错误。 |
InvalidParameterValue.ZipFile | 检测到不是标准的zip文件,请重新压缩后再试。 |
InvalidParameterValue.ZipFileBase64BinasciiError | 压缩文件base64解码失败: Incorrect padding ,请修正后再试。 |
LimitExceeded.ContainerImageAccelerate | 用户开启镜像加速函数版本超限。 |
LimitExceeded.ContainerImageAccelerateQuota | 用户开启镜像加速函数版本超限。 |
LimitExceeded.Eip | eip资源超限。 |
LimitExceeded.Function | 函数数量超出最大限制 ,可通过提交工单申请提升限制。 |
LimitExceeded.InitTimeout | InitTimeout达到限制,可提交工单申请提升限制:https://tencentcs.com/7Fixwt63。 |
LimitExceeded.IntraIp | 内网固定IP个数超限。 |
LimitExceeded.Memory | 内存超出最大限制。 |
LimitExceeded.PrivilegeContainer | 特权容器属性开启失败 |
LimitExceeded.Timeout | Timeout超出最大限制。 |
MissingParameter.Code | Code没有传入。 |
MissingParameter.Runtime | 缺失 Runtime 字段。 |
ResourceInUse | 资源被占用。 |
ResourceInUse.Function | 函数已存在。 |
ResourceInUse.FunctionName | FunctionName已存在。 |
ResourceNotFound | 资源不存在。 |
ResourceNotFound.CfsMountInsNotMatch | 指定的cfs下未找到您所指定的挂载点。 |
ResourceNotFound.CfsProtocolError | CfsProtocolError 参数异常。 |
ResourceNotFound.CfsStatusError | 检测cfs状态为不可用。 |
ResourceNotFound.CfsVpcNotMatch | cfs与云函数所处vpc不一致。 |
ResourceNotFound.Cmq | Cmq不存在。 |
ResourceNotFound.Demo | 不存在的Demo。 |
ResourceNotFound.GetCfsMountInsError | 获取cfs挂载点信息错误。 |
ResourceNotFound.GetCfsNotMatch | 获取cfs信息错误。 |
ResourceNotFound.ImageConfig | 未找到指定的ImageConfig,请创建后再试。 |
ResourceNotFound.Layer | layer不存在。 |
ResourceNotFound.Namespace | Namespace不存在。 |
ResourceNotFound.Role | 角色不存在。 |
ResourceNotFound.Vpc | VPC或子网不存在。 |
ResourceUnavailable.Namespace | Namespace不可用。 |
UnauthorizedOperation.CAM | CAM鉴权失败。 |
UnauthorizedOperation.Region | Region错误。 |
UnauthorizedOperation.Role | 没有权限访问您的Cos资源。 |
UnauthorizedOperation.TempCosAppid | TempCos的Appid和请求账户的APPID不一致。 |
UnsupportedOperation | 操作不支持。 |
UnsupportedOperation.AsyncRunEnable | 指定的配置AsyncRunEnable暂不支持,请修正后再试。 |
UnsupportedOperation.DiskSize | DiskSize 配置内测中,需要申请开启。如需使用可联系我们。 |
UnsupportedOperation.EipFixed | 指定的配置EipFixed暂不支持。 |
UnsupportedOperation.VpcConfig | 指定的配置VpcConfig暂不支持。 |