{
    "ok": true,
    "version": "1.0",
    "docs": "https://mate.tools/api",
    "openapi": "https://mate.tools/api/openapi.json",
    "mcp": "https://mate.tools/api/mcp/",
    "time": "2026-06-24T14:34:50Z",
    "endpoints": [
        {
            "name": "count-lines",
            "method": "POST",
            "url": "https://mate.tools/api/v1/count-lines.php",
            "description": "Count lines, words, sentences, paragraphs, characters and line endings."
        },
        {
            "name": "base64-encode",
            "method": "POST",
            "url": "https://mate.tools/api/v1/base64-encode.php",
            "description": "Encode text or bytes to Base64 (standard or URL-safe)."
        },
        {
            "name": "base64-decode",
            "method": "POST",
            "url": "https://mate.tools/api/v1/base64-decode.php",
            "description": "Decode Base64 to text."
        },
        {
            "name": "url-encode",
            "method": "POST",
            "url": "https://mate.tools/api/v1/url-encode.php",
            "description": "Percent-encode a string (component / form / path mode)."
        },
        {
            "name": "url-decode",
            "method": "POST",
            "url": "https://mate.tools/api/v1/url-decode.php",
            "description": "Percent-decode a URL-encoded string."
        },
        {
            "name": "hash",
            "method": "POST",
            "url": "https://mate.tools/api/v1/hash.php",
            "description": "MD5, SHA-1, SHA-256, SHA-512, SHA-3, CRC32 hashes of text."
        },
        {
            "name": "password",
            "method": "POST",
            "url": "https://mate.tools/api/v1/password.php",
            "description": "Generate cryptographically random passwords with configurable character classes."
        },
        {
            "name": "password-strength",
            "method": "POST",
            "url": "https://mate.tools/api/v1/password-strength.php",
            "description": "Score a password (0-4), compute entropy in bits, and estimate offline-GPU crack time."
        },
        {
            "name": "json-format",
            "method": "POST",
            "url": "https://mate.tools/api/v1/json-format.php",
            "description": "Validate, pretty-print, minify or analyse a JSON document."
        },
        {
            "name": "json-to-csv",
            "method": "POST",
            "url": "https://mate.tools/api/v1/json-to-csv.php",
            "description": "Convert a JSON array of objects to CSV. Configurable delimiter, columns, optional flattening."
        },
        {
            "name": "case-convert",
            "method": "POST",
            "url": "https://mate.tools/api/v1/case-convert.php",
            "description": "Convert text into upper/lower/title/sentence/snake/kebab/camel/pascal/constant case."
        },
        {
            "name": "slugify",
            "method": "POST",
            "url": "https://mate.tools/api/v1/slugify.php",
            "description": "Convert any text to a URL-safe slug. Unicode-aware, configurable separator and length."
        },
        {
            "name": "sort-lines",
            "method": "POST",
            "url": "https://mate.tools/api/v1/sort-lines.php",
            "description": "Sort lines of text. Asc/desc, case sensitivity, dedupe, natural-sort, locale-aware collation."
        },
        {
            "name": "lorem-ipsum",
            "method": "POST",
            "url": "https://mate.tools/api/v1/lorem-ipsum.php",
            "description": "Generate placeholder text \u2014 N paragraphs, sentences or words."
        },
        {
            "name": "timestamp",
            "method": "POST",
            "url": "https://mate.tools/api/v1/timestamp.php",
            "description": "Bidirectional date/time conversion: epoch \u2194 ISO 8601 \u2194 human, with timezone support."
        },
        {
            "name": "date-math",
            "method": "POST",
            "url": "https://mate.tools/api/v1/date-math.php",
            "description": "Add or subtract a duration from a date, or compute the diff between two dates (with optional business-day count)."
        },
        {
            "name": "regex-test",
            "method": "POST",
            "url": "https://mate.tools/api/v1/regex-test.php",
            "description": "Match, replace or split with a regex. Returns offsets and capture groups. ReDoS-protected."
        },
        {
            "name": "sitemap-extract",
            "method": "POST",
            "url": "https://mate.tools/api/v1/sitemap-extract.php",
            "description": "Fetch and parse an XML sitemap or sitemap index. SSRF-protected; optional recursive expansion of sub-sitemaps; lastmod/changefreq/priority metadata."
        },
        {
            "name": "credit-card-validate",
            "method": "POST",
            "url": "https://mate.tools/api/v1/credit-card-validate.php",
            "description": "Luhn-validate a card number and detect the brand (Visa, MasterCard, Amex, Discover, JCB, Diners, UnionPay, Maestro, RuPay). Card never logged."
        },
        {
            "name": "xml-validate",
            "method": "POST",
            "url": "https://mate.tools/api/v1/xml-validate.php",
            "description": "Validate XML well-formedness, with optional XSD schema check. Reports errors with line/column."
        },
        {
            "name": "text-diff",
            "method": "POST",
            "url": "https://mate.tools/api/v1/text-diff.php",
            "description": "Diff two texts by line/word/char. Returns unified-diff string + structured changes + similarity score."
        },
        {
            "name": "stats",
            "method": "POST",
            "url": "https://mate.tools/api/v1/stats.php",
            "description": "Descriptive statistics for a list of numbers: mean/median/mode/stddev/variance/percentiles/IQR/geometric/harmonic."
        },
        {
            "name": "number-base",
            "method": "POST",
            "url": "https://mate.tools/api/v1/number-base.php",
            "description": "Convert numbers between bases 2..36 plus Roman numerals. Big-int safe via GMP when available."
        },
        {
            "name": "finance-calc",
            "method": "POST",
            "url": "https://mate.tools/api/v1/finance-calc.php",
            "description": "Multi-mode financial calculations: loan, compound_interest, simple_interest, discount, tip, sales_tax, roi, percentage, markup."
        },
        {
            "name": "color-convert",
            "method": "POST",
            "url": "https://mate.tools/api/v1/color-convert.php",
            "description": "Convert any color (hex / rgb / rgba / hsl / named) into all standard color spaces. Includes WCAG luminance and contrast."
        },
        {
            "name": "age-calc",
            "method": "POST",
            "url": "https://mate.tools/api/v1/age-calc.php",
            "description": "Calculate age in years/months/days from DOB. Returns next birthday, zodiac sign, generation, total days/weeks/hours/seconds."
        },
        {
            "name": "aspect-ratio",
            "method": "POST",
            "url": "https://mate.tools/api/v1/aspect-ratio.php",
            "description": "Compute simplified aspect ratio (16:9, 4:3, ...) from width \u00d7 height, or scale a dimension to a target ratio."
        },
        {
            "name": "url-metadata",
            "method": "POST",
            "url": "https://mate.tools/api/v1/url-metadata.php",
            "description": "Fetch a URL and extract title, description, OpenGraph, Twitter Card, canonical, language, charset, favicon, hreflang and JSON-LD. SSRF-protected."
        },
        {
            "name": "meta-tags-generate",
            "method": "POST",
            "url": "https://mate.tools/api/v1/meta-tags-generate.php",
            "description": "Generate complete HTML <meta>, OpenGraph, Twitter Card and JSON-LD from inputs (title, description, image, url). Returns ready-to-paste HTML + SEO score with warnings."
        },
        {
            "name": "text-cleanup",
            "method": "POST",
            "url": "https://mate.tools/api/v1/text-cleanup.php",
            "description": "Apply chained text cleanup operations: trim, collapse spaces, dedupe lines, strip HTML/emoji/URLs/emails, normalize quotes/dashes, etc."
        },
        {
            "name": "random-gen",
            "method": "POST",
            "url": "https://mate.tools/api/v1/random-gen.php",
            "description": "Cryptographically random generator: number, string, word, pick from list, team-balancer, dice, coin, country, UUID (v4/v7)."
        },
        {
            "name": "hashtag-tools",
            "method": "POST",
            "url": "https://mate.tools/api/v1/hashtag-tools.php",
            "description": "Hashtag operations on text: extract, remove, generate (from text content), or format an array (camel/snake/lower)."
        },
        {
            "name": "dns-lookup",
            "method": "POST",
            "url": "https://mate.tools/api/v1/dns-lookup.php",
            "description": "Resolve DNS records (A, AAAA, MX, TXT, NS, CNAME, SOA, CAA, PTR, SRV) for a domain. Includes reverse PTR for A records."
        },
        {
            "name": "ssl-check",
            "method": "POST",
            "url": "https://mate.tools/api/v1/ssl-check.php",
            "description": "Inspect a domain's TLS certificate: subject, issuer, validity, fingerprint, alt names, chain, days remaining. SSRF-protected."
        },
        {
            "name": "jwt-decode",
            "method": "POST",
            "url": "https://mate.tools/api/v1/jwt-decode.php",
            "description": "Decode a JSON Web Token (JWT) \u2014 header, payload, expiry analysis. Optional HS256/384/512 verify with secret or RS256/384/512 with public key. Token never logged."
        }
    ]
}