SnozeDevelopers
API referenceAutomations

Preview repairs to automation field references

Checks an editor graph and proposes known field-reference repairs using database fields the caller can read. Returns the repaired graph, exact replacements, and remaining validation issues. Requires automations:write and edit access to the automation. Does not save, publish, or run anything; apply the returned graph through the draft update endpoint.

POST
/v1/workspaces/{workspaceId}/automations/{automationId}/reference-repairs

Authorization

apiKey
headerAuthorizationBearer <snoze_sk_…>

Workspace API key created in Workspace settings → API keys. Scopes on the key bound what it can read and write.

Path Parameters

workspaceId*string
automationId*string

Request Body

application/json
  1. body
graph*
trigger*||||

Response Body

Success

application/json
  1. response
data*
Example Request
curl -X POST 'https://api.snoze.dev/v1/workspaces/string/automations/string/reference-repairs' \  -H 'Content-Type: application/json' \  -d '{  "graph": {    "nodes": [      {        "id": "string",        "kind": "action",        "actionId": "string"      }    ],    "edges": [      {        "id": "string",        "from": "string",        "to": "string"      }    ]  },  "trigger": {    "kind": "manual"  }}'
Example Response
{  "data": {    "graph": {      "reusable": {        "inputs": [          {            "key": "string",            "label": "string",            "type": "text",            "required": true          }        ],        "outputs": [          {            "key": "string",            "label": "string",            "type": "text",            "required": true,            "value": {              "type": "literal",              "value": null            }          }        ]      },      "nodes": [        {          "id": "string",          "label": "string",          "retry": {            "maxAttempts": 0,            "initialDelaySeconds": 0,            "backoffMultiplier": 0,            "maxDelaySeconds": 0          },          "position": {            "x": 0,            "y": 0          },          "kind": "action",          "actionId": "string",          "input": {            "property1": {              "type": "literal",              "value": null            },            "property2": {              "type": "literal",              "value": null            }          }        }      ],      "edges": [        {          "id": "string",          "from": "string",          "to": "string",          "outcome": "always"        }      ],      "entryNodeIds": [        "string"      ],      "testPayloads": [        {          "id": "string",          "name": "string",          "payload": {}        }      ],      "failureAutomationId": "string",      "triggerPosition": {        "x": 0,        "y": 0      }    },    "repairs": [      {        "nodeId": "string",        "from": "string",        "to": "string"      }    ],    "issues": [      {        "nodeId": "string",        "message": "string"      }    ]  }}