---
title: "Validate markdown accessibility"
method: POST
path: "/api/v1/md/validate"
tags: ["validate"]
---

# Validate markdown accessibility

`POST /api/v1/md/validate`

## Request

- Base URL: `https://makespdf.com`
- URL: `https://makespdf.com/api/v1/md/validate`
- Auth: HTTP bearer

Reports heading-hierarchy and missing-alt-text issues without rendering. Not billed.

## Request body

- object
  - `markdown` string, required

## Response `200`

Validation result.

- ValidationResult
  - `valid` boolean, required: True when there are no error-severity issues.
  - `issues` ValidationIssue[], required
    - `severity` 'error' | 'warning', required
    - `message` string, required
    - `path` string: Location in the document tree.
    - `rule` string: Rule identifier, e.g. a PDF/UA check.
  - `summary` object, required
    - `errors` integer, required
    - `warnings` integer, required

## Other responses

- `400`: Malformed body or failed validation. Never billed.
- `401`: Missing or invalid Bearer token. The body links the docs, llms.txt and the auth skill.
- `429`: Rate limit exceeded.
- `500`: Unexpected server error. Never billed.

---

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