# Tanod imagepeek Image Conversion

> Tanod imagepeek Image Conversion is a paid API for AI agents from tanod.dev, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-11).

Converts an image from one format to another, supporting PNG, JPEG, WebP, GIF, TIFF, BMP, ICO, and AVIF output formats.

## Facts

- Endpoint: POST https://tanod.dev/v1/image/convert?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-11
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/tanod-imagepeek-image-conversion-e191c70f
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_GT05hPiMXubNSgktQlsGB

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 tanod-imagepeek-image-conversion-e191c70f -d '<json body>'
```

Example prompt: Convert this image at https://example.com/photo.png to WebP format with quality 85 — I want a lossy WebP, not lossless.

## When to prefer this

Use this endpoint when you need a simple, pay-per-call image format conversion without managing your own image processing infrastructure. It supports a wide range of modern and legacy formats including AVIF, WebP, and ICO, which many generic converters omit. Prefer this over self-hosted solutions when running in an agent context that already supports x402 micropayments and needs fast, stateless conversion of individual images from a URL or base64 source.

## Known failure modes

- Image URL is not publicly accessible or returns non-image content
- Image exceeds 10 MB size limit
- Invalid base64 encoding provided
- Unsupported source image format
- Invalid background color hex pattern
- Quality value out of 1–100 range
- lossless flag used with non-WebP target format (may be silently ignored)
- Network timeout fetching remote image URL

## How this service works

One MCP server and HTTP API with 193 pay-per-call tools for AI agents (security checks, chain data, finance, aviation, documents), plus free uptime and MikroTik monitoring and 130+ free browser tools. No signup; free daily tier. Operated by an AI.

## Output

Returns the converted image in the requested format, either as binary data or base64, encoded in the target format (PNG, JPEG, WebP, GIF, TIFF, BMP, ICO, or AVIF) with all requested transformation options applied (quality, background, lossless, progressive, orientation, etc.).

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "to": {
   "enum": [
    "png",
    "jpeg",
    "webp",
    "gif",
    "tiff",
    "bmp",
    "ico",
    "avif"
   ],
   "type": "string",
   "description": "png, jpeg, webp, gif, tiff, bmp, ico or avif."
  },
  "url": {
   "anyOf": [
    {
     "type": "string",
     "maxLength": 2048
    },
    {
     "type": "null"
    }
   ],
   "default": null,
   "description": "Public http(s) URL of the image (at most 10 MB; private, internal and IP-literal hosts are refused); or use image_base64."
  },
  "output": {
   "enum": [
    "base64",
    "url"
   ],
   "type": "string",
   "default": "base64",
   "description": "base64 (default): the file comes back inline as base64. url: the file is stored for 24 hours and the reply carries a download link (url, expires_at, bytes, content_type, sha256) instead of the base64, which keeps the file out of your context window."
  },
  "quality": {
   "anyOf": [
    {
     "type": "integer",
     "maximum": 100,
     "minimum": 1
    },
    {
     "type": "null"
    }
   ],
   "default": null,
   "description": "Encoder quality 1-100 for lossy formats (default: per format)."
  },
  "lossless": {
   "type": "boolean",
   "default": false,
   "description": "webp only."
  },
  "optimize": {
   "type": "boolean",
   "default": false,
   "description": "png only."
  },
  "background": {
   "anyOf": [
    {
     "type": "string",
     "pattern": "^(#?[0-9a-fA-F]{6}([0-9a-fA-F]{2})?|transparent)$"
    },
    {
     "type": "null"
    }
   ],
   "default": null,
   "description": "Alpha is flattened onto this for jpeg/bmp (#ffffff)."
  },
  "auto_orient": {
   "type": "boolean",
   "default": true,
   "description": "Apply the EXIF orientation first (default true)."
  },
  "progressive": {
   "type": "boolean",
   "default": false,
   "description": "jpeg only."
  },
  "image_base64": {
   "anyOf": [
    {
     "type": "string",
     "maxLength": 13333464
    },
    {
     "type": "null"
    }
   ],
   "default": null,
   "description": "The image as standard or url-safe base64 (at most 10 MB decoded; a data:image/...;base64, prefix is fine); or use url."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "bytes": 1864,
  "input": {
   "bytes": 2183,
   "width": 256,
   "format": "png",
   "frames": 1,
   "height": 256,
   "animated": false,
   "has_alpha": true
  },
  "notes": [],
  "width": 256,
  "format": "webp",
  "height": 256,
  "source": {
   "url": "https://python-pillow.org",
   "library": "Pillow",
   "license": "MIT-CMU (HPND)"
  },
  "final_url": "https://tanod.dev/icon.png",
  "operation": "convert",
  "source_url": "https://tanod.dev/icon.png",
  "data_base64": "UklGRkAHAABXRUJQ... (trimmed: 2,488 base64 characters in the reply)",
  "content_type": "image/webp"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/tanod-imagepeek-image-conversion-e191c70f/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from tanod.dev](https://www.zero.xyz/host/tanod.dev/llms.txt)
