Skip to content

Workflows

Restore workflow

Restore an archived workflow and its archived schedules, webhooks, MCP tools, and hosted chat. Requires workspace write access. An active workflow returns `409`. If its folder is archived, the workflow returns to the workspace root. Workspace folder trees exceeding 10,000 folders return `413`. OAuth scope: `api:write`.

POST/api/v2/workflows/{workflowId}/restore

Restore an archived workflow and its archived schedules, webhooks, MCP tools, and hosted chat. Requires workspace write access. An active workflow returns 409. If its folder is archived, the workflow returns to the workspace root. Workspace folder trees exceeding 10,000 folders return 413.

OAuth scope: api:write.

Authentication

Send a personal or workspace API key in X-API-Key. See key types and access; operations that reject workspace keys say so in their description.

Send X-API-Key in the request header.

Alternatively

Send a Sim OAuth access token in Authorization: Bearer. See OAuth authentication and scopes.

Authorization: Bearer YOUR_ACCESS_TOKEN

Required scopes: api:write

OAuth flows
json
{
  "authorizationCode": {
    "authorizationUrl": "https://www.sim.ai/api/auth/oauth2/authorize",
    "tokenUrl": "https://www.sim.ai/api/auth/oauth2/token",
    "refreshUrl": "https://www.sim.ai/api/auth/oauth2/token",
    "scopes": {
      "api:read": "Read your workspaces, workflows, files, tables, and logs",
      "api:write": "Read, create, change, run, and delete resources in your workspaces",
      "offline_access": "Stay signed in without asking again"
    }
  }
}

OAuth scope: api:write.

Path parameters

workflowIdstringRequired

Unique workflow identifier.

minLength
1

Responses

200

The restored workflow.

object

The restored workflow.

1 field
dataobjectRequired

Response data.

12 fields
idstringRequired

Unique workflow identifier.

webUrlstringRequired

Canonical absolute URL for opening this resource in the Sim web application.

format
uri
namestringRequired

Workflow name.

descriptionvalueRequired

Workflow description, or null when none is set.

Schema details

Any of

Option 1string
Option 2null
folderPathstringRequired

Canonical containing-folder path; / is the workspace root.

maxLength
4096
workspaceIdstringRequired

Workspace that owns the workflow.

isDeployedbooleanRequired

Whether the workflow has an active deployment.

deployedAtvalueRequired

ISO 8601 activation timestamp, or null when not deployed.

format
date-time
Schema details

Any of

Option 1string
Option 2null
runCountintegerRequired

Settled runs — completed, failed, or cancelled — counted as each one finishes; a paused run is counted once it settles. The counter is never reduced when a run ages out of log retention, so it can exceed the results returned by List workflow runs.

minimum
0
maximum
9007199254740991
lastRunAtvalueRequired

ISO 8601 timestamp of the latest settled run, whatever its outcome, or null when the workflow has never run.

format
date-time
Schema details

Any of

Option 1string
Option 2null
createdAtstringRequired

ISO 8601 timestamp when the workflow was created.

format
date-time
updatedAtstringRequired

ISO 8601 timestamp when the workflow was last updated.

format
date-time

Additional properties are not allowed.

Additional properties are not allowed.

Response example 1

json
{
  "data": {
    "id": "3b1f7c92-8d4e-4a6b-9c0d-5e2f8a714b36",
    "webUrl": "https://www.sim.ai/workspace/a91c4b2e-6d3f-4e8a-b5c7-0d9e2f1a8c64/w/3b1f7c92-8d4e-4a6b-9c0d-5e2f8a714b36",
    "name": "Customer support triage",
    "description": "Routes incoming support requests to the right team.",
    "folderPath": "/Operations",
    "workspaceId": "a91c4b2e-6d3f-4e8a-b5c7-0d9e2f1a8c64",
    "isDeployed": true,
    "deployedAt": "2026-06-12T10:30:00.000Z",
    "runCount": 42,
    "lastRunAt": "2026-08-09T18:04:11.000Z",
    "createdAt": "2026-05-01T09:00:00.000Z",
    "updatedAt": "2026-08-09T18:04:11.000Z"
  }
}

Response headers

X-RateLimit-Limitinteger

Maximum requests allowed in the current window.

minimum
0
maximum
9007199254740991
X-RateLimit-Remaininginteger

Requests remaining in the current window.

minimum
0
maximum
9007199254740991
X-RateLimit-Resetstring

ISO 8601 timestamp when the current rate-limit window resets.

format
date-time
pattern
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
Was this helpful?
Suggest an edit