Skip to main content
PATCH
/
update-conversation-flow-component
/
{conversation_flow_component_id}
cURL
curl --request PATCH \
  --url https://api.retellai.com/update-conversation-flow-component/{conversation_flow_component_id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "name": "Customer Information Collector",
  "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"
    }
  ],
  "nodes": [
    {
      "id": "collect_info",
      "type": "conversation",
      "instruction": {
        "type": "prompt",
        "text": "Ask the customer for their name and contact information."
      }
    }
  ],
  "start_node_id": "collect_info",
  "begin_tag_display_position": {
    "x": 100,
    "y": 200
  }
}'
{
  "name": "Customer Information Collector",
  "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"
    }
  ],
  "nodes": [
    {
      "id": "collect_info",
      "type": "conversation",
      "instruction": {
        "type": "prompt",
        "text": "Ask the customer for their name and contact information."
      }
    }
  ],
  "start_node_id": "collect_info",
  "begin_tag_display_position": {
    "x": 100,
    "y": 200
  },
  "conversation_flow_component_id": "<string>",
  "user_modified_timestamp": 123,
  "linked_conversation_flow_ids": [
    "<string>"
  ]
}

Authorizations

Authorization
string
header
required

Authentication header containing API key (find it in dashboard). The format is "Bearer YOUR_API_KEY"

Path Parameters

conversation_flow_component_id
string
required

ID of the component to update

Body

application/json
name
string

Name of the component

Example:

"Customer Information Collector"

tools
object[] | null

Tools available within the component

  • Option 1
  • Option 2
  • Option 3
Example:
[
{
"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
object[]

Nodes that make up the component

  • Option 1
  • Option 2
  • Option 3
  • Option 4
  • Option 5
  • Option 6
  • Option 7
  • Option 8
  • Option 9
  • Option 10
  • Option 11
Example:
[
{
"id": "collect_info",
"type": "conversation",
"instruction": {
"type": "prompt",
"text": "Ask the customer for their name and contact information."
}
}
]
start_node_id
string | null

ID of the starting node

Example:

"collect_info"

begin_tag_display_position
object | null

Display position for the begin tag in the frontend

Response

Successfully updated conversation flow component

conversation_flow_component_id
string
required

Unique identifier for the component

user_modified_timestamp
integer
required

Timestamp of last user modification

name
string
required

Name of the component

Example:

"Customer Information Collector"

nodes
object[]
required

Nodes that make up the component

  • Option 1
  • Option 2
  • Option 3
  • Option 4
  • Option 5
  • Option 6
  • Option 7
  • Option 8
  • Option 9
  • Option 10
  • Option 11
Example:
[
{
"id": "collect_info",
"type": "conversation",
"instruction": {
"type": "prompt",
"text": "Ask the customer for their name and contact information."
}
}
]
linked_conversation_flow_ids
string[]

IDs of conversation flows linked to this shared component

tools
object[] | null

Tools available within the component

  • Option 1
  • Option 2
  • Option 3
Example:
[
{
"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
string | null

ID of the starting node

Example:

"collect_info"

begin_tag_display_position
object | null

Display position for the begin tag in the frontend