import Retell from 'retell-sdk';
const client = new Retell({
apiKey: 'YOUR_RETELL_API_KEY',
});
const conversationFlowComponentResponse = await client.conversationFlowComponent.update(
'conversation_flow_component_id',
);
console.log(conversationFlowComponentResponse.conversation_flow_component_id);{
"name": "Customer Information Collector",
"nodes": [
{
"id": "collect_info",
"type": "conversation",
"instruction": {
"type": "prompt",
"text": "Ask the customer for their name and contact information."
}
}
],
"conversation_flow_component_id": "<string>",
"user_modified_timestamp": 123,
"tools": [
{
"type": "custom",
"name": "get_customer_info",
"description": "Get customer information from database",
"tool_id": "tool_001",
"url": "https://api.example.com/customer",
"method": "GET"
}
],
"start_node_id": "collect_info",
"begin_tag_display_position": {
"x": 100,
"y": 200
},
"linked_conversation_flow_ids": [
"<string>"
]
}Update an existing shared conversation flow component
import Retell from 'retell-sdk';
const client = new Retell({
apiKey: 'YOUR_RETELL_API_KEY',
});
const conversationFlowComponentResponse = await client.conversationFlowComponent.update(
'conversation_flow_component_id',
);
console.log(conversationFlowComponentResponse.conversation_flow_component_id);{
"name": "Customer Information Collector",
"nodes": [
{
"id": "collect_info",
"type": "conversation",
"instruction": {
"type": "prompt",
"text": "Ask the customer for their name and contact information."
}
}
],
"conversation_flow_component_id": "<string>",
"user_modified_timestamp": 123,
"tools": [
{
"type": "custom",
"name": "get_customer_info",
"description": "Get customer information from database",
"tool_id": "tool_001",
"url": "https://api.example.com/customer",
"method": "GET"
}
],
"start_node_id": "collect_info",
"begin_tag_display_position": {
"x": 100,
"y": 200
},
"linked_conversation_flow_ids": [
"<string>"
]
}Authentication header containing API key (find it in dashboard). The format is "Bearer YOUR_API_KEY"
ID of the component to update
Name of the component
"Customer Information Collector"
Tools available within the component
Show child attributes
Type of the tool
custom Name of the tool
Server URL to call the tool. Dynamic variables can be used in the URL.
Unique identifier for the tool
Description of the tool
1024Tool parameters schema
Show child attributes
Type must be "object" for a JSON Schema object.
object List of names of required property when generating this parameter. LLM will do its best to generate the required properties in its function arguments. Property must exist in properties.
HTTP method to use for the request, defaults to POST
GET, POST, PUT, PATCH, DELETE Timeout in milliseconds for the function call, defaults to 2 min
1000 <= x <= 600000[
{
"type": "custom",
"name": "get_customer_info",
"description": "Get customer information from database",
"tool_id": "tool_001",
"url": "https://api.example.com/customer",
"method": "GET"
}
]Nodes that make up the component
Show child attributes
Unique identifier for the node
Type of the node
conversation Optional name for display purposes
Show child attributes
Condition for global node activation, cannot be empty
Transition to this node
Show child attributes
Find tune the transition condition to this global node
Don't transition to this node
Show child attributes
Find tune the transition condition to this global node
Show child attributes
Unique identifier for the edge
ID of the destination node
Show child attributes
Unique identifier for the edge
ID of the destination node
Show child attributes
Unique identifier for the example
Show child attributes
Unique identifier for the example
Optional destination node ID
Show child attributes
Type of model choice
cascading The LLM model to use
gpt-4.1, gpt-4.1-mini, gpt-4.1-nano, gpt-5, gpt-5-mini, gpt-5-nano, claude-4.5-sonnet, claude-4.5-haiku, gemini-2.5-flash, gemini-2.5-flash-lite Whether to use high priority pool with more dedicated resource, default false
0 <= x <= 1Knowledge base IDs for RAG (Retrieval-Augmented Generation).
["kb_001", "kb_002"][
{
"id": "collect_info",
"type": "conversation",
"instruction": {
"type": "prompt",
"text": "Ask the customer for their name and contact information."
}
}
]ID of the starting node
"collect_info"
Successfully updated conversation flow component
Name of the component
"Customer Information Collector"
Nodes that make up the component
Show child attributes
Unique identifier for the node
Type of the node
conversation Optional name for display purposes
Show child attributes
Condition for global node activation, cannot be empty
Transition to this node
Show child attributes
Find tune the transition condition to this global node
Don't transition to this node
Show child attributes
Find tune the transition condition to this global node
Show child attributes
Unique identifier for the edge
ID of the destination node
Show child attributes
Unique identifier for the edge
ID of the destination node
Show child attributes
Unique identifier for the example
Show child attributes
Unique identifier for the example
Optional destination node ID
Show child attributes
Type of model choice
cascading The LLM model to use
gpt-4.1, gpt-4.1-mini, gpt-4.1-nano, gpt-5, gpt-5-mini, gpt-5-nano, claude-4.5-sonnet, claude-4.5-haiku, gemini-2.5-flash, gemini-2.5-flash-lite Whether to use high priority pool with more dedicated resource, default false
0 <= x <= 1Knowledge base IDs for RAG (Retrieval-Augmented Generation).
["kb_001", "kb_002"][
{
"id": "collect_info",
"type": "conversation",
"instruction": {
"type": "prompt",
"text": "Ask the customer for their name and contact information."
}
}
]Unique identifier for the component
Timestamp of last user modification
Tools available within the component
Show child attributes
Type of the tool
custom Name of the tool
Server URL to call the tool. Dynamic variables can be used in the URL.
Unique identifier for the tool
Description of the tool
1024Tool parameters schema
Show child attributes
Type must be "object" for a JSON Schema object.
object List of names of required property when generating this parameter. LLM will do its best to generate the required properties in its function arguments. Property must exist in properties.
HTTP method to use for the request, defaults to POST
GET, POST, PUT, PATCH, DELETE Timeout in milliseconds for the function call, defaults to 2 min
1000 <= x <= 600000[
{
"type": "custom",
"name": "get_customer_info",
"description": "Get customer information from database",
"tool_id": "tool_001",
"url": "https://api.example.com/customer",
"method": "GET"
}
]ID of the starting node
"collect_info"
IDs of conversation flows linked to this shared component
Was this page helpful?