---
title: "Validate PSV rules for a credentialing workflow"
method: GET
path: "/credentialing-workflows/{workflowId}/psv-validation"
tags: ["CredentialingWorkflow"]
---

# Validate PSV rules for a credentialing workflow

`GET /credentialing-workflows/{workflowId}/psv-validation`

Pre-checks PSV rule-engine validations for the credentialing workflow without attempting a PSV_COMPLETED timeline transition. Returns the same rule-engine map shape used when a PSV_COMPLETED transition fails validation. Use before creating a PSV_COMPLETED timeline event. Requires credentialing workflow read permission. Returns 404 when the workflow is not found.

## Path parameters

- `workflowId` string, required

## Headers

- `tenant-id` string, required

## Response `200`

Rule-engine validation map (all rules, pass and fail)

## Other responses

- `400` — Bad Request - Missing or invalid tenant-id header
- `401` — Unauthorized - Authentication required
- `403` — Forbidden - User does not have required permissions
- `404` — Credentialing workflow not found
- `500` — Internal Server Error - An unexpected error occurred

---

[API](https://skmtc.net/certifyos/apis/certify-api-layer.md) · [All operations](https://skmtc.net/certifyos/apis/certify-api-layer/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/certifyos/certify-api-layer/revisions/563848e0ecc0/schema)
