{"uid":"cap_LltdRdzVtIv5M7eJiexoG","slug":"penniless-data-utilities-html-text-link-extractor-f2eef600","name":"Penniless Data Utilities – HTML Text & Link Extractor","description":"Deterministic, dependency-free data utilities served over x402 micropayments (USDC on Base). None of these call another AI model.\nKeyword: JSON repair\nKeyword: malformed JSON\nKeyword: broken JSON from LLM\nKeyword: fix JSON output\nKeyword: JSON sanitizer\nKeyword: truncated JSON recovery\nKeyword: YAML to JSON\nKeyword: convert YAML\nKeyword: parse YAML config\nKeyword: cron next run\nKeyword: cron parser\nKeyword: when does cron run next\nKeyword: unified diff\nKeyword: line diff\nKeyword: text diff\nKeyword: HTML to text\nKeyword: extract links\nKeyword: extract emails\nKeyword: scrape text\nKeyword: whois lookup\nKeyword: domain registration\nKeyword: registrar\nKeyword: domain expiry date\nKeyword: RDAP\nKeyword: dns lookup\nKeyword: MX records\nKeyword: TXT records\nKeyword: A record\nKeyword: DNS over HTTPS\nKeyword: github repo stats\nKeyword: github stars\nKeyword: repository popularity\nKeyword: OSS project metadata\nKeyword: email validation\nKeyword: verify email address\nKeyword: check MX deliverability\nKeyword: email syntax\nUse case: repair a JSON code block wrapped in Markdown fences\nUse case: turn a docker-compose or CI YAML file into JSON\nUse case: compute the next UTC fire time of a cron expression\nUse case: produce a unified diff between two versions of a file\nUse case: strip HTML tags and pull out links, emails, and headings\nUse case: look up a domain's registrar, status and expiry before purchase\nUse case: check when a domain registration lapses\nUse case: resolve A, AAAA, MX, TXT or NS records for a hostname\nUse case: find a domain's mail servers and SPF TXT record\nUse case: compare GitHub repository stars, forks and activity for market research\nUse case: check whether an email address is well-formed and its domain accepts mail","url":"https://penniless-json-repair.sjaman.workers.dev/text/extract","method":"POST","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method","bodyType","body"],"properties":{"body":{"type":"object","required":["input"],"properties":{"input":{"type":"string","description":"HTML or plain text"},"numbers":{"type":"boolean","description":"Extract numeric strings into numbers[]"},"codeBlocks":{"type":"boolean","description":"Extract Markdown fences and HTML pre/code blocks into codeBlocks[]"}},"additionalProperties":false},"type":{"type":"string","const":"http"},"method":{"enum":["POST"],"type":"string"},"bodyType":{"enum":["json","form-data","text"],"type":"string"}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object"}}}}},"responseSchema":{"type":"json","example":{"ok":true,"text":"Hi Visit https://x.dev and mail a@b.com","urls":["https://x.dev"],"emails":["a@b.com"],"source":"html","headings":[{"text":"Hi","level":1}]}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.001","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.001/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_R28Oi4ocfhFgCSLXBYa8y","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.001","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Extracts plain text, URLs, email addresses, and headings from raw HTML content, returning structured data without any AI model involvement.","exampleAgentPrompt":"Pull out all the plain text, URLs, and email addresses from this HTML snippet for me: '<h1>Hi</h1><p>Visit <a href=\"https://example.com\">example.com</a> or email us at hello@example.com</p>'","exampleUseCases":[{"title":"Extract contact emails from a company page","prompt":"I have the raw HTML of a company's contact page — can you pull out every email address and link from it so I can build a contact list?"},{"title":"Get readable text from scraped HTML","prompt":"I scraped a news article and got back a blob of HTML. Can you strip all the tags and give me just the clean readable text along with any URLs it mentions?"},{"title":"Parse navigation links from a webpage","prompt":"Here's the HTML source of a website's homepage — extract all the URLs and headings so I can map out the site structure."}],"resultDescription":"Returns a JSON object with: ok (boolean), text (plain text content with HTML stripped), urls (array of all hyperlinks found), emails (array of all email addresses found), source (type of input, e.g. 'html'), and headings (array of heading objects each with text and level).","failureModes":["Missing or empty 'input' body causes a validation error","Malformed or non-HTML input may yield empty arrays with minimal text","Very large HTML documents may be truncated or time out","No URLs or emails in the document returns empty arrays (not an error)"],"whenToPreferThis":"Choose this endpoint when you have raw HTML content and need to deterministically extract plain text, links, and email addresses without spinning up a browser, an AI model, or a full crawl stack. Ideal for post-fetch HTML processing in agent pipelines where you want structured output at $0.001/call via x402 micropayment on Base.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T06:41:25.853Z","isFirstParty":false}