{"uid":"cap_Nks0ZNWGcuQFuCaHkmTJx","slug":"readable-text-extractor-93a6735c","name":"Readable Text Extractor","description":"Extract the main readable plaintext of a public HTML page: final url, title, text (capped), wordCount, language, and fetchedAt. POST JSON {\"url\":\"https://example.com\",\"maxChars\":12000}. Optional maxChars is an integer 1–12000 (default 12000). Public http(s) only; private hosts blocked. $0.05 USDC on Base (eip155:8453). No API key.","url":"https://scrooge-x402-tool-mill.vercel.app/v1/readable-text?utm_source=zero.xyz","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET"],"type":"string"},"queryParams":{"type":"object","properties":{"url":{"type":"string","format":"uri","description":"Public http(s) URL to fetch (SSRF-safe; private/link-local blocked)"},"maxChars":{"type":"string","description":"Optional maxChars query string (1–12000; handler clamps)"}}}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object","required":["url","title","text","wordCount","language","fetchedAt"],"properties":{"url":{"type":"string","format":"uri","description":"Final URL after redirects"},"text":{"type":"string","description":"Main readable plaintext, capped by maxChars (default and max 12000)"},"title":{"type":["string","null"],"description":"HTML title, or null"},"language":{"type":["string","null"],"description":"html lang or content-language, or null"},"fetchedAt":{"type":"string","format":"date-time","description":"ISO-8601 time the page was fetched"},"wordCount":{"type":"integer","minimum":0}},"additionalProperties":false}}}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.05","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.05/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.05","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.05","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_vAyVXvjQ8qZlAOW8JEIY5","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.05","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Fetches a public HTML page and returns its main readable plaintext content along with title, language, word count, and fetch timestamp","exampleAgentPrompt":"Can you pull the readable text from https://www.bbc.com/news/science-environment-12345678 — limit it to 8000 characters so I can summarize it?","exampleUseCases":[{"title":"Summarize a news article","prompt":"Grab the readable text from https://www.reuters.com/world/us/some-article-2024 and give me a three-sentence summary of what it says."},{"title":"Research competitor blog post","prompt":"Extract the main text content from https://competitor.com/blog/our-new-product-launch so I can analyze their messaging and positioning."},{"title":"Feed webpage text to LLM pipeline","prompt":"Pull the plaintext body of https://en.wikipedia.org/wiki/Quantum_computing — cap it at 6000 characters — so I can pass it to my question-answering model."}],"resultDescription":"Returns a JSON object with the final URL after redirects, the extracted plaintext body (capped at maxChars, default 12000), the HTML page title (or null), detected language code (or null), word count as an integer, and an ISO-8601 timestamp of when the page was fetched.","failureModes":["Private or link-local URLs (e.g. localhost, 192.168.x.x) are blocked with an error — only public http/https URLs accepted","Pages that require JavaScript rendering may return incomplete or empty text since the fetcher processes static HTML","Very large pages may return truncated text if the readable content exceeds the maxChars cap","Non-HTML responses (PDFs, images, APIs) may yield empty or garbled text output","Payment failure or insufficient USDC balance on Base will prevent the request from completing","Paywalled or login-gated pages may return minimal or no readable content"],"whenToPreferThis":"Choose this endpoint when you need clean, human-readable plaintext from a public webpage — ideal for feeding article text into LLMs, summarization pipelines, or NLP tasks. It strips away HTML boilerplate and returns only the main content, making it more useful than raw HTML fetchers when you need readable prose. Prefer it over link-graph or metadata endpoints when your goal is the body text, not the structure or metadata of the page. It requires no API key and charges a flat $0.05 USDC per call on Base.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-01T12:38:08.631Z","isFirstParty":false,"canonicalSlug":"readable-text-extractor-93a6735c"}