Modifying the Code of a Function
Function
This API is used to modify the code of a function.
URI
PUT /v2/{project_id}/fgs/functions/{function_urn}/code
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
project_id |
Yes |
String |
Project ID. For details, see Obtaining a Project ID. |
function_urn |
Yes |
String |
Function URN. For details, see the function model description. |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
X-Auth-Token |
Yes |
String |
User token. It can be obtained by calling the IAM API used to obtain a user token. The value of X-Subject-Token in the response header is the user token. |
Content-Type |
Yes |
String |
Message body type (format). |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
code_type |
Yes |
String |
Function code type. Options: inline: inline code zip: ZIP file obs: function code stored in an OBS bucket jar: JAR file, mainly for Java functions. For details about how to modify a custom image-based function, see Modify the configuration of the custom image-based function. Enumeration values:
|
code_url |
No |
String |
If code_type is set to obs, enter the OBS URL of the function code package. If code_type is not set to obs, leave this parameter blank. |
code_filename |
No |
String |
Name of a function file. This parameter is mandatory only when code_type is set to jar or zip. |
func_code |
Yes |
FuncCode object |
Response body of the FuncCode struct. |
depend_version_list |
No |
Array of strings |
Dependency version IDs. |
Response Parameters
Status code: 200
Parameter |
Type |
Description |
---|---|---|
func_urn |
String |
Function URN. |
func_name |
String |
Function name. |
domain_id |
String |
Domain ID. |
runtime |
String |
Environment for executing a function. Options: Python2.7 Python 3.6 Python 3.9 Python 3.10 Go 1.x Java 8 Java 11 Node.js 6.10 Node.js 8.10 Node.js 10.16 Node.js 12.13 Node.js 14.18 Node.js 16.17 Node.js 18.15 C# (.NET Core 2.1) C# (.NET Core 3.1) Custom PHP 7.3 HTTP Custom image-based functions Cangjie1.0 Enumeration values:
|
code_type |
String |
Function code type. Options: inline: inline code zip: ZIP file obs: function code stored in an OBS bucket jar: JAR file, mainly for Java functions. For details about how to modify a custom image-based function, see Modify the configuration of the custom image-based function. Enumeration values:
|
code_url |
String |
If code_type is set to obs, enter the OBS URL of the function code package. If code_type is not set to obs, leave this parameter blank. |
code_filename |
String |
Name of a function file. This parameter is mandatory only when code_type is set to jar or zip. |
code_size |
Long |
Code size in bytes. |
digest |
String |
SHA512 hash value of function code, which is used to determine whether the function has changed. |
last_modified |
String |
Time when the function was last updated. |
func_code |
FuncCode object |
Response body of the FuncCode struct. |
depend_list |
Array of strings |
Dependency ID list. |
depend_version_list |
Array of strings |
Dependency version IDs. |
strategy_config |
StrategyConfig object |
Function policy configuration. |
dependencies |
Array of Dependency objects |
Dependency packages. |
Parameter |
Type |
Description |
---|---|---|
file |
String |
Function code, which must be encoded using Base64. If this parameter is left blank, the default code is used. |
link |
String |
Function code URL. |
Parameter |
Type |
Description |
---|---|---|
concurrency |
Integer |
Maximum number of instances for a single function. For v1, the value can be 0 or –1; for v2, it ranges from –1 to 1000.
|
concurrent_num |
Integer |
Number of concurrent requests per instance. This parameter is supported only by v2. The value ranges from 1 to 1,000. |
Parameter |
Type |
Description |
---|---|---|
id |
String |
Dependency version ID. |
owner |
String |
Domain ID of the dependency owner. |
link |
String |
URL of the dependency on OBS. |
runtime |
String |
Environment for executing a function. Options: Python2.7 Python 3.6 Python 3.9 Python 3.10 Go 1.x Java 8 Java 11 Node.js 6.10 Node.js 8.10 Node.js 10.16 Node.js 12.13 Node.js 14.18 Node.js 16.17 Node.js 18.15 C# (.NET Core 2.1) C# (.NET Core 3.1) Custom PHP 7.3 HTTP Custom image-based functions Cangjie1.0 Enumeration values:
|
etag |
String |
MD5 value of a dependency. |
size |
Long |
Dependency size. |
name |
String |
Dependence name. |
description |
String |
Dependency description. |
file_name |
String |
File name of a dependency package (ZIP). |
version |
Long |
Dependency version ID. |
dep_id |
String |
Dependency ID. |
last_modified |
Integer |
Time when the function was last updated. |
Status code: 400
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
Status code: 401
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
Status code: 403
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
Status code: 404
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
Status code: 500
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code. |
error_msg |
String |
Error message. |
Example Requests
- Modify the code of a specified function in inline mode.
PUT https://{Endpoint}/v2/{project_id}/fgs/functions/{function_urn}/code { "code_filename" : "index.zip", "code_type" : "inline", "func_code" : { "file" : "UEsDBAoAAAAIAPQ1M1gNImPLrAAAAAEBAAAIAAAAaW5kZXgucHlNjtEOgjAMRd/5igVfxDAlxhjDo0S/wB+YrMgMdMvWGYnh390wEfrU3nvb0xXjG85qLRU+Sk8NP0UhUb3RltjTaUwkNKwVKDuwbA0vQMrDAhK8KSsTFsoCeYvsMw2xUkeCvKu0hLRk+6LIZ0u5s3BwPFwwUEEG/yo6B4vEXcshyBG+lb437kfNFpEWhATrQmqGTkYVH0Pit8FEdCqM6VQtSGncxYPpPz5O3fgFUEsBAh4DCgAAAAgA9DUzWA0iY8usAAAAAQEAAAgAAAAAAAAAAAAAAPMCAAAAAGluZGV4LnB5UEsFBgAAAAABAAEANgAAANIAAAAAAA==" } }
- Modify the code of a specified function by uploading a ZIP package.
PUT https://{Endpoint}/v2/{project_id}/fgs/functions/{function_urn}/code { "code_filename" : "index.zip", "code_type" : "zip", "func_code" : { "file" : "UEsDBAoAAAAIAPQ1M1gNImPLrAAAAAEBAAAIAAAAaW5kZXgucHlNjtEOgjAMRd/5igVfxDAlxhjDo0S/wB+YrMgMdMvWGYnh390wEfrU3nvb0xXjG85qLRU+Sk8NP0UhUb3RltjTaUwkNKwVKDuwbA0vQMrDAhK8KSsTFsoCeYvsMw2xUkeCvKu0hLRk+6LIZ0u5s3BwPFwwUEEG/yo6B4vEXcshyBG+lb437kfNFpEWhATrQmqGTkYVH0Pit8FEdCqM6VQtSGncxYPpPz5O3fgFUEsBAh4DCgAAAAgA9DUzWA0iY8usAAAAAQEAAAgAAAAAAAAAAAAAAPMCAAAAAGluZGV4LnB5UEsFBgAAAAABAAEANgAAANIAAAAAAA==" } }
Example Responses
Status code: 200
OK
{ "func_urn" : "urn:fss:xxxxxxxxxxxx:7aad83af3e8d42e99ac194e8419e2c9b:function:default:test:latest", "func_name" : "test", "domain_id" : "14ee2e3501124efcbca7998baa24xxxx", "runtime" : "Node.js6.10", "code_type" : "inline", "code_filename" : "index.js", "code_size" : 245, "digest" : "39d51ae334ffb239037e194159f4cc9cec31086719aa73db7d0a608343121a290f7115693e008bd01cb12b99a803856e83aa96173b26c528c41cfed18267e08f", "last_modified" : "2019-10-31 11:37:58", "func_code" : { "file" : "aW1wb3J0IGpzb24KZGVmIGhhbmRsZXIoZXZlbnQsIGNvbnRleHQpOgogICAgb3V0cHV0ID0gJ0hlbGxvIE1zZyBmb3IgbW9kaWZ5OiAnICsganNvbi5kdW1wcyhldmVudCkKICAgIGFrID0gY29udGV4dC5nZXRBY2Nlc3NLZXkoKQogICAgc2sgPSBjb250ZXh0LmdldFNlY3JldEtleSgpCiAgICB0b2tlbiA9IGNvbnRleHQuZ2V0VG9rZW4oKQogICAgcHJpbnQgJ2FrOicgKyBhawogICAgcHJpbnQgJ3NrOicgKyBzawogICAgcHJpbnQgJ3Rva2VuOicgKyB0b2tlbgogICAgcmV0dXJuIG91dHB1dAo+C0NLTqLwKImNCTgBMSn5SC+UbkysuKp1Bj7JQqxds+5p7La/ew4RBTp8IusZ/k2qmqvCDdoBY0ywYCl+RgctnLbTS6hLLj9sNyKoVXiXb1BLAQIeAwoAAAAIAAhYOU8ssPQsgwAAALYAAAAIAAAAAAAAAAAAAADzAgAAAABpbmRleC5weVBLBQYAAAAAAQABADYAAACpAAAAAAA=", "link" : "" }, "strategy_config" : { "concurrency" : -1 } }
Status code: 404
Not found.
{ "error_code" : "FSS.1052", "error_msg" : "Not found the function version" }
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.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot