tencent cloud

Tool Node
Last updated:2026-02-04 11:39:01
Tool Node
Last updated: 2026-02-04 11:39:01

Node Function

The tool node belongs to Information Processing Node, supports user-configured APIs. When execution reaches this node, the system will invoke the API based on the user-configured information and output the call results.




Directions

Basic information

API URL

Input the URL of the API interface. You can also refer to the link information within the preceding node variable by inputting the "/" symbol.

Authorization Method

API usage permissions support "No authorization required", "APIKey", and "Tencent Cloud".
APIKey Authorization:
APIKey authorization is a lightweight authentication mechanism based on a unique identifier (API Key) to verify client access permissions for APIs, such as user applications, users, or services. An API Key is usually a randomly generated string assigned by the API provider. Clients must include it in the request header or request parameter during API call to certify legitimacy. Configuration as follows:
Configuration
Description
Key location
Support selecting "header" and "query" for configuration of APIKey position.
Key parameter name
APIKey name
secret key value
specific value of APIKey



Tencent Cloud Authorization
Suitable for scenarios where TencentCloud APIs are called. Tencent Cloud API authenticates each request. Users need to use security credentials to initiate requests to ensure they are triggered by entities holding valid access keys. For detailed key acquisition information, see the Common Parameter webpage in the console. Key acquisition can be performed via Cloud API Key. Specific configuration is as follows:
Configuration
Description
SecretId
Used to identify the API caller, similar to a username.
SecretKey
To verify the identity of the API caller, similar to a password.




Request method

Configure the request method of the API tool. Support GET, POST, PUT, DELETE, PATCH, HEAD, and OPTIONS, seven types in total.
Configuration
Description
GET
Used to obtain data from the server, usually used for query operations. Use cases:
● Retrieve static resources such as web pages, images, and API data.
● Search engine queries.
● Simple data transfer without sensitive information.
POST
Used to submit data to a server, usually used for creating or updating resources. Use cases:
● Submit form data, such as user registration and sign-in.
● Upload files or large data.
● Perform non-query operations.
PUT
Used to submit data to the server to create or replace a resource. Usually used for updating existing resources or creating new resources (if the resource does not exist). If the resource already exists, PUT will overwrite the existing resource; if the resource does not exist, it will create a new resource. Use cases:
● Update user information, such as modifying user personal information
● Replace the content of a resource, such as uploading new file content
DELETE
Used to delete specified resources from the server, usually used for removing data or canceling operations. Use cases:
● Delete user accounts, articles, comments, and other dynamic resources.
● Cancel submitted orders or reservations.
● Clean up temporary files or cached data.
PATCH
Used to submit partial data to the server to update existing resources rather than replace the entire resource. Unlike PUT, PATCH only modifies part of data rather than the complete resource. Use cases:
● Update part of user information, such as modifying username or email address
● Perform incremental updates on resources, such as adjusting the value of a certain configuration item
HEAD
Used to request the server to return response header information without the response body. It is commonly used to obtain resource metadata (such as file size, data type, etc.), check resource existence, or get basic info. Use cases:
● Check whether the file exists without downloading the content
● Obtain resource modification time, size, data type, etc.
OPTIONS
Used to ask the server which HTTP methods are supported or query the server's communication options. It is commonly used for sending preflight requests in cross-origin access requests to confirm whether the server allows a certain type of request. Use cases:
● For cross-origin access requests, the browser automatically sends an OPTIONS request to confirm whether a specific request method is allowed.
● Confirm which HTTP methods the server supports, such as GET, POST, PUT.

Invocation Method

Support two API call methods: streaming and non-streaming.
Non-streaming call: The API request returns the complete result at one time, suitable for ordinary API calls or task execution scenarios.
Streaming call: Support calling APIs in SSE (Server-Sent Events) format. After the API request, the backend completes data stitching and unifies the output.
Incremental parsing: Each time it receives an independent and complete fragment, such as "today", "weather", "excellent";
Override parsing: Every time the content is received, it is updated by overlaying the last result, such as "now" "today" "today the weather is excellent".
Streaming call is used to process APIs with continuous output (such as chat or generation Class Interface), but the display result is the final integrated complete text.

Basic Information Addition

Except manually fill in the basic information of the tool node, support through JSON, cURL and YAML code to automatically add basic information.
Add Via YAML
OpenAPI is a standardized specification for description of RESTful API, applicable to define API structure, request and response format, and authentication method, etc. YAML is a commonly used description format in OpenAPI, with concise grammar and high readability, making it easy for quick configuration and maintenance of API. The YAML format example is as follows:
openapi: "3.0.0"
info:
title: "Test API"
version: "1.0.0"
description: "Fill in the plugin description herein"
servers:
- url: "https://example.com/api"
description: "Fill in the plugin description herein"
paths:
"/weatherInfo":
get:
summary: "API name"
description: "Fill in the API description of the plugin herein"
operationId: "getWeatherInfo"
parameters:
- name: "city"
in: "query"
description: "Parameter description"
required: true
schema:
type: "string"
responses:
"200":
description: "successful response"
content:
application/json:
schema:
type: "object"
properties:
status:
type: "integer"
description: "return status"
enum: [0, 1]
"400":
description: "Incorrect request"
"401":
description: "Unauthorized"
"500":
description: "Internal server error"
Click "Parse" after filling in, and the corresponding parameters will autofill.
Add via cURL
Support adding basic information through cURL command. OpenAPIcURL is a command line tool to send request to server. It supports multiple protocols (such as HTTP, HTTPS, FTP) and can send HTTP request through command line for testing and debug API.
Example of cURL API:
curl -X POST https://api.example.com/users
-H "Content-Type: application/json"
-d '{"name": "John", "email": "john@example.com"}'
Add via JSON
Support adding basic information through JSON. JSON (JavaScript Object Notation) is a lightweight data interchange format, usually used for API request and response. Data in JSON format has a key-value pair structure to represent structured data.
Example JSON API:
{
"openapi": "3.0.0",
"info": {
"title": "Test API",
"version": "1.0.0",
"description": "Fill in the plugin description herein"
},
"servers": [
{
"url": "https://example.com/api",
"description": "Fill in the plugin description herein"
}
],
"paths": {
"/weatherInfo": {
"get": {
"summary": "API name"
"description": "Fill in the API description of the plug-in herein"
"operationId": "getWeatherInfo",
"parameters": [
{
"name": "city",
"in": "query",
"description": "Parameter description",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "successful response",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"status": {
"type": "integer",
"description": "return status",
"enum": [
0,
1
]
}
}
}
}
}
},
"400": {
"description": "Incorrect request"
},
"401": {
"description": "Unauthorized"
},
"500": {
"description": "Internal server error"
}
}
}
}
}
}


API Parameter

The header, query, and body information required for this API call. Configure the parameters refer to your API requirements.
Configuration
Description
Variable Name
The variable name can only contain letters, digits, or underscores, must start with a letter or underscore, and is mandatory.
Description
Description of this variable. Optional.
Data Source
The data source of this variable supports two options: "refer" and "input". "Refer" allows selecting output variables from all preceding nodes, while "input" supports manually filling in a fixed value.
Type
The data type of this variable is unselectable and defaults to the variable type of "refer" or the string type of "input".

Request Body Format

For the request body, JSON, form-data, x-www-form-urlencoded, raw text, and binary formats are supported.
Note:
Only POST, PUT, and PATCH request methods have a request body.
Configuration
Description
JSON
Structured data format uses key-value pairs to represent objects, supports nesting and array structure, and is suitable for transmitting structured data
form-data
Split the data into multiple parts, each part contains independent content type and encoding, supports composite text and binary data, suitable for file upload, form submission and hybrid type data transmission.
x-www-form-urlencoded
Encode data as key-value pairs (key=value), connect multiple values with &, URL encode special characters, suitable for fileless simple form submission, traditional Web forms, and API-compatible legacy system interfaces.
raw text
Plain text data, without any format processing, transmitted as original byte stream, suitable for sending custom text messages, transmitting code snippets or unstructured data.
binary
Raw binary data stream, no metadata description, transmitted by byte, suitable for uploading unknown type files




Output Variable

The output variable processed by this node is empty by default. Users can manually add output variables, and the name must be identical to the API response parameter. It also contains runtime error information Error (data type is object, this field is empty during normal operation).




Handling error

When an API call fails or returns an exception, you can enable the Exception Handling feature manually (exception handling is off by default). By configuring the exception retry policy and exception handling method, you can control the behavior of the process when an error occurs, such as automatic retry or output of specified error information, to underwrite the stability and traceability of node execution. Detailed configuration is as follows:
Configuration
Description
Max Retry Attempts
Maximum number of times to rerun when the node is running exceptionally. If retries exceed the set number of times, consider the node call failed and execute the exception handling method below. Default is 3 times.
Retry Interval
Interval between each rerun, default is 1 second.
Exception Handling Method
Support three types: "Output Specific Content", "Execution Exception Flow", and "Interrupt Process".
Exception Output Variable
When the exception handling method is set to "Output Specific Content", the output variable returned when retries exceed the maximum number.



When the exception handling method is set to "Output Specific Content", the workflow will not be interrupted after an exception occurs. The node returns the output variable and variable value set in the output content directly to the user after retrying the failed node.
When the exception handling method is set to "Execution Exception Flow", the workflow will not be interrupted after an exception occurs. The node executes the user-defined exception handling process after retrying the failed node.

When the exception handling method is set to "Interrupt Flow", there are no more setting items. The workflow execution will be interrupted after an exception occurs.

Asynchronous Call

Asynchronous invocation of tool nodes refers to a calling method where users can continue execution of subsequent processes without waiting for the tool node call to complete. It can effectively improve system throughput and response speed while reducing resource blocking risk. Currently, tool nodes support two invocation methods: polling invocation and callback invocation.
The difference between Polling invocation and Callback invocation is as follows:
Polling invocation: Tencent Cloud ADP proactively performs periodic queries on the execution result of an external system.
Callback invocation: After execution, the external system proactively returns results via domain names or IP addresses provided by Tencent Cloud ADP.




Polling Invocation

Select "Invocation Type" as "Polling" to enable polling invocation, meeting scenario requirements such as asynchronous task operation. Users can manually configure polling conditions.
Configuration
Description
Polling Time Interval
The time between two queries by a node. Default value 1s, maximum value 10s.
Maximum Polling time
Total duration of node polling. Default value 10s, maximum value 600s. Node execution is considered unsuccessful if node runtime exceeds the maximum polling time.
Polling End Condition
Rules or conditions to stop polling. When conditions are not met, next perform polling. When the condition is met, end polling and execute the next node.



Users can set the polling end condition manually and support selecting two condition judgment modes:
1. Select "LLM Semantic Judgment" to let the model intelligently parse whether preset conditions are met in the current scenario and automatically make decisions on whether to continue polling.
2. Select "Strict and Precise Judgment" to require an exact match of the preset conditions for exiting polling. The system will terminate the polling process to ensure the consistency and accuracy of the judgment logic.
Users can manually configure the model used for polling invocation and only support selecting models the account has permission to use.

Callback Invocation

Select "Call Type" as "Callback" to enable callback invocation, meeting scenario requirements such as asynchronous task operation. Users can manually configure callback time.



Configuration
Description
Max Waiting Time
The waiting duration for Node Entry callback supports seconds/minutes as the time unit, with seconds chosen by default. When seconds are selected as the time unit, the default value is 10s and the maximum value is 600s. When minutes are selected as the time unit, the default value is 1min and the maximum value is 10min.
Note:
The priority of asynchronous invocation is lower than that of handling error. If the user enables exception handling and asynchronous invocation simultaneously, when an anomaly occurs, execute according to the "Exception handling method" in handling error, and skip asynchronous invocations that have not completed operation.

Application Example

Examples of GET Request

Query the real-time weather of a specific city. City is a required item and placed in the query of the request. Example configuration as follows:



Example of YAML import:
openapi: "3.0.0"
info:
title: "Weather Inquiry"
version: "1.0.0"
description: "Plug-in for weather inquiry"
servers:
- url: "https://example.example/api"
description: "Query real-time weather for a specific city"
paths:
"/weatherInfo":
get:
summary: "Plug-in for querying real-time weather in a specific city"
operationId: "getWeatherInfoId"
description: "Query real-time weather for a specific city"
parameters:
- name: "city"
in: "query"
description: "City to be queried for weather"
required: true
schema:
type: "string"
responses:
"200":
description: "successful response"
content:
application/json:
schema:
type: "object"
properties:
weather:
type: "string"
description: "Weather description"
status:
type: "integer"
description: "API call status"
"400":
description: "Incorrect request"
"401":
description: "Unauthorized"
"500":
description: "Internal server error"
Note:
The example is only used to show the API configuration process and unable to call directly. According to the example, replace with your own API.

Examples of HTTP POST Request

Query the order list for a specific customer ID. customerId is a required item, while customerName and customerEmail are optional fields, placed in the request body. Example configuration as follows:



Example of YAML import:
openapi: "3.0.0"
info:
title: "Customer Order Query"
version: "1.0.0"
description: "Query ALL orders by Customer ID"
servers:
- url: "https://example.example/api"
description: "Query order information for a specific customer"
paths:
/orderList:
post:
summary: "Query order list for a specific customer"
operationId: "getOrderList"
description: "Query ALL orders by Customer ID"
requestBody:
required: true
description: "The request body includes the customer ID"
content:
application/json:
schema:
type: object
properties:
customerId:
type: integer
description: "Customer ID, required"
customerName:
type: string
description: "Customer name (optional)"
customerEmail:
type: string
description: "Customer mailbox (optional)"
required:
- customerId
responses:
"200":
description: "query successful"
content:
application/json:
schema:
type: object
properties:
orderList:
type: array
description: "Order list"
items:
type: object
properties:
orderId:
type: integer
description: "Order ID"
status:
type: string
description: "Order status"
amount:
type: number
description: "Order amount"
status:
type: integer
description: "API call status"
enum: [0, 1]
"400":
description: "Incorrect request"
"401":
description: "Unauthorized"
"500":
description: "Internal server error"
Note:
The example is only used to show the API configuration process and unable to call directly. According to the example, replace with your own API.

FAQs

Whether Bearer authentication is supported? How to configure?
Bearer authentication is supported. Choose the authorization method "APIkey" and fill in "Bearer [your api key value]" in the secret key value.
Was this page helpful?
You can also Contact Sales or Submit a Ticket for help.
Yes
No

Feedback