Help Center/ FunctionGraph/ API Reference/ APIs/ Function Lifecycle Management/ Modifying the Metadata of a Function
Updated on 2026-04-17 GMT+08:00

Modifying the Metadata of a Function

Function

This API is used to modify the metadata of a function.

URI

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

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Parameter description:

Project ID. For details, see Obtaining a Project ID.

Constraints:

None

Value range:

32 characters, including letters and digits.

Default value:

None

function_urn

Yes

String

Parameter description:

URN of the function. For details, see Function Model.

Constraints:

None

Value range:

Only letters, digits, underscores (_), hyphens (-), and colons (:) are allowed.

Default value:

None

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

Parameter description:

User token.

The token can be obtained by calling the IAM API. The value of X-Subject-Token in the response header is the user token.

Constraints:

None

Value range:

None

Default value:

None

Content-Type

Yes

String

Parameter description:

Specifies the type (or format) of the message body.

Constraints:

None

Value range:

Only application/json is supported.

Default value:

application/json

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

func_name

Yes

String

Parameter description:

Function name.

Constraints:

None

Value range:

The value can contain 1 to 60 characters, including letters, digits, underscores (_), and hyphens (-). It must start with a letter and end with a letter or digit.

Default value:

None

runtime

Yes

String

Parameter description:

Runtime of a FunctionGraph function, that is, the function execution environment.

Constraints:

None

Value range:

  • 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: custom runtime

  • PHP7.3: Php 7.3

  • PHP8.3: Php 8.3

  • Cangjie1.0

  • Cangjie0.52.3

  • HTTP

Custom image-based functions

Default Value:

None

timeout

Yes

Integer

Parameter description:

Maximum duration the function can be executed.

Constraints:

None

Value range:

3 to 259200 seconds

Default Value:

3 seconds

handler

Yes

String

Parameter description:

Handler of the function.

It is in the format of "xx.xx" and must contain a period (.). The handler of a custom image function is -.

For example, for Node.js function myfunction.handler, the file name is myfunction.js, and the handler function is handler. Can contain a maximum of 128 characters.

Constraints:

None

Value range:

3 to 128 characters

Default Value:

None

memory_size

Yes

Integer

Parameter description:

Memory (MB) consumed by the function.

Constraints:

None

Value range:

  • 128

  • 256

  • 512

  • 768

  • 1024

  • 1280

  • 1536

  • 1792

  • 2048

  • 2560

  • 3072

  • 3584

  • 4096

Default Value:

None

gpu_memory

No

Integer

Parameter description:

GPU memory. This parameter is available only for functions created with a custom runtime or image. The unit is MB.

Constraints:

None

Value range:

  • 1024

  • 2048

  • 3072

  • 4096

  • 5120

  • 6144

  • 7168

  • 8192

  • 9216

  • 10240

  • 11264

  • 12288

  • 13312

  • 14336

  • 15360

  • 16384

Default Value:

None

user_data

No

String

Parameter description:

Name/Value information defined for the function. These are parameters used in the function. For example, if the function needs to access a host, you can set the custom parameter Host={host_ip}. The total length cannot exceed 4 KB.

Constraints:

None

Value range:

Message structure, which is a JSON string.

Default Value:

None

encrypted_user_data

No

String

Parameter description:

Name/value information to be encrypted.

Constraints:

None

Value range:

Message structure, which is a JSON string.

Default Value:

None

xrole

No

String

Parameter description:

Configuration agency. This field is available only when IAM is supported and an agency is created on the IAM console.

Constraints:

This parameter is mandatory if the function needs to access other cloud services. After specifying a function configuration agency, you can use the context method in the function handler to obtain a token, an AK, and an SK for accessing other cloud services. No agency is required if FunctionGraph does not access any cloud services.

Value range:

None

Default Value:

None

app_xrole

No

String

Parameter description:

Execution agency. You can optimize performance by configuring a separate agency for function execution, otherwise, the same agency is used for both execution and configuration.

Constraints:

None

Value range:

None

Default Value:

None

description

No

String

Parameter description:

Description of the function.

Constraints:

None

Value range:

None

Default Value:

None

func_vpc

No

FuncVpc object

Parameter description:

VPC configuration.

Value range:

None

peering_cidr

No

String

Parameter description:

VPC CIDR Block Enter the VPC CIDR block used in the code to check whether it conflicts with FunctionGraph's VPC CIDR block. The blocks are separated by semicolons (;) and the number of blocks cannot exceed 5.

Constraints:

The network configuration function must be enabled for the function.

Value range:

Valid IPv4 CIDR blocks with masks

Default Value:

None

mount_config

No

MountConfig object

Parameter description:

Mounting configuration.

Value range:

None

strategy_config

No

StrategyConfig object

Parameter description:

Function policy configuration, including the maximum number of instances of a single function and the maximum number of concurrent requests per instance.

Value range:

None

status

No

Integer

Parameter description:

Function status.

Constraints:

None

Value range:

0: enabled

1: disabled

Default Value:

0.

custom_image

No

CustomImage object

Parameter description:

Custom image configuration.

Value range:

None

extend_config

No

String

Parameter description:

Function extension configuration. Invalid fields.

Constraints:

None

Value range:

None

Default Value:

None

initializer_handler

No

String

Parameter description:

Initializer of the function in the format of "xx.xx". It must contain a period (.). ".

For example, for the Node.js function myfunction.initializer, the file name is myfunction.js, and the initialization input is

The interface function name is initializer.

Constraints:

This parameter is mandatory when the initialization function is configured.

Value range:

None

Default Value:

None

initializer_timeout

No

Integer

Parameter description:

Initialization timeout interval. The timeout function will be forcibly stopped.

Constraints:

This parameter is mandatory when the initialization function is configured.

Value range:

[1, 300]

Default Value:

None

pre_stop_handler

No

String

Parameter description:

The pre-stop handler of a function. The value must contain a period (.) in the format of xx.xx. ".

For example, for Node.js function myfunction.pre_stop_handler, the file name is myfunction.js, and the initialization function is pre_stop_handler.

Constraints:

None

Value range:

None

Default Value:

None

pre_stop_timeout

No

Integer

Parameter description:

Initialization timeout interval. The timeout function will be forcibly stopped.

Constraints:

None

Value range:

1 to 90 seconds.

Default Value:

None

ephemeral_storage

No

Integer

Parameter description:

Ephemeral storage. By default, the /tmp directory of each function is 512 MB. You can increase the size to 10,240 MB (10 GB) if necessary.

Constraints:

None

Value range:

  • 512: 512 MB.

  • 10240: 10 GB.

Default Value:

512 MB

enterprise_project_id

No

String

Parameter description:

Enterprise project ID.

Constraints:

This parameter is mandatory when an enterprise user creates a function.

Value range:

None

Default Value:

None

log_config

No

FuncLogConfig object

Parameter description:

Function log configuration.

Value range:

None

network_controller

No

NetworkControlConfig object

Parameter description:

Network control configuration of a function, which controls whether the function can be accessed only by a specified VPC.

Value range:

None

is_stateful_function

No

Boolean

Parameter description:

Whether stateful functions are supported. If they are supported, set this parameter to true.

Constraints:

The v2 version is supported.

Value range:

  • true: Supported.

  • false: Not supported.

Default Value:

false.

enable_dynamic_memory

No

Boolean

Parameter description:

Whether to enable dynamic memory allocation.

Constraints:

None

Value range:

  • true: enabled.

false (disabled)

Default Value:

false.

enable_auth_in_header

No

Boolean

Parameter description:

Whether to allow authentication information in the request header.

Constraints:

Only v2 is supported, and an agency must be configured for the function.

Value range:

  • true: The request header contains authentication information.

  • false: The request header does not contain authentication information.

Default Value:

false.

domain_names

No

String

Parameter description:

Private domain name.

Constraints:

VPCs must be configured for functions.

Value range:

Valid domain names

Default Value:

None

restore_hook_handler

No

String

Parameter description:

Restore hook handler for snapshot-based cold start.

Constraints:

Java only

Value range:

Must contain ". Example: com.xxx.demo.Test.restoreHook

Default Value:

None

restore_hook_timeout

No

Integer

Parameter description:

Timeout interval of the restore hook for snapshot-based cold start.

Constraints:

restore_hook_handler must be configured.

Value range:

[1, 300]

Default Value:

None

heartbeat_handler

No

String

Parameter description:

Entry of the heartbeat function.

Constraints:

Must contain Only Java runtime is supported.

The heartbeat function entry must be in the same file as your function handler. This parameter is mandatory when the heartbeat function is enabled.

Value range:

None

Default Value:

None

enable_class_isolation

No

Boolean

Parameter description:

Class isolation switch.

Constraints:

Only Java runtime is supported. Enable to dump logs to Kafka and improve class loading efficiency. However, this may cause compatibility issues.

Value range:

  • true: Class isolation is enabled.

  • false: Class isolation is disabled.

Default Value:

false.

dns_config

No

DNSConfig object

Parameter description:

DNS configuration of a function.

lts_custom_tag

No

Map<String,String>

Parameter description:

Custom log tag. You can use these tags to filter function logs in LTS.

Constraints:

You need to enable the log function.

Value range:

String mapping pairs

Default Value:

None

code_encrypt_kms_key_id

No

String

Parameter description:

ID of the KMS master key used to encrypt user code.

Constraints:

None

Value range:

None

Default value:

None

Table 4 FuncVpc

Parameter

Mandatory

Type

Description

domain_id

No

String

Parameter description:

Tenant account ID.

Value range:

None

namespace

No

String

Parameter description:

Project ID.

Value range:

None

vpc_name

No

String

Definition:

VPC name

Value range:

None

vpc_id

Yes

String

Parameter description:

VPC ID.

Value range:

None

subnet_name

No

String

Parameter description:

Subnet name.

Value range:

None

subnet_id

Yes

String

Parameter description:

Subnet ID.

Value range:

None

cidr

No

String

Parameter description:

Subnet mask.

Value range:

None

gateway

No

String

Parameter description:

Gateway.

Value range:

None

security_groups

No

Array of strings

Parameter description:

Security Group

Value range:

Character string list

is_safety

No

Boolean

Definition

Whether to enable secure access. When secure access is enabled, you need to configure the VPCEP network to establish a secure VPC connection to private domain names. Once enabled, this feature cannot be disabled.

Range

  • true: Yes

  • false: No

Table 5 MountConfig

Parameter

Mandatory

Type

Description

mount_user

Yes

MountUser object

Parameter description:

User information.

Value range:

None

func_mounts

Yes

Array of FuncMount objects

Parameter description:

Mounted resources.

Value range:

None

Table 6 MountUser

Parameter

Mandatory

Type

Description

user_id

Yes

String

Parameter description:

User ID.

Value range:

An integer ranging from -1 to 65534

user_group_id

Yes

String

Parameter description:

Group ID

Value range:

An integer ranging from -1 to 65534

Table 7 FuncMount

Parameter

Mandatory

Type

Description

mount_type

Yes

String

Parameter description:

Specifies the mount type. This parameter is mandatory when func_mounts is not empty.

Value range:

sfs: SFS Capacity-Oriented

  • SFS Turbo

  • ECS

mount_resource

Yes

String

Parameter description:

ID of the mounted resource (cloud service ID). This parameter is mandatory when func_mounts is not empty.

Value range:

None

mount_share_path

No

String

Parameter description:

Remote mount path. For example, 192.168.0.12:/data. This parameter is mandatory if mount_type is set to ecs.

Value range:

Shared path opened by the ECS

local_mount_path

Yes

String

Parameter description:

Function access path. This parameter is mandatory when func_mounts is not empty.

Value range:

Mount directory in the function container. The directory is generally a two-layer structure.

Table 8 StrategyConfig

Parameter

Mandatory

Type

Description

concurrency

Yes

Integer

Parameter description:

Specifies the maximum number of instances for a function. The value -1 indicates that the number of instances is not limited.

Value range:

v1: 0 and -1

v2: [–1, 1000]

concurrent_num

Yes

Integer

Parameter description:

Specifies the number of concurrent requests per instance. This parameter is supported in v2.

Value range:

[1, 1000]

Table 9 CustomImage

Parameter

Mandatory

Type

Description

enabled

No

Boolean

Parameter description:

Whether to use an image. If no image is used, the following parameters do not take effect.

Value range:

true: An image is used.

false: No image is used.

image

No

String

Parameter description:

Image address.

Value range:

None

command

No

String

Parameter description:

Command for starting a container image.

Value range:

None

args

No

String

Parameter description:

Command line parameter for starting a container image.

Value range:

None

working_dir

No

String

Parameter description:

Working directory of an image container.

Value range:

None

uid

No

String

Parameter description:

User ID of an image container.

Value range:

None

gid

No

String

Parameter description:

User group ID of an image container.

Value range:

None

is_public

No

Boolean

Parameter description:

Whether the image is a public image.

Value range:

None

Table 10 FuncLogConfig

Parameter

Mandatory

Type

Description

group_name

No

String

Parameter description:

Name of the log group bound to the function.

Value range:

None

group_id

No

String

Parameter description:

ID of the log group bound to the function.

Value range:

None

stream_name

No

String

Parameter description:

Name of the log stream bound to the function.

Value range:

None

stream_id

No

String

Parameter description:

ID of the log stream bound to the function.

Value range:

None

Table 11 NetworkControlConfig

Parameter

Mandatory

Type

Description

disable_public_network

No

Boolean

Parameter description:

Disable public access.

Value range:

true: public network access is disabled.

false: public network access is allowed.

trigger_access_vpcs

No

Array of VpcConfig objects

Parameter description:

VPC access restriction.

Value range:

None

Table 12 VpcConfig

Parameter

Mandatory

Type

Description

vpc_name

No

String

Parameter description:

VPC name.

Value range:

None

vpc_id

No

String

Parameter description:

VPC ID.

Value range:

None

Table 13 DNSConfig

Parameter

Mandatory

Type

Description

dns

No

Array of strings

Parameter description:

Specifies the DNS server configuration.

Constraints:

None

Value range:

List of DNS addresses configured by the user

Default Value:

None

dns_opts

No

Array of strings

Parameter description:

DNS options.

Constraints:

None

Value range:

DNS options configured by users

Default Value:

None

dns_search

No

Array of strings

Parameter description:

DNS search domain.

Constraints:

None

Value range:

DNS search domain configured by users

Default Value:

None

Response Parameters

Status code: 200

Table 14 Response body parameters

Parameter

Type

Description

func_id

String

Parameter description:

Function ID, which uniquely identifies a function.

Value range:

None

resource_id

String

Parameter description:

Unique ID of a function resource.

Value range:

None

func_urn

String

Parameter description:

Function URN.

Value range:

None

func_name

String

Parameter description:

Function name.

Value range:

None

domain_id

String

Parameter description:

Domain name ID.

Value range:

None

namespace

String

Parameter description:

Project ID.

Value range:

None

project_name

String

Parameter description:

Project name.

Value range:

None

package

String

Parameter description:

Group to which the function belongs. This field is defined to group functions.

Value range:

None

runtime

String

Parameter description:

Runtime of a FunctionGraph function, that is, the function execution environment.

Value range:

  • 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

  • PHP7.3: Php 7.3

  • PHP8.3: Php 8.3

  • Cangjie1.0

  • Cangjie0.52.3

  • HTTP

Custom

Custom image-based functions

timeout

Integer

Parameter description:

Maximum duration the function can be executed.

Value range:

3 to 259200 seconds

handler

String

Parameter description:

Handler of the function.

It is in the format of "xx.xx" and must contain a period (.). For a custom image function, the handler is -.

For example, for Node.js function myfunction.handler, the file name is myfunction.js, and the handler function is handler. Can contain a maximum of 128 characters.

Value range:

3 to 128 characters

memory_size

Integer

Parameter description:

Memory (MB) consumed by the function.

Value range:

  • 128

  • 256

  • 512

  • 768

  • 1024

  • 1280

  • 1536

  • 1792

  • 2048

  • 2560

  • 3072

  • 3584

  • 4096

gpu_memory

Integer

Parameter description:

GPU memory. This parameter is available only for functions created with a custom runtime or image. The unit is MB.

Constraints:

None

Value range:

  • 1024

  • 2048

  • 3072

  • 4096

  • 5120

  • 6144

  • 7168

  • 8192

  • 9216

  • 10240

  • 11264

  • 12288

  • 13312

  • 14336

  • 15360

  • 16384

Default Value:

None .

cpu

Integer

Parameter description:

CPU resources of a function.

Unit: millicore (1 core = 1000 millicores).

The value of this field is proportional to that of MemorySize. By default, 100 CPU millicores are required for 128 MB memory.

Value range:

None

code_type

String

Parameter description:

Function code type. Options:

Value range:

The options are as follows:

inline: inline code

zip: ZIP file

obs: function code stored in an OBS bucket

jar: JAR file, mainly for Java functions

Custom-Image-Swr: The function code comes from the SWR custom image.

code_url

String

Parameter description:

If CodeType is set to obs, enter the OBS URL of the function code package. If CodeType is not set to obs, leave this parameter blank.

Value range:

OBS path

code_filename

String

Parameter description:

Name of a function file. This parameter is mandatory only when CodeType is set to jar or zip.

Value range:

None

code_size

Long

Parameter description:

Code size in bytes.

Value range:

None

user_data

String

Parameter description:

Name/Value information defined for the function. These are parameters used in the function. For example, if the function needs to access a host, you can set a custom parameter Host={host_ip}. The total length cannot exceed 4 KB.

Value range:

Message structure, which is a JSON string.

encrypted_user_data

String

Parameter description:

Name/value information to be encrypted.

Value range:

Message structure, which is a JSON string.

digest

String

Parameter description:

SHA512 hash value of function code, which is used to determine whether the function is changed.

Value range:

None

version

String

Parameter description:

Function version, which is automatically generated by the system. The version name is in the format of "vYYYYMMDD-HHMMSS" (v+year/month/day-hour/minute/second).

Value range:

None

image_name

String

Parameter description:

Internal identifier of a function version.

Value range:

None

xrole

String

Parameter description:

Configuration agency. You need to create an agency on the IAM console. This field is mandatory when a function needs to access other services. After specifying a function configuration agency, you can use the context method in the function handler to obtain a token, an AK, and an SK for accessing other cloud services. No agency is required if FunctionGraph does not access any cloud services.

Value range:

None

app_xrole

String

Parameter description:

Execution agency. You can optimize performance by configuring a separate agency for function execution, otherwise, the same agency is used for both execution and configuration.

Value range:

None

description

String

Parameter description:

Description of the function.

Value range:

None

last_modified

String

Parameter description:

Time when the function was last updated.

Value range:

UTC time.

ephemeral_storage

Integer

Parameter description:

Ephemeral storage. By default, the /tmp directory of each function is 512 MB. You can increase the size to 10,240 MB (10 GB) if necessary.

Value range:

  • 512: 512 MB.

  • 10240: 10 GB.

func_vpc

FuncVpc object

Parameter description:

VPC configuration.

Value range:

None

peering_cidr

String

Parameter description:

VPC CIDR Block Enter the VPC CIDR block used in the code to check whether it conflicts with FunctionGraph's VPC CIDR block.

Value range:

IPv4 CIDR blocks separated by commas (,). A maximum of five CIDR blocks can be configured at a time.

mount_config

MountConfig object

Parameter description:

Mounting configuration.

Value range:

None

strategy_config

StrategyConfig object

Parameter description:

Function policy configuration, including the maximum number of instances of a single function and the maximum number of concurrent requests per instance.

Value range:

None

status

Integer

Parameter description:

Function status.

Value range:

0: enabled

1: disabled

dependencies

Array of Dependency objects

Parameter description:

Dependency packages.

Value range:

None

initializer_handler

String

Parameter description:

Initializer of the function in the format of "xx.xx". It must contain a period (.). ". This parameter is mandatory when the initialization function is configured.

For example, for a Node .js function myfunction.initializer, the function file name is myfunction.js, and the initialization entry is myfunction.

The function name is initializer.

Value range:

None

initializer_timeout

Integer

Parameter description:

Timeout interval of initialization. If the timeout interval is reached, the function will be forcibly stopped. This parameter is mandatory when the initialization function is configured.

Value range:

[1, 300]

pre_stop_handler

String

The pre-stop handler of a function. The value must contain a period (.) in the format of xx.xx. For example, for Node.js function myfunction.pre_stop_handler, the file name is myfunction.js, and the initialization function is pre_stop_handler.

pre_stop_timeout

Integer

Parameter description:

Timeout interval of initialization. If the timeout interval is reached, the function will be forcibly stopped.

Value range:

1 to 90 seconds

enterprise_project_id

String

Parameter description:

Enterprise project ID. This parameter is mandatory if you create a function as an enterprise user.

Value range:

None

long_time

Boolean

Parameter description:

Whether to allow a long timeout.

Value range:

true: allowed

false: not allowed

log_group_id

String

Parameter description:

Log group ID.

Value range:

None

log_stream_id

String

Parameter description:

Log stream ID.

Value range:

None

type

String

Parameter description:

Function version.

Value range:

v2: official version

v1: discarded version

enable_cloud_debug

String

enable_cloud_debug: Whether to enable cloud debugging to adapt to the CloudDebug scenario. (discarded)

enable_dynamic_memory

Boolean

Parameter description:

Whether dynamic memory can be configured. This parameter is supported by v2.

Value range:

  • true: supported

  • false: disabled.

is_stateful_function

Boolean

Parameter description:

Whether stateful functions are supported. This parameter is supported in FunctionGraph v2.

Value range:

  • true: supported

  • false: disabled.

domain_names

String

Parameter description:

Private domain name configured for resolution.

Value range:

Valid domain name list

enable_auth_in_header

Boolean

Parameter description:

Whether authentication information can be added to the request header. This parameter is supported only by custom image functions.

Value range:

  • true: enabled.

false: not allowed

custom_image

CustomImage object

Parameter description:

Custom image configuration.

Value range:

None

is_return_stream

Boolean

Parameter description:

is_return_stream: Whether to return stream data. (discarded)

Value range:

None

dns_config

DNSConfig object

Parameter description:

DNS configuration of a function.

lts_custom_tag

Map<String,String>

Definition

Custom log tag. You can use these tags to filter function logs in LTS.

Value range:

String mapping pair

code_encrypt_kms_key_id

String

Parameter description:

ID of the KMS master key used to encrypt user code.

Value range:

None

Table 15 FuncVpc

Parameter

Type

Description

domain_id

String

Parameter description:

Tenant account ID.

Value range:

None

namespace

String

Parameter description:

Project ID.

Value range:

None

vpc_name

String

Definition:

VPC name

Value range:

None

vpc_id

String

Parameter description:

VPC ID.

Value range:

None

subnet_name

String

Parameter description:

Subnet name.

Value range:

None

subnet_id

String

Parameter description:

Subnet ID.

Value range:

None

cidr

String

Parameter description:

Subnet mask.

Value range:

None

gateway

String

Parameter description:

Gateway.

Value range:

None

security_groups

Array of strings

Parameter description:

Security Group

Value range:

Character string list

is_safety

Boolean

Definition

Whether to enable secure access. When secure access is enabled, you need to configure the VPCEP network to establish a secure VPC connection to private domain names. Once enabled, this feature cannot be disabled.

Range

  • true: Yes

  • false: No

Table 16 MountConfig

Parameter

Type

Description

mount_user

MountUser object

Parameter description:

User information.

Value range:

None

func_mounts

Array of FuncMount objects

Parameter description:

Mounted resources.

Value range:

None

Table 17 MountUser

Parameter

Type

Description

user_id

String

Parameter description:

User ID.

Value range:

An integer ranging from -1 to 65534

user_group_id

String

Parameter description:

Group ID

Value range:

An integer ranging from -1 to 65534

Table 18 FuncMount

Parameter

Type

Description

mount_type

String

Parameter description:

Specifies the mount type. This parameter is mandatory when func_mounts is not empty.

Value range:

sfs: SFS Capacity-Oriented

  • SFS Turbo

  • ECS

mount_resource

String

Parameter description:

ID of the mounted resource (cloud service ID). This parameter is mandatory when func_mounts is not empty.

Value range:

None

mount_share_path

String

Parameter description:

Remote mount path. For example, 192.168.0.12:/data. This parameter is mandatory if mount_type is set to ecs.

Value range:

Shared path opened by the ECS

local_mount_path

String

Parameter description:

Function access path. This parameter is mandatory when func_mounts is not empty.

Value range:

Mount directory in the function container. The directory is generally a two-layer structure.

Table 19 StrategyConfig

Parameter

Type

Description

concurrency

Integer

Parameter description:

Specifies the maximum number of instances for a function. The value -1 indicates that the number of instances is not limited.

Value range:

v1: 0 and -1

v2: [–1, 1000]

concurrent_num

Integer

Parameter description:

Specifies the number of concurrent requests per instance. This parameter is supported in v2.

Value range:

[1, 1000]

Table 20 Dependency

Parameter

Type

Description

id

String

Parameter description:

Dependency version ID.

Value range:

None

owner

String

Parameter description:

Domain ID of the dependency owner.

Value range:

None

link

String

Parameter description:

URL of the dependency on OBS.

Value range:

OBS link

runtime

String

Parameter description:

Runtime of a function.

Value range:

  • 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

  • PHP7.3: Php 7.3

  • PHP8.3: Php 8.3

  • Cangjie1.0

  • Cangjie0.52.3

  • HTTP

Custom

Custom image-based functions

etag

String

Parameter description:

MD5 value of a dependency.

Value range:

None

size

Long

Parameter description:

Dependency size.

Value range:

None

name

String

Parameter description:

Name of a dependency package.

Value range:

None

description

String

Parameter description:

Dependency description.

Value range:

None

file_name

String

Parameter description:

File name of a dependency package (ZIP).

Value range:

None

version

Long

Parameter description:

Dependency version ID.

Value range:

None

dep_id

String

Parameter description:

Dependency ID.

Value range:

None

last_modified

String

Parameter description:

Time when the function was last updated.

Value range:

None

Table 21 CustomImage

Parameter

Type

Description

enabled

Boolean

Parameter description:

Whether to use an image. If no image is used, the following parameters do not take effect.

Value range:

true: An image is used.

false: No image is used.

image

String

Parameter description:

Image address.

Value range:

None

command

String

Parameter description:

Command for starting a container image.

Value range:

None

args

String

Parameter description:

Command line parameter for starting a container image.

Value range:

None

working_dir

String

Parameter description:

Working directory of an image container.

Value range:

None

uid

String

Parameter description:

User ID of an image container.

Value range:

None

gid

String

Parameter description:

User group ID of an image container.

Value range:

None

is_public

Boolean

Parameter description:

Whether the image is a public image.

Value range:

None

Status code: 400

Table 22 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

Status code: 401

Table 23 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

Status code: 403

Table 24 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

Status code: 404

Table 25 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

Status code: 500

Table 26 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

Example Requests

  • Modify the configuration of Node.js function fgsTest to change the memory to 768 MB and timeout to 40s. Add environment variable host and mount a disk.
    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
    }
  • Modify the GPU configuration of a custom runtime function to change the GPU memory to 1 GB and memory size to 4 GB.
    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
    }
  • Modify the configuration of the custom image-based function.
    {
      "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": "/"
      }
    }

Example Responses

Status code: 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
  }
}

Status Codes

Status Code

Description

200

OK

400

Bad request.

401

Unauthorized.

403

Forbidden.

404

Not found.

500

Internal server error.

Error Codes

See Error Codes.