Help Center/ FunctionGraph/ API Reference/ APIs/ Function Lifecycle Management/ Querying ServiceBridge Functions Bound to a Specified Function
Updated on 2024-11-07 GMT+08:00

Querying ServiceBridge Functions Bound to a Specified Function

Function

This API is used to query ServiceBridge functions bound to a specified function.

URI

GET /v2/{project_id}/fgs/functions/{function_urn}/servicebridge/relation

Table 1 Path Parameters

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.

Table 2 Query Parameters

Parameter

Mandatory

Type

Description

type

No

String

ServiceBridge type.

Request Parameters

Table 3 Request header 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).

Response Parameters

Status code: 200

Table 4 Response body parameters

Parameter

Type

Description

[items]

Array of ListFunctionResult objects

Bridge functions bound to the function.

Table 5 ListFunctionResult

Parameter

Type

Description

resource_id

String

Resource ID.

func_urn

String

Function URN.

func_name

String

Function name.

domain_id

String

Domain ID.

namespace

String

Project ID.

project_name

String

Project name.

package

String

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

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:

  • Java8
  • Java11
  • Node.js6.10
  • Node.js8.10
  • Node.js10.16
  • Node.js12.13
  • Node.js14.18
  • Node.js16.17
  • Node.js18.15
  • Python2.7
  • Python3.6
  • Python3.10
  • Go1.x
  • C#(.NET Core 2.1)
  • C#(.NET Core 3.1)
  • Custom
  • PHP7.3
  • Python3.9
  • http
  • Custom Image
  • Cangjie1.0

timeout

Integer

Maximum duration the function can be executed. Value range: 3s–259,200s.

handler

String

Handler of a function in the format of "xx.xx". Max. 60 of letters. It must contain a period (.).

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

Minimum length: 3 character.

Maximum length: 128 characters.

memory_size

Integer

Memory consumed by a function.

Unit: MB.

The value can be 128, 256, 512, 768, 1024, 1280, 1536, 1792, 2048, 2560, 3072, 3584 or 4096.

The value ranges from 128 to 4096.

gpu_memory

Integer

GPU memory. This parameter is available only for functions created with a custom runtime or image. Unit: MB. Options: 1024, 2048, 3072, 4096, 5120, 6144, 7168, 8192, 9216, 10,240, 11,264, 12,288, 13,312, 14,336, 15,360, and 16,384. Range: 1024 to 16,384.

cpu

Integer

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.

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 Custom-Image-Swr: The function code comes from the SWR custom image.

Enumeration values:

  • inline
  • zip
  • obs
  • jar
  • Custom-Image-Swr

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.

user_data

String

Name/Value information defined for the function. These are parameters used in the function. For example, if a function needs to access a host, define Host={host_ip}. You can define a maximum of 20 such parameters, and their total length cannot exceed 4 KB.

encrypted_user_data

String

User-defined name/value to be encrypted.

digest

String

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

version

String

Function version.

image_name

String

Internal identifier of a function version.

xrole

String

Agency used by the function. You need to create an agency on the IAM console. This field is mandatory when a function needs to access other services.

app_xrole

String

Agency used by the function app. You need to create an agency on the IAM console. This field is mandatory when a function needs to access other services.

description

String

Function description.

last_modified

String

Time when the function was last updated.

func_vpc_id

String

VPC ID.

strategy_config

StrategyConfig object

Function policy configuration.

extend_config

String

Extended configuration.

initializer_handler

String

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 Node.js function myfunction.initializer, the file name is myfunction.js, and the initialization function is initializer.

initializer_timeout

Integer

Maximum duration the function can be initialized. Value range: 1s–300s. This parameter is mandatory when the initialization function is configured.

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

Maximum duration the function can be initialized. Value range: 1s–90s.

enterprise_project_id

String

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

long_time

Boolean

Whether to allow a long timeout.

log_group_id

String

Log group ID.

log_stream_id

String

Log stream ID.

type

String

v2 indicates an official version, and v1 indicates a deprecated version.

Enumeration values:

  • v1
  • v2

fail_count

Integer

Number of times that a function failed to be executed in the last day.

is_bridge_function

Boolean

Whether this is a bridge function.

bind_bridge_funcUrns

Array of strings

URNs bound to the bridge function.

Table 6 StrategyConfig

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.

  • -1: The function has unlimited instances.
  • 0: The function is disabled.

concurrent_num

Integer

Number of concurrent requests per instance. This parameter is supported only by v2. The value ranges from 1 to 1,000.

Status code: 401

Table 7 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

Status code: 403

Table 8 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

Status code: 404

Table 9 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

Status code: 500

Table 10 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

Example Requests

Query ServiceBridge functions bound to a specified function.

GET https://{Endpoint}/v2/{project_id}/fgs/functions/{function_urn}/servicebridge/relation?type=rds

Example Responses

Status code: 200

ok

[ {
  "func_urn" : "urn:fss:xxxxxxxxx:7aad83af3e8d42e99ac194e8419e2c9b:function:default:test",
  "func_name" : "bridge-test",
  "domain_id" : "cff01_hk",
  "namespace" : "7aad83af3e8d42e99ac194e8419e2c9b",
  "project_name" : "xxxxxxxx",
  "package" : "default",
  "runtime" : "Node.js6.10",
  "timeout" : 3,
  "handler" : "test.handler",
  "memory_size" : 128,
  "cpu" : 300,
  "code_type" : "inline",
  "code_filename" : "index.js",
  "code_size" : 272,
  "digest" : "decbce6939297b0b5ec6d1a23bf9c725870f5e69fc338a89a6a4029264688dc26338f56d08b6535de47f15ad538e22ca66613b9a46f807d50b687bb53fded1c6",
  "version" : "latest",
  "xrole" : "cff",
  "image_name" : "latest-191025153727@zehht",
  "last_modified" : "2019-10-25 15:37:27",
  "strategy_config" : {
    "concurrency" : 0
  },
  "initializer_handler" : "index.initializer",
  "initializer_timeout" : 3,
  "pre_stop_handler" : "index.pre_stop_handler",
  "pre_stop_timeout" : 3
} ]

Status Codes

Status Code

Description

200

ok

401

Unauthorized.

403

Forbidden.

404

Not found.

500

Internal server error.

Error Codes

See Error Codes.