Get Workflow Public
curl --request GET \
--url https://api.example.com/v1/workflows/{workflow_id} \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.example.com/v1/workflows/{workflow_id}"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.example.com/v1/workflows/{workflow_id}', 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/v1/workflows/{workflow_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"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"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/v1/workflows/{workflow_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.example.com/v1/workflows/{workflow_id}")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v1/workflows/{workflow_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"group_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"definition": {},
"workflow_hash": "<string>",
"meta": {
"tags": [],
"icon": "<string>",
"log_sync_sheet": {
"name": "<string>",
"id": "<string>",
"time_created": "<string>"
},
"columns": [
{
"name": "<string>",
"visible": true
}
],
"spreadsheet": {
"name": "<string>",
"id": "<string>",
"timestamp": "<string>",
"url": "<string>"
},
"chatflow_settings": {},
"template_id": "<string>"
},
"settings": {
"pii_banner": "",
"pii_info": "",
"pii_lock": false,
"pii_anonimization": [
{
"value": "PERSON",
"label": "Name"
},
{
"value": "EMAIL_ADDRESS",
"label": "Email"
},
{
"value": "PHONE_NUMBER",
"label": "Phone Number"
},
{
"value": "CREDIT_CARD",
"label": "Credit Card"
}
],
"divider1": "",
"guardrail_info": "",
"guardrail_lock": false,
"violence_and_hate": "Off",
"sexual_content": "Off",
"guns_and_weapons": "Off",
"suicide": "Off",
"crime": "Off",
"toxicity": "Off",
"bias": "Off",
"profanity": "Off",
"divider2": "",
"guardrail_action": {
"value": "flag",
"label": "Flag with warning but proceed"
},
"guardrail_action_replace": "",
"guardrail_action_human": "",
"divider3": "",
"prompt_defense": "",
"prompt_lock": false,
"jailbreak": false,
"prompt_injection": false,
"context_leak": false,
"auto_model_pick": false,
"auto_model_preference": "cost",
"model": [
"preset:cost"
],
"parameter_preset": "default",
"intro": "",
"basic_params_section": "",
"max_tokens": 64000,
"temperature": 0.7,
"top_p": 1,
"top_k": 40,
"timeout": 120,
"divider_7": "",
"penalty_section": "",
"presence_penalty": 0.3,
"frequency_penalty": 0.6,
"stop_sequences": [],
"divider_8": "",
"reasoning_section": "",
"enable_reasoning": true,
"reasoning_effort": "Low",
"divider": "",
"reliability_section": "",
"max_retries_per_model": 3,
"retry_on_status_codes": [
429,
500,
502,
503,
504
],
"datacenter_fallback": true,
"agentflow_enabled": true,
"usage_limits_section": "",
"usage_limits_maximum_request": 1000,
"usage_limits_maximum_tokens": 2000000,
"usage_limits_max_messages": 100,
"usage_limits_agent_timeout": 120,
"divider_11": "",
"tool_calling_section": "",
"parallel_tool_calls": true,
"agent_flow_id": "<string>",
"is_coworker": true,
"preset_selector": "<string>",
"introductory_message": "<string>",
"persona": [
{
"text": "<string>",
"definition": {
"type": "doc",
"content": []
}
}
],
"tone": [
{
"text": "<string>",
"definition": {
"type": "doc",
"content": []
}
}
],
"extra_instructions": {},
"tools": [],
"mcp_servers": []
},
"last_updated_at": "2023-11-07T05:31:56Z",
"last_run_at": "2023-11-07T05:31:56Z",
"created_at": "2023-11-07T05:31:56Z",
"deleted_at": "2023-11-07T05:31:56Z",
"runs_count": 123,
"author_name": "<string>",
"description": "<string>",
"saved": true,
"error_handler": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"is_app_published": true,
"app_settings_v2": {
"is_active": false,
"version_id": "<string>",
"extra_settings": {},
"published_at": "2023-11-07T05:31:56Z"
}
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Workflows
Get Workflow
Get a workflow by it’s ID
GET
/
v1
/
workflows
/
{workflow_id}
Get Workflow Public
curl --request GET \
--url https://api.example.com/v1/workflows/{workflow_id} \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.example.com/v1/workflows/{workflow_id}"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.example.com/v1/workflows/{workflow_id}', 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/v1/workflows/{workflow_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"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"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/v1/workflows/{workflow_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.example.com/v1/workflows/{workflow_id}")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v1/workflows/{workflow_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"group_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"definition": {},
"workflow_hash": "<string>",
"meta": {
"tags": [],
"icon": "<string>",
"log_sync_sheet": {
"name": "<string>",
"id": "<string>",
"time_created": "<string>"
},
"columns": [
{
"name": "<string>",
"visible": true
}
],
"spreadsheet": {
"name": "<string>",
"id": "<string>",
"timestamp": "<string>",
"url": "<string>"
},
"chatflow_settings": {},
"template_id": "<string>"
},
"settings": {
"pii_banner": "",
"pii_info": "",
"pii_lock": false,
"pii_anonimization": [
{
"value": "PERSON",
"label": "Name"
},
{
"value": "EMAIL_ADDRESS",
"label": "Email"
},
{
"value": "PHONE_NUMBER",
"label": "Phone Number"
},
{
"value": "CREDIT_CARD",
"label": "Credit Card"
}
],
"divider1": "",
"guardrail_info": "",
"guardrail_lock": false,
"violence_and_hate": "Off",
"sexual_content": "Off",
"guns_and_weapons": "Off",
"suicide": "Off",
"crime": "Off",
"toxicity": "Off",
"bias": "Off",
"profanity": "Off",
"divider2": "",
"guardrail_action": {
"value": "flag",
"label": "Flag with warning but proceed"
},
"guardrail_action_replace": "",
"guardrail_action_human": "",
"divider3": "",
"prompt_defense": "",
"prompt_lock": false,
"jailbreak": false,
"prompt_injection": false,
"context_leak": false,
"auto_model_pick": false,
"auto_model_preference": "cost",
"model": [
"preset:cost"
],
"parameter_preset": "default",
"intro": "",
"basic_params_section": "",
"max_tokens": 64000,
"temperature": 0.7,
"top_p": 1,
"top_k": 40,
"timeout": 120,
"divider_7": "",
"penalty_section": "",
"presence_penalty": 0.3,
"frequency_penalty": 0.6,
"stop_sequences": [],
"divider_8": "",
"reasoning_section": "",
"enable_reasoning": true,
"reasoning_effort": "Low",
"divider": "",
"reliability_section": "",
"max_retries_per_model": 3,
"retry_on_status_codes": [
429,
500,
502,
503,
504
],
"datacenter_fallback": true,
"agentflow_enabled": true,
"usage_limits_section": "",
"usage_limits_maximum_request": 1000,
"usage_limits_maximum_tokens": 2000000,
"usage_limits_max_messages": 100,
"usage_limits_agent_timeout": 120,
"divider_11": "",
"tool_calling_section": "",
"parallel_tool_calls": true,
"agent_flow_id": "<string>",
"is_coworker": true,
"preset_selector": "<string>",
"introductory_message": "<string>",
"persona": [
{
"text": "<string>",
"definition": {
"type": "doc",
"content": []
}
}
],
"tone": [
{
"text": "<string>",
"definition": {
"type": "doc",
"content": []
}
}
],
"extra_instructions": {},
"tools": [],
"mcp_servers": []
},
"last_updated_at": "2023-11-07T05:31:56Z",
"last_run_at": "2023-11-07T05:31:56Z",
"created_at": "2023-11-07T05:31:56Z",
"deleted_at": "2023-11-07T05:31:56Z",
"runs_count": 123,
"author_name": "<string>",
"description": "<string>",
"saved": true,
"error_handler": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"is_app_published": true,
"app_settings_v2": {
"is_active": false,
"version_id": "<string>",
"extra_settings": {},
"published_at": "2023-11-07T05:31:56Z"
}
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
Path Parameters
Response
Successful Response
Available options:
flow, agent_flow, handler, ingestion, inbox_process, inbox_filtering, inbox_extraction, task_automation Show child attributes
Show child attributes
- ChatflowSettingsConfig
- Settings
Show child attributes
Show child attributes
Show child attributes
Show child attributes
⌘I