---
title: "Validate media URL"
method: POST
path: "/v1/tools/validate/media"
tags: ["Validate"]
---

# Validate media URL

`POST /v1/tools/validate/media`

Check if a media URL is accessible and return metadata (content type, file size) plus per-platform size limit comparisons.

Performs a HEAD request (with GET fallback) to detect content type and size. Rejects private/localhost URLs for SSRF protection.

Platform limits are sourced from each platform's actual upload constraints.

## Request body

- object
  - `url` string, uri, required — Public media URL to validate

## Response `200`

Media validation result

- object
  - `valid` boolean
  - `url` string, uri
  - `error` string — Error message if valid is false
  - `contentType` string
  - `size` integer, nullable — File size in bytes
  - `sizeFormatted` string
  - `type` 'image' | 'video' | 'unknown'
  - `platformLimits` object — Per-platform size limit comparison (only present when size and type are known)

## Other responses

- `401` — Unauthorized

---

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