---
title: "Validate Workflow Definition"
method: POST
path: "/v1/scenario/validate-definition"
tags: ["Scenario Builder"]
---

# Validate Workflow Definition

`POST /v1/scenario/validate-definition`

Validate a workflow definition from JSON without persisting.

## Headers

- `X-API-Key` string, required

## Request body

- WorkflowValidateDefinitionRequest — Validate and normalize a React Flow graph from JSON (object or string). Same rules as ``POST /v1/scenario`` create.
  - `definition` object, nullable — React Flow graph as a JSON object (same shape as create ``definition``).
  - `json_text` string, nullable — Alternatively, the full graph as a JSON string.

## Response `200`

Successful Response

- WorkflowValidateDefinitionResponse — Validation passed; same rules as ``POST /v1/scenario`` create (graph is not persisted).
  - `success` boolean — True when the definition passes validation

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/getbluejay/apis/bluejay-api.md) · [All operations](https://skmtc.net/getbluejay/apis/bluejay-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/getbluejay/bluejay-api/revisions/f48cef80963f/schema)
