{"service":"toolvend","description":"toolvend: a portfolio of small, fast, machine-payable utility APIs. No accounts, no API keys — pay per call with USDC via the x402 protocol.","protocol":"x402","payment":{"network":"eip155:8453","currency":"USDC","payTo":"0x55ae5d177cdc9493391a632794fd048e8dba4e20","preferred":{"scheme":"exact","network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","currency":"USDC","payTo":"FSnwAPTNNSxqnR8MtuNrtwLkyYusZ4hncp684HxYpdLb"},"accepts":[{"scheme":"exact","network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","currency":"USDC","payTo":"FSnwAPTNNSxqnR8MtuNrtwLkyYusZ4hncp684HxYpdLb"},{"scheme":"exact","network":"eip155:8453","currency":"USDC","payTo":"0x55ae5d177cdc9493391a632794fd048e8dba4e20"}]},"pricingModel":"per-call, no accounts, no API keys","workflows":[{"id":"email-auth-audit","url":"https://toolvend.dev/workflows/email-auth","endpoint":"email-auth"},{"id":"email-auth-diagnosis","url":"https://toolvend.dev/workflows/email-auth#diagnosis","endpoint":"email-auth-analyze"}],"endpoints":[{"id":"dns","method":"GET","route":"/dns","price":"$0.005","priceVersion":"pricing-20260915T052236513Z","recommendedPrice":"$0.009","description":"DNS lookup over DoH. Common record types (A, AAAA, MX, TXT, NS, CAA, ...) as clean JSON.","tags":["dns","domains","infrastructure"],"competitivePricing":{"mode":"automatic","category":"dns","includeKeywords":["dns","domain","resolve"],"excludeKeywords":["test","testnet","demo","faucet"],"comparableResourceUrls":[],"includeOrigins":[],"minComparables":3,"maxMarketAgeDays":30,"minQualityCalls":0,"minObservations":20,"baselineDays":7,"introducedAt":"2026-07-26","floor":"$0.002","ceiling":"$0.02","servingCostFloor":"$0.001","maxChangePercent":20,"experimentRule":"experiment-wins"},"inputSchema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":253,"description":"DNS name to resolve"},"type":{"type":"string","enum":["A","AAAA","CNAME","MX","NS","TXT","SOA","SRV","CAA","DS","DNSKEY","TLSA","HTTPS"],"description":"Record type, default A"}},"required":["name"]},"inputExample":{"name":"example.com","type":"MX"},"outputExample":{"name":"example.com","type":"MX","answers":[{"name":"example.com","type":"MX","ttl":300,"data":"10 mail.example.com."}]}},{"id":"email-auth","method":"GET","route":"/email-auth/:domain","price":"$0.01","priceVersion":"pricing-20260915T052236513Z","recommendedPrice":"$0.0072","description":"Email authentication posture for a domain: DMARC + SPF records fetched, parsed, scored 0-100, with findings and fix recommendations.","tags":["email","dmarc","spf","security","deliverability"],"competitivePricing":{"mode":"automatic","category":"email-security","includeKeywords":["dmarc","spf","email","deliverability"],"excludeKeywords":["test","testnet","demo","faucet"],"comparableResourceUrls":[],"includeOrigins":[],"minComparables":3,"maxMarketAgeDays":30,"minQualityCalls":0,"minObservations":20,"baselineDays":7,"introducedAt":"2026-07-26","floor":"$0.005","ceiling":"$0.04","servingCostFloor":"$0.001","maxChangePercent":20,"experimentRule":"experiment-wins"},"inputSchema":{"type":"object","properties":{"domain":{"type":"string","description":"Domain to analyse (path parameter)"}},"required":["domain"]},"inputExample":{"domain":"example.com"},"outputExample":{"domain":"example.com","score":75,"dmarc":{"present":true,"policy":"quarantine"},"spf":{"present":true},"recommendations":["..."]}},{"id":"email-auth-analyze","method":"POST","route":"/email-auth/analyze","price":"$0.10","priceVersion":"catalogue","description":"Email diagnosis bundle: exact-domain DMARC, SPF sending-IP evaluation, up to five supplied DKIM selectors and structured receiver evidence. Prioritized fixes, timestamped DNS sources and missing checks. No signature verification, inherited-policy discovery or inbox claims.","tags":["email","dmarc","spf","dkim","diagnosis"],"competitivePricing":{"mode":"fixed","category":"email-security","includeKeywords":[],"excludeKeywords":[],"comparableResourceUrls":[],"includeOrigins":[],"minComparables":1,"maxMarketAgeDays":30,"minQualityCalls":0,"minObservations":1,"baselineDays":0,"introducedAt":"2026-09-07","floor":"$0.10","ceiling":"$0.10","servingCostFloor":"$0.001","maxChangePercent":1,"premiumPolicy":{"mode":"fixed"},"experimentRule":"experiment-wins","fixedReason":"Fixed premium diagnosis pilot; validate repeat purchases before expanding."},"inputSchema":{"type":"object","additionalProperties":false,"required":["domain"],"properties":{"domain":{"type":"string","minLength":3,"maxLength":253,"pattern":"^(?:[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?\\.)+[A-Za-z](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?$","description":"Author (visible From) domain; ASCII/punycode"},"sendingIp":{"type":"string","minLength":2,"maxLength":45,"description":"Sending IPv4 or IPv6 address; never contacted"},"envelopeFromDomain":{"type":"string","minLength":3,"maxLength":253,"pattern":"^(?:[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?\\.)+[A-Za-z](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?$","description":"MAIL FROM domain for SPF; required to evaluate sendingIp"},"dkimSelectors":{"type":"array","minItems":1,"maxItems":5,"items":{"type":"object","additionalProperties":false,"required":["domain","selector"],"properties":{"domain":{"type":"string","minLength":3,"maxLength":253,"pattern":"^(?:[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?\\.)+[A-Za-z](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?$"},"selector":{"type":"string","minLength":1,"maxLength":63,"pattern":"^[A-Za-z0-9_-]+(?:\\.[A-Za-z0-9_-]+)*$"}}}},"message":{"type":"object","additionalProperties":false,"required":["fromDomain","authservId","observedAt"],"description":"Structured results copied from a receiver you trust; treated as unverified caller evidence. No raw headers or message body.","properties":{"fromDomain":{"type":"string","minLength":3,"maxLength":253,"pattern":"^(?:[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?\\.)+[A-Za-z](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?$"},"authservId":{"type":"string","minLength":1,"maxLength":253,"pattern":"^[A-Za-z0-9_.-]+$"},"observedAt":{"type":"string","minLength":20,"maxLength":24,"pattern":"^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d{3})?Z$"},"spf":{"type":"object","additionalProperties":false,"required":["domain","result"],"properties":{"domain":{"type":"string","minLength":3,"maxLength":253,"pattern":"^(?:[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?\\.)+[A-Za-z](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?$"},"result":{"type":"string","enum":["pass","fail","softfail","neutral","none","temperror","permerror"]}}},"dkim":{"type":"array","minItems":1,"maxItems":5,"items":{"type":"object","additionalProperties":false,"required":["domain","selector","result"],"properties":{"domain":{"type":"string","minLength":3,"maxLength":253,"pattern":"^(?:[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?\\.)+[A-Za-z](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?$"},"selector":{"type":"string","minLength":1,"maxLength":63,"pattern":"^[A-Za-z0-9_-]+(?:\\.[A-Za-z0-9_-]+)*$"},"result":{"type":"string","enum":["pass","fail","softfail","neutral","none","temperror","permerror"]}}}}}}}},"inputExample":{"domain":"example.com","sendingIp":"192.0.2.10","envelopeFromDomain":"example.com","dkimSelectors":[{"domain":"example.com","selector":"mail"}]},"outputExample":{"domain":"example.com","generatedAt":"2026-09-07T12:00:00.000Z","sender":{"sendingIp":"192.0.2.10","envelopeFromDomain":"example.com","evaluation":{"result":"fail","reason":"Matched -all at example.com","lookupTerms":0,"matchedMechanism":"-all"}},"completeness":{"complete":false,"missingChecks":["message_evidence"],"notPerformed":["message_signature_verification","inbox_delivery","organizational_domain_discovery"]},"findings":[{"code":"spf_sender_not_authorized","priority":"high","evidence":["TXT:example.com"],"finding":"The supplied sending IP is not authorized by current SPF.","action":"Confirm the sending IP and MAIL FROM domain with the provider before changing SPF."}],"sources":[{"id":"TXT:example.com","kind":"dns","name":"example.com","type":"TXT","observedAt":"2026-09-07T12:00:00.000Z","status":"ok","records":["v=spf1 -all"],"ttlSeconds":300}]}},{"id":"rdap","method":"GET","route":"/rdap/:domain","price":"$0.005","priceVersion":"pricing-20260915T052236513Z","recommendedPrice":"$0.009","description":"Domain registration data (modern WHOIS) via RDAP: registrar, created/expiry dates, status, nameservers, DNSSEC.","tags":["domains","whois","rdap"],"competitivePricing":{"mode":"automatic","category":"domain-intelligence","includeKeywords":["rdap","whois","domain"],"excludeKeywords":["test","testnet","demo","faucet"],"comparableResourceUrls":[],"includeOrigins":[],"minComparables":3,"maxMarketAgeDays":30,"minQualityCalls":0,"minObservations":20,"baselineDays":7,"introducedAt":"2026-07-26","floor":"$0.002","ceiling":"$0.02","servingCostFloor":"$0.001","maxChangePercent":20,"experimentRule":"experiment-wins"},"inputSchema":{"type":"object","properties":{"domain":{"type":"string","description":"Domain to look up (path parameter)"}},"required":["domain"]},"inputExample":{"domain":"example.com"},"outputExample":{"domain":"example.com","registrar":"Example Registrar","created":"1995-08-14T04:00:00Z","expires":"2027-08-13T04:00:00Z","status":["client delete prohibited"]}},{"id":"lei","method":"GET","route":"/lei/:lei","price":"$0.008","priceVersion":"pricing-20260915T052236513Z","recommendedPrice":"$0.009","description":"Global legal-entity/KYB lookup by LEI: official identity, jurisdiction, addresses, registration and renewal standing, risk flags, and GLEIF data freshness.","tags":["lei","kyb","compliance","finance","companies"],"competitivePricing":{"mode":"automatic","category":"kyb","includeKeywords":["lei","entity","kyb","company"],"excludeKeywords":["test","testnet","demo","faucet"],"comparableResourceUrls":[],"includeOrigins":[],"minComparables":3,"maxMarketAgeDays":30,"minQualityCalls":0,"minObservations":20,"baselineDays":7,"introducedAt":"2026-07-26","floor":"$0.004","ceiling":"$0.04","servingCostFloor":"$0.001","maxChangePercent":20,"experimentRule":"experiment-wins"},"inputSchema":{"type":"object","properties":{"lei":{"type":"string","pattern":"^[A-Za-z0-9]{18}[0-9]{2}$","description":"20-character Legal Entity Identifier (path parameter); checksum is verified before payment"}},"required":["lei"]},"inputExample":{"lei":"5493001KJTIIGC8Y1R12"},"outputExample":{"lei":"5493001KJTIIGC8Y1R12","legalName":"Bloomberg Finance L.P.","entityStatus":"ACTIVE","registrationStatus":"ISSUED","standing":{"entityActive":true,"registrationCurrent":true,"renewalOverdue":false,"riskFlags":[]},"jurisdiction":"US-DE","registration":{"nextRenewalDate":"2027-01-25T16:50:02Z","corroborationLevel":"FULLY_CORROBORATED"},"source":{"name":"GLEIF Global LEI Index","goldenCopyPublishedAt":"2026-07-25T00:00:00Z"}}},{"id":"sitemap","method":"GET","route":"/parse/sitemap","price":"$0.005","priceVersion":"pricing-20260915T052236513Z","recommendedPrice":"$0.0045","description":"Fetch and parse sitemap XML or gzip into JSON. For an index, follow the first N children with ?follow=N. Caps merged output at 500 URLs.","tags":["seo","crawling","sitemap"],"competitivePricing":{"mode":"automatic","category":"web-crawling","includeKeywords":["sitemap","seo","crawl"],"excludeKeywords":["test","testnet","demo","faucet"],"comparableResourceUrls":[],"includeOrigins":[],"minComparables":3,"maxMarketAgeDays":30,"minQualityCalls":0,"minObservations":20,"baselineDays":7,"introducedAt":"2026-07-26","floor":"$0.002","ceiling":"$0.02","servingCostFloor":"$0.001","maxChangePercent":20,"experimentRule":"experiment-wins"},"inputSchema":{"type":"object","properties":{"url":{"type":"string","description":"Public HTTP(S) sitemap URL, including .xml.gz, or a site origin to try /sitemap.xml"},"follow":{"type":"integer","minimum":0,"maximum":10,"description":"For a sitemap index, fetch and merge the first N children (default 0)"}},"required":["url"]},"inputExample":{"url":"https://example.com/sitemap.xml","follow":3},"outputExample":{"kind":"urlset","count":42,"urls":[{"loc":"https://example.com/"}],"childrenFollowed":0,"truncated":false}},{"id":"robots","method":"GET","route":"/parse/robots","price":"$0.005","priceVersion":"pricing-20260915T052236513Z","recommendedPrice":"$0.0055","description":"Fetch and parse robots.txt (+ llms.txt if present) into structured JSON, including which AI crawlers are blocked.","tags":["seo","crawling","robots","ai"],"competitivePricing":{"mode":"automatic","category":"web-crawling","includeKeywords":["robots","llms.txt","crawl"],"excludeKeywords":["test","testnet","demo","faucet"],"comparableResourceUrls":[],"includeOrigins":[],"minComparables":3,"maxMarketAgeDays":30,"minQualityCalls":0,"minObservations":20,"baselineDays":7,"introducedAt":"2026-07-26","floor":"$0.002","ceiling":"$0.02","servingCostFloor":"$0.001","maxChangePercent":20,"experimentRule":"experiment-wins"},"inputSchema":{"type":"object","properties":{"url":{"type":"string","description":"Public HTTP(S) site origin or URL"}},"required":["url"]},"inputExample":{"url":"https://example.com"},"outputExample":{"robots":{"groups":[],"sitemaps":[],"aiAgentsBlocked":["GPTBot"]},"llmsTxt":{"present":false}}},{"id":"extract","method":"POST","route":"/extract","price":"$0.01","priceVersion":"pricing-20260915T052236513Z","recommendedPrice":"$0.009","priceVariants":[{"query":{"render":"true"},"price":"$0.03","description":"Execute JavaScript with Cloudflare Browser Run before extracting content."}],"description":"Fetch a web page and return structured content: title, meta/OpenGraph, canonical, headings, links, readable text (boilerplate stripped). Add ?render=true for JavaScript-rendered pages ($0.03).","tags":["scraping","content","extraction","web"],"competitivePricing":{"mode":"automatic","category":"web-extraction","includeKeywords":["extract","scrape","web","html"],"excludeKeywords":["test","testnet","demo","faucet"],"comparableResourceUrls":[],"includeOrigins":[],"minComparables":3,"maxMarketAgeDays":30,"minQualityCalls":0,"minObservations":20,"baselineDays":7,"introducedAt":"2026-07-26","floor":"$0.005","ceiling":"$0.05","servingCostFloor":"$0.002","maxChangePercent":20,"experimentRule":"experiment-wins","premiumPolicy":{"mode":"base-multiplier","multiplier":3}},"inputSchema":{"type":"object","properties":{"url":{"type":"string","description":"Public HTTP(S) page URL to extract"},"includeLinks":{"type":"boolean","description":"Include outbound links (default true)"},"maxTextChars":{"type":"number","exclusiveMinimum":0,"description":"Cap on extracted text length, default 20000"}},"required":["url"]},"inputExample":{"url":"https://example.com/article"},"outputExample":{"url":"https://example.com","fetchedStatus":200,"rendered":false,"meta":{"title":"Example"},"headings":[],"text":"…","wordCount":123}},{"id":"text-clean","method":"POST","route":"/text/clean","price":"$0.003","priceVersion":"pricing-20260915T052236513Z","recommendedPrice":"$0.009","description":"Clean text: strip HTML, normalise unicode/whitespace, dedupe lines. Returns cleaned text plus stats.","tags":["text","cleaning","preprocessing"],"competitivePricing":{"mode":"automatic","category":"text-processing","includeKeywords":["text","clean","normalize"],"excludeKeywords":["test","testnet","demo","faucet"],"comparableResourceUrls":[],"includeOrigins":[],"minComparables":3,"maxMarketAgeDays":30,"minQualityCalls":0,"minObservations":20,"baselineDays":7,"introducedAt":"2026-07-26","floor":"$0.001","ceiling":"$0.015","servingCostFloor":"$0.001","maxChangePercent":20,"experimentRule":"experiment-wins"},"inputSchema":{"type":"object","properties":{"text":{"type":"string","maxLength":500000,"description":"Input text (max 500,000 characters)"},"options":{"type":"object","properties":{"stripHtml":{"type":"boolean"},"normalizeWhitespace":{"type":"boolean"},"normalizeUnicode":{"type":"boolean"},"dedupeLines":{"type":"boolean"},"lowercase":{"type":"boolean"}}}},"required":["text"]},"inputExample":{"text":"Hello   <b>world</b>\nHello   <b>world</b>","options":{"stripHtml":true,"dedupeLines":true}},"outputExample":{"text":"Hello world","stats":{"duplicateLinesRemoved":1}}},{"id":"vat","method":"GET","route":"/vat","price":"$0.002","priceVersion":"pricing-20260915T052236513Z","recommendedPrice":"$0.009","description":"VAT calculator for EU-27 + UK: net→gross or gross→net at standard or reduced rate. Includes rates table snapshot date.","tags":["finance","vat","tax","europe"],"competitivePricing":{"mode":"automatic","category":"finance","includeKeywords":["vat","tax","calculator"],"excludeKeywords":["test","testnet","demo","faucet"],"comparableResourceUrls":[],"includeOrigins":[],"minComparables":3,"maxMarketAgeDays":30,"minQualityCalls":0,"minObservations":20,"baselineDays":7,"introducedAt":"2026-07-26","floor":"$0.001","ceiling":"$0.01","servingCostFloor":"$0.001","maxChangePercent":20,"experimentRule":"experiment-wins"},"inputSchema":{"type":"object","properties":{"amount":{"type":"number","minimum":0},"country":{"type":"string","description":"ISO 3166-1 alpha-2, e.g. DE, FR, GB"},"direction":{"type":"string","enum":["net_to_gross","gross_to_net"],"description":"default net_to_gross"},"rate":{"type":"string","enum":["standard","reduced"],"description":"default standard"}},"required":["amount","country"]},"inputExample":{"amount":100,"country":"DE","direction":"net_to_gross"},"outputExample":{"country":"Germany","ratePercent":19,"net":100,"vat":19,"gross":119}},{"id":"qr","method":"GET","route":"/qr","price":"$0.003","priceVersion":"pricing-20260915T052236513Z","recommendedPrice":"$0.007","description":"QR code generator. Returns a crisp SVG for text/URL payloads up to 2,048 UTF-8 bytes that fit the selected error-correction level.","tags":["qr","images","utility"],"competitivePricing":{"mode":"automatic","category":"utility","includeKeywords":["qr","qrcode","code"],"excludeKeywords":["test","testnet","demo","faucet"],"comparableResourceUrls":[],"includeOrigins":[],"minComparables":3,"maxMarketAgeDays":30,"minQualityCalls":0,"minObservations":20,"baselineDays":7,"introducedAt":"2026-07-26","floor":"$0.001","ceiling":"$0.015","servingCostFloor":"$0.001","maxChangePercent":20,"experimentRule":"experiment-wins"},"inputSchema":{"type":"object","properties":{"data":{"type":"string","minLength":1,"maxLength":2048,"description":"Payload to encode (max 2,048 UTF-8 bytes; QR capacity is lower at Q/H error correction)"},"size":{"type":"number","minimum":64,"maximum":1024,"description":"SVG width/height in px, default 256"},"ecl":{"type":"string","enum":["L","M","Q","H"],"description":"Error correction, default M"}},"required":["data"]},"inputExample":{"data":"https://example.com","size":256},"outputExample":{"contentType":"image/svg+xml","body":"<svg xmlns=…>…</svg>"}}],"health":"/health","docs":"/docs"}