Clone a workflow
Base URL
https://{kibana_url}
POST
/api/workflows/workflow/{id} /clone
POST
/s/{space_id} /api/workflows/workflow/{id} /clone
Auth
Stack
9.4+
The Elastic Stack includes Elastic's core products such as Elasticsearch, Kibana, Logstash, and Beats.
Availability
Generally available since 9.4
This functionality is generally available and ready for production usage.
Unless stated otherwise on the page, this functionality is available when your Elastic Stack is deployed on Elastic Cloud Hosted, Elastic Cloud Enterprise, Elastic Cloud on Kubernetes, and self-managed environments.
This documentation corresponds to the latest patch available for each minor version. If you're not using the latest patch, check the release notes for changes.
Create a copy of an existing workflow.
Privileges
workflowsManagement:create
and
workflowsManagement:read. Extended privileges (optional, expand functionality when granted): workflowsManagement:managed:read
Expand all
space_id
string
optional
An identifier for the space. If space_id is not provided in the URL, the default space is used. Refer to Spaces for more information.
id
string · max length: 255
required
Workflow ID
A required header to protect against CSRF attacks
200
Indicates a successful response
application/json
Thank you for your feedback.
Base URL
https://{kibana_url}
Examples
Request
Console
1 / 2 languages
‹
›
1
POST kbn://api/workflows/workflow/{id}/clone
1
2
3
4
curl \
-X POST "${KIBANA_URL}/api/workflows/workflow/{id}/clone" \
-H "Authorization: ApiKey ${API_KEY}" \
-H "kbn-xsrf: true"
Response
Example response returning the cloned workflow with a new ID
Show more
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
{
"createdAt": "2025-11-22T11:00:00.000Z",
"createdBy": "elastic",
"definition": {
"description": "This is a workflow example",
"enabled": false,
"inputs": [
{
"default": "hello world",
"name": "message",
"type": "string"
}
],
"name": "Example definition (copy)",
"steps": [
{
"name": "hello_world_step",
"type": "console",
"with": {
"message": "{{ inputs.message }}"
}
}
],
"triggers": [
{
"type": "manual"
}
]
},
"description": "This is a workflow example",
"enabled": false,
"id": "workflow-b2c3d4e5-f6a7-8901-bcde-f12345678901",
"lastUpdatedAt": "2025-11-22T11:00:00.000Z",
"lastUpdatedBy": "elastic",
"name": "Example definition (copy)",
"valid": true,
"yaml": "name: Example definition (copy)\nenabled: false\ndescription: This is a workflow example\ntriggers:\n - type: manual\ninputs:\n - name: message\n type: string\n default: \u0022hello world\u0022\nsteps:\n - name: hello_world_step\n type: console\n with:\n message: \u0022{{ inputs.message }}\u0022\n"
}