Configuring Asynchronous Execution Notification
Function
This API is used to configure asynchronous execution notification for a function.
URI
PUT /v2/{project_id}/fgs/functions/{function_urn}/async-invoke-config
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 |
---|---|---|---|
max_async_event_age_in_seconds |
No |
Integer |
Maximum validity period of a message. Value range: 1s to 86,400s. Default value: 3600s. Minimum: 1 Maximum: 86400 |
max_async_retry_attempts |
No |
Integer |
Maximum number of retry attempts to be made if asynchronous invocation fails. Default value: 1. Value range: 0–3. Minimum: 0 Maximum: 3 |
destination_config |
No |
FuncAsyncDestinationConfig object |
Asynchronous invocation target. |
enable_async_status_log |
No |
Boolean |
Whether to enable asynchronous invocation status persistence. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
on_success |
No |
FuncDestinationConfig object |
Target to be invoked when a function is successfully executed. |
on_failure |
No |
FuncDestinationConfig object |
Target to be invoked when a function fails to be executed due to a system error or an internal error. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
destination |
No |
String |
Object type.
Enumeration values:
|
param |
No |
String |
Parameters (in JSON format) corresponding to the target service.
|
Response Parameters
Status code: 200
Parameter |
Type |
Description |
---|---|---|
func_urn |
String |
Function URN. Minimum: 1 Maximum: 269 |
max_async_event_age_in_seconds |
Integer |
Maximum validity period of a message. Value range: 60–86,400. Unit: second. |
max_async_retry_attempts |
Integer |
Maximum number of retry attempts to be made if asynchronous invocation fails. Default value: 3. Value range: 0–8. |
destination_config |
FuncAsyncDestinationConfig object |
Asynchronous invocation target. |
created_time |
String |
Time when asynchronous execution notification was configured. |
last_modified |
String |
Time when the asynchronous execution notification settings were last modified. |
enable_async_status_log |
Boolean |
Whether to enable asynchronous invocation status persistence. |
Parameter |
Type |
Description |
---|---|---|
on_success |
FuncDestinationConfig object |
Target to be invoked when a function is successfully executed. |
on_failure |
FuncDestinationConfig object |
Target to be invoked when a function fails to be executed due to a system error or an internal error. |
Parameter |
Type |
Description |
---|---|---|
destination |
String |
Object type.
Enumeration values:
|
param |
String |
Parameters (in JSON format) corresponding to the target service.
|
Status code: 400
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. |
Example Requests
Configure asynchronous execution notification for a function with max. validity period of 10s and max. retries of 3, and enable asynchronous invocation status persistence.
PUT /v2/{project_id}/fgs/functions/{function_urn}/async-invoke-config { "max_async_event_age_in_seconds" : 10, "max_async_retry_attempts" : 3, "enable_async_status_log" : true }
Example Responses
Status code: 200
Ok
{ "func_urn" : "urn:fss:xxxxxxxxx:7aad83af3e8d42e99ac194xxxxxxxxxx:function:default:test:latest", "max_async_event_age_in_seconds" : 60, "max_async_retry_attempts" : 1, "destination_config" : { "on_success" : { "destination" : "FunctionGraph", "param" : "{\"func_urn\":\"urn:fss:{region}:5691ba790e2b46ceb38316xxxxxxxxxx:function:default:testPython:latest\"}" }, "on_failure" : { "destination" : "FunctionGraph", "param" : "{\"func_urn\":\"urn:fss:{region}:5691ba790e2b46ceb38316xxxxxxxxxx:function:default:testPython:latest\"}" } }, "created_time" : "2021-03-04T14:50:02+08:00", "last_modified" : "2021-03-04 14:50:02" }
Status Codes
Status Code |
Description |
---|---|
200 |
Ok |
400 |
Bad Request |
404 |
Not Found |
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.