JavaScript
import Mobilerun from '@mobilerun/sdk';
const client = new Mobilerun({
apiKey: process.env['MOBILERUN_CLOUD_API_KEY'], // This is the default and can be omitted
});
const response = await client.workflows.flows.clone('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e');
console.log(response.data);import os
from mobilerun_sdk import Mobilerun
client = Mobilerun(
api_key=os.environ.get("MOBILERUN_CLOUD_API_KEY"), # This is the default and can be omitted
)
response = client.workflows.flows.clone(
flow_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)
print(response.data)package main
import (
"context"
"fmt"
"github.com/stainless-sdks/droidrun-cloud-go"
"github.com/stainless-sdks/droidrun-cloud-go/option"
)
func main() {
client := mobileruncloud.NewClient(
option.WithAPIKey("My API Key"),
)
response, err := client.Workflows.Flows.Clone(
context.TODO(),
"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
mobileruncloud.WorkflowFlowCloneParams{},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", response.Data)
}mobilerun-cloud workflows:flows clone \
--api-key 'My API Key' \
--flow-id 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26ecurl --request POST \
--url https://api.mobilerun.ai/flows/{flowId}/clone \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"deviceIds": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
]
}
'<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.mobilerun.ai/flows/{flowId}/clone",
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([
'name' => '<string>',
'deviceIds' => [
'3c90c3cc-0d44-4b50-8888-8dd25736052a'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}HttpResponse<String> response = Unirest.post("https://api.mobilerun.ai/flows/{flowId}/clone")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"deviceIds\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.mobilerun.ai/flows/{flowId}/clone")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"deviceIds\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"userId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"ownerId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdBy": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"description": "<string>",
"triggerId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"enabled": true,
"deviceIds": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"cooldownSeconds": 123,
"notifyWebhookId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"notifyOnSuccess": true,
"notifyOnFailure": true,
"lastTriggeredAt": "<string>",
"consecutiveFailures": 1,
"lastFailureAt": "<string>",
"blockedAt": "<string>",
"createdAt": "<string>",
"updatedAt": "<string>"
}
}{
"error": "<string>"
}Flows
Clone a flow
Create a copy of an existing flow, including its actions and settings. The optional body can override the new flow’s name and target deviceIds. Returns 404 if the source flow does not exist.
POST
/
flows
/
{flowId}
/
clone
JavaScript
import Mobilerun from '@mobilerun/sdk';
const client = new Mobilerun({
apiKey: process.env['MOBILERUN_CLOUD_API_KEY'], // This is the default and can be omitted
});
const response = await client.workflows.flows.clone('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e');
console.log(response.data);import os
from mobilerun_sdk import Mobilerun
client = Mobilerun(
api_key=os.environ.get("MOBILERUN_CLOUD_API_KEY"), # This is the default and can be omitted
)
response = client.workflows.flows.clone(
flow_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
)
print(response.data)package main
import (
"context"
"fmt"
"github.com/stainless-sdks/droidrun-cloud-go"
"github.com/stainless-sdks/droidrun-cloud-go/option"
)
func main() {
client := mobileruncloud.NewClient(
option.WithAPIKey("My API Key"),
)
response, err := client.Workflows.Flows.Clone(
context.TODO(),
"182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
mobileruncloud.WorkflowFlowCloneParams{},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", response.Data)
}mobilerun-cloud workflows:flows clone \
--api-key 'My API Key' \
--flow-id 182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26ecurl --request POST \
--url https://api.mobilerun.ai/flows/{flowId}/clone \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"deviceIds": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
]
}
'<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.mobilerun.ai/flows/{flowId}/clone",
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([
'name' => '<string>',
'deviceIds' => [
'3c90c3cc-0d44-4b50-8888-8dd25736052a'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}HttpResponse<String> response = Unirest.post("https://api.mobilerun.ai/flows/{flowId}/clone")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"deviceIds\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.mobilerun.ai/flows/{flowId}/clone")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"deviceIds\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"userId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"ownerId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdBy": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"description": "<string>",
"triggerId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"enabled": true,
"deviceIds": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"cooldownSeconds": 123,
"notifyWebhookId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"notifyOnSuccess": true,
"notifyOnFailure": true,
"lastTriggeredAt": "<string>",
"consecutiveFailures": 1,
"lastFailureAt": "<string>",
"blockedAt": "<string>",
"createdAt": "<string>",
"updatedAt": "<string>"
}
}{
"error": "<string>"
}Was this page helpful?
⌘I