API reference
Every tool is one HTTPS endpoint at /api/<id>. Calls require an API key (sign in first) — the key pins requests to your monthly quota.
Authentication
# Every /api/* call requires an account id + API key.
# Generate yours after signing in at https://xtract.bot/account/keys.
curl -X POST https://api.xtract.bot/api/jq-filter \
-H "content-type: application/json" \
-H "x-account-id: <your account id>" \
-H "x-api-key: <your api key>" \
-d '{"input":"<base64 json>","filter":".name"}'Tools (183)
- AVIF → JPEGConvert AVIF images to JPEG.
POST /api/avif-to-jpeg - AVIF → PNGConvert AVIF images to PNG.
POST /api/avif-to-png - AVIF → WebPConvert AVIF images to WebP.
POST /api/avif-to-webp - Base64 decodeDecode a base64 string to its original bytes.
POST /api/base64-decode - Base64 encodeEncode bytes as base64.
POST /api/base64-encode - Color convertConvert a colour between hex, rgb, hsl, hsv, and CSS-named formats.
POST /api/color-convert - CSS minifyMinify CSS — strip whitespace, comments, and shorten values.
POST /api/css-minify - CSV → JSONParse CSV into a JSON array of objects.
POST /api/csv-to-json - CSV validateValidate CSV structure: row count, column consistency, quote balance.
POST /api/csv-validate - Diff textCompute a diff between two strings (line / word / character).
POST /api/diff-text - Document OCRExtract text from a document image with -. Returns plain text + optional per-word/per-line bounding boxes and confidence scores.
POST /api/document-ocr - Prepare for OCRPre-process a scanned document for better OCR results.
POST /api/document-prepare-for-ocr - Word to HTMLConvert a .docx Word document to clean HTML.
POST /api/docx-to-html - Word to textExtract plain text from a .docx Word document.
POST /api/docx-to-text - Excel to CSVConvert a sheet from an Excel workbook (.xlsx / .xls) to CSV.
POST /api/excel-to-csv - Favicon generatorGenerate a multi-resolution favicon (.ico) from a single source image.
POST /api/favicon-generate - Font convertConvert WOFF2 fonts back to TTF/OTF.
POST /api/font-convert - Font infoInspect a font: family, weight, glyph count, metrics, and supported characters.
POST /api/font-info - Font subsetReduce a font to only the codepoints you actually use.
POST /api/font-subset - GIF extract framesExtract every frame of an animated GIF as PNGs.
POST /api/gif-extract-frames - GIF → animated PNG (APNG)Convert an animated GIF to an animated PNG (APNG).
POST /api/gif-to-apng - GIF → JPEGConvert a GIF to a JPEG (first frame).
POST /api/gif-to-jpeg - GIF → PNGConvert a GIF to a PNG (first frame).
POST /api/gif-to-png - GIF → WebP (still)Convert a GIF to a still WebP image (first frame).
POST /api/gif-to-webp-still - GIF → animated WebPConvert an animated GIF to an animated WebP.
POST /api/gif-to-webp - Gzip compressCompress bytes into a gzip (.gz) stream.
POST /api/gzip-compress - Gzip decompressDecompress a gzip (.gz) stream to its original bytes.
POST /api/gzip-decompress - Hash fileHash arbitrary file bytes with SHA-1 / SHA-256 / SHA-384 / SHA-512.
POST /api/hash-file - Hash bytesHash a text string with SHA-1 / SHA-256 / SHA-384 / SHA-512.
POST /api/hash-text - HEIC to AVIFConvert an HEIC/HEIF image to AVIF — typically 30–50% smaller than JPEG at equivalent visual quality.
POST /api/heic-to-avif - HEIC to JPEGConvert an HEIC/HEIF image to JPEG.
POST /api/heic-to-jpeg - HEIC to PNGConvert an HEIC/HEIF image to PNG (lossless).
POST /api/heic-to-png - HEIC to WebPConvert an HEIC/HEIF image to WebP — typically 25-35% smaller than JPEG at the same quality.
POST /api/heic-to-webp - Hex decodeDecode a hexadecimal string to its original bytes.
POST /api/hex-decode - Hex encodeEncode bytes as a hexadecimal string.
POST /api/hex-encode - HMAC signCompute an HMAC signature (SHA-1/256/384/512) over input bytes.
POST /api/hmac-sign - HMAC verifyVerify an HMAC signature in constant time.
POST /api/hmac-verify - HTML escape / unescapeHTML-escape text (or unescape it back).
POST /api/html-escape - HTML sanitizeStrip dangerous HTML and return safe-to-render markup.
POST /api/html-sanitize - HTML to MarkdownConvert HTML to clean Markdown.
POST /api/html-to-markdown - HTML to textStrip HTML and return readable plain text.
POST /api/html-to-text - Image add textAdd text to an image with configurable font, size, position, and colour.
POST /api/image-add-text - Annotate detectionsDraw boxes / labels onto an image given a list of detection results.
POST /api/image-annotate-detections - Auto-enhanceApply a sensible-default tonal correction (auto-levels + auto-contrast).
POST /api/image-auto-enhance - Auto-orient imageRotate an image based on its EXIF orientation tag and clear the tag.
POST /api/image-auto-orient - AVIF → ASCIIRender an AVIF image as ASCII art.
POST /api/image-avif-to-ascii - Image blurApply a Gaussian blur to an image.
POST /api/image-blur - BMP → ASCIIRender a BMP image as ASCII art.
POST /api/image-bmp-to-ascii - BMP to PNGConvert a Windows BMP image to PNG.
POST /api/image-bmp-to-png - Image charcoalApply a charcoal-sketch effect to an image.
POST /api/image-charcoal - Chroma key (green-screen)Replace a colour key (typically green or blue) with transparency.
POST /api/image-chroma-key - CLAHE (adaptive histogram equalize)Apply CLAHE (contrast-limited adaptive histogram equalisation) to an image.
POST /api/image-clahe - Image color replaceReplace one colour in an image with another.
POST /api/image-color-replace - Count shapesCount distinct objects in an image.
POST /api/image-count - Image crop to circleCrop an image to a circle (transparent corners).
POST /api/image-crop-circle - Crop imageCrop an image to a rectangular region.
POST /api/image-crop - Dedupe checkCheck whether two images are duplicates / near-duplicates.
POST /api/image-dedupe-check - Deskew (auto-straighten)Detect and correct skew on a scanned document.
POST /api/image-deskew - Detect ArUco markersDetect ArUco fiducial markers in an image.
POST /api/image-detect-aruco - Image detect barcodeDetect and decode 1D barcodes (EAN, UPC, Code 128, etc.).
POST /api/image-detect-barcode - Detect blur (quality check)Score an image's sharpness / blurriness.
POST /api/image-detect-blur-quality - Detect circlesDetect circles in an image (Hough transform).
POST /api/image-detect-circles - Detect contoursFind object outlines (contours) in an image.
POST /api/image-detect-contours - Image detect documentFind a paper document in a photo and rectify its perspective.
POST /api/image-detect-document - Detect linesDetect straight lines in an image (Hough transform).
POST /api/image-detect-lines - Image detect QRDetect and decode QR codes in an image — including rotated, perspective-warped, or partially occluded codes.
POST /api/image-detect-qr - Image diffPixel-level diff between two PNGs. Returns the diff image plus a similarity score.
POST /api/image-diff - Image dominant colorsExtract the most prominent colours from an image.
POST /api/image-dominant-colors - Edge detect (Canny)Detect edges in an image (Canny edge detection).
POST /api/image-edges - Image EXIFRead EXIF, IPTC, and XMP metadata from a JPEG.
POST /api/image-exif - Image face cropDetect a face and return a tightly-cropped headshot.
POST /api/image-face-crop - Image face detectDetect faces in an image and return their bounding boxes + confidence scores.
POST /api/image-face-detect - Find templateFind a smaller template image inside a larger image (template matching).
POST /api/image-find-template - Image flip / mirrorFlip an image horizontally, vertically, or both.
POST /api/image-flip - GIF → ASCIIRender a GIF's first frame as ASCII art.
POST /api/image-gif-to-ascii - Image grayscaleConvert an image to greyscale using a configurable luminance method.
POST /api/image-grayscale - Blockhash (perceptual)Compute a perceptual block-hash of an image (similar images produce similar hashes).
POST /api/image-hash-blockhash - HEIC → ASCIIRender an HEIC/HEIF image as ASCII art.
POST /api/image-heic-to-ascii - Image histogramCompute per-channel pixel-value histograms (R/G/B/luminance) for an image.
POST /api/image-histogram - ICO → ASCIIRender a Windows .ico icon as ASCII art.
POST /api/image-ico-to-ascii - ICO to PNGExtract a PNG from a Windows .ico icon file.
POST /api/image-ico-to-png - Image infoRead an image's dimensions, format, and other basic metadata.
POST /api/image-info - JPEG → ASCIIRender a JPEG image as ASCII art.
POST /api/image-jpeg-to-ascii - JPEG → PNGConvert JPEG to PNG (lossless).
POST /api/image-jpeg-to-png - JPEG → WebPConvert JPEG to WebP — typically 25–35% smaller at the same perceptual quality.
POST /api/image-jpeg-to-webp - Match features (ORB)Find matching feature points between two images (ORB / SIFT-style matching).
POST /api/image-match-features - Measure shapesMeasure the size of objects in an image given a reference scale.
POST /api/image-measure - Image modulateAdjust hue, saturation, and brightness in one pass.
POST /api/image-modulate - Overlay imagesComposite one image on top of another.
POST /api/image-overlay - Image paddingAdd a coloured border / padding around an image.
POST /api/image-padding - Image perceptual hashCompute a perceptual hash (DCT-based pHash) of an image.
POST /api/image-perceptual-hash - Image perspective warpApply a 4-point perspective warp to an image.
POST /api/image-perspective-warp - Image perspectiveDetect a rectangular subject in an image and rectify its perspective.
POST /api/image-perspective - Image pixelatePixelate an image (mosaic effect).
POST /api/image-pixelate - PNG → ASCIIRender a PNG image as ASCII art.
POST /api/image-png-to-ascii - PNG → JPEGConvert PNG to JPEG with configurable quality.
POST /api/image-png-to-jpeg - PNG to TIFFConvert PNG to TIFF.
POST /api/image-png-to-tiff - PNG → WebPConvert PNG to WebP.
POST /api/image-png-to-webp - Blur faces (privacy)Detect faces in an image and blur each one in place.
POST /api/image-privacy-blur-faces - Image quantizeReduce an image to a fixed colour palette.
POST /api/image-quantize - Image background removalRemove a uniform background from an image (colour-based).
POST /api/image-remove-bg - Replace backgroundRemove a uniform background and replace it with a chosen colour.
POST /api/image-replace-background - Resize JPEGResize a JPEG image (output stays JPEG).
POST /api/image-resize-jpeg - Resize PNGResize a PNG image (output stays PNG).
POST /api/image-resize-png - Resize WebPResize a WebP image (output stays WebP).
POST /api/image-resize-webp - Image resizeResize a PNG / JPEG / WebP image to specified dimensions.
POST /api/image-resize - Rotate imageRotate an image by an arbitrary angle.
POST /api/image-rotate - Image sepiaApply a sepia tone to an image.
POST /api/image-sepia - Image sharpenSharpen an image (unsharp mask).
POST /api/image-sharpen - Strip EXIF (JPEG)Remove all EXIF and IPTC metadata from an image.
POST /api/image-strip-exif - Image thresholdConvert an image to pure black-and-white using a brightness threshold.
POST /api/image-threshold - TIFF → ASCIIRender a TIFF image as ASCII art.
POST /api/image-tiff-to-ascii - TIFF to PNGConvert TIFF to PNG.
POST /api/image-tiff-to-png - Image trimCrop away uniform-colour borders / padding from an image.
POST /api/image-trim - Undistort (lens correction)Correct lens distortion (barrel / pincushion) in an image.
POST /api/image-undistort - Image watermarkStamp a text watermark across an image.
POST /api/image-watermark - Animated WebP extract framesExtract every frame of an animated WebP as PNGs.
POST /api/image-webp-animated-to-frames - WebP → ASCIIRender a WebP image as ASCII art.
POST /api/image-webp-to-ascii - WebP → PNGConvert WebP to PNG.
POST /api/image-webp-to-png - JPEG → AVIFConvert JPEG to AVIF.
POST /api/jpeg-to-avif - jq filterApply a jq-style filter expression to JSON input.
POST /api/jq-filter - JavaScript minifyMinify JavaScript / TypeScript with name-mangling and dead-code elimination.
POST /api/js-minify - JSON diffCompare two JSON documents and emit a list of differences.
POST /api/json-diff - Format JSONPretty-print, minify, or sort the keys of a JSON document.
POST /api/json-format - JSON patchApply a JSON Patch (RFC 6902) or a JSON Merge Patch (RFC 7396) to a document.
POST /api/json-patch - JSON → CSVConvert a JSON array of objects into CSV.
POST /api/json-to-csv - JSON to JSON SchemaGenerate a JSON Schema from one or more example documents.
POST /api/json-to-jsonschema - JSON to TOMLConvert a JSON document to TOML.
POST /api/json-to-toml - JSON to ExcelConvert a JSON array of objects to an Excel .xlsx workbook.
POST /api/json-to-xlsx - JSON to XMLConvert a JSON document to XML.
POST /api/json-to-xml - JSON → YAMLConvert a JSON document to YAML.
POST /api/json-to-yaml - JSONPath queryQuery a JSON document with a JSONPath expression.
POST /api/jsonpath - JWT decodeDecode a JSON Web Token without verifying it. Returns header + payload + claims.
POST /api/jwt-decode - JWT signSign a JWT (HS256 / HS384 / HS512).
POST /api/jwt-sign - JWT verifyVerify a JWT signature and return the decoded claims.
POST /api/jwt-verify - Lorem IpsumGenerate Lorem ipsum placeholder text.
POST /api/lorem-ipsum - Markdown to PDFRender a Markdown document to a PDF.
POST /api/markdown-to-pdf - Markdown TOCGenerate a table of contents from a Markdown document.
POST /api/markdown-toc - Markdown → HTMLRender CommonMark Markdown to HTML.
POST /api/md-to-html - MIME detectDetect the MIME type and file extension of a binary input.
POST /api/mime-detect - MP3 metadataExtract ID3 tags and audio metadata from an MP3.
POST /api/mp3-metadata - OCR ID cardPrepare a photo of an ID card for OCR.
POST /api/ocr-prep-id-card - OCR receiptPrepare a photo of a paper receipt for OCR.
POST /api/ocr-prep-receipt - OCR whiteboardPrepare a photo of a whiteboard or poster for OCR.
POST /api/ocr-prep-whiteboard - OG image generatorGenerate an Open Graph share-card image with title, subtitle, and theme.
POST /api/og-image-generate - Password generateGenerate cryptographically random passwords with configurable length and character classes.
POST /api/password-generate - PDF compressReduce a PDF file size by re-compressing embedded images and dropping redundant streams.
POST /api/pdf-compress - Encrypt PDFAdd password protection and permission restrictions to a PDF.
POST /api/pdf-encrypt - PDF → textExtract the readable text from a PDF.
POST /api/pdf-extract-text - PDF inspectRead PDF metadata: page count, dimensions, title / author / creation date.
POST /api/pdf-inspect - Merge PDFsConcatenate multiple PDFs into a single document.
POST /api/pdf-merge - PDF rotateRotate selected pages of a PDF by 90° increments.
POST /api/pdf-rotate - PDF splitSplit a PDF into a set of single-page or page-range PDFs.
POST /api/pdf-split - PDF page → PNGRender a PDF page as a PNG image.
POST /api/pdf-to-image - PDF watermarkAdd a text watermark to every page of a PDF.
POST /api/pdf-watermark - PNG → AVIFConvert PNG to AVIF.
POST /api/png-to-avif - QR decodeDecode a clean, head-on QR code from an image.
POST /api/qr-decode - QR encodeGenerate a QR code from text or a URL.
POST /api/qr-encode - Regex replaceApply a regex find-and-replace to a string.
POST /api/regex-replace - Regex testTest a regex against text and return all matches with capture groups.
POST /api/regex-test - SlugifyTurn a string into a URL-safe slug.
POST /api/slugify - Optimize SVGMinify an SVG: strip metadata, redundant attributes, unused defs, comments.
POST /api/svg-optimize - SVG to PNGRasterize an SVG to a PNG bitmap.
POST /api/svg-to-png - Text case convertConvert a string between case styles (camel / snake / kebab / Pascal / Title / etc.).
POST /api/text-case - Text statsCount words, lines, characters, and reading time of a text.
POST /api/text-stats - TIFF → JPEGConvert TIFF to JPEG.
POST /api/tiff-to-jpeg - TIFF → WebPConvert TIFF to WebP.
POST /api/tiff-to-webp - Timestamp convertConvert between Unix timestamps, ISO-8601 dates, and human-readable formats.
POST /api/timestamp-convert - Token generateGenerate cryptographically random tokens (hex, base64url, etc.).
POST /api/token-generate - TOML to JSONParse TOML into JSON.
POST /api/toml-to-json - URL decodeURL-decode a string (`%XX` → original characters).
POST /api/url-decode - URL encodeURL-encode a string for safe use in URL paths or query parameters.
POST /api/url-encode - UUID generateGenerate a UUID (v4 random or v7 time-ordered).
POST /api/uuid-generate - WebP → AVIFConvert WebP to AVIF.
POST /api/webp-to-avif - WebP → JPEGConvert WebP to JPEG with configurable quality.
POST /api/webp-to-jpeg - Excel to JSONConvert an Excel sheet to a JSON array.
POST /api/xlsx-to-json - XML to JSONParse XML into JSON.
POST /api/xml-to-json - YAML → JSONParse YAML into JSON.
POST /api/yaml-to-json - yq filterApply a jq-style filter expression to a YAML document.
POST /api/yq-filter - Create ZIPPack one or more files into a ZIP archive.
POST /api/zip-create - Extract ZIPList or extract the entries inside a ZIP archive.
POST /api/zip-extract - Zstd compressCompress bytes with Zstandard (.zst). Typically 30–50% smaller than gzip at similar speed.
POST /api/zstd-compress - Zstd decompressDecompress a Zstandard (.zst) stream to its original bytes.
POST /api/zstd-decompress