Update Flow Plan
curl --request POST \
--url https://api.example.com/api/public/tools/update_flow_plan \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"flowPlanId": "<string>",
"flow": {
"name": "<string>",
"options": {
"is_exclusion_check_required": true,
"use_hubspot_if_connected": true,
"is_click_tracking_enabled": true,
"is_open_tracking_enabled": true,
"is_enrich_phone_if_not_provided": true,
"push_call_tasks_only_if_phone_exists": true,
"ignore_personal_email_accounts": true,
"prompt": "<string>",
"is_push_to_hubspot_call_tasks": true,
"is_push_to_hubspot_manual_tasks": true,
"is_push_to_hubspot_approve_tasks": true,
"is_enrich_hubspot": true,
"is_enrich_prospects": true,
"is_enrich_companies": true,
"is_enrich_email_if_not_provided": true,
"is_track_emails_in_hubspot": true,
"only_enrich_phone_if_call_task_present": true,
"priority": 0
},
"mcpDynamicActionsOptions": {
"is_enrich_hubspot": true,
"is_push_to_hubspot_tasks": true
},
"aiQualification": {
"is_enabled": true,
"threshold": 123,
"prospect_criteria": "<string>",
"company_criteria": "<string>",
"disqualify_criteria": "<string>"
},
"candidates": [
{
"userId": "<string>",
"emailAccountIds": [
"<string>"
]
}
]
},
"returnWorkspace": true
}
'import requests
url = "https://api.example.com/api/public/tools/update_flow_plan"
payload = {
"flowPlanId": "<string>",
"flow": {
"name": "<string>",
"options": {
"is_exclusion_check_required": True,
"use_hubspot_if_connected": True,
"is_click_tracking_enabled": True,
"is_open_tracking_enabled": True,
"is_enrich_phone_if_not_provided": True,
"push_call_tasks_only_if_phone_exists": True,
"ignore_personal_email_accounts": True,
"prompt": "<string>",
"is_push_to_hubspot_call_tasks": True,
"is_push_to_hubspot_manual_tasks": True,
"is_push_to_hubspot_approve_tasks": True,
"is_enrich_hubspot": True,
"is_enrich_prospects": True,
"is_enrich_companies": True,
"is_enrich_email_if_not_provided": True,
"is_track_emails_in_hubspot": True,
"only_enrich_phone_if_call_task_present": True,
"priority": 0
},
"mcpDynamicActionsOptions": {
"is_enrich_hubspot": True,
"is_push_to_hubspot_tasks": True
},
"aiQualification": {
"is_enabled": True,
"threshold": 123,
"prospect_criteria": "<string>",
"company_criteria": "<string>",
"disqualify_criteria": "<string>"
},
"candidates": [
{
"userId": "<string>",
"emailAccountIds": ["<string>"]
}
]
},
"returnWorkspace": True
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
flowPlanId: '<string>',
flow: {
name: '<string>',
options: {
is_exclusion_check_required: true,
use_hubspot_if_connected: true,
is_click_tracking_enabled: true,
is_open_tracking_enabled: true,
is_enrich_phone_if_not_provided: true,
push_call_tasks_only_if_phone_exists: true,
ignore_personal_email_accounts: true,
prompt: '<string>',
is_push_to_hubspot_call_tasks: true,
is_push_to_hubspot_manual_tasks: true,
is_push_to_hubspot_approve_tasks: true,
is_enrich_hubspot: true,
is_enrich_prospects: true,
is_enrich_companies: true,
is_enrich_email_if_not_provided: true,
is_track_emails_in_hubspot: true,
only_enrich_phone_if_call_task_present: true,
priority: 0
},
mcpDynamicActionsOptions: {is_enrich_hubspot: true, is_push_to_hubspot_tasks: true},
aiQualification: {
is_enabled: true,
threshold: 123,
prospect_criteria: '<string>',
company_criteria: '<string>',
disqualify_criteria: '<string>'
},
candidates: [{userId: '<string>', emailAccountIds: ['<string>']}]
},
returnWorkspace: true
})
};
fetch('https://api.example.com/api/public/tools/update_flow_plan', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/api/public/tools/update_flow_plan",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'flowPlanId' => '<string>',
'flow' => [
'name' => '<string>',
'options' => [
'is_exclusion_check_required' => true,
'use_hubspot_if_connected' => true,
'is_click_tracking_enabled' => true,
'is_open_tracking_enabled' => true,
'is_enrich_phone_if_not_provided' => true,
'push_call_tasks_only_if_phone_exists' => true,
'ignore_personal_email_accounts' => true,
'prompt' => '<string>',
'is_push_to_hubspot_call_tasks' => true,
'is_push_to_hubspot_manual_tasks' => true,
'is_push_to_hubspot_approve_tasks' => true,
'is_enrich_hubspot' => true,
'is_enrich_prospects' => true,
'is_enrich_companies' => true,
'is_enrich_email_if_not_provided' => true,
'is_track_emails_in_hubspot' => true,
'only_enrich_phone_if_call_task_present' => true,
'priority' => 0
],
'mcpDynamicActionsOptions' => [
'is_enrich_hubspot' => true,
'is_push_to_hubspot_tasks' => true
],
'aiQualification' => [
'is_enabled' => true,
'threshold' => 123,
'prospect_criteria' => '<string>',
'company_criteria' => '<string>',
'disqualify_criteria' => '<string>'
],
'candidates' => [
[
'userId' => '<string>',
'emailAccountIds' => [
'<string>'
]
]
]
],
'returnWorkspace' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/api/public/tools/update_flow_plan"
payload := strings.NewReader("{\n \"flowPlanId\": \"<string>\",\n \"flow\": {\n \"name\": \"<string>\",\n \"options\": {\n \"is_exclusion_check_required\": true,\n \"use_hubspot_if_connected\": true,\n \"is_click_tracking_enabled\": true,\n \"is_open_tracking_enabled\": true,\n \"is_enrich_phone_if_not_provided\": true,\n \"push_call_tasks_only_if_phone_exists\": true,\n \"ignore_personal_email_accounts\": true,\n \"prompt\": \"<string>\",\n \"is_push_to_hubspot_call_tasks\": true,\n \"is_push_to_hubspot_manual_tasks\": true,\n \"is_push_to_hubspot_approve_tasks\": true,\n \"is_enrich_hubspot\": true,\n \"is_enrich_prospects\": true,\n \"is_enrich_companies\": true,\n \"is_enrich_email_if_not_provided\": true,\n \"is_track_emails_in_hubspot\": true,\n \"only_enrich_phone_if_call_task_present\": true,\n \"priority\": 0\n },\n \"mcpDynamicActionsOptions\": {\n \"is_enrich_hubspot\": true,\n \"is_push_to_hubspot_tasks\": true\n },\n \"aiQualification\": {\n \"is_enabled\": true,\n \"threshold\": 123,\n \"prospect_criteria\": \"<string>\",\n \"company_criteria\": \"<string>\",\n \"disqualify_criteria\": \"<string>\"\n },\n \"candidates\": [\n {\n \"userId\": \"<string>\",\n \"emailAccountIds\": [\n \"<string>\"\n ]\n }\n ]\n },\n \"returnWorkspace\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/api/public/tools/update_flow_plan")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"flowPlanId\": \"<string>\",\n \"flow\": {\n \"name\": \"<string>\",\n \"options\": {\n \"is_exclusion_check_required\": true,\n \"use_hubspot_if_connected\": true,\n \"is_click_tracking_enabled\": true,\n \"is_open_tracking_enabled\": true,\n \"is_enrich_phone_if_not_provided\": true,\n \"push_call_tasks_only_if_phone_exists\": true,\n \"ignore_personal_email_accounts\": true,\n \"prompt\": \"<string>\",\n \"is_push_to_hubspot_call_tasks\": true,\n \"is_push_to_hubspot_manual_tasks\": true,\n \"is_push_to_hubspot_approve_tasks\": true,\n \"is_enrich_hubspot\": true,\n \"is_enrich_prospects\": true,\n \"is_enrich_companies\": true,\n \"is_enrich_email_if_not_provided\": true,\n \"is_track_emails_in_hubspot\": true,\n \"only_enrich_phone_if_call_task_present\": true,\n \"priority\": 0\n },\n \"mcpDynamicActionsOptions\": {\n \"is_enrich_hubspot\": true,\n \"is_push_to_hubspot_tasks\": true\n },\n \"aiQualification\": {\n \"is_enabled\": true,\n \"threshold\": 123,\n \"prospect_criteria\": \"<string>\",\n \"company_criteria\": \"<string>\",\n \"disqualify_criteria\": \"<string>\"\n },\n \"candidates\": [\n {\n \"userId\": \"<string>\",\n \"emailAccountIds\": [\n \"<string>\"\n ]\n }\n ]\n },\n \"returnWorkspace\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/public/tools/update_flow_plan")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"flowPlanId\": \"<string>\",\n \"flow\": {\n \"name\": \"<string>\",\n \"options\": {\n \"is_exclusion_check_required\": true,\n \"use_hubspot_if_connected\": true,\n \"is_click_tracking_enabled\": true,\n \"is_open_tracking_enabled\": true,\n \"is_enrich_phone_if_not_provided\": true,\n \"push_call_tasks_only_if_phone_exists\": true,\n \"ignore_personal_email_accounts\": true,\n \"prompt\": \"<string>\",\n \"is_push_to_hubspot_call_tasks\": true,\n \"is_push_to_hubspot_manual_tasks\": true,\n \"is_push_to_hubspot_approve_tasks\": true,\n \"is_enrich_hubspot\": true,\n \"is_enrich_prospects\": true,\n \"is_enrich_companies\": true,\n \"is_enrich_email_if_not_provided\": true,\n \"is_track_emails_in_hubspot\": true,\n \"only_enrich_phone_if_call_task_present\": true,\n \"priority\": 0\n },\n \"mcpDynamicActionsOptions\": {\n \"is_enrich_hubspot\": true,\n \"is_push_to_hubspot_tasks\": true\n },\n \"aiQualification\": {\n \"is_enabled\": true,\n \"threshold\": 123,\n \"prospect_criteria\": \"<string>\",\n \"company_criteria\": \"<string>\",\n \"disqualify_criteria\": \"<string>\"\n },\n \"candidates\": [\n {\n \"userId\": \"<string>\",\n \"emailAccountIds\": [\n \"<string>\"\n ]\n }\n ]\n },\n \"returnWorkspace\": true\n}"
response = http.request(request)
puts response.read_body{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}FirstTouch tools
Update Flow Plan
Update an existing reusable flow’s name, options, AI qualification, or candidates without replacing the flow root.
Detailed usage guidance
- A name-only or no-op update preserves the current published/draft state.
- Any configuration change moves a published reusable flow to Draft (paused for new enrollments); tell the user that it must be published again before new contacts can enter.
- For the MCP Dynamic Actions Flow Plan, this tool may update only mcpDynamicActionsOptions.is_enrich_hubspot and mcpDynamicActionsOptions.is_push_to_hubspot_tasks.
- The task setting updates call, manual, and approval task sync together.
- These are shared Flow Plan settings, not per-action or per-enrollment overrides; all other MCP Flow Plan fields are rejected.
POST
/
api
/
public
/
tools
/
update_flow_plan
Update Flow Plan
curl --request POST \
--url https://api.example.com/api/public/tools/update_flow_plan \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"flowPlanId": "<string>",
"flow": {
"name": "<string>",
"options": {
"is_exclusion_check_required": true,
"use_hubspot_if_connected": true,
"is_click_tracking_enabled": true,
"is_open_tracking_enabled": true,
"is_enrich_phone_if_not_provided": true,
"push_call_tasks_only_if_phone_exists": true,
"ignore_personal_email_accounts": true,
"prompt": "<string>",
"is_push_to_hubspot_call_tasks": true,
"is_push_to_hubspot_manual_tasks": true,
"is_push_to_hubspot_approve_tasks": true,
"is_enrich_hubspot": true,
"is_enrich_prospects": true,
"is_enrich_companies": true,
"is_enrich_email_if_not_provided": true,
"is_track_emails_in_hubspot": true,
"only_enrich_phone_if_call_task_present": true,
"priority": 0
},
"mcpDynamicActionsOptions": {
"is_enrich_hubspot": true,
"is_push_to_hubspot_tasks": true
},
"aiQualification": {
"is_enabled": true,
"threshold": 123,
"prospect_criteria": "<string>",
"company_criteria": "<string>",
"disqualify_criteria": "<string>"
},
"candidates": [
{
"userId": "<string>",
"emailAccountIds": [
"<string>"
]
}
]
},
"returnWorkspace": true
}
'import requests
url = "https://api.example.com/api/public/tools/update_flow_plan"
payload = {
"flowPlanId": "<string>",
"flow": {
"name": "<string>",
"options": {
"is_exclusion_check_required": True,
"use_hubspot_if_connected": True,
"is_click_tracking_enabled": True,
"is_open_tracking_enabled": True,
"is_enrich_phone_if_not_provided": True,
"push_call_tasks_only_if_phone_exists": True,
"ignore_personal_email_accounts": True,
"prompt": "<string>",
"is_push_to_hubspot_call_tasks": True,
"is_push_to_hubspot_manual_tasks": True,
"is_push_to_hubspot_approve_tasks": True,
"is_enrich_hubspot": True,
"is_enrich_prospects": True,
"is_enrich_companies": True,
"is_enrich_email_if_not_provided": True,
"is_track_emails_in_hubspot": True,
"only_enrich_phone_if_call_task_present": True,
"priority": 0
},
"mcpDynamicActionsOptions": {
"is_enrich_hubspot": True,
"is_push_to_hubspot_tasks": True
},
"aiQualification": {
"is_enabled": True,
"threshold": 123,
"prospect_criteria": "<string>",
"company_criteria": "<string>",
"disqualify_criteria": "<string>"
},
"candidates": [
{
"userId": "<string>",
"emailAccountIds": ["<string>"]
}
]
},
"returnWorkspace": True
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
flowPlanId: '<string>',
flow: {
name: '<string>',
options: {
is_exclusion_check_required: true,
use_hubspot_if_connected: true,
is_click_tracking_enabled: true,
is_open_tracking_enabled: true,
is_enrich_phone_if_not_provided: true,
push_call_tasks_only_if_phone_exists: true,
ignore_personal_email_accounts: true,
prompt: '<string>',
is_push_to_hubspot_call_tasks: true,
is_push_to_hubspot_manual_tasks: true,
is_push_to_hubspot_approve_tasks: true,
is_enrich_hubspot: true,
is_enrich_prospects: true,
is_enrich_companies: true,
is_enrich_email_if_not_provided: true,
is_track_emails_in_hubspot: true,
only_enrich_phone_if_call_task_present: true,
priority: 0
},
mcpDynamicActionsOptions: {is_enrich_hubspot: true, is_push_to_hubspot_tasks: true},
aiQualification: {
is_enabled: true,
threshold: 123,
prospect_criteria: '<string>',
company_criteria: '<string>',
disqualify_criteria: '<string>'
},
candidates: [{userId: '<string>', emailAccountIds: ['<string>']}]
},
returnWorkspace: true
})
};
fetch('https://api.example.com/api/public/tools/update_flow_plan', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/api/public/tools/update_flow_plan",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'flowPlanId' => '<string>',
'flow' => [
'name' => '<string>',
'options' => [
'is_exclusion_check_required' => true,
'use_hubspot_if_connected' => true,
'is_click_tracking_enabled' => true,
'is_open_tracking_enabled' => true,
'is_enrich_phone_if_not_provided' => true,
'push_call_tasks_only_if_phone_exists' => true,
'ignore_personal_email_accounts' => true,
'prompt' => '<string>',
'is_push_to_hubspot_call_tasks' => true,
'is_push_to_hubspot_manual_tasks' => true,
'is_push_to_hubspot_approve_tasks' => true,
'is_enrich_hubspot' => true,
'is_enrich_prospects' => true,
'is_enrich_companies' => true,
'is_enrich_email_if_not_provided' => true,
'is_track_emails_in_hubspot' => true,
'only_enrich_phone_if_call_task_present' => true,
'priority' => 0
],
'mcpDynamicActionsOptions' => [
'is_enrich_hubspot' => true,
'is_push_to_hubspot_tasks' => true
],
'aiQualification' => [
'is_enabled' => true,
'threshold' => 123,
'prospect_criteria' => '<string>',
'company_criteria' => '<string>',
'disqualify_criteria' => '<string>'
],
'candidates' => [
[
'userId' => '<string>',
'emailAccountIds' => [
'<string>'
]
]
]
],
'returnWorkspace' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/api/public/tools/update_flow_plan"
payload := strings.NewReader("{\n \"flowPlanId\": \"<string>\",\n \"flow\": {\n \"name\": \"<string>\",\n \"options\": {\n \"is_exclusion_check_required\": true,\n \"use_hubspot_if_connected\": true,\n \"is_click_tracking_enabled\": true,\n \"is_open_tracking_enabled\": true,\n \"is_enrich_phone_if_not_provided\": true,\n \"push_call_tasks_only_if_phone_exists\": true,\n \"ignore_personal_email_accounts\": true,\n \"prompt\": \"<string>\",\n \"is_push_to_hubspot_call_tasks\": true,\n \"is_push_to_hubspot_manual_tasks\": true,\n \"is_push_to_hubspot_approve_tasks\": true,\n \"is_enrich_hubspot\": true,\n \"is_enrich_prospects\": true,\n \"is_enrich_companies\": true,\n \"is_enrich_email_if_not_provided\": true,\n \"is_track_emails_in_hubspot\": true,\n \"only_enrich_phone_if_call_task_present\": true,\n \"priority\": 0\n },\n \"mcpDynamicActionsOptions\": {\n \"is_enrich_hubspot\": true,\n \"is_push_to_hubspot_tasks\": true\n },\n \"aiQualification\": {\n \"is_enabled\": true,\n \"threshold\": 123,\n \"prospect_criteria\": \"<string>\",\n \"company_criteria\": \"<string>\",\n \"disqualify_criteria\": \"<string>\"\n },\n \"candidates\": [\n {\n \"userId\": \"<string>\",\n \"emailAccountIds\": [\n \"<string>\"\n ]\n }\n ]\n },\n \"returnWorkspace\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/api/public/tools/update_flow_plan")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"flowPlanId\": \"<string>\",\n \"flow\": {\n \"name\": \"<string>\",\n \"options\": {\n \"is_exclusion_check_required\": true,\n \"use_hubspot_if_connected\": true,\n \"is_click_tracking_enabled\": true,\n \"is_open_tracking_enabled\": true,\n \"is_enrich_phone_if_not_provided\": true,\n \"push_call_tasks_only_if_phone_exists\": true,\n \"ignore_personal_email_accounts\": true,\n \"prompt\": \"<string>\",\n \"is_push_to_hubspot_call_tasks\": true,\n \"is_push_to_hubspot_manual_tasks\": true,\n \"is_push_to_hubspot_approve_tasks\": true,\n \"is_enrich_hubspot\": true,\n \"is_enrich_prospects\": true,\n \"is_enrich_companies\": true,\n \"is_enrich_email_if_not_provided\": true,\n \"is_track_emails_in_hubspot\": true,\n \"only_enrich_phone_if_call_task_present\": true,\n \"priority\": 0\n },\n \"mcpDynamicActionsOptions\": {\n \"is_enrich_hubspot\": true,\n \"is_push_to_hubspot_tasks\": true\n },\n \"aiQualification\": {\n \"is_enabled\": true,\n \"threshold\": 123,\n \"prospect_criteria\": \"<string>\",\n \"company_criteria\": \"<string>\",\n \"disqualify_criteria\": \"<string>\"\n },\n \"candidates\": [\n {\n \"userId\": \"<string>\",\n \"emailAccountIds\": [\n \"<string>\"\n ]\n }\n ]\n },\n \"returnWorkspace\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/public/tools/update_flow_plan")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"flowPlanId\": \"<string>\",\n \"flow\": {\n \"name\": \"<string>\",\n \"options\": {\n \"is_exclusion_check_required\": true,\n \"use_hubspot_if_connected\": true,\n \"is_click_tracking_enabled\": true,\n \"is_open_tracking_enabled\": true,\n \"is_enrich_phone_if_not_provided\": true,\n \"push_call_tasks_only_if_phone_exists\": true,\n \"ignore_personal_email_accounts\": true,\n \"prompt\": \"<string>\",\n \"is_push_to_hubspot_call_tasks\": true,\n \"is_push_to_hubspot_manual_tasks\": true,\n \"is_push_to_hubspot_approve_tasks\": true,\n \"is_enrich_hubspot\": true,\n \"is_enrich_prospects\": true,\n \"is_enrich_companies\": true,\n \"is_enrich_email_if_not_provided\": true,\n \"is_track_emails_in_hubspot\": true,\n \"only_enrich_phone_if_call_task_present\": true,\n \"priority\": 0\n },\n \"mcpDynamicActionsOptions\": {\n \"is_enrich_hubspot\": true,\n \"is_push_to_hubspot_tasks\": true\n },\n \"aiQualification\": {\n \"is_enabled\": true,\n \"threshold\": 123,\n \"prospect_criteria\": \"<string>\",\n \"company_criteria\": \"<string>\",\n \"disqualify_criteria\": \"<string>\"\n },\n \"candidates\": [\n {\n \"userId\": \"<string>\",\n \"emailAccountIds\": [\n \"<string>\"\n ]\n }\n ]\n },\n \"returnWorkspace\": true\n}"
response = http.request(request)
puts response.read_body{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}{
"error": "<string>",
"message": "<string>",
"traceId": "<string>"
}Authorizations
Body
application/json
Existing flow plan id. Use the exact flowPlanId returned by create_flow_plan, list_flow_plans, or get_flow_workspace. The MCP Dynamic Actions flowPlanId is permitted only when changing its two allowed HubSpot settings.
Flow settings to update.
- Omitted fields keep their current values.
- Name-only and no-op updates preserve the current published/draft state; any configuration change pauses a published reusable flow by moving it to Draft.
- For the MCP Dynamic Actions Flow Plan, send only mcpDynamicActionsOptions.is_enrich_hubspot and/or mcpDynamicActionsOptions.is_push_to_hubspot_tasks; the task setting updates call, manual, and approval task sync together.
- All other fields are rejected.
Show child attributes
Show child attributes
Include a workspace snapshot in the response. For the MCP Dynamic Actions Flow Plan, this is always null because it does not use a reusable-flow workspace.
Response
Tool result.

