---
title: "Validate Entity"
method: POST
path: "/content/validate"
tags: ["Content Validation"]
---

# Validate Entity

`POST /content/validate`

## Request

- Base URL: `https://backend.praktiki.io` (the document declares no server; this is the origin it was published from)
- URL: `https://backend.praktiki.io/content/validate`
- Auth: HTTP bearer

## Request body

- ValidateRequest
  - `entity` object, nullable
  - `entity_id` string, nullable
  - `entity_type` 'Scenario' | 'Collection' | 'Microsite', required
  - `categories` string[], nullable

## Response `200`

Successful Response

- ValidationResult
  - `entity_id` string, required
  - `entity_type` string, required
  - `timestamp` number, required
  - `overall_passed` boolean, required
  - `categories` CategoryResult[]
    - `category` string, required
    - `passed` boolean, required
    - `issues` ValidationIssue[]
      - `category` string, required
      - `field` string, required
      - `severity` 'error' | 'warning' | 'info' | 'passed', required
      - `message` string, required
      - `card_index` integer, nullable
      - `card_title` string, nullable
      - `card_id` string, nullable
      - `dismissed` boolean
      - `dismissed_by_uid` string, nullable
      - `dismissed_by_name` string, nullable
      - `dismissed_at` number, nullable
    - `dismissed_issues` ValidationIssue[]
      - `category` string, required
      - `field` string, required
      - `severity` 'error' | 'warning' | 'info' | 'passed', required
      - `message` string, required
      - `card_index` integer, nullable
      - `card_title` string, nullable
      - `card_id` string, nullable
      - `dismissed` boolean
      - `dismissed_by_uid` string, nullable
      - `dismissed_by_name` string, nullable
      - `dismissed_at` number, nullable
    - `groups` CheckGroup[]
      - `key` string, required
      - `label` string, required
      - `status` 'error' | 'warning' | 'unchecked' | 'passed', required
      - `counts` object
      - `issues` ValidationIssue[]
        - `category` string, required
        - `field` string, required
        - `severity` 'error' | 'warning' | 'info' | 'passed', required
        - `message` string, required
        - `card_index` integer, nullable
        - `card_title` string, nullable
        - `card_id` string, nullable
        - `dismissed` boolean
        - `dismissed_by_uid` string, nullable
        - `dismissed_by_name` string, nullable
        - `dismissed_at` number, nullable
    - `summary` object
  - `summary` object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/praktiki/apis/praktiki-api.md) - [All operations](https://skmtc.dev/praktiki/apis/praktiki-api/llms.txt) - [OpenAPI document](https://skmtc.dev/praktiki/apis/praktiki-api/revisions/3428f9e0a922?raw)
