---
title: "Validate Manifest"
method: POST
path: "/v1/manifest/validate"
tags: ["Manifest"]
---

# Validate Manifest

`POST /v1/manifest/validate`

Validate a YAML manifest without applying.

Checks:
- YAML syntax validity
- Schema validation against manifest models
- Cross-resource reference validation
- Dependency resolution (no circular dependencies)
- Secret reference existence

Returns detailed validation results including:
- Resource counts by type
- Missing secrets that need to be configured
- Validation errors and warnings

**Example:**
```bash
curl -X POST /v1/manifest/validate \
  -H "Authorization: Bearer $API_KEY" \
  -F "manifest_file=@mixpeek.yaml"
```

## Response `200`

Successful Response

- ValidateResult — Result of validating a manifest.
  - `valid` boolean, required — Whether the manifest is valid
  - `resources` object — Count of each resource type
  - `missing_secrets` string[] — Secret names referenced but not configured
  - `errors` string[] — Validation errors
  - `warnings` string[] — Validation warnings

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `422` — Validation Error
- `500` — Internal Server Error

---

[API](https://skmtc.net/mixpeek/apis/mixpeek-api.md) · [All operations](https://skmtc.net/mixpeek/apis/mixpeek-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/mixpeek/mixpeek-api/versions/5d4c905106b4/schema)
