Describe Image API
POST /api/describe-image $0.02 per call
USDC on Base · x402
IMAGE DESCRIPTION (vision AI) — POST {url} or {image_base64} and get back what is IN the image: a detailed description, notable objects, visible text transcribed, colors, and style. Or ask a specific {question} about the image ('what error is on this screen?'). PNG/JPEG/GIF/WebP up to 5 MB. For agents without eyes: alt text, screenshot triage, image search and moderation. Fast vision model; the x402 payment IS the auth.
Parameters
| Name | In | Description | |
|---|---|---|---|
url | body | Public http(s) URL of the image (png, jpeg, gif, webp; max 5 MB) | |
image_base64 | body | Alternative to url: the image as base64 (data URI accepted) | |
question | body | Optional specific question about the image, up to 500 chars — replaces the default full description |
Example request
curl -X POST "https://api.webbersites.com/api/describe-image" \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com/photo.jpg","question":"What text is visible in this image?"}'
# first call returns 402 + payment requirements; an x402 client pays and retries automaticallyExample response
{
"description": "A red-brick storefront at dusk. Visible text: 'OPEN 7 DAYS'. Notable objects: awning, bicycle. Dominant colors: brick red, teal.",
"content_type": "image/jpeg",
"input_bytes": 48211,
"model": "gemini-2.5-flash-lite"
}MCP tool: post_describe_image — via npx -y webbersites-x402-mcp (local, key stays on your machine) or the remote endpoint https://api.webbersites.com/mcp.
How payment works
There is no signup and no API key. Call the endpoint; it replies 402 Payment Required with machine-readable payment requirements. Your client signs a USDC transfer authorization (EIP-3009, gasless) and retries with the X-PAYMENT header — @x402/fetch does this automatically. See the overview for a working snippet.