Semogram Docs
Data PipelinesRun and operate

Validation and preflight

Check graph structure and executable bindings without confusing preflight with a data preview

Validation has two layers: graph/schema validation and execution preflight. Graph validation checks nodes, ports, edges and required configuration. Preflight resolves the configuration needed for executable steps, including installed capabilities and referenced resources.

What it proves

CheckValidatesDoes not prove
Document schemaRequired sections and typesThat a target contains real records
Graph validationConnections, cycles and node issuesOutput values or model quality
Execution preflightExecutable configuration and bindingsA successful network read/write
Bounded actual runBehavior for the selected fixtureCorrectness for every future input

Dry-run is configuration preflight. It does not read source rows, preview output records, call prediction models or execute and roll back an external write. Use a real bounded run to test those behaviors.

Validate a saved pipeline's draft

You need an existing pipeline and a draft for the acting user. In Studio, inspect the current draft, run Validate and select reported nodes/edges to resolve errors. Save the corrected version before execution.

Open the pipeline in Studio and select Validate. Inspect all errors and warnings, especially resource bindings and node configuration. Revalidate after fixes.

Assistant prompt
Validate this pipeline draft. Explain each error and the exact node, edge or binding involved. Propose corrections without starting a run or changing the destination.

Use a workspace API key with pipelines:read, access to this project and an accountable current member where the operation requires one. Set SEMOGRAM_API_KEY; replace UUID placeholders with actual IDs.

HTTP API request
curl --request POST "https://platform.semogram.com/api/v1/projects/<PROJECT_ID_UUID>/pipelines/<PIPELINE_ID_UUID>/draft/validate" \
  --header "Authorization: Bearer ${SEMOGRAM_API_KEY}"

Send through an authenticated, initialized MCP client. projectId selects the project within the connected workspace.

MCP request
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "pipeline_validate",
    "arguments": {
      "pipelineId": "<PIPELINE_ID_UUID>",
      "projectId": "<PROJECT_ID_UUID>"
    }
  }
}

HTTP validation returns validation and preflight. MCP returns valid, validation and basedOnVersionId. Inspect issues with severity error, warning or info and their graph/node/edge scope. Do not infer a data preview from either response.

Common blockers

Missing endpoint IDs, unavailable installed transforms, unsupported runtime manifests, unresolved ontology packages, absent approved write policies and invalid input bindings can block readiness. An empty dataset, authentication failure or unexpected model output may first appear during actual execution. Validation success cannot replace checking those results.