{"uid":"cap_jxs_vajiFYtrBvzNPwrG0","slug":"preplayer-ai-text-normalizer-7fe8fa3e","name":"PrepLayer.ai Text Normalizer","description":"Deterministic text normalization: Unicode NFKC, zero-width/bidi stripping, smart-quote and dash folding, whitespace collapse, case folding. Returns a stable content hash so two texts can be compared for exact equality.","url":"https://api.maximusmediahouse.com/v1/normalize?utm_source=zero.xyz","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"text":{"type":"string","description":"Text to normalize (1-100000 chars)."},"fold_case":{"type":"boolean","default":true,"description":"Lowercase the result."},"fold_width":{"type":"boolean","default":true,"description":"Fold curly quotes, dashes and exotic spaces to ASCII."},"strip_invisible":{"type":"boolean","default":true,"description":"Remove zero-width and bidi control characters."},"collapse_whitespace":{"type":"boolean","default":true,"description":"Collapse runs of whitespace to single spaces and trim."}}},"responseSchema":null,"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_h_KocZjWZv5IRo1D_HyEC","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":"Deterministically normalizes text via Unicode NFKC, invisible-character stripping, smart-quote/dash folding, whitespace collapse, and case folding, returning a stable content hash for exact equality checks.","exampleAgentPrompt":"Clean up this text for me — strip any invisible or bidi characters, fold smart quotes and fancy dashes to plain ASCII, collapse all whitespace, and lowercase everything, then give me the normalized result and its content hash so I can check for duplicates: \"Hello\t\tWörld\nnfoo\".","exampleUseCases":[{"title":"Deduplication before database insert","prompt":"Before I insert this user-submitted article into the database, normalize it — strip invisible characters, fold smart quotes, collapse whitespace, and lowercase it — then give me the content hash so I can check if an identical article already exists."},{"title":"Canonical form for fuzzy-match bypass","prompt":"I have two product descriptions that look different but might be the same — normalize both of them with case folding and whitespace collapse turned on, then compare their hashes to tell me if they're actually identical."},{"title":"Sanitize LLM output before logging","prompt":"This string came out of an LLM and probably has zero-width characters and curly quotes in it — run it through the normalizer with strip_invisible and fold_width enabled so it's safe to log and compare later."}],"resultDescription":"Returns the fully normalized text string after applying the requested transformations (NFKC, invisible-character stripping, smart-quote/dash folding, whitespace collapse, case folding), along with a stable content hash (deterministic fingerprint) that can be used to compare two texts for exact equality or for deduplication.","failureModes":["Text exceeding 100,000 characters returns a 400 validation error","Empty string input rejected with a 400 error","Malformed JSON body returns 400","Payment failure or missing x402 payment header returns 402","Server-side timeout on very large inputs near the character limit"],"whenToPreferThis":"Choose this endpoint when you need fully deterministic, reproducible text normalization without any ML or probabilistic components — particularly when generating content hashes for deduplication, equality checks, or caching. Prefer it over general-purpose NLP preprocessing when you need a stable fingerprint guarantee alongside the cleaned text, or when your pipeline handles Unicode edge cases (bidi text, zero-width joiners, exotic whitespace) that simpler string utilities miss.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-29T12:36:12.609Z","isFirstParty":false,"canonicalSlug":"preplayer-ai-text-normalizer-7fe8fa3e"}