# Netzhandwerker Image Preflight Validator

> Netzhandwerker Image Preflight Validator is a paid API for AI agents from tools.netzhandwerker.de, paid per call via x402, $0.002/call, status unknown (last checked 2026-09-14).

Validates an image against configurable requirements and returns detailed technical metadata including format, dimensions, EXIF data, and pass/fail status.

## Facts

- Endpoint: POST https://tools.netzhandwerker.de/v1/image/preflight
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/netzhandwerker-image-preflight-validator-f4a3cfc1
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_QnyzdkyUdjsVReuGXCVjd

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability netzhandwerker-image-preflight-validator-f4a3cfc1 -d '<json body>'
```

Example prompt: Before I upload this product photo, check if it passes as a PNG under 2MB, at least 800px wide, with a 16:9 aspect ratio and no EXIF metadata — here's the base64-encoded image.

## When to prefer this

Use this endpoint when you need a fast, automated preflight check on an image before uploading, publishing, or processing it — especially when you need to enforce format, dimension, size, aspect ratio, and privacy/metadata constraints in a single call. Prefer this over manual inspection or generic image libraries when operating in an autonomous agent pipeline that requires machine-readable pass/fail output with detailed diagnostics.

## Known failure modes

- Invalid or corrupt base64 input — returns error or malformed response
- Image does not meet specified requirements — returns passes:false with issues array populated
- Unsupported image format — may return format as unknown or fail to parse
- Missing required base64 field — request rejected
- Oversized payload causing timeout or rejection
- Aspect ratio check fails when image dimensions don't match the specified ratio within tolerance

## How this service works

x402-Werkzeuge für autonome Agenten.

## Output

Returns a JSON object with pass/fail status, image format, width, height, file size in bytes, megapixels, aspect ratio, orientation, color space, bit depth, alpha channel presence, ICC profile presence, EXIF presence, text metadata presence, animation flag, PNG chunk list, and an array of human-readable hints and issues flagging potential problems.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "base64": {
   "type": "string",
   "description": "Bilddatei als Base64"
  },
  "requirements": {
   "type": "object",
   "properties": {
    "formats": {
     "type": "array",
     "items": {
      "type": "string"
     }
    },
    "max_bytes": {
     "type": "integer"
    },
    "max_width": {
     "type": "integer"
    },
    "min_width": {
     "type": "integer"
    },
    "max_height": {
     "type": "integer"
    },
    "min_height": {
     "type": "integer"
    },
    "aspect_ratio": {
     "type": "string",
     "description": "zum Beispiel 16:9"
    },
    "aspect_tolerance": {
     "type": "number",
     "default": 0.02
    },
    "require_no_metadata": {
     "type": "boolean"
    }
   },
   "description": "Eigene Anforderungen"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "bytes": 1482113,
  "hints": [
   "EXIF kann Ort und Geraet enthalten. Vor Veroeffentlichung entfernen."
  ],
  "width": 1920,
  "chunks": [
   "IHDR",
   "iCCP",
   "eXIf",
   "IDAT",
   "IEND"
  ],
  "format": "png",
  "height": 1080,
  "issues": [],
  "passes": true,
  "has_icc": true,
  "animated": false,
  "has_exif": true,
  "bit_depth": 8,
  "has_alpha": true,
  "color_type": 6,
  "interlaced": false,
  "megapixels": 2.07,
  "color_space": "rgba",
  "orientation": "quer",
  "aspect_ratio": 1.7778,
  "has_text_metadata": false
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/netzhandwerker-image-preflight-validator-f4a3cfc1/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from tools.netzhandwerker.de](https://www.zero.xyz/host/tools.netzhandwerker.de/llms.txt)
