更新时间:2026-04-17 GMT+08:00

修改函数的metadata信息

功能介绍

修改指定的函数的metadata信息。

URI

PUT /v2/{project_id}/fgs/functions/{function_urn}/config

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释:

租户项目 ID,获取方式请参见获取项目ID

约束限制:

不涉及。

取值范围:

只能由英文字母、数字组成,且长度为32个字符。

默认取值:

不涉及。

function_urn

String

参数解释:

函数的URN,详细解释见FunctionGraph函数模型的描述

约束限制:

不涉及。

取值范围:

只能由英文字母、数字、下划线、中划线、冒号组成。

默认取值:

不涉及。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释:

用户Token。

通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

Content-Type

String

参数解释:

消息体的类型(格式)。

约束限制:

不涉及。

取值范围:

只能为application/json。

默认取值:

application/json

表3 请求Body参数

参数

是否必选

参数类型

描述

func_name

String

参数解释

函数名称。

约束限制

不涉及。

取值范围

可包含字母、数字、下划线和中划线,以大/小写字母开头,以字母或数字结尾,长度不超过60个字符,1~60位。

默认值

不涉及。

runtime

String

参数解释

FunctionGraph函数的运行时,即函数执行环境。

约束限制

不涉及。

取值范围

  • Java8: Java 8

  • Java11: Java 11

  • Java17: Java 17

  • Java21: Java 21

  • Python2.7: Python 2.7

  • Python3.6: Python 3.6

  • Python3.9: Python 3.9

  • Python3.10: Python 3.10

  • Python3.12: Python 3.12

  • Go1.x: Go 1.x

  • Node.js6.10: Nodejs 6.10

  • Node.js8.10: Nodejs 8.10

  • Node.js10.16: Nodejs 10.16

  • Node.js12.13: Nodejs 12.13

  • Node.js14.18: Nodejs 14.18

  • Node.js16.17: Nodejs 16.17

  • Node.js18.15: Nodejs 18.15

  • Node.js20.15: Nodejs 20.15

  • C#(.NET Core 2.1): C# 2.1

  • C#(.NET Core 3.1): C# 3.1

  • C#(.NET Core 6.0): C# 6.0

  • C#(.NET Core 8.0): C# 8.0

  • Custom: 定制运行时

  • PHP7.3: Php 7.3

  • PHP8.3: Php 8.3

  • Cangjie1.0:仓颉1.0版本

  • Cangjie0.52.3:仓颉0.52.3版本

  • http: HTTP函数

  • Custom Image: 自定义镜像函数

默认取值

不涉及。

timeout

Integer

参数解释:

函数执行超时时间,超时函数将被强行停止。

约束限制

不涉及。

取值范围:

范围3~259200秒。

默认取值

3秒。

handler

String

参数解释

函数执行入口。

规则:xx.xx,必须包含“. ”;自定义镜像函数handler为“-”

举例:对于node.js函数:myfunction.handler,则表示函数的文件名为myfunction.js,执行的入口函数名为handler。长度不超过128个字符。

约束限制

不涉及。

取值范围:

最小长度为3,最大长度128字符。

默认取值

不涉及。

memory_size

Integer

参数解释:

函数消耗的内存,单位MB。

约束限制

不涉及。

取值范围

  • 128

  • 256

  • 512

  • 768

  • 1024

  • 1280

  • 1536

  • 1792

  • 2048

  • 2560

  • 3072

  • 3584

  • 4096

默认取值

不涉及。

gpu_memory

Integer

参数解释:

函数消耗的显存,只支持自定义运行时与自定义镜像函数配置GPU,单位MB。

约束限制

不涉及。

取值范围

  • 1024

  • 2048

  • 3072

  • 4096

  • 5120

  • 6144

  • 7168

  • 8192

  • 9216

  • 10240

  • 11264

  • 12288

  • 13312

  • 14336

  • 15360

  • 16384

默认取值

不涉及。

gpu_type

String

参数解释:

显卡类型。

约束限制:

需要配置GPU显存。

取值范围

不涉及。

默认取值

不涉及。

user_data

String

参数解释:

用户自定义的name/value信息。 在函数中使用的参数。 举例:如函数要访问某个主机,可以设置自定义参数:Host={host_ip},总长度不超过4KB。

约束限制

不涉及。

取值范围:

json格式的字符串。

默认取值

不涉及。

encrypted_user_data

String

参数解释:

用户自定义的name/value信息,用于需要加密的配置。

约束限制

不涉及。

取值范围:

json格式的字符串。

默认取值

不涉及。

xrole

String

参数解释:

函数配置委托。需要IAM支持,并在IAM界面创建委托。

约束限制

当函数需要访问其他服务时,必须提供该字段。配置后用户可以通过函数执行入口方法中的context参数获取具有委托中权限的token、ak、sk,用于访问其他云服务。如果用户函数不访问任何云服务,则不用提供委托名称。

取值范围:

不涉及。

默认取值

不涉及。

app_xrole

String

参数解释:

函数执行委托。可为函数执行单独配置执行委托,这将减小不必要的性能损耗;不单独配置执行委托时,函数执行和函数配置将使用同一委托。

约束限制

不涉及。

取值范围:

不涉及。

默认取值

不涉及。

description

String

参数解释:

函数描述。

约束限制

不涉及。

取值范围:

不涉及。

默认取值

不涉及。

func_vpc

FuncVpc object

参数解释

函数vpc配置。需同时为函数配置具有vpc权限的委托。

约束限制

不涉及。

取值范围

不涉及。

默认取值

不涉及。

peering_cidr

String

参数解释

VPC对等连接网段。您可以声明代码中使用到的VPC网段,用以检测是否与服务使用VPC网段冲突。网段间使用分号分隔且不能超过5个。

约束限制

需要函数开启网络配置功能。

取值范围

有效的带掩码的ipv4网段。

默认取值

不涉及。

mount_config

MountConfig object

参数解释

函数挂载配置。

约束限制

不涉及。

取值范围

不涉及。

默认取值

不涉及。

strategy_config

StrategyConfig object

参数解释

函数策略配置,包括单函数最大实例数,单实例最大并发数。

约束限制

不涉及。

取值范围

不涉及。

默认取值

不涉及。

status

Integer

参数解释

函数状态。

约束限制

不涉及。

取值范围

  • 0: 函数启用状态。

  • 1: 函数禁用状态。

默认取值

0。

custom_image

CustomImage object

参数解释

自定义镜像配置。

约束限制

不涉及。

取值范围

不涉及。

默认取值

不涉及。

extend_config

String

参数解释

函数扩展配置,无效字段。

约束限制

不涉及。

取值范围

不涉及。

默认取值

不涉及。

initializer_handler

String

参数解释:

函数初始化入口,规则:xx.xx,必须包含“. ”。

举例:对于node.js函数:myfunction.initializer,则表示函数的文件名为myfunction.js,初始化的入口函数名为initializer。

约束限制

当配置初始化函数时,此参数必填。

取值范围:

不涉及。

默认取值

不涉及。

initializer_timeout

Integer

参数解释:

初始化超时时间,超时函数将被强行停止。

约束限制

当配置初始化函数时,此参数必填。

取值范围:

1-300秒。

默认取值

不涉及。

pre_stop_handler

String

参数解释:

函数预停止函数的入口,规则:xx.xx,必须包含“. ”。

举例:对于node.js函数:myfunction.pre_stop_handler,则表示函数的文件名为myfunction.js,初始化的入口函数名为pre_stop_handler。

约束限制

不涉及。

取值范围:

不涉及。

默认取值

不涉及。

pre_stop_timeout

Integer

参数解释:

初始化超时时间,超时函数将被强行停止。

约束限制

不涉及。

取值范围:

1~90秒。

默认取值

不涉及。

ephemeral_storage

Integer

参数解释

临时存储大小。默认情况下会为函数的/tmp目录分配512MB的空间。您可以通过临时存储设置将函数的/tmp目录大小调整为10G。

约束限制

不涉及。

取值范围

  • 512:512MB。

  • 10240:10GB。

默认取值

512MB。

enterprise_project_id

String

参数解释:

企业项目ID。

约束限制

在企业用户创建函数时必填。

取值范围:

不涉及。

默认取值

不涉及。

log_config

FuncLogConfig object

参数解释

函数日志配置。

约束限制

不涉及。

取值范围

不涉及。

默认取值

不涉及。

network_controller

NetworkControlConfig object

参数解释

函数网络控制配置,控制函数是否只允许某个vpc访问。

约束限制

不涉及。

取值范围

不涉及。

默认取值

不涉及。

is_stateful_function

Boolean

参数解释

是否支持有状态,如果需要支持,需要固定传参为true。

约束限制

v2版本支持。

取值范围

  • true:支持

  • false:不支持

默认取值

false。

enable_dynamic_memory

Boolean

参数解释:

是否允许动态内存配置。

约束限制

不涉及。

取值范围:

  • true: 允许

  • false: 禁止

默认取值

false。

enable_auth_in_header

Boolean

参数解释

是否允许在请求头中添加鉴权信息。

约束限制

只支持v2版本,并且函数要配置委托。

取值范围

  • true:请求头中包含鉴权信息。

  • false:请求头中不包含鉴权信息。

默认取值

false。

domain_names

String

参数解释

内网域名配置。

约束限制

函数需要配置vpc。

取值范围

有效的域名列表。

默认取值

不涉及。

restore_hook_handler

String

参数解释

函数快照式冷启动Restore Hook入口。

约束限制

仅支持Java。

取值范围

必须包含“. ”。如:com.xxx.demo.Test.restoreHook

默认取值

不涉及。

restore_hook_timeout

Integer

参数解释

快照冷启动Restore Hook的超时时间。

约束限制

需要配置restore_hook_handler。

取值范围

1~300秒。

默认取值

不涉及。

heartbeat_handler

String

参数解释

心跳函数函数的入口。

约束限制

必须包含“. ”,只支持JAVA运行时配置心跳函数入口需要与函数执行入口在同一文件下。在开启心跳函数配置时,此参数必填。

取值范围

不涉及。

默认取值

不涉及。

enable_class_isolation

Boolean

参数解释

类隔离开关。

约束限制

只支持JAVA运行时配置。开启类隔离后可以支持Kafka转储并提升类加载效率,但也可能会导致某些兼容性问题,请谨慎开启。

取值范围

  • true:开启类隔离。

  • false:关闭类隔离。

默认取值

false。

lts_custom_tag

Map<String,String>

参数解释

自定义日志标签。函数执行时,可以按照自定义标签配置上报标签到云日志服务(LTS),用户可以通过标签对日志进行过滤筛选。

约束限制

用户需要开通日志功能。

取值范围

字符串映射对。

默认取值

不涉及。

enable_lts_log

Boolean

参数解释

是否开启日志。

约束限制

不涉及。

取值范围

  • true:开启。

  • false:关闭。

默认取值

不涉及。

user_data_encrypt_kms_key_id

String

参数解释

用于环境变量加密的kms主密钥ID。

约束限制

不涉及。

取值范围

不涉及。

默认取值

不涉及。

表4 FuncVpc

参数

是否必选

参数类型

描述

domain_id

String

参数解释

租户账号id。

取值范围

不涉及。

namespace

String

参数解释

租户的project id。

取值范围

不涉及。

vpc_name

String

参数解释

虚拟私有云名称。

取值范围

不涉及。

vpc_id

String

参数解释

虚拟私有云唯一标识。

取值范围

不涉及。

subnet_name

String

参数解释

子网名称。

取值范围

不涉及。

subnet_id

String

参数解释

子网编号。

取值范围

不涉及。

cidr

String

参数解释

子网掩码。

取值范围

不涉及。

gateway

String

参数解释

网关。

取值范围

不涉及。

security_groups

Array of strings

参数解释

安全组。

取值范围

字符串列表。

is_safety

Boolean

参数解释

是否开启安全访问。开启时,需要您自行配置VPCEP网络但可以提供更安全的VPC连接访问并打通内网域名。注意:开启后无法关闭。

取值范围

  • true:开启

  • false:关闭

表5 MountConfig

参数

是否必选

参数类型

描述

mount_user

MountUser object

参数解释

挂载用户信息。

取值范围

不涉及。

func_mounts

Array of FuncMount objects

参数解释

函数挂载列表。

取值范围

不涉及。

表6 MountUser

参数

是否必选

参数类型

描述

user_id

String

参数解释

用户ID。

取值范围

-1~65534的非0整数。

user_group_id

String

参数解释

用户组ID。

取值范围

-1~65534的非0整数。

表7 FuncMount

参数

是否必选

参数类型

描述

mount_type

String

参数解释

挂载类型,func_mounts非空时必选。

取值范围

  • sfs:sfs容量型

  • sfsTrubo:弹性文件服务

  • ecs:ecs服务器

mount_resource

String

参数解释

挂载资源ID(对应云服务ID),func_mounts非空时必选。

取值范围

不涉及。

mount_share_path

String

参数解释

远端挂载路径(例如192.168.0.12:/data),如果mount_type为ecs,必选。

取值范围

ecs服务器开放的共享路径。

local_mount_path

String

参数解释

函数访问路径,func_mounts非空时必选。

取值范围

函数容器中的挂载目录,一般是2层结构。

表8 StrategyConfig

参数

是否必选

参数类型

描述

concurrency

Integer

参数解释

单函数最大实例数,-1代表该函数实例数无限制

取值范围

  • v1版本:0和-1

  • v2版本:[-1, 1000]

concurrent_num

Integer

参数解释

单实例并发数, v2版本支持。

取值范围

[1, 1000]

表9 CustomImage

参数

是否必选

参数类型

描述

enabled

Boolean

参数解释

是否使用镜像。不使用镜像则以下参数不生效。

取值范围:

  • true:使用镜像。

  • false:没有使用镜像。

image

String

参数解释

镜像地址。

取值范围:

不涉及。

command

String

参数解释

启动容器镜像的命令。

取值范围:

不涉及。

args

String

参数解释

启动容器镜像的命令行参数。

取值范围:

不涉及。

working_dir

String

参数解释

镜像容器工作目录。

取值范围:

不涉及。

uid

String

参数解释

镜像容器的用户id。

取值范围:

不涉及。

gid

String

参数解释

镜像容器的用户组id。

取值范围:

不涉及。

is_public

Boolean

参数解释

是否是公共镜像。

取值范围:

不涉及。

表10 FuncLogConfig

参数

是否必选

参数类型

描述

group_name

String

参数解释

函数绑定日志组名。

取值范围

不涉及。

group_id

String

参数解释

函数绑定日志组ID。

取值范围

不涉及。

stream_name

String

参数解释

函数绑定日志流名。

取值范围

不涉及。

stream_id

String

参数解释

函数绑定日志流ID。

取值范围

不涉及。

表11 NetworkControlConfig

参数

是否必选

参数类型

描述

disable_public_network

Boolean

参数解释

禁止公网访问开关。

取值范围

  • true:禁止公网访问

  • false:允许公网访问

trigger_access_vpcs

Array of VpcConfig objects

参数解释

指定触发函数vpc配置。

取值范围

不涉及。

表12 VpcConfig

参数

是否必选

参数类型

描述

vpc_name

String

参数解释

vpc名称。

取值范围

不涉及。

vpc_id

String

参数解释

vpc ID。

取值范围

不涉及。

表13 DNSConfig

参数

是否必选

参数类型

描述

dns

Array of strings

参数解释

DNS Server配置。

约束限制

不涉及。

取值范围

用户配置的dns地址列表

默认取值

不涉及。

dns_opts

Array of strings

参数解释

DNS选项配置。

约束限制

不涉及。

取值范围

用户配置的dns选项

默认取值

不涉及。

dns_search

Array of strings

参数解释

DNS搜索域配置。

约束限制

不涉及。

取值范围

用户配置的dns搜索配置

默认取值

不涉及。

响应参数

状态码: 200

表14 响应Body参数

参数

参数类型

描述

func_id

String

参数解释

函数id,唯一标识函数。

取值范围

不涉及。

resource_id

String

参数解释:

函数资源唯一标识id。

取值范围:

不涉及。

func_urn

String

参数解释:

函数的URN(Uniform Resource Name),唯一标识函数。

取值范围:

不涉及。

func_name

String

参数解释:

函数名称。

取值范围

不涉及。

domain_id

String

参数解释

域名id。

取值范围

不涉及。

namespace

String

参数解释

租户的project id。

取值范围

不涉及。

project_name

String

参数解释:

租户的project name。

取值范围:

不涉及。

package

String

参数解释:

函数所属的分组Package,用于用户针对函数的自定义分组。

取值范围:

不涉及。

runtime

String

参数解释

FunctionGraph函数的运行时,即函数执行环境。

取值范围

  • Java8: Java 8

  • Java11: Java 11

  • Java17: Java 17

  • Java21: Java 21

  • Python2.7: Python 2.7

  • Python3.6: Python 3.6

  • Python3.9: Python 3.9

  • Python3.10: Python 3.10

  • Python3.12: Python 3.12

  • Go1.x: Go 1.x

  • Node.js6.10: Nodejs 6.10

  • Node.js8.10: Nodejs 8.10

  • Node.js10.16: Nodejs 10.16

  • Node.js12.13: Nodejs 12.13

  • Node.js14.18: Nodejs 14.18

  • Node.js16.17: Nodejs 16.17

  • Node.js18.15: Nodejs 18.15

  • Node.js20.15: Nodejs 20.15

  • C#(.NET Core 2.1): C# 2.1

  • C#(.NET Core 3.1): C# 3.1

  • C#(.NET Core 6.0): C# 6.0

  • C#(.NET Core 8.0): C# 8.0

  • Custom: 定制运行时

  • PHP7.3: Php 7.3

  • PHP8.3: Php 8.3

  • Cangjie1.0:仓颉1.0版本

  • Cangjie0.52.3:仓颉0.52.3版本

  • http: HTTP函数

  • Custom Image: 自定义镜像函数

timeout

Integer

参数解释:

函数执行超时时间,超时函数将被强行停止。

取值范围:

范围3~259200秒。

handler

String

参数解释

函数执行入口。

规则:xx.xx,必须包含“. ”;自定义镜像函数handler为“-”

举例:对于node.js函数:myfunction.handler,则表示函数的文件名为myfunction.js,执行的入口函数名为handler。长度不超过128个字符。

取值范围:

最小长度为3,最大长度128字符。

memory_size

Integer

参数解释:

函数消耗的内存,单位MB。

取值范围

  • 128

  • 256

  • 512

  • 768

  • 1024

  • 1280

  • 1536

  • 1792

  • 2048

  • 2560

  • 3072

  • 3584

  • 4096

gpu_memory

Integer

参数解释:

函数消耗的显存,只支持自定义运行时与自定义镜像函数配置GPU,单位MB。

取值范围

  • 1024

  • 2048

  • 3072

  • 4096

  • 5120

  • 6144

  • 7168

  • 8192

  • 9216

  • 10240

  • 11264

  • 12288

  • 13312

  • 14336

  • 15360

  • 16384

默认取值

不涉及。 。

cpu

Integer

参数解释:

函数占用的cpu资源。

单位为millicore(1 core=1000 millicores)。

取值与MemorySize成比例,默认是128M内存占0.1个核(100 millicores)。

取值范围:

不涉及。

code_type

String

参数解释:

函数代码类型。

取值范围:

取值有5种。

  • inline: UI在线编辑代码。

  • zip: 函数代码为zip包。

  • obs: 函数代码来源于obs存储。

  • jar: 函数代码为jar包,主要针对Java函数。

  • Custom-Image-Swr: 函数代码来源与SWR自定义镜像。

code_url

String

参数解释:

当CodeType为obs时,该值为函数代码包在OBS上的地址,CodeType为其他值时,该字段为空。

取值范围:

obs链接地址。

code_filename

String

参数解释:

函数的文件名,当CodeType为jar/zip时必须提供该字段,inline和obs不需要提供。

取值范围:

不涉及。

code_size

Long

参数解释:

函数大小,单位:字节。

取值范围:

不涉及。

user_data

String

参数解释:

用户自定义的name/value信息。 在函数中使用的参数。 举例:如函数要访问某个主机,可以设置自定义参数:Host={host_ip},总长度不超过4KB。

取值范围:

json格式的字符串。

encrypted_user_data

String

参数解释:

用户自定义的name/value信息,用于需要加密的配置。

取值范围:

json格式的字符串。

digest

String

参数解释

函数代码SHA512 hash值,用于判断函数是否变化。

取值范围:

不涉及。

version

String

参数解释

函数版本号,由系统自动生成,规则:vYYYYMMDD-HHMMSS(v+年月日-时分秒)。

取值范围:

不涉及。

image_name

String

参数解释:

函数版本的内部标识。

取值范围:

不涉及。

xrole

String

参数解释:

函数配置委托。需要IAM支持,并在IAM界面创建委托,当函数需要访问其他服务时,必须提供该字段。配置后用户可以通过函数执行入口方法中的context参数获取具有委托中权限的token、ak、sk,用于访问其他云服务。如果用户函数不访问任何云服务,则不用提供委托名称。

取值范围:

不涉及。

app_xrole

String

参数解释:

函数执行委托。可为函数执行单独配置执行委托,这将减小不必要的性能损耗;不单独配置执行委托时,函数执行和函数配置将使用同一委托。

取值范围:

不涉及。

description

String

参数解释:

函数描述。

取值范围:

不涉及。

last_modified

String

参数解释:

函数最后一次更新时间。

取值范围:

utc时间。

ephemeral_storage

Integer

参数解释:

临时存储大小。默认情况下会为函数的/tmp目录分配512MB的空间。您可以通过临时存储设置将函数的/tmp目录大小调整为10G。

取值范围:

  • 512:512MB。

  • 10240:10GB。

func_vpc

FuncVpc object

参数解释

函数vpc配置。

取值范围

不涉及。

peering_cidr

String

参数解释

VPC对等连接网段。您可以声明代码中使用到的VPC网段,用以检测是否与服务使用VPC网段冲突。

取值范围

逗号分隔的ipv4网段,一次配置不超过5个。

mount_config

MountConfig object

参数解释

函数挂载配置。

取值范围

不涉及。

strategy_config

StrategyConfig object

参数解释

函数策略配置,包括单函数最大实例数,单实例最大并发数。

取值范围

不涉及。

status

Integer

参数解释:

函数状态。

取值范围:

  • 0: 函数启用状态。

  • 1: 函数禁用状态。

dependencies

Array of Dependency objects

参数解释:

函数依赖代码包列表。

取值范围:

不涉及。

initializer_handler

String

参数解释:

函数初始化入口,规则:xx.xx,必须包含“. ”。当配置初始化函数时,此参数必填。

举例:对于node.js函数:myfunction.initializer,则表示函数的文件名为myfunction.js,初始化的入

口函数名为initializer。

取值范围:

不涉及。

initializer_timeout

Integer

参数解释:

初始化超时时间,超时函数将被强行停止。当配置初始化函数时,此参数必填。

取值范围:

1-300秒。

pre_stop_handler

String

函数预停止函数的入口,规则:xx.xx,必须包含“. ”。

举例:对于node.js函数:myfunction.pre_stop_handler,则表示函数的文件名为myfunction.js,初始化的入口函数名为pre_stop_handler。

pre_stop_timeout

Integer

参数解释:

初始化超时时间,超时函数将被强行停止。

取值范围:

1~90秒。

enterprise_project_id

String

参数解释:

企业项目ID,在企业用户创建函数时必填。

取值范围:

不涉及。

long_time

Boolean

参数解释:

是否允许进行长时间超时设置。

取值范围:

  • true: 允许进行长时间超时设置。

  • false: 不允许进行长时间超时设置。

log_group_id

String

参数解释:

自定义日志查询组id。

取值范围:

不涉及。

log_stream_id

String

参数解释:

自定义日志查询流id。

取值范围:

不涉及。

type

String

参数解释

函数版本。

取值范围:

  • v2:表示为正式版本。

  • v1: 为废弃版本。

enable_cloud_debug

String

参数解释

适配CloudDebug场景,是否开启云调试(已废弃)

取值范围

不涉及。

enable_dynamic_memory

Boolean

参数解释

是否支持配置动态内存,v2版本支持。

取值范围:

  • true: 支持。

  • false: 禁止。

is_stateful_function

Boolean

参数解释

是否支持有状态,v2版本支持。

取值范围:

  • true: 支持。

  • false: 禁止。

domain_names

String

参数解释

函数配置的需要支持域名解析的内网域名。

取值范围

有效的域名列表。

enable_auth_in_header

Boolean

参数解释

是否允许在请求头中添加鉴权信息,只支持自定义镜像函数。

取值范围

  • true:允许。

  • false:不允许。

custom_image

CustomImage object

参数解释

自定义镜像配置。

取值范围

不涉及。

is_return_stream

Boolean

参数解释

是否返回流式数据(已废弃)。

取值范围

不涉及。

dns_config

DNSConfig object

参数解释

函数dns配置。

取值范围

不涉及。

lts_custom_tag

Map<String,String>

参数解释

自定义日志标签。函数执行时,可以按照自定义标签配置上报标签到云日志服务(LTS),用户可以通过标 签对日志进行过滤筛选。

取值范围

字符串映射对。

code_encrypt_kms_key_id

String

参数解释

用于用户代码加密的kms主密钥ID。

取值范围

不涉及。

表15 FuncVpc

参数

参数类型

描述

domain_id

String

参数解释

租户账号id。

取值范围

不涉及。

namespace

String

参数解释

租户的project id。

取值范围

不涉及。

vpc_name

String

参数解释

虚拟私有云名称。

取值范围

不涉及。

vpc_id

String

参数解释

虚拟私有云唯一标识。

取值范围

不涉及。

subnet_name

String

参数解释

子网名称。

取值范围

不涉及。

subnet_id

String

参数解释

子网编号。

取值范围

不涉及。

cidr

String

参数解释

子网掩码。

取值范围

不涉及。

gateway

String

参数解释

网关。

取值范围

不涉及。

security_groups

Array of strings

参数解释

安全组

取值范围

字符串列表

is_safety

Boolean

参数解释

是否开启安全访问。开启时,需要您自行配置VPCEP网络但可以提供更安全的VPC连接访问并打通内网域名。注意:开启后无法关闭。

取值范围

  • true:开启

  • false:关闭

表16 MountConfig

参数

参数类型

描述

mount_user

MountUser object

参数解释

挂载用户信息。

取值范围

不涉及。

func_mounts

Array of FuncMount objects

参数解释

函数挂载列表。

取值范围

不涉及。

表17 MountUser

参数

参数类型

描述

user_id

String

参数解释

用户ID。

取值范围

-1~65534的非0整数。

user_group_id

String

参数解释

用户组ID。

取值范围

-1~65534的非0整数。

表18 FuncMount

参数

参数类型

描述

mount_type

String

参数解释

挂载类型,func_mounts非空时必选。

取值范围

  • sfs:sfs容量型

  • sfsTrubo:弹性文件服务

  • ecs:ecs服务器

mount_resource

String

参数解释

挂载资源ID(对应云服务ID),func_mounts非空时必选。

取值范围

不涉及。

mount_share_path

String

参数解释

远端挂载路径(例如192.168.0.12:/data),如果mount_type为ecs,必选。

取值范围

ecs服务器开放的共享路径。

local_mount_path

String

参数解释

函数访问路径,func_mounts非空时必选。

取值范围

函数容器中的挂载目录,一般是2层结构。

表19 StrategyConfig

参数

参数类型

描述

concurrency

Integer

参数解释

单函数最大实例数,-1代表该函数实例数无限制

取值范围

  • v1版本:0和-1

  • v2版本:[-1, 1000]

concurrent_num

Integer

参数解释

单实例并发数, v2版本支持。

取值范围

[1, 1000]

表20 Dependency

参数

参数类型

描述

id

String

参数解释

依赖包版本ID。

取值范围

不涉及。

owner

String

参数解释

依赖包属主的domainId。

取值范围

不涉及。

link

String

参数解释

依赖包在OBS上的链接。

取值范围

obs链接地址

runtime

String

参数解释

FunctionGraph函数的运行时,即函数执行环境。

取值范围

  • Java8: Java 8

  • Java11: Java 11

  • Java17: Java 17

  • Java21: Java 21

  • Python2.7: Python 2.7

  • Python3.6: Python 3.6

  • Python3.9: Python 3.9

  • Python3.10: Python 3.10

  • Python3.12: Python 3.12

  • Go1.x: Go 1.x

  • Node.js6.10: Nodejs 6.10

  • Node.js8.10: Nodejs 8.10

  • Node.js10.16: Nodejs 10.16

  • Node.js12.13: Nodejs 12.13

  • Node.js14.18: Nodejs 14.18

  • Node.js16.17: Nodejs 16.17

  • Node.js18.15: Nodejs 18.15

  • Node.js20.15: Nodejs 20.15

  • C#(.NET Core 2.1): C# 2.1

  • C#(.NET Core 3.1): C# 3.1

  • C#(.NET Core 6.0): C# 6.0

  • C#(.NET Core 8.0): C# 8.0

  • Custom: 定制运行时

  • PHP7.3: Php 7.3

  • PHP8.3: Php 8.3

  • Cangjie1.0:仓颉1.0版本

  • Cangjie0.52.3:仓颉0.52.3版本

  • http: HTTP函数

  • Custom Image: 自定义镜像函数

etag

String

参数解释

依赖包的md5值

取值范围

不涉及。

size

Long

参数解释

依赖包大小。

取值范围

不涉及。

name

String

参数解释

依赖包名称。

取值范围

不涉及。

description

String

参数解释

依赖包描述。

取值范围

不涉及。

file_name

String

参数解释

依赖包文件名,如果创建方式为zip时必填。

取值范围

不涉及。

version

Long

参数解释

依赖包版本编号。

取值范围

不涉及。

dep_id

String

参数解释

依赖包ID

取值范围

不涉及。

last_modified

String

参数解释

函数最后一次更新时间。

取值范围

不涉及。

表21 CustomImage

参数

参数类型

描述

enabled

Boolean

参数解释

是否使用镜像。不使用镜像则以下参数不生效。

取值范围:

  • true:使用镜像。

  • false:没有使用镜像。

image

String

参数解释

镜像地址。

取值范围:

不涉及。

command

String

参数解释

启动容器镜像的命令。

取值范围:

不涉及。

args

String

参数解释

启动容器镜像的命令行参数。

取值范围:

不涉及。

working_dir

String

参数解释

镜像容器工作目录。

取值范围:

不涉及。

uid

String

参数解释

镜像容器的用户id。

取值范围:

不涉及。

gid

String

参数解释

镜像容器的用户组id。

取值范围:

不涉及。

is_public

Boolean

参数解释

是否是公共镜像。

取值范围:

不涉及。

表22 DNSConfig

参数

参数类型

描述

dns

Array of strings

参数解释

DNS Server配置。

约束限制

不涉及。

取值范围

用户配置的dns地址列表

默认取值

不涉及。

dns_opts

Array of strings

参数解释

DNS选项配置。

约束限制

不涉及。

取值范围

用户配置的dns选项

默认取值

不涉及。

dns_search

Array of strings

参数解释

DNS搜索域配置。

约束限制

不涉及。

取值范围

用户配置的dns搜索配置

默认取值

不涉及。

状态码: 400

表23 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误信息

状态码: 401

表24 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误信息

状态码: 403

表25 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误信息

状态码: 404

表26 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误信息

状态码: 500

表27 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误信息

请求示例

  • 修改名为fgsTest的Nodejs函数配置信息,将内存大小改为768MB,超时时间设为40s,添加环境变量host,添加磁盘挂载。
    PUT https://{Endpoint}/v2/{project_id}/fgs/functions/{function_urn}/config
    
    {
      "func_name" : "fgsTest",
      "handler" : "index.handler",
      "memory_size" : 768,
      "user_data" : "{\"host\":\"192.168.0.1\"}",
      "runtime" : "Node.js6.10",
      "mount_config" : {
        "mount_user" : {
          "user_id" : -1,
          "user_group_id" : -1
        },
        "func_mounts" : [ {
          "mount_resource" : "268xxx-d3xx-4cxx-98xx-d1dbxxx",
          "local_mount_path" : "/mnt",
          "mount_type" : "sfsTurbo"
        } ]
      },
      "timeout" : 40
    }
  • 修改自定义运行时函数GPU配置,将GPU显存设置为1GB,内存大小设置为4GB。
    PUT https://{Endpoint}/v2/{project_id}/fgs/functions/{function_urn}/config
    
    {
      "func_name" : "test_GPU",
      "handler" : "bootstrap",
      "memory_size" : 4096,
      "runtime" : "Custom",
      "timeout" : 40,
      "gpu_memory" : 1024
    }
  • 修改自定义镜像类型函数的镜像配置。
    {
      "func_name": "test_function",
      "handler": "-",
      "memory_size": 128,
      "runtime": "Custom Image",
      "timeout": 3,
      "xrole": "xxx",
      "custom_image": {
          "enabled": true,
          "image": "swr.xxx.example.com/xxx/xxx:xxx",
          "working_dir": "/"
      }
    }

响应示例

状态码: 200

OK

{
  "func_id" : "0d075978-5a54-4ee1-8e24-ff5bd070xxxx",
  "resource_id" : "0d075978-5a54-4ee1-8e24-ff5bd070xxxx:test",
  "func_urn" : "urn:fss:xxxxxxxx:7aad83af3e8d42e99ac194e8419e2c9b:function:default:test",
  "func_name" : "test",
  "domain_id" : "14ee2e3501124efcbca7998baa24xxxx",
  "namespace" : "46b6f338fc3445b8846c71dfb1fbxxxx",
  "project_name" : "xxxxxx",
  "package" : "default",
  "runtime" : "Node.js6.10",
  "timeout" : 3,
  "handler" : "fssExampleCsharp2.1::fssExampleCsharp21.Program::MyFunc",
  "memory_size" : 128,
  "cpu" : 300,
  "code_type" : "inline",
  "code_filename" : "index.js",
  "code_size" : 272,
  "user_data" : "{\"host\":\"192.168.0.1\"}",
  "mount_config" : {
    "mount_user" : {
      "user_id" : -1,
      "user_group_id" : -1
    },
    "func_mounts" : [ {
      "mount_resource" : "268xxx-d3xx-4cxx-98xx-d1dbxxx",
      "local_mount_path" : "/mnt",
      "mount_type" : "sfsTurbo"
    } ]
  },
  "digest" : "faa825575c45437cddd4e369bea69893bcbe195d478178462ad90984fe72993f3f59d15f41c5373f807f3e05fb9af322c55dabeb16565c386e402413458e6068",
  "version" : "latest",
  "ephemeral_storage" : 512,
  "image_name" : "latest-191025153727@zehht",
  "last_modified" : "2019-10-25 15:37:27",
  "strategy_config" : {
    "concurrency" : 0
  }
}

状态码

状态码

描述

200

OK

400

Bad Request 请求错误。

401

Unauthorized 鉴权失败。

403

Forbidden 没有操作权限。

404

Not Found 找不到资源。

500

Internal Server Error 服务内部错误。

错误码

请参见错误码