Clone as custom
POST
/api/v1/workflows/{id}/clone
Code sample: cURL
curl -X POST 'https://dashboard.justcrawl.io/api/v1/workflows/a47ac10b-58cc-4372-a567-0e02b2c3d479/clone' \ -H 'Authorization: Bearer $JUSTCRAWL_API_KEY'Clone a workflow as a non-smart custom draft. The clone is independent — it has
its own ID, version history, and routing. Use this when you want to start from
a smart workflow’s DAG but edit it freely (smart workflows themselves are
read-only and reject PUT). The clone starts in draft status with no route;
POST /api/v1/workflows/{id}/publish to make it live.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ” id
required
string format: uuid
The workflow ID to clone.
Responses
Section titled “ Responses ”The newly created clone.
Media type application/json
object
workflowId
string format: uuid
name
string
status
string
version
integer
route
string
dag
object
nodes
required
Array<object>
object
id
required
string
type
required
string
config
object
edges
required
Array<object>
object
id
required
string
from
required
string
to
required
string
type
required
string
costPerThousand
number
smart
object
strategy
string
mode
string
domain
string
hasPendingSuggestion
boolean
createdAt
string format: date-time
Example
{ "status": "draft", "dag": { "nodes": [ { "type": "entry" } ], "edges": [ { "type": "default" } ] }, "smart": { "strategy": "success", "mode": "auto" }}Missing or invalid authentication token
Media type application/json
object
error
string
Example
{ "error": "Missing or invalid authentication token"}Insufficient permissions for this operation
Media type application/json
object
error
string
Example
{ "error": "No organization. Complete onboarding first."}Resource not found
Media type application/json
object
error
string
Example
{ "error": "Workflow not found"}Unexpected server error. Logs and PostHog $exception capture
Media type application/json
object
error
string
Example
{ "error": "Something went wrong"}