---
title: "Validate an analytic template"
method: POST
path: "/mop/validateAnalyticTemplate"
tags: ["MOP"]
---

# Validate an analytic template

`POST /mop/validateAnalyticTemplate`

## Request

- Base URL: `https://example.itential.io`
- URL: `https://example.itential.io/mop/validateAnalyticTemplate`
- Auth: none declared

Validates an analytic template without saving it. Ensures that no UI-based rules are ignored on the create and update endpoints.

## Request body

- object
  - `template` MopMopAnalyticTemplateDoc: A mop analytic template object
    - `_id` string
    - `name` string, required
    - `description` string
    - `namespace` MopMopAnalyticTemplateDocNamespace
      - `type` unknown
      - `_id` string
      - `name` string
      - `accessControl` MopMopAnalyticTemplateDocNamespaceAccessControl
        - `read` string[]
        - `execute` string[]
        - `write` string[]
        - `manage` string[]
    - `os` string
    - `passRule` boolean
    - `prepostCommands` MopMopAnalyticTemplateDocPrepostCommandsItems[]
      - `preRawCommand` string
      - `postRawCommand` string
      - `passRule` boolean
      - `rules` MopMopAnalyticTemplateDocPrepostCommandsItemsRulesItems[]
        - `type` string
        - `preRegex` string
        - `postRegex` string
        - `evaluation` string
      - `preCommandResHTML` string
      - `postCommandResHTML` string
    - `created` integer
    - `createdBy` string, nullable
    - `lastUpdated` integer
    - `lastUpdatedBy` string, nullable

## Response `200`

Validation result: { isValid, errors, warnings }

- MopValidateAnalyticTemplateResponse200
  - `isValid` boolean: Whether the template passed every deep-validation check.
  - `errors` MopValidateAnalyticTemplatePostResponsesContentApplicationJsonSchemaErrorsItems[]: Errors found, each shaped { path, message }. Empty when isValid is true.
    - `path` string
    - `message` string
  - `warnings` MopValidateAnalyticTemplatePostResponsesContentApplicationJsonSchemaWarningsItems[]: Non-blocking issues found, each shaped { path, message }.
    - `path` string
    - `message` string

## Other responses

- `500`: Error response from API

---

[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)
