{"uid":"cap_cjy_GWYwxhUtPKpuaLzu_","slug":"tanod-imagepeek-perceptual-hash-d06122e7","name":"Tanod imagepeek – Perceptual Hash","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/hash?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."},"hash_size":{"enum":[8,16],"type":"integer","default":8,"description":"Hash grid: 8 (64-bit hashes, default) or 16 (256-bit)."},"algorithms":{"anyOf":[{"type":"array","items":{"enum":["ahash","dhash","phash","whash"],"type":"string"},"maxItems":4,"minItems":1},{"type":"null"}],"default":null,"description":"Default: all four."},"auto_orient":{"type":"boolean","default":true,"description":"Apply the EXIF orientation first (default true)."},"compare_url":{"anyOf":[{"type":"string","maxLength":2048},{"type":"null"}],"default":null,"description":"A second image to compare (or compare_base64)."},"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."},"compare_base64":{"anyOf":[{"type":"string","maxLength":13333464},{"type":"null"}],"default":null,"description":"A second image as base64 (at most 10 MB decoded; or compare_url)."}}},"responseSchema":{"type":"json","example":{"bits":64,"input":{"bytes":161713,"width":640,"format":"jpeg","frames":1,"height":480,"animated":false,"has_alpha":false},"notes":[],"hashes":{"ahash":"fcffffb310160040","dhash":"313c1d66e2e4e595","phash":"cedbd88c49eaf808","whash":"fcfffff310340000"},"source":{"url":"https://python-pillow.org","library":"Pillow","license":"MIT-CMU (HPND)"},"compare":{"input":{"bytes":159137,"width":640,"format":"jpeg","frames":1,"height":480,"animated":false,"has_alpha":false},"hashes":{"ahash":"e4fae8c01e0e0000","dhash":"0c168a9174dce2be","phash":"f1f136161a62d393","whash":"eefaf8d03e1e1202"},"distance":{"ahash":19,"dhash":34,"phash":34,"whash":20},"final_url":"https://raw.githubusercontent.com/ianare/exif-samples/master/jpg/gps/DSCN0012.jpg","similarity":{"ahash":0.7031,"dhash":0.4688,"phash":0.4688,"whash":0.6875},"source_url":"https://raw.githubusercontent.com/ianare/exif-samples/master/jpg/gps/DSCN0012.jpg","likely_same":false},"final_url":"https://raw.githubusercontent.com/ianare/exif-samples/master/jpg/gps/DSCN0010.jpg","operation":"hash","source_url":"https://raw.githubusercontent.com/ianare/exif-samples/master/jpg/gps/DSCN0010.jpg"}},"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_ycTVl-QuU6dIkZCBpfa-E","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":"Computes perceptual hashes (aHash, dHash, pHash, wHash) for one image and optionally compares them against a second image to return Hamming distances.","exampleAgentPrompt":"Can you compute the perceptual hashes (aHash, dHash, pHash, and wHash) for this image — https://example.com/photo.jpg — and also compare it against https://example.com/photo2.jpg to see how similar they are?","exampleUseCases":[{"title":"Duplicate image detection in a media library","prompt":"I have two image URLs — https://cdn.mysite.com/img_original.jpg and https://cdn.mysite.com/img_resized.jpg — can you run perceptual hashes on both and tell me their Hamming distance so I can see if they're near-duplicates?"},{"title":"Detecting reposted or slightly cropped images","prompt":"Someone might have reposted my photo with a slight crop. Here's my original: https://mycdn.com/original.png. Can you hash it and compare it to https://suspectsite.com/upload.png using all four perceptual hash algorithms?"},{"title":"Image fingerprinting for content moderation pipeline","prompt":"I need to fingerprint this image for our moderation system — can you compute all four perceptual hashes (aHash, dHash, pHash, wHash) at hash size 16 for https://uploads.example.com/user_submitted.jpg?"}],"resultDescription":"Returns one or more perceptual hash values (aHash, dHash, pHash, wHash) as hex strings for the input image. When a second comparison image is provided, also returns pairwise Hamming distances between each hash, indicating the degree of visual similarity (lower distance = more similar).","failureModes":["Image URL is unreachable or returns non-200 — endpoint cannot fetch the image","Image exceeds 10 MB size limit — rejected with size error","Invalid or unsupported image format — decoding failure","Base64 payload is malformed or exceeds character limit — parse error","No image provided (both url and image_base64 are null) — validation error","Compare image also fails to load or decode — comparison skipped or error returned"],"whenToPreferThis":"Use this endpoint when you need fast, lightweight image similarity detection or deduplication without full ML-based embedding models. It is ideal for near-duplicate detection, tamper/crop detection, or building image fingerprint databases. Prefer it over pixel-diff tools when images may be resized, color-shifted, or slightly cropped, since perceptual hashes are robust to those transformations. Choose it over heavy vision APIs when cost and latency matter and exact pixel fidelity is not required.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-11T18:43:21.491Z","isFirstParty":false,"canonicalSlug":"tanod-imagepeek-perceptual-hash-d06122e7"}