๐งฒText Extractor
Scan unstructured text and extract structured entities: email addresses, URLs, IPv4 addresses, phone numbers and domains. Deduplicated, categorized, machine-ready.
Worked examples
URLs only
GET /api/v1/dev/text-extract?text=Docs%20at%20https%3A%2F%2Fdocs.example.com%2Fapi%20and%20http%3A%2F%2Fblog.example.org%3Fv%3D2%23section&what=urls
Result: 2 entities extracted
IPs in a log line
GET /api/v1/dev/text-extract?text=Connected%20to%208.8.8.8%2C%20then%20192.168.1.1%20(local)%2C%20then%202606%3Afalse%20fallback%201.1.1.1&what=ips
Result: 3 entities extracted
Machine API (x402)
$0.002 / callThis tool is also a JSON API for AI agents. Requests without payment receive 402 Payment Required plus instructions; agents pay USDC on Base via the x402 protocol โ no accounts, no API keys.
GET /api/v1/dev/text-extract?text=Reach%20Jane%20at%20jane.doe%40acme-corp.io%2C%20sales%40acme-corp.io%20or%20%2B49%2030%201234567.%20Site%3A%20https%3A%2F%2Facme-corp.io%2Fpricing%20and%20CDN%20151.101.1.140.%20Backup%20mail%20host%3A%20mail.acme-corp.io HTTP/1.1
Host: agenttools-hub.vercel.app
โ 402 (payment required, instructions in headers)
โ 200 (after X-PAYMENT header; JSON body below)
{
"tool": "dev/text-extract",
"input": {"text":"Reach Jane at jane.doe@acme-corp.io, sales@acme-corp.io or +49 30 1234567. Site: https://acme-corp.io/pricing and CDN 151.101.1.140. Backup mail host: mail.acme-corp.io"},
"result": { "value": null, "answer": "" }
}Agent docs: /llms.txt ยท OpenAPI spec ยท integration guide
About this tool
Feed it a messy email, a log file or a scraped page and get back clean, deduplicated lists of emails, URLs, IP addresses, phone numbers and domains โ in the response body and as JSON arrays in `result.artifacts`.
Frequently asked questions
How reliable is phone extraction?
Phones are the loosest pattern (formats vary wildly worldwide). Results are 'candidates' โ for decision-grade phone validation, combine with a libphonenumber-based service.
Does URL extraction catch domains without protocol?
Bare domains are matched by the separate `domains` pattern with a curated TLD list; full URLs require http/https prefixes.