---
title: "Validate a workflow"
method: POST
path: "/automation-studio/workflows/validate"
tags: ["Automation Studio"]
---

# Validate a workflow

`POST /automation-studio/workflows/validate`

## Request

- Base URL: `https://example.itential.io`
- URL: `https://example.itential.io/automation-studio/workflows/validate`
- Auth: none declared

Validates a workflow, and return the resulting errors and warnings arrays.

## Request body

- object
  - `workflow` AutomationStudioWorkflowDocumentAll: Accepts all generation workflow documents
    - `_id` string
    - `uuid` string
    - `name` string, required
    - `type` string, required
    - `namespace` AutomationStudioWorkflowDocumentAllNamespace
      - `type` unknown, required
      - `_id` AutomationStudioWorkflowDocumentAllNamespaceId, required: A MongoDB ObjectId
      - `name` string, required
    - `description` string, nullable
    - `preAutomationTime` integer: Time (milliseconds) automation would have taken someone to complete without using IAP.
    - `sla` integer
    - `tasks` AutomationStudioWorkflowDocumentAllTasks, required
      - `workflow_start` AutomationStudioWorkflowDocumentAllTasksWorkflowStart, required
        - `name` string
        - `summary` string
        - `groups` AutomationStudioWorkflowDocumentAllTasksWorkflowStartGroupsItems[]
          - `name` string, required
          - `provenance` string, required
        - `x` number, double: Stores the x coordinate used by canvasVersion: 1 workflows
        - `y` number, double: Stores the y coordinate used by canvasVersion: 1 workflows
        - `gridCoordinate` AutomationStudioWorkflowDocumentAllTasksWorkflowStartGridCoordinate
          - `x` number, double, required
          - `y` number, double, required
        - `nodeLocation` AutomationStudioWorkflowDocumentAllTasksWorkflowStartNodeLocation: Stores the coordinates used by canvasVersion: 3 workflows
          - `x` number, double, required
          - `y` number, double, required
      - `workflow_end` AutomationStudioWorkflowDocumentAllTasksWorkflowEnd, required
        - `name` string
        - `summary` string
        - `groups` AutomationStudioWorkflowDocumentAllTasksWorkflowEndGroupsItems[]
          - `name` string, required
          - `provenance` string, required
        - `x` number, double: Stores the x coordinate used by canvasVersion: 1 workflows
        - `y` number, double: Stores the y coordinate used by canvasVersion: 1 workflows
        - `gridCoordinate` AutomationStudioWorkflowDocumentAllTasksWorkflowEndGridCoordinate
          - `x` number, double, required
          - `y` number, double, required
        - `nodeLocation` AutomationStudioWorkflowDocumentAllTasksWorkflowEndNodeLocation: Stores the coordinates used by canvasVersion: 3 workflows
          - `x` number, double, required
          - `y` number, double, required
      - `error_handler` AutomationStudioWorkflowDocumentAllTasksErrorHandler: Deprecated gen2-specific feature
        - `name` 'childJob', required
        - `summary` string, required
        - `description` string, required
        - `app` string, required
        - `variables` AutomationStudioWorkflowDocumentAllTasksErrorHandlerVariables, required
          - `incoming` AutomationStudioWorkflowDocumentAllTasksErrorHandlerVariablesIncoming, required
          - `outgoing` AutomationStudioWorkflowDocumentAllTasksErrorHandlerVariablesOutgoing, required
          - `error` string
          - `decorators` AutomationStudioWorkflowDocumentAllTasksErrorHandlerVariablesDecoratorsItems[]
            - `type` 'encryption' | 'query'
            - `pointer` string, json-pointer
            - `displayPath` string
        - `deprecated` boolean
        - `scheduled` boolean
        - `groups` AutomationStudioWorkflowDocumentAllTasksErrorHandlerGroupsItems[], required
          - `name` string, required
          - `provenance` string, required
        - `type` 'operation', required
        - `retrySettings` AutomationStudioWorkflowDocumentAllTasksErrorHandlerRetrySettings: Retry settings for a task.
          - `state` AutomationStudioWorkflowDocumentAllTasksErrorHandlerRetrySettingsStateItems[], required: Finish states the task will retry on. The task will retry on any of the included states.
          - `autoRetry` boolean, required: Whether the task is set to retry automatically or manually.
          - `limit` integer, required: Limit of retries on a task before it will take normal transitions and stop retrying.
          - `delay` integer, required: Delay between each retry in milliseconds.
          - `count` integer: Current retry count used for workflow engine job processing
    - `transitions` AutomationStudioWorkflowDocumentAllTransitions, required
      - `workflow_start` AutomationStudioWorkflowDocumentAllTransitionsWorkflowStart
      - `workflow_end` AutomationStudioWorkflowDocumentAllTransitionsWorkflowEnd
      - `error_handler` AutomationStudioWorkflowDocumentAllTransitionsErrorHandler
    - `errorHandler` AutomationStudioWorkflowDocumentAllErrorHandler: Deprecated gen2-specific feature
      - `type` string
      - `name` string
    - `font_size` integer: Deprecated, unused, gen1-specific feature
    - `groups` AutomationStudioWorkflowDocumentAllGroupsItems[], required
      - `name` string, required
      - `provenance` string, required
    - `created` string, date-time
    - `created_by` union
      - AutomationStudioWorkflowDocumentAllCreatedBy0
        - `username` string, required
        - `provenance` string, required
      - string
    - `createdBy` string: Project related regression bug. This field needs to be accepted
    - `createdVersion` string
    - `last_updated` string, date-time
    - `last_updated_by` union
      - AutomationStudioWorkflowDocumentAllLastUpdatedBy0
        - `username` string, required
        - `provenance` string, required
      - string
    - `lastUpdatedVersion` string: This value represents the semantic version of the application that last modified it. For workflows with canvasVersion = 1, this field will refer to the version of Workflow Builder. For workflows with canvasVersion > 1, this field will refer to the version of Studio.
    - `tags` AutomationStudioWorkflowDocumentAllTagsItems[]
      - `_id` string, required
      - `name` string, required
      - `description` string, required
    - `canvasVersion` '1' | '1.5' | '2' | '3'
    - `encodingVersion` '1'
    - `inputSchema` AutomationStudioWorkflowDocumentAllInputSchema
    - `outputSchema` AutomationStudioWorkflowDocumentAllOutputSchema
    - `outputData` object: Deprecated gen2-specific feature
    - `decorators` AutomationStudioWorkflowDocumentAllDecoratorsItems[]
      - `type` 'encryption' | 'query'
      - `pointer` string, json-pointer
      - `displayPath` string
    - `migrationVersion` integer
    - `scenarios` AutomationStudioWorkflowDocumentAllScenariosItems[]
      - `name` string, required
      - `description` string
      - `input` AutomationStudioWorkflowDocumentAllScenariosItemsInput, required
      - `taskMocks` AutomationStudioWorkflowDocumentAllScenariosItemsTaskMocks
      - `last_updated` string, date-time
      - `last_updated_by` union
        - union
          - AutomationStudioWorkflowDocumentAllScenariosItemsLastUpdatedBy00
            - `username` string, required
            - `provenance` string, required
          - string
        - object

## Response `200`

Errors and warnings output from the validation process

- AutomationStudioValidateWorkflowResponse200
  - `errors` AutomationStudioWorkflowsValidatePostResponsesContentApplicationJsonSchemaErrorsItems[]
  - `warnings` AutomationStudioWorkflowsValidatePostResponsesContentApplicationJsonSchemaWarningsItems[]

## Other responses

- `500`: Error response from API

## Changes

- **2026-10-31** `2095cc90e583`: 2 info
  - api tag `Automation Studio` added
  - api tag `automationStudio` removed

[Operation history](https://skmtc.dev/itential/apis/itential-2/changes/automation-studio/workflows/validate/post.md)

---

[API](https://skmtc.dev/itential/apis/itential-2.md) - [All operations](https://skmtc.dev/itential/apis/itential-2/llms.txt) - [OpenAPI document](https://skmtc.dev/itential/apis/itential-2/revisions/2095cc90e583?raw)
