{"uid":"cap_WlOVz6fhuaiR1c2ewoMW1","slug":"tanod-imagepeek-image-watermark-4b41946f","name":"Tanod imagepeek – Image Watermark","description":"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.","url":"https://tanod.dev/v1/image/watermark?utm_source=zero.xyz","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"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."},"text":{"type":"string","maxLength":200,"minLength":1,"description":"1-200 printable characters."},"tile":{"type":"boolean","default":false,"description":"A staggered grid (at most 2,500 marks)."},"angle":{"type":"number","default":0,"maximum":180,"minimum":-180,"description":"Text rotation in degrees, clockwise (-180 to 180, default 0)."},"color":{"type":"string","default":"#ffffff","pattern":"^(#?[0-9a-fA-F]{6}([0-9a-fA-F]{2})?|transparent)$","description":"Text colour as #rrggbb or #rrggbbaa (default #ffffff)."},"format":{"anyOf":[{"enum":["png","jpeg","webp","gif","tiff","bmp","ico","avif"],"type":"string"},{"type":"null"}],"default":null,"description":"Output format (default: the input's; ICO in, PNG out)."},"margin":{"anyOf":[{"type":"integer","maximum":10000,"minimum":0},{"type":"null"}],"default":null,"description":"Pixels from the edge (default half the font size, at least 4); with tile, the gap between marks."},"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."},"opacity":{"type":"number","default":0.5,"maximum":1,"minimum":0,"description":"0 (invisible) to 1 (opaque); default 0.5."},"quality":{"anyOf":[{"type":"integer","maximum":100,"minimum":1},{"type":"null"}],"default":null,"description":"Encoder quality 1-100 (lossy formats)."},"position":{"enum":["center","top","bottom","left","right","top-left","top-right","bottom-left","bottom-right"],"type":"string","default":"bottom-right","description":"Single mark's place: center, top, bottom, left, right, top-left, top-right, bottom-left or bottom-right (default)."},"font_size":{"anyOf":[{"type":"integer","maximum":2000,"minimum":6},{"type":"null"}],"default":null,"description":"Default: 5% of the short side."},"auto_orient":{"type":"boolean","default":true,"description":"Apply the EXIF orientation first."},"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."}}},"responseSchema":{"type":"json","example":{"font":"DejaVu Sans Mono","bytes":134354,"input":{"bytes":161713,"width":640,"format":"jpeg","frames":1,"height":480,"animated":false,"has_alpha":false},"marks":18,"notes":[],"width":640,"format":"jpeg","height":480,"source":{"url":"https://python-pillow.org","library":"Pillow","license":"MIT-CMU (HPND)"},"final_url":"https://raw.githubusercontent.com/ianare/exif-samples/master/jpg/gps/DSCN0010.jpg","font_size":24,"operation":"watermark","source_url":"https://raw.githubusercontent.com/ianare/exif-samples/master/jpg/gps/DSCN0010.jpg","data_base64":"/9j/4AAQSkZJRgAB... (trimmed: 179,140 base64 characters in the reply)","content_type":"image/jpeg"}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.002","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.002/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.002","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.002","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_x75E_fsJdj7bEnVDr1EWB","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.002","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Adds a text watermark (single placement or tiled staggered grid) to an image, with control over position, opacity, color, angle, font size, and output format.","exampleAgentPrompt":"Add a tiled, white '© MyBrand 2025' watermark at 40% opacity, angled 30 degrees, to this image URL: https://example.com/photo.jpg — output as PNG.","exampleUseCases":[{"title":"Copyright protection for stock photos","prompt":"Watermark this product image at https://example.com/product.jpg with '© AcmeCorp 2025' in white at 50% opacity, placed at the bottom-right, and give me back a JPEG."},{"title":"Tiled brand stamp across marketing assets","prompt":"Apply a tiled 'CONFIDENTIAL' watermark in red (#ff0000) at 30% opacity, angled 45 degrees, across this image at https://cdn.example.com/slide.png — output as PNG."},{"title":"Diagonal draft watermark on a preview image","prompt":"Stamp the word 'DRAFT' diagonally at a 30-degree angle, centered, in gray (#888888) at 60% opacity, on this base64 image — keep the output in the original format."}],"resultDescription":"Returns the processed image binary (or equivalent) with the text watermark applied. The output format matches the input by default, or can be overridden. For lossy formats, quality can be controlled. The watermark can appear at a specific position or tiled across the image in a staggered grid pattern.","failureModes":["Image URL not publicly accessible or larger than 10 MB — returns error","Base64 payload exceeds 13 MB limit — returns error","Invalid color hex code format — validation error","Font size or angle out of allowed range — validation error","Unsupported output format requested — validation error","Watermark text empty or exceeds 200 characters — validation error","Network timeout fetching remote image URL — returns error"],"whenToPreferThis":"Choose this endpoint when you need server-side, programmatic text watermarking of images without requiring any local image processing libraries or GPU resources. It's ideal for agents that need to protect, brand, or annotate images on the fly, supporting both single-placement and tiled patterns with fine-grained control over appearance. Prefer this over client-side solutions when operating in a stateless agent pipeline.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-11T18:44:08.735Z","isFirstParty":false,"canonicalSlug":"tanod-imagepeek-image-watermark-4b41946f"}