{"x402Version":2,"name":"NetIntel","description":"Network intelligence API — DNS, SSL, WHOIS, email security, web fingerprinting, OSINT, and more. 64 endpoints, all pay-per-call via x402 micropayments. No API keys, no subscriptions, no rate limits.","version":"1.0.0","baseUrl":"https://netintel.dev","documentation":"https://netintel.dev/.well-known/x402","payment":{"network":"eip155:8453","payTo":"0xdaDc335482AD545296Fd7b28518A251fFCbEb9Df","scheme":"exact","currency":"USDC","priceRange":{"min":"$0.005","max":"$0.100"},"facilitator":"https://api.cdp.coinbase.com/platform/v2/x402"},"totalEndpoints":64,"categories":{"dns":["/dns/lookup","/dns-propagation/check","/dnssec/validate"],"ssl_tls":["/ssl/analyze","/cert-transparency/lookup"],"domain":["/whois-rdap/lookup","/domain-availability/check","/bulk-domain/check","/domain-age/check","/domain-report/analyze","/domain-report/full","/domain-appraise/estimate","/domain-due-diligence","/name-gen/suggest","/tld-price/compare","/typosquat/scan"],"network":["/subnet/calc","/asn-lookup/analyze","/ip-blacklist/check","/ip-reputation/analyze","/ip-geo/locate","/ip-risk/score","/ip-report/full"],"email":["/email-auth","/email-intel/analyze","/email-report/full"],"web":["/redirect/trace","/security-headers/analyze","/tech-fingerprint/analyze","/og-scraper/extract","/page-extract/read","/robots-txt/analyze","/rss-parser/fetch","/sitemap-parser/fetch","/wayback/lookup"],"security":["/breach-check/password","/url-safety/check","/url-safety/full"],"osint":["/cloud-fingerprint/analyze","/username-check/lookup","/phone-intel/analyze","/github-intel/analyze"],"ai":["/schema-parse/extract","/classify","/content-moderate","/entity-extract","/extract/address","/extract/contact","/extract/invoice","/extract/resume","/extract/table","/markdown/clean","/normalize/json","/text-summarize","/text-to-json","/sentiment/analyze","/translate/long","/translate/short"],"utilities":["/cron-parser/explain","/currency-exchange/convert","/holidays/check","/jwt-inspector/decode","/lang-detect/analyze","/npm-intel/analyze"]},"endpoints":[{"method":"GET","path":"/dns/lookup","url":"https://netintel.dev/dns/lookup","price":"$0.030","description":"Resolves all DNS record types for a domain, parses SPF/DKIM/DMARC from TXT records, and compares A records across Google/Cloudflare/Quad9 resolvers for propagation consistency.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"domain":"example.com"}},"output":{"type":"json","example":{"domain":"example.com","records":{"A":["93.184.216.34"],"AAAA":["2606:2800:220:1:248:1893:25c8:1946"],"MX":[{"priority":10,"exchange":"mail.example.com"}],"NS":["ns1.example.com","ns2.example.com"],"TXT":["v=spf1 include:_spf.google.com ~all"],"SOA":{"mname":"ns1.example.com","rname":"admin.example.com","serial":2024010101,"refresh":3600,"retry":900,"expire":604800,"minimum":86400},"CNAME":[],"PTR":[]},"security":{"spf":{"raw":"v=spf1 include:_spf.google.com ~all","version":"spf1","mechanisms":["include:_spf.google.com"],"all_qualifier":"~all"},"dkim":{"raw":"v=DKIM1; k=rsa; p=MIIBIjAN...","version":"DKIM1","key_type":"rsa","public_key":"MIIBIjAN..."},"dmarc":{"raw":"v=DMARC1; p=reject; rua=mailto:dmarc@example.com","version":"DMARC1","policy":"reject","subdomain_policy":null,"pct":null,"rua":"mailto:dmarc@example.com","ruf":null}},"propagation":{"resolvers":[{"resolver":"Google","ip":"8.8.8.8","A":["93.184.216.34"]},{"resolver":"Cloudflare","ip":"1.1.1.1","A":["93.184.216.34"]},{"resolver":"Quad9","ip":"9.9.9.9","A":["93.184.216.34"]}],"consistent":true}}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"domain":{"type":"string","description":"Domain name to query (e.g. example.com)"}},"required":["domain"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"domain":{"type":"string"},"records":{"type":"object"},"security":{"type":"object"},"propagation":{"type":"object"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/ssl/analyze","url":"https://netintel.dev/ssl/analyze","price":"$0.030","description":"Performs a TLS handshake to inspect the certificate chain, probes supported TLS versions (1.0–1.3), detects weak keys and expiry issues, and returns an overall security grade (A/B/C/F).","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"domain":"example.com","port":443}},"output":{"type":"json","example":{"host":"example.com","port":443,"certificate":{"subject":{"common_name":"example.com","organization":"Internet Corporation for Assigned Names and Numbers","organizational_unit":null,"country":"US"},"issuer":{"common_name":"DigiCert TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc","country":"US"},"serial_number":"0FD078DD48F1A2BD4D0F2BA96B6038FE","san":["example.com","www.example.com"],"key_info":{"algorithm":"RSA","size":2048},"not_before":"Jan 13 00:00:00 2024 GMT","not_after":"Feb 13 23:59:59 2025 GMT","signature_algorithm":"sha256WithRSAEncryption","version":3},"chain":[{"subject":"DigiCert TLS RSA SHA256 2020 CA1","issuer":"DigiCert Global Root CA","not_before":"Apr 14 00:00:00 2021 GMT","not_after":"Apr 13 23:59:59 2031 GMT"}],"chain_valid":true,"connection":{"protocol":"TLSv1.3","cipher":"TLS_AES_256_GCM_SHA384","supported_protocols":["TLS 1.2","TLS 1.3"]},"warnings":[],"grade":"A"}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"domain":{"type":"string","description":"Domain to analyze (e.g. example.com)"},"port":{"type":"number","description":"Port to connect to (default: 443)"}},"required":["domain"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"host":{"type":"string"},"port":{"type":"number"},"certificate":{"type":"object"},"chain":{"type":"array"},"chain_valid":{"type":"boolean"},"connection":{"type":"object"},"warnings":{"type":"array"},"grade":{"type":"string"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/redirect/trace","url":"https://netintel.dev/redirect/trace","price":"$0.010","description":"Follows a URL through its full redirect chain (up to 20 hops), recording status codes, timing, headers, TLS status, and protocol downgrades per hop, then returns an overall redirect health grade (A–F).","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"url":"http://example.com","max_hops":10}},"output":{"type":"json","example":{"chain":[{"hop":0,"url":"http://example.com/","status_code":301,"location":"https://example.com/","headers":{"location":"https://example.com/","server":"nginx"},"tls":false,"timing_ms":85},{"hop":1,"url":"https://example.com/","status_code":200,"location":null,"headers":{"server":"nginx","content-type":"text/html"},"tls":true,"timing_ms":42}],"final_url":"https://example.com/","final_status_code":200,"total_hops":1,"total_timing_ms":127,"protocol_downgrade":false,"loop_detected":false,"flags":["http_entry_point"],"grade":"A","score":95,"deductions":[{"reason":"http_entry_point","points":-5}]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"url":{"type":"string","description":"URL to trace redirects for (e.g. http://google.com)"},"max_hops":{"type":"number","description":"Maximum redirect hops to follow (default: 10, max: 20)"}},"required":["url"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"chain":{"type":"array"},"final_url":{"type":"string"},"final_status_code":{"type":"number"},"total_hops":{"type":"number"},"total_timing_ms":{"type":"number"},"protocol_downgrade":{"type":"boolean"},"loop_detected":{"type":"boolean"},"flags":{"type":"array"},"grade":{"type":"string"},"score":{"type":"number"},"deductions":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/security-headers/analyze","url":"https://netintel.dev/security-headers/analyze","price":"$0.010","description":"Fetches a URL and evaluates 10 security-critical response headers (CSP, HSTS, X-Content-Type-Options, X-Frame-Options, Referrer-Policy, Permissions-Policy, X-XSS-Protection, CORP, COEP, COOP), detects anti-patterns, and returns an overall security grade (A–F).","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"target":"https://example.com"}},"output":{"type":"json","example":{"service":"security-headers","target":"https://example.com","timestamp":"2025-01-15T12:00:00.000Z","grade":"B","score":78,"deductions":[{"reason":"Permissions-Policy not set","points":-5},{"reason":"Cross-Origin-Resource-Policy not set","points":-2},{"reason":"Cross-Origin-Embedder-Policy not set","points":-2},{"reason":"Cross-Origin-Opener-Policy not set","points":-2},{"reason":"X-Powered-By header exposes server framework","points":-3}],"results":{"final_url":"https://example.com/","status_code":200,"content_type":"text/html; charset=utf-8","summary":{"pass":6,"warn":0,"fail":0,"info":4},"headers":{"content-security-policy":{"present":true,"raw_value":"default-src 'self'","status":"pass","reason":"Content-Security-Policy is set with a strong policy"},"strict-transport-security":{"present":true,"raw_value":"max-age=31536000; includeSubDomains","status":"pass","reason":"HSTS enabled with max-age=31536000"},"x-content-type-options":{"present":true,"raw_value":"nosniff","status":"pass","reason":"X-Content-Type-Options is set to nosniff"},"x-frame-options":{"present":true,"raw_value":"DENY","status":"pass","reason":"X-Frame-Options is set to DENY"},"referrer-policy":{"present":true,"raw_value":"strict-origin-when-cross-origin","status":"pass","reason":"Referrer-Policy is set to strict-origin-when-cross-origin"},"permissions-policy":{"present":false,"raw_value":null,"status":"warn","reason":"Permissions-Policy not set — browser features not restricted"},"x-xss-protection":{"present":false,"raw_value":null,"status":"info","reason":"X-XSS-Protection not set — modern browsers use CSP instead"},"cross-origin-resource-policy":{"present":false,"raw_value":null,"status":"info","reason":"Cross-Origin-Resource-Policy not set"},"cross-origin-embedder-policy":{"present":false,"raw_value":null,"status":"info","reason":"Cross-Origin-Embedder-Policy not set"},"cross-origin-opener-policy":{"present":false,"raw_value":null,"status":"info","reason":"Cross-Origin-Opener-Policy not set"}},"anti_patterns":[{"header":"x-powered-by","raw_value":"Express","severity":"warn","reason":"Information leakage — reveals server framework"}]},"warnings":[],"errors":[],"meta":{"duration_ms":312}}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"target":{"type":"string","description":"URL or domain to audit security headers for (e.g. https://example.com)"}},"required":["target"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"service":{"type":"string"},"target":{"type":"string"},"timestamp":{"type":"string"},"grade":{"type":"string"},"score":{"type":"number"},"deductions":{"type":"array"},"results":{"type":"object"},"warnings":{"type":"array"},"errors":{"type":"array"},"meta":{"type":"object"}}}},"required":["type"]}},"required":["input"]}},{"method":"POST","path":"/email-auth","url":"https://netintel.dev/email-auth","price":"$0.030","description":"Validates SPF, DKIM, and DMARC records for a domain, probes multiple DKIM selectors concurrently, detects misconfigurations, and returns an overall email security grade (A–F) with transparent deductions.","mimeType":"application/json","discovery":{"input":{"type":"http","bodyType":"json","body":{"domain":"example.com"}},"output":{"type":"json","example":{"domain":"example.com","grade":"A","score":100,"spf":{"found":true,"record":"v=spf1 include:_spf.google.com -all","mechanisms":["include:_spf.google.com"],"all_qualifier":"-all","dns_lookup_count":1,"issues":[]},"dkim":{"found":true,"selectors_checked":["default","google"],"records":[{"selector":"google","record":"v=DKIM1; k=rsa; p=MIIBIjAN...","key_type":"rsa","key_length_bits":2048,"issues":[]}],"issues":[]},"dmarc":{"found":true,"record":"v=DMARC1; p=reject; rua=mailto:dmarc@example.com; ruf=mailto:forensic@example.com","policy":"reject","subdomain_policy":null,"pct":100,"rua":["mailto:dmarc@example.com"],"ruf":["mailto:forensic@example.com"],"issues":[]},"deductions":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","properties":{"domain":{"type":"string","description":"Domain to validate email authentication for (e.g. example.com)"},"dkim_selectors":{"type":"array","items":{"type":"string"},"description":"Optional list of DKIM selectors to probe (defaults to common selectors)"}},"required":["domain"]}},"required":["type","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"domain":{"type":"string"},"grade":{"type":"string"},"score":{"type":"number"},"spf":{"type":"object"},"dkim":{"type":"object"},"dmarc":{"type":"object"},"deductions":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/cloud-fingerprint/analyze","url":"https://netintel.dev/cloud-fingerprint/analyze","price":"$0.010","description":"Fingerprints a domain's cloud infrastructure by probing DNS records, HTTP headers, and PTR lookups to detect CDN, WAF, hosting, DNS provider, and email provider with confidence scores and an infrastructure security grade (A–F).","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"domain":"cloudflare.com"}},"output":{"type":"json","example":{"domain":"cloudflare.com","resolved_ips":["104.16.133.229","104.16.132.229"],"cname_chain":[],"hosting":{"provider":"Cloudflare","confidence":"medium","signals":["cf-ray header present"]},"cdn":{"provider":"Cloudflare","confidence":"medium","signals":["cf-ray header present"]},"waf":[{"provider":"Cloudflare WAF","confidence":"medium","signals":["cf-ray header present"]}],"dns_provider":{"provider":"Cloudflare DNS","confidence":"high","signals":["NS ns3.cloudflare.com contains cloudflare.com"]},"email_provider":{"provider":null,"confidence":null,"signals":[]},"http_fingerprint":{"https_enforced":true,"server_header":"cloudflare","server_version_exposed":false,"x_powered_by":null,"notable_headers":["cf-ray"]},"tls":{"issuer":null,"wildcard":null,"san_count":null},"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"domain":{"type":"string","description":"Domain to fingerprint (e.g. example.com)"}},"required":["domain"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"domain":{"type":"string"},"resolved_ips":{"type":"array"},"cname_chain":{"type":"array"},"hosting":{"type":"object"},"cdn":{"type":"object"},"waf":{"type":"array"},"dns_provider":{"type":"object"},"email_provider":{"type":"object"},"http_fingerprint":{"type":"object"},"tls":{"type":"object"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"POST","path":"/schema-parse/extract","url":"https://netintel.dev/schema-parse/extract","price":"$0.100","description":"Accepts unstructured text and a JSON Schema, then uses an LLM to extract structured data matching the schema. Supports any user-defined schema shape — contact info, invoices, product specs, medical records, legal clauses, etc. Returns the extracted object plus token usage. Fields that cannot be found are omitted or null.","mimeType":"application/json","discovery":{"input":{"type":"http","bodyType":"json","body":{"raw_text":"Hi I'm Sarah Chen, VP of Engineering at Acme Corp. Reach me at sarah.chen@acme.com or 555-867-5309.","target_schema":{"type":"object","properties":{"name":{"type":"string"},"email":{"type":"string"},"phone":{"type":"string"},"company":{"type":"string"},"role":{"type":"string"}},"required":["name","email"]}}},"output":{"type":"json","example":{"extracted":{"name":"Sarah Chen","email":"sarah.chen@acme.com","phone":"555-867-5309","company":"Acme Corp","role":"VP of Engineering"},"tokens_used":{"input":312,"output":48}}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","properties":{"raw_text":{"type":"string","description":"Unstructured text to extract data from — emails, resumes, articles, log entries, contracts, support tickets, etc."},"target_schema":{"type":"object","description":"A standard JSON Schema object with type, properties, and optionally required. Defines the shape of the extracted output."}},"required":["raw_text","target_schema"]}},"required":["type","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"extracted":{"type":"object","description":"Structured data conforming to the caller's target_schema. Missing fields are omitted or null."},"tokens_used":{"type":"object","description":"LLM token consumption for this extraction","properties":{"input":{"type":"number","description":"Prompt tokens consumed"},"output":{"type":"number","description":"Completion tokens consumed"}}}}}},"required":["type"]}},"required":["input"]}},{"method":"POST","path":"/classify","url":"https://netintel.dev/classify","price":"$0.030","description":"Classify text into caller-supplied categories using Claude Haiku — zero-shot classification where the agent provides the label set and gets back the best-matching category with confidence and per-label scores, so agents can route, tag, and triage content with their own taxonomy in one call.","mimeType":"application/json","discovery":{"input":{"type":"http","bodyType":"json","body":{"text":"Hi, I was charged twice for my subscription this month and need a refund.","labels":["billing","technical","general"]}},"output":{"type":"json","example":{"mode":"single_label","label":"billing","confidence":0.91,"scores":{"billing":0.91,"technical":0.06,"general":0.03},"labels_provided":["billing","technical","general"],"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","properties":{"text":{"type":"string","description":"The text to classify — a support ticket, email, message, document snippet, etc. Max 10000 words or 50KB."},"labels":{"type":"array","items":{"type":"string"},"description":"2-20 candidate category labels to classify the text into. The chosen label(s) are always drawn from this set."},"multi_label":{"type":"boolean","description":"If true, allow multiple matching labels and return a labels array. Defaults to false (single best label)."}},"required":["text","labels"]}},"required":["type","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"mode":{"type":"string","description":"single_label or multi_label"},"label":{"type":"string","description":"Best matching label (single-label mode)"},"labels":{"type":"array","items":{"type":"string"},"description":"Matching labels (multi-label mode)"},"confidence":{"type":"number","description":"Confidence for the chosen label (single-label mode)"},"scores":{"type":"object","description":"Per-label relevance scores (0-1) for every provided label"},"labels_provided":{"type":"array","items":{"type":"string"},"description":"Echo of the candidate labels supplied by the caller"},"score":{"type":"number","description":"Quality score 0-100"},"grade":{"type":"string","description":"Letter grade A-F"},"findings":{"type":"array","items":{"type":"string"},"description":"Informational findings (e.g. low_confidence)"}}}},"required":["type"]}},"required":["input"]}},{"method":"POST","path":"/content-moderate","url":"https://netintel.dev/content-moderate","price":"$0.05","description":"Moderate text content using Claude Haiku — flags categories like harassment, hate, sexual content, violence, self-harm, and spam with per-category severity and an overall allow/flag/block recommendation, so agents can screen user-generated content before publishing or storing it.","mimeType":"application/json","discovery":{"input":{"type":"http","bodyType":"json","body":{"text":"I will find where you live and make you regret ever posting that."}},"output":{"type":"json","example":{"categories":{"harassment":{"flagged":true,"severity":"high"},"hate":{"flagged":false,"severity":"none"},"sexual":{"flagged":false,"severity":"none"},"violence":{"flagged":true,"severity":"medium"},"self_harm":{"flagged":false,"severity":"none"},"spam":{"flagged":false,"severity":"none"}},"flagged_categories":["harassment","violence"],"overall":"block","reasoning":"Contains a direct threat of physical harm targeting the recipient.","score":20,"grade":"F","findings":[{"category":"harassment","severity":"high"},{"category":"violence","severity":"medium"}]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","properties":{"text":{"type":"string","description":"The text to moderate — a comment, message, post, review, or any user-generated content. Max 10000 words or 50KB."}},"required":["text"]}},"required":["type","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"categories":{"type":"object","description":"Per-category verdicts (harassment, hate, sexual, violence, self_harm, spam), each with flagged (boolean) and severity (none/low/medium/high)"},"flagged_categories":{"type":"array","items":{"type":"string"},"description":"Category names where flagged=true"},"overall":{"type":"string","description":"Overall recommendation: allow, flag, or block"},"reasoning":{"type":"string","description":"One-sentence rationale for the verdict"},"score":{"type":"number","description":"Content cleanliness score 0-100 (allow=100, flag=70, block=20)"},"grade":{"type":"string","description":"Letter grade A-F derived from the score"},"findings":{"type":"array","items":{"type":"object"},"description":"One entry per flagged category with its severity"}}}},"required":["type"]}},"required":["input"]}},{"method":"POST","path":"/entity-extract","url":"https://netintel.dev/entity-extract","price":"$0.050","description":"Extract named entities from text using Claude Haiku — people, organizations, locations, dates, emails, URLs, money amounts, and products — returned as structured typed arrays so agents can pull structured signals out of unstructured text in one call.","mimeType":"application/json","discovery":{"input":{"type":"http","bodyType":"json","body":{"text":"Jane Doe and John Smith from Acme Corp met in San Francisco on 2024-03-15 to discuss WidgetPro. Contact jane@acme.com or visit https://acme.com — the deal was worth $1.2M."}},"output":{"type":"json","example":{"entities":{"person":["Jane Doe","John Smith"],"organization":["Acme Corp"],"location":["San Francisco"],"date":["2024-03-15"],"email":["jane@acme.com"],"url":["https://acme.com"],"money":["$1.2M"],"product":["WidgetPro"],"phone":[]},"total_entities":9,"types_extracted":["person","organization","location","date","email","url","money","product","phone"],"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","properties":{"text":{"type":"string","description":"The text to extract named entities from — an article, email, document, or any unstructured text. Max 10000 words or 50KB."},"types":{"type":"array","items":{"type":"string"},"description":"Optional subset of entity types to extract: person, organization, location, date, email, url, money, product, phone. Defaults to all types."}},"required":["text"]}},"required":["type","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"entities":{"type":"object","description":"Per-type arrays of unique entity strings as they appear in the text. Only requested types appear when the types param is supplied."},"total_entities":{"type":"number","description":"Total count across all entity arrays"},"types_extracted":{"type":"array","items":{"type":"string"},"description":"The entity types included in this response"},"score":{"type":"number","description":"Quality score 0-100"},"grade":{"type":"string","description":"Letter grade A-F"},"findings":{"type":"array","items":{"type":"object"},"description":"Informational findings (e.g. extraction errors)"}}}},"required":["type"]}},"required":["input"]}},{"method":"POST","path":"/extract/address","url":"https://netintel.dev/extract/address","price":"$0.03","description":"Parse and normalize a freeform address string using Claude Haiku — splits it into street, city, state/region, postal code, and country, plus a normalized single-line form, so agents can clean and standardize messy address data for shipping, CRM, and verification workflows.","mimeType":"application/json","discovery":{"input":{"type":"http","bodyType":"json","body":{"address":"123 Main St, San Francisco, CA 94105, USA"}},"output":{"type":"json","example":{"address":{"street":"123 Main St","city":"San Francisco","state_region":"CA","postal_code":"94105","country":"United States","country_code":"US","normalized":"123 Main St, San Francisco, CA 94105, United States"},"components_found":5,"is_complete":true,"cached":false,"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","properties":{"address":{"type":"string","description":"The freeform address string to parse and normalize. Max 10000 words or 50KB."}},"required":["address"]}},"required":["type","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"address":{"type":"object","description":"Parsed components: street, city, state_region, postal_code, country, country_code (ISO 3166-1 alpha-2), and a normalized single-line form. Missing components are null."},"components_found":{"type":"number","description":"Count of non-null core components (street, city, state_region, postal_code, country)."},"is_complete":{"type":"boolean","description":"True when street, city, and country are all present."},"cached":{"type":"boolean","description":"True if served from the in-memory cache."},"score":{"type":"number","description":"Quality score 0-100"},"grade":{"type":"string","description":"Letter grade A-F"},"findings":{"type":"array","items":{"type":"string"},"description":"Informational findings (e.g. incomplete_address, no_components)."}}}},"required":["type"]}},"required":["input"]}},{"method":"POST","path":"/extract/contact","url":"https://netintel.dev/extract/contact","price":"$0.05","description":"Extract structured contact details from text, an email signature, or webpage text using Claude Haiku — returns name, title, company, email, phone, and address as clean JSON so agents can turn unstructured contact blocks into CRM-ready records in one call.","mimeType":"application/json","discovery":{"input":{"type":"http","bodyType":"json","body":{"text":"Jane Doe\nVP of Engineering, Acme Corp\njane@acme.com | +1 555 867 5309\n123 Main St, San Francisco, CA 94105"}},"output":{"type":"json","example":{"contact":{"name":"Jane Doe","title":"VP of Engineering","company":"Acme Corp","email":"jane@acme.com","phone":"+1 555 867 5309","address":"123 Main St, San Francisco, CA 94105"},"fields_found":6,"cached":false,"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","properties":{"text":{"type":"string","description":"The text to extract contact details from — free text, an email signature, or webpage text. Max 10000 words or 50KB."}},"required":["text"]}},"required":["type","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"contact":{"type":"object","description":"Parsed contact fields: name, title, company, email, phone, address. Missing fields are null."},"fields_found":{"type":"number","description":"Count of non-null contact fields."},"cached":{"type":"boolean","description":"True if served from the in-memory cache."},"score":{"type":"number","description":"Quality score 0-100"},"grade":{"type":"string","description":"Letter grade A-F"},"findings":{"type":"array","items":{"type":"string"},"description":"Informational findings (e.g. no_fields_found)."}}}},"required":["type"]}},"required":["input"]}},{"method":"POST","path":"/extract/invoice","url":"https://netintel.dev/extract/invoice","price":"$0.10","description":"Extract structured data from invoice or receipt text using Claude Haiku — returns vendor, invoice number, dates, line items, subtotal, tax, total, and currency as clean JSON so agents can automate accounts-payable, expense processing, and bookkeeping from raw invoice text.","mimeType":"application/json","discovery":{"input":{"type":"http","bodyType":"json","body":{"text":"Acme Supplies Inc\nInvoice INV-2024-0142\nDate: 2024-03-01  Due: 2024-03-31\nWidget A  10 x $5.00 = $50.00\nShipping  1 x $12.00 = $12.00\nSubtotal: $62.00\nTax: $5.58\nTotal: $67.58 USD"}},"output":{"type":"json","example":{"invoice":{"vendor":"Acme Supplies Inc","invoice_number":"INV-2024-0142","invoice_date":"2024-03-01","due_date":"2024-03-31","line_items":[{"description":"Widget A","quantity":10,"unit_price":5,"amount":50},{"description":"Shipping","quantity":1,"unit_price":12,"amount":12}],"subtotal":62,"tax":5.58,"total":67.58,"currency":"USD"},"line_item_count":2,"totals_reconcile":true,"cached":false,"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","properties":{"text":{"type":"string","description":"The invoice or receipt text to extract structured data from. Max 10000 words or 50KB."}},"required":["text"]}},"required":["type","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"invoice":{"type":"object","description":"Parsed invoice fields: vendor, invoice_number, invoice_date, due_date, line_items (array of {description, quantity, unit_price, amount}), subtotal, tax, total, currency. Missing fields are null."},"line_item_count":{"type":"number","description":"Number of line items extracted."},"totals_reconcile":{"type":["boolean","null"],"description":"True if sum(line_items.amount) + tax ≈ total (within $0.02). False if they do not reconcile. Null if total or subtotal is missing."},"cached":{"type":"boolean","description":"True if served from the in-memory cache."},"score":{"type":"number","description":"Quality score 0-100"},"grade":{"type":"string","description":"Letter grade A-F"},"findings":{"type":"array","items":{"type":"string"},"description":"Informational findings (e.g. no_total_found, totals_mismatch)."}}}},"required":["type"]}},"required":["input"]}},{"method":"POST","path":"/extract/resume","url":"https://netintel.dev/extract/resume","price":"$0.08","description":"Extract structured data from resume/CV text using Claude Haiku — returns name, contact info, skills, work experience, and education as clean JSON arrays so agents can automate applicant screening, candidate databases, and recruiting workflows from raw resume text.","mimeType":"application/json","discovery":{"input":{"type":"http","bodyType":"json","body":{"text":"Jane Doe\nSan Francisco, CA | jane@example.com | +1 555 867 5309 | linkedin.com/in/janedoe\n\nSummary: Senior engineer with 10 years experience.\n\nSkills: Python, TypeScript, Kubernetes\n\nExperience:\nStaff Engineer, Acme Corp (2020-present) — Led platform team\n\nEducation:\nBS Computer Science, UC Berkeley, 2014"}},"output":{"type":"json","example":{"resume":{"name":"Jane Doe","contact":{"email":"jane@example.com","phone":"+1 555 867 5309","location":"San Francisco, CA","links":["https://linkedin.com/in/janedoe"]},"summary":"Senior engineer with 10 years experience...","skills":["Python","TypeScript","Kubernetes"],"experience":[{"title":"Staff Engineer","company":"Acme Corp","start":"2020","end":"present","description":"Led platform team"}],"education":[{"degree":"BS Computer Science","institution":"UC Berkeley","year":"2014"}]},"skills_count":3,"experience_count":1,"education_count":1,"cached":false,"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","properties":{"text":{"type":"string","description":"The resume or CV text to extract structured data from. Max 10000 words or 50KB."}},"required":["text"]}},"required":["type","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"resume":{"type":"object","description":"Parsed resume fields: name, contact ({email, phone, location, links}), summary, skills (array), experience (array of {title, company, start, end, description}), education (array of {degree, institution, year}). Missing scalar fields are null; arrays are empty when nothing is found."},"skills_count":{"type":"number","description":"Number of skills extracted."},"experience_count":{"type":"number","description":"Number of work-experience entries extracted."},"education_count":{"type":"number","description":"Number of education entries extracted."},"cached":{"type":"boolean","description":"True if served from the in-memory cache."},"score":{"type":"number","description":"Quality score 0-100"},"grade":{"type":"string","description":"Letter grade A-F"},"findings":{"type":"array","items":{"type":"string"},"description":"Informational findings (e.g. no_experience, no_skills, no_name)."}}}},"required":["type"]}},"required":["input"]}},{"method":"POST","path":"/extract/table","url":"https://netintel.dev/extract/table","price":"$0.05","description":"Extract tabular data from messy text or HTML using Claude Haiku — detects columns and rows in unstructured content and returns clean structured JSON (columns + rows) so agents can turn pasted tables, HTML tables, and delimited text into usable data in one call.","mimeType":"application/json","discovery":{"input":{"type":"http","bodyType":"json","body":{"text":"product | price | qty\nWidget A | 5.00 | 10\nWidget B | 7.50 | 4"}},"output":{"type":"json","example":{"table":{"columns":["product","price","qty"],"rows":[{"product":"Widget A","price":"5.00","qty":"10"},{"product":"Widget B","price":"7.50","qty":"4"}],"row_count":2},"column_count":3,"cached":false,"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","properties":{"text":{"type":"string","description":"The messy text or HTML containing tabular data to extract. Max 10000 words or 50KB."}},"required":["text"]}},"required":["type","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"table":{"type":"object","description":"Parsed table: columns (array of column names), rows (array of objects keyed by column name), and row_count (number of rows). Empty columns/rows with row_count 0 when no tabular structure is detected."},"column_count":{"type":"number","description":"Number of columns detected."},"cached":{"type":"boolean","description":"True if served from the in-memory cache."},"score":{"type":"number","description":"Quality score 0-100"},"grade":{"type":"string","description":"Letter grade A-F"},"findings":{"type":"array","items":{"type":"string"},"description":"Informational findings (e.g. no_table_found, count_mismatch)."}}}},"required":["type"]}},"required":["input"]}},{"method":"POST","path":"/markdown/clean","url":"https://netintel.dev/markdown/clean","price":"$0.03","description":"Convert messy HTML or text into clean, well-structured Markdown using Claude Haiku — strips boilerplate, fixes heading hierarchy, normalizes lists and links, and returns readable Markdown so agents can feed clean docs into downstream pipelines, knowledge bases, or LLM context.","mimeType":"application/json","discovery":{"input":{"type":"http","bodyType":"json","body":{"text":"<nav>Home About</nav><h1>Welcome</h1><p>Hello <a href=\"https://example.com\">world</a>.</p><footer>© 2024</footer>"}},"output":{"type":"json","example":{"markdown":"# Welcome\n\nHello [world](https://example.com).\n","input_chars":108,"output_chars":39,"reduction_ratio":0.64,"cached":false,"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","properties":{"text":{"type":"string","description":"The messy HTML or text to convert into clean Markdown. Max 10000 words or 50KB."}},"required":["text"]}},"required":["type","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"markdown":{"type":"string","description":"The cleaned, well-structured GitHub-flavored Markdown."},"input_chars":{"type":"number","description":"Character count of the input."},"output_chars":{"type":"number","description":"Character count of the cleaned markdown."},"reduction_ratio":{"type":"number","description":"1 - (output_chars / input_chars), rounded to 2dp — how much boilerplate was stripped (informational)."},"cached":{"type":"boolean","description":"True if served from the in-memory cache."},"score":{"type":"number","description":"Quality score 0-100"},"grade":{"type":"string","description":"Letter grade A-F"},"findings":{"type":"array","items":{"type":"string"},"description":"Informational findings (e.g. empty_output)."}}}},"required":["type"]}},"required":["input"]}},{"method":"POST","path":"/normalize/json","url":"https://netintel.dev/normalize/json","price":"$0.05","description":"Conform messy or inconsistent JSON to a target schema using Claude Haiku — renames keys, coerces types (string→number, \"true\"→boolean, etc.), and fills missing fields with null, returning JSON that matches the exact shape the caller specified so agents can normalize data from varied sources into one consistent structure.","mimeType":"application/json","discovery":{"input":{"type":"http","bodyType":"json","body":{"data":{"fullName":"Jane Doe","age":"42","active":"yes","tags":"vip,beta","signup":"March 1 2024"},"schema":{"full_name":"string","age":"number","is_active":"boolean","tags":"string[]","signup_date":"date"}}},"output":{"type":"json","example":{"normalized":{"full_name":"Jane Doe","age":42,"is_active":true,"tags":["vip","beta"],"signup_date":"2024-03-01"},"fields_in_schema":5,"fields_populated":5,"fields_nulled":0,"schema_match":true,"cached":false,"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","properties":{"data":{"type":["string","object"],"description":"The messy JSON to normalize — a JSON string or an already-parsed object. Max 10000 words or 50KB."},"schema":{"type":"object","description":"A map of field name → type token. Supported tokens: string, number, boolean, date, string[], number[], object. Max 50 fields. Output keys are forced to exactly these field names."}},"required":["data","schema"]}},"required":["type","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"normalized":{"type":"object","description":"The input conformed to the target schema: keys are exactly the schema field names, values coerced to the declared types, missing fields null."},"fields_in_schema":{"type":"number","description":"Number of fields in the target schema."},"fields_populated":{"type":"number","description":"Number of non-null fields in the output."},"fields_nulled":{"type":"number","description":"Number of null fields in the output."},"schema_match":{"type":"boolean","description":"True when the model's output keys were exactly the schema field names. False when code had to force-conform (strip extra / add missing) keys."},"cached":{"type":"boolean","description":"True if served from the in-memory cache."},"score":{"type":"number","description":"Quality score 0-100."},"grade":{"type":"string","description":"Letter grade A-F."},"findings":{"type":"array","items":{"type":"string"},"description":"Informational findings (e.g. schema_mismatch_corrected, mostly_nulled)."}}}},"required":["type"]}},"required":["input"]}},{"method":"POST","path":"/text-to-json","url":"https://netintel.dev/text-to-json","price":"$0.05","description":"Turn unstructured text into structured JSON matching a caller-supplied schema using Claude Haiku — the agent declares the fields and types it wants, and gets back populated JSON with values pulled from the text and coerced to the right types, so agents can structure any prose into the exact shape their pipeline expects.","mimeType":"application/json","discovery":{"input":{"type":"http","bodyType":"json","body":{"text":"Acme Corp is a privately held software company founded in 2010. The San Francisco-based firm, which also has an office in London, now employs roughly 250 people.","schema":{"company":"string","founded_year":"number","employees":"number","is_public":"boolean","locations":"string[]"}}},"output":{"type":"json","example":{"result":{"company":"Acme Corp","founded_year":2010,"employees":250,"is_public":false,"locations":["San Francisco","London"]},"fields_in_schema":5,"fields_populated":5,"fields_nulled":0,"schema_match":true,"cached":false,"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","properties":{"text":{"type":"string","description":"The unstructured prose to extract structured data from. Max 10000 words or 50KB."},"schema":{"type":"object","description":"A map of field name → type token. Supported tokens: string, number, boolean, date, string[], number[], object. Max 50 fields. Each field is extracted from the text as the declared type; output keys are forced to exactly these field names."}},"required":["text","schema"]}},"required":["type","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"result":{"type":"object","description":"The extracted data: keys are exactly the schema field names, values pulled from the text and cast to the declared types, unfindable fields null."},"fields_in_schema":{"type":"number","description":"Number of fields in the schema."},"fields_populated":{"type":"number","description":"Number of non-null fields in the output."},"fields_nulled":{"type":"number","description":"Number of null fields in the output."},"schema_match":{"type":"boolean","description":"True when the model's output keys were exactly the schema field names. False when code had to force-conform (strip extra / add missing) keys."},"cached":{"type":"boolean","description":"True if served from the in-memory cache."},"score":{"type":"number","description":"Quality score 0-100."},"grade":{"type":"string","description":"Letter grade A-F."},"findings":{"type":"array","items":{"type":"string"},"description":"Informational findings (e.g. schema_mismatch_corrected, mostly_nulled)."}}}},"required":["type"]}},"required":["input"]}},{"method":"POST","path":"/sentiment/analyze","url":"https://netintel.dev/sentiment/analyze","price":"$0.030","description":"Analyze the sentiment of text using Claude Haiku — returns overall polarity (positive/negative/neutral/mixed), a -1 to +1 score, detected emotions, and optional per-aspect sentiment, so agents can gauge tone in reviews, messages, and feedback in one call.","mimeType":"application/json","discovery":{"input":{"type":"http","bodyType":"json","body":{"text":"The food was absolutely delicious and the staff were so friendly, but the prices were a bit steep.","aspects":["food","service","price"]}},"output":{"type":"json","example":{"polarity":"mixed","score":0.2,"confidence":0.86,"emotions":["joy","trust"],"aspects":{"food":{"polarity":"positive","score":0.9},"service":{"polarity":"positive","score":0.8},"price":{"polarity":"negative","score":-0.4}},"service_score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","properties":{"text":{"type":"string","description":"The text to analyze sentiment for — a review, message, feedback, or any natural-language text. Max 10000 words or 50KB."},"aspects":{"type":"array","items":{"type":"string"},"description":"Optional list of up to 10 aspects for aspect-based sentiment (e.g. [\"price\", \"service\", \"quality\"]). When provided, sentiment toward each named aspect is also returned."}},"required":["text"]}},"required":["type","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"polarity":{"type":"string","description":"Overall sentiment: positive, negative, neutral, or mixed"},"score":{"type":"number","description":"Sentiment polarity score from -1.0 (very negative) to 1.0 (very positive)"},"confidence":{"type":"number","description":"Model confidence 0.0-1.0"},"emotions":{"type":"array","items":{"type":"string"},"description":"Detected emotions drawn from joy, anger, sadness, fear, surprise, disgust, trust, anticipation"},"aspects":{"type":"object","description":"Per-aspect sentiment (present only when the aspects param was supplied); each aspect maps to { polarity, score }"},"service_score":{"type":"number","description":"Endpoint health score 0-100 (100 on success) — distinct from the sentiment score"},"grade":{"type":"string","description":"Letter grade A-F derived from service_score"},"findings":{"type":"array","items":{"type":"object"},"description":"Informational findings (e.g. analysis errors)"}}}},"required":["type"]}},"required":["input"]}},{"method":"POST","path":"/text-summarize","url":"https://netintel.dev/text-summarize","price":"$0.05","description":"Summarize any text or web page into a concise summary plus key bullet points using Claude Haiku — accepts raw text or a URL (which it fetches and extracts), enforces an input cap, and returns a clean structured summary so agents can compress documents and articles in one call.","mimeType":"application/json","discovery":{"input":{"type":"http","bodyType":"json","body":{"text":"The James Webb Space Telescope has captured its deepest infrared image of the universe to date, revealing thousands of galaxies in a tiny patch of sky. The image, known as Webb's First Deep Field, shows galaxy cluster SMACS 0723 as it appeared 4.6 billion years ago. The combined mass of this cluster acts as a gravitational lens, magnifying far more distant galaxies behind it. Astronomers say the image will help them understand galaxy formation in the early universe."}},"output":{"type":"json","example":{"source":"text","summary":"The James Webb Space Telescope captured its deepest infrared image yet, revealing thousands of galaxies. Known as Webb's First Deep Field, it shows galaxy cluster SMACS 0723 acting as a gravitational lens to magnify far more distant galaxies. The image will help astronomers study galaxy formation in the early universe.","key_points":["Webb captured its deepest infrared image to date","The image shows galaxy cluster SMACS 0723 as it appeared 4.6 billion years ago","The cluster's mass acts as a gravitational lens magnifying distant galaxies","It will aid the study of early-universe galaxy formation"],"original_word_count":78,"summary_word_count":52,"compression_ratio":0.67,"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","properties":{"text":{"type":"string","description":"Raw text to summarize. Provide exactly one of text or url. Max 10000 words or 50KB."},"url":{"type":"string","description":"URL to fetch, extract readable text from, and summarize. Provide exactly one of text or url."},"max_points":{"type":"number","description":"Number of key bullet points to return (default 5, max 10)."}}}},"required":["type","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"source":{"type":"string","description":"text or url"},"summary":{"type":"string","description":"Concise 2-4 sentence summary"},"key_points":{"type":"array","items":{"type":"string"},"description":"Key bullet points extracted from the content"},"original_word_count":{"type":"number","description":"Word count of the input content"},"summary_word_count":{"type":"number","description":"Word count of the generated summary"},"compression_ratio":{"type":"number","description":"summary_word_count / original_word_count, rounded to 2 decimals"},"score":{"type":"number","description":"Quality score 0-100"},"grade":{"type":"string","description":"Letter grade A-F"},"findings":{"type":"array","items":{"type":"object"},"description":"Informational findings (e.g. errors)"}}}},"required":["type"]}},"required":["input"]}},{"method":"POST","path":"/translate/long","url":"https://netintel.dev/translate/long","price":"$0.08","description":"Translate up to 2000 words between languages using Claude Haiku — auto-detects source, supports 30+ target languages, preserves formatting, for larger documents and articles. For short snippets use the cheaper /translate/short.","mimeType":"application/json","discovery":{"input":{"type":"http","bodyType":"json","body":{"text":"The James Webb Space Telescope has captured its deepest infrared image of the universe to date, revealing thousands of galaxies in a tiny patch of sky.","target":"de"}},"output":{"type":"json","example":{"translation":"Das James-Webb-Weltraumteleskop hat sein bisher tiefstes Infrarotbild des Universums aufgenommen und Tausende von Galaxien in einem winzigen Himmelsausschnitt enthüllt.","source_language":"en","target_language":"de","source_detected":true,"word_count":26,"tier":"long","service_score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","properties":{"text":{"type":"string","description":"The text to translate. Max 2000 words (and 50KB). For shorter snippets use the cheaper /translate/short."},"target":{"type":"string","description":"Target language as an ISO 639-1 code (e.g. \"de\") or English name (e.g. \"German\"). 30+ languages supported. Required. Aliases also accepted: target_language, to, lang. (The response returns this as target_language.)"},"source":{"type":"string","description":"Optional source language (ISO 639-1 code or English name). When omitted, the source language is auto-detected. Aliases also accepted: source_language, from."}},"required":["text","target"]}},"required":["type","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"translation":{"type":"string","description":"The translated text, formatting preserved"},"source_language":{"type":"string","description":"ISO 639-1 code of the source language (detected or supplied)"},"target_language":{"type":"string","description":"ISO 639-1 code of the target language"},"source_detected":{"type":"boolean","description":"true when the source language was auto-detected; false when supplied by the caller"},"word_count":{"type":"number","description":"Word count of the input text"},"tier":{"type":"string","description":"Pricing tier — always \"long\" for this endpoint"},"service_score":{"type":"number","description":"Endpoint health score 0-100 (100 on success)"},"grade":{"type":"string","description":"Letter grade A-F derived from service_score"},"findings":{"type":"array","items":{"type":"object"},"description":"Informational findings (e.g. errors)"}}}},"required":["type"]}},"required":["input"]}},{"method":"POST","path":"/translate/short","url":"https://netintel.dev/translate/short","price":"$0.03","description":"Translate up to 500 words between languages using Claude Haiku — auto-detects source language, supports 30+ target languages, preserves formatting, and returns the translation with detected source so agents can localize short content cheaply. For longer text use /translate/long.","mimeType":"application/json","discovery":{"input":{"type":"http","bodyType":"json","body":{"text":"Hello world","target":"fr"}},"output":{"type":"json","example":{"translation":"Bonjour le monde","source_language":"en","target_language":"fr","source_detected":true,"word_count":2,"tier":"short","service_score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","properties":{"text":{"type":"string","description":"The text to translate. Max 500 words (and 50KB). For longer documents use /translate/long."},"target":{"type":"string","description":"Target language as an ISO 639-1 code (e.g. \"fr\") or English name (e.g. \"French\"). 30+ languages supported. Required. Aliases also accepted: target_language, to, lang. (The response returns this as target_language.)"},"source":{"type":"string","description":"Optional source language (ISO 639-1 code or English name). When omitted, the source language is auto-detected. Aliases also accepted: source_language, from."}},"required":["text","target"]}},"required":["type","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"translation":{"type":"string","description":"The translated text, formatting preserved"},"source_language":{"type":"string","description":"ISO 639-1 code of the source language (detected or supplied)"},"target_language":{"type":"string","description":"ISO 639-1 code of the target language"},"source_detected":{"type":"boolean","description":"true when the source language was auto-detected; false when supplied by the caller"},"word_count":{"type":"number","description":"Word count of the input text"},"tier":{"type":"string","description":"Pricing tier — always \"short\" for this endpoint"},"service_score":{"type":"number","description":"Endpoint health score 0-100 (100 on success)"},"grade":{"type":"string","description":"Letter grade A-F derived from service_score"},"findings":{"type":"array","items":{"type":"object"},"description":"Informational findings (e.g. errors)"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/asn-lookup/analyze","url":"https://netintel.dev/asn-lookup/analyze","price":"$0.030","description":"Resolves an IP address or domain to its Autonomous System Number (ASN), network owner, country, and hosting/cloud classification — agents get structured network ownership context plus a trust score to assess infrastructure risk.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"target":"8.8.8.8"}},"output":{"type":"json","example":{"target":"8.8.8.8","ip":"8.8.8.8","ip_version":4,"hostname":"dns.google","asn":"AS15169","asn_number":15169,"organization":"Google LLC","network":"8.8.8.0/24","country":"US","region":"California","city":"Mountain View","is_hosting":true,"is_cloud":true,"is_vpn":false,"classification":"cloud","score":72,"grade":"C","findings":[{"rule":"cloud_infrastructure","deduction":-20,"detail":"IP belongs to known cloud provider (Google LLC)"},{"rule":"hosting_provider","deduction":-10,"detail":"IP is classified as hosting infrastructure"}]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"target":{"type":"string","description":"IP address (v4 or v6) or domain name to look up"}},"required":["target"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"target":{"type":"string"},"ip":{"type":"string"},"ip_version":{"type":"number"},"hostname":{"type":"string"},"asn":{"type":"string"},"asn_number":{"type":"number"},"organization":{"type":"string"},"network":{"type":"string"},"country":{"type":"string"},"region":{"type":"string"},"city":{"type":"string"},"is_hosting":{"type":"boolean"},"is_cloud":{"type":"boolean"},"is_vpn":{"type":"boolean"},"classification":{"type":"string"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/whois-rdap/lookup","url":"https://netintel.dev/whois-rdap/lookup","price":"$0.010","description":"Look up domain registration metadata via RDAP — returns registrar, creation/expiry dates, nameservers, status flags, and an actionability score so agents can assess domain trustworthiness or availability risk.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"domain":"example.com"}},"output":{"type":"json","example":{"domain":"example.com","tld":"com","rdap_url":"https://rdap.verisign.com/com/v1/domain/example.com","registrar":"MarkMonitor Inc.","registrar_iana_id":"292","created_at":"1995-08-14T04:00:00Z","updated_at":"2023-08-14T07:01:31Z","expires_at":"2024-08-13T04:00:00Z","days_until_expiry":180,"name_servers":["a.iana-servers.net","b.iana-servers.net"],"status":["client delete prohibited","client transfer prohibited"],"status_has_abuse_flags":false,"score":85,"grade":"B","findings":[{"rule":"expires_within_90_days","deduction":-15,"detail":"Domain expires in 180 days"}],"raw_rdap_url":"https://rdap.verisign.com/com/v1/domain/example.com"}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"domain":{"type":"string","description":"Domain name to look up (e.g. example.com)"}},"required":["domain"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"domain":{"type":"string"},"tld":{"type":"string"},"rdap_url":{"type":"string"},"registrar":{"type":"string"},"registrar_iana_id":{"type":"string"},"created_at":{"type":"string"},"updated_at":{"type":"string"},"expires_at":{"type":"string"},"days_until_expiry":{"type":"number"},"name_servers":{"type":"array"},"status":{"type":"array"},"status_has_abuse_flags":{"type":"boolean"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"},"raw_rdap_url":{"type":"string"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/cert-transparency/lookup","url":"https://netintel.dev/cert-transparency/lookup","price":"$0.010","description":"Query the crt.sh certificate transparency log database to enumerate all SSL certificates ever issued for a domain — returns subdomains discovered, certificate issuers, validity periods, and a risk score flagging wildcard certs, expiring certs, and suspicious issuance patterns.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"domain":"example.com","include_subdomains":true,"limit":100}},"output":{"type":"json","example":{"domain":"example.com","total_certs_found":47,"unique_subdomains":["www.example.com","mail.example.com"],"unique_subdomain_count":2,"issuers":["Let's Encrypt"],"wildcard_certs":[],"expiring_within_30_days":[],"recently_issued":[],"certs":[{"id":12345678,"common_name":"example.com","issuer":"Let's Encrypt","not_before":"2024-01-01T00:00:00Z","not_after":"2024-04-01T00:00:00Z","sans":["example.com","www.example.com"],"is_wildcard":false,"is_expired":false,"days_until_expiry":90}],"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"domain":{"type":"string","description":"Domain name to query certificate transparency logs for (e.g. example.com)"},"include_subdomains":{"type":"boolean","description":"Whether to include subdomain certificates (default: true)"},"limit":{"type":"number","description":"Maximum number of certificates to return (default: 100, max: 500)"}},"required":["domain"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"domain":{"type":"string"},"total_certs_found":{"type":"number"},"unique_subdomains":{"type":"array"},"unique_subdomain_count":{"type":"number"},"issuers":{"type":"array"},"wildcard_certs":{"type":"array"},"expiring_within_30_days":{"type":"array"},"recently_issued":{"type":"array"},"certs":{"type":"array"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/subnet/calc","url":"https://netintel.dev/subnet/calc","price":"$0.005","description":"Calculates IPv4/IPv6 subnet details from CIDR notation including network/broadcast addresses, netmask, usable host range, supernet, and possible subnets; for multiple CIDRs, detects overlaps and classifies relationships.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"cidr":"192.168.1.0%2F24"}},"output":{"type":"json","example":{"cidr":"10.0.1.0/24","ip_version":4,"network":"10.0.1.0","broadcast":"10.0.1.255","netmask":"255.255.255.0","wildcard":"0.0.0.255","binary_mask":"11111111111111111111111100000000","hex_mask":"ffffff00","prefix_length":24,"total_hosts":256,"usable_hosts":254,"first_usable":"10.0.1.1","last_usable":"10.0.1.254","is_private":true,"supernet":"10.0.0.0/23","subnets":[{"prefix":"/25","count":2},{"prefix":"/26","count":4},{"prefix":"/27","count":8},{"prefix":"/28","count":16}],"rfc_classification":"Private (RFC 1918)"}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"cidr":{"type":"string","description":"CIDR notation, single (10.0.1.0/24) or comma-separated for overlap detection (10.0.1.0/24,10.0.1.128/25)"}},"required":["cidr"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"cidr":{"type":"string"},"ip_version":{"type":"number"},"network":{"type":"string"},"broadcast":{"type":"string"},"netmask":{"type":"string"},"wildcard":{"type":"string"},"binary_mask":{"type":"string"},"hex_mask":{"type":"string"},"prefix_length":{"type":"number"},"total_hosts":{"type":"number"},"usable_hosts":{"type":"number"},"first_usable":{"type":"string"},"last_usable":{"type":"string"},"is_private":{"type":"boolean"},"supernet":{"type":"string"},"subnets":{"type":"array"},"rfc_classification":{"type":"string"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/dns-propagation/check","url":"https://netintel.dev/dns-propagation/check","price":"$0.030","description":"Query a domain's DNS record across 10 geographically distributed public resolvers simultaneously — returns what each resolver sees, whether results are consistent, propagation percentage, and a readiness score so agents can confirm DNS changes have fully propagated globally.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"domain":"example.com","record_type":"A"}},"output":{"type":"json","example":{"domain":"example.com","record_type":"A","propagation_percentage":90,"consistent":false,"majority_value":["93.184.216.34"],"resolvers":[{"name":"Google Primary","ip":"8.8.8.8","status":"success","records":["93.184.216.34"],"matches_majority":true,"response_time_ms":24},{"name":"Comodo Secure","ip":"8.26.56.26","status":"timeout","records":[],"matches_majority":false,"response_time_ms":null}],"divergent_resolvers":["Comodo Secure"],"score":82,"grade":"B","findings":[{"rule":"partial_propagation","deduction":-10,"detail":"1 resolver returned different or no result"},{"rule":"resolver_timeout","deduction":-8,"detail":"1 resolver timed out"}]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"domain":{"type":"string","description":"Domain name to check propagation for (e.g. example.com)"},"record_type":{"type":"string","description":"DNS record type: A, AAAA, MX, TXT, CNAME, NS (default: A)"}},"required":["domain"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"domain":{"type":"string"},"record_type":{"type":"string"},"propagation_percentage":{"type":"number"},"consistent":{"type":"boolean"},"majority_value":{"type":"array"},"resolvers":{"type":"array"},"divergent_resolvers":{"type":"array"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/dnssec/validate","url":"https://netintel.dev/dnssec/validate","price":"$0.030","description":"Validate a domain's DNSSEC configuration by checking for DS records at the parent zone, DNSKEY records at the domain, RRSIG signatures, and NSEC/NSEC3 records — returns a full chain-of-trust assessment and readiness score so agents can verify DNS integrity before trusting resolution results.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"domain":"example.com"}},"output":{"type":"json","example":{"domain":"example.com","dnssec_enabled":true,"chain_of_trust":"complete","components":{"ds_record":{"present":true,"count":1,"algorithms":["ECDSAP256SHA256"]},"dnskey_record":{"present":true,"count":2,"key_types":["KSK","ZSK"]},"rrsig_record":{"present":true,"signatures_found":3},"nsec_or_nsec3":{"present":true,"type":"NSEC3"}},"tld_ds_present":true,"score":95,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"domain":{"type":"string","description":"Domain name to validate DNSSEC for (e.g. example.com)"}},"required":["domain"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"domain":{"type":"string"},"dnssec_enabled":{"type":"boolean"},"chain_of_trust":{"type":"string"},"components":{"type":"object"},"tld_ds_present":{"type":"boolean"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/ip-blacklist/check","url":"https://netintel.dev/ip-blacklist/check","price":"$0.050","description":"Check an IP address against 15 major DNS blacklists (Spamhaus, Barracuda, SORBS, etc.) simultaneously — returns which lists it appears on, a reputation score, and a threat classification so agents can make block/allow decisions instantly.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"ip":"1.2.3.4"}},"output":{"type":"json","example":{"ip":"1.2.3.4","reversed_ip":"4.3.2.1","listed_count":0,"total_checked":15,"threat_level":"clean","score":100,"grade":"A","findings":[],"blacklists":[{"name":"zen.spamhaus.org","listed":false,"description":"Spamhaus ZEN — combined spam sources and exploits"}]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"ip":{"type":"string","description":"IPv4 address to check (e.g. 1.2.3.4)"}},"required":["ip"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"ip":{"type":"string"},"reversed_ip":{"type":"string"},"listed_count":{"type":"number"},"total_checked":{"type":"number"},"threat_level":{"type":"string"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"},"blacklists":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/ip-reputation/analyze","url":"https://netintel.dev/ip-reputation/analyze","price":"$0.050","description":"Check an IP address against AbuseIPDB and AlienVault OTX threat feeds. Returns a composite risk score, threat categories, malware families, and full source data.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"ip":"185.220.101.45"}},"output":{"type":"json","example":{"ip":"185.220.101.45","risk_score":87,"risk_level":"critical","composite":{"is_malicious":true,"threat_categories":["brute_force","port_scan"],"first_seen":"2022-03-11","last_seen":"2024-11-01T14:22:00Z"},"abuseipdb":{"confidence_score":100,"total_reports":1842,"distinct_reporters":312,"last_reported_at":"2024-11-01T14:22:00Z","isp":"Frantech Solutions","usage_type":"Data Center/Web Hosting/Transit","domain":"frantech.ca","categories":[18,14]},"otx":{"pulse_count":38,"malware_families":["Mirai"],"threat_types":["scanning"],"asn":"AS53667","country_code":"NL","reputation":-100}}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"ip":{"type":"string","description":"IPv4 or IPv6 address to check"}},"required":["ip"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"ip":{"type":"string"},"risk_score":{"type":"number"},"risk_level":{"type":"string"},"composite":{"type":"object"},"abuseipdb":{"type":"object"},"otx":{"type":"object"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/cron-parser/explain","url":"https://netintel.dev/cron-parser/explain","price":"$0.030","description":"Parse any cron expression into a human-readable explanation, validate its syntax, compute the next 5 scheduled run times, and detect common patterns (daily, weekly, monthly, hourly) — so agents can understand, validate, and work with cron schedules without implementing their own cron parser.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"expression":"0 9 * * 1-5"}},"output":{"type":"json","example":{"expression":"0 9 * * 1-5","is_valid":true,"fields":{"minute":"0","hour":"9","day_of_month":"*","month":"*","day_of_week":"1-5"},"explanation":"At 9:00 AM, Monday through Friday","pattern_name":"Weekdays at 9:00 AM","next_runs":["2024-03-11T09:00:00Z"],"warnings":[],"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"expression":{"type":"string","description":"Cron expression (5 or 6 space-separated fields)"},"timezone":{"type":"string","description":"IANA timezone string (default: UTC)"},"count":{"type":"number","description":"Number of next run times to return (default: 5, max: 20)"}},"required":["expression"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"expression":{"type":"string"},"is_valid":{"type":"boolean"},"fields":{"type":"object"},"explanation":{"type":"string"},"pattern_name":{"type":"string"},"next_runs":{"type":"array"},"warnings":{"type":"array"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/currency-exchange/convert","url":"https://netintel.dev/currency-exchange/convert","price":"$0.010","description":"Convert any amount between 33 currencies using live European Central Bank exchange rates — returns the converted amount, exchange rate, rate date, and inverse rate so agents can handle pricing, invoicing, financial comparisons, and multi-currency workflows without a paid forex API.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"from":"USD","to":"EUR","amount":100}},"output":{"type":"json","example":{"from":"USD","to":"EUR","amount":100,"converted_amount":92.34,"exchange_rate":0.9234,"inverse_rate":1.0828,"rate_date":"2024-03-10","is_historical":false,"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"from":{"type":"string","description":"ISO 4217 source currency code (e.g. USD)"},"to":{"type":"string","description":"ISO 4217 target currency code (e.g. EUR)"},"amount":{"type":"number","description":"Amount to convert (default: 1, max: 999999999)"},"date":{"type":"string","description":"YYYY-MM-DD for historical rate (default: latest)"}},"required":["from","to"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"from":{"type":"string"},"to":{"type":"string"},"amount":{"type":"number"},"converted_amount":{"type":"number"},"exchange_rate":{"type":"number"},"inverse_rate":{"type":"number"},"rate_date":{"type":"string"},"is_historical":{"type":"boolean"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/tech-fingerprint/analyze","url":"https://netintel.dev/tech-fingerprint/analyze","price":"$0.050","description":"Fetch a URL and detect the full technology stack from HTTP response headers, HTML meta tags, cookies, and script patterns — returns CMS, framework, CDN, server, analytics, and security tool detections so agents can profile any web target without a browser.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"url":"https://example.com"}},"output":{"type":"json","example":{"url":"https://example.com","status_code":200,"response_time_ms":342,"detections":[{"name":"Cloudflare","category":"cdn","confidence":"high"},{"name":"WordPress","category":"cms","confidence":"high"}],"summary":{"server":"Nginx","cdn":"Cloudflare","cms":"WordPress","waf":"Cloudflare WAF","javascript_frameworks":["jQuery"],"analytics":["Google Analytics"]},"security_headers_present":["Strict-Transport-Security","X-Frame-Options"],"security_headers_missing":["Content-Security-Policy","X-Content-Type-Options","Referrer-Policy"],"score":68,"grade":"C","findings":[{"rule":"missing_csp","deduction":-20,"detail":"Content-Security-Policy header missing"}]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"url":{"type":"string","description":"URL to fingerprint (e.g. https://example.com)"}},"required":["url"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"url":{"type":"string"},"status_code":{"type":"number"},"response_time_ms":{"type":"number"},"detections":{"type":"array"},"summary":{"type":"object"},"security_headers_present":{"type":"array"},"security_headers_missing":{"type":"array"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/breach-check/password","url":"https://netintel.dev/breach-check/password","price":"$0.010","description":"Check if a password has appeared in known data breaches using the HaveIBeenPwned Pwned Passwords API with k-anonymity — the full password is never transmitted, only a 5-character SHA-1 hash prefix — returns breach count and a risk classification so agents can enforce password policies without storing or exposing credentials.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"password":"test123"}},"output":{"type":"json","example":{"breached":true,"breach_count":34521,"risk_level":"critical","score":0,"grade":"F","findings":[{"rule":"critical_breach","deduction":-100,"detail":"Password found 34521 times in known data breaches"}]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"password":{"type":"string","description":"Password to check against known data breaches"}},"required":["password"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"breached":{"type":"boolean"},"breach_count":{"type":"number"},"risk_level":{"type":"string"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/domain-availability/check","url":"https://netintel.dev/domain-availability/check","price":"$0.050","description":"Check if a domain name is available for registration by querying RDAP and DNS — returns registration status, whether it's taken or free, expiry date if registered, and availability of the same name across 10 popular TLDs simultaneously so agents can find the best domain for a brand or project.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"domain":"mybrand"}},"output":{"type":"json","example":{"name":"mybrand","results":[{"domain":"mybrand.com","available":false,"status":"registered","registrar":"GoDaddy LLC","expires_at":"2025-06-01T00:00:00Z","days_until_expiry":79,"expiring_soon":true},{"domain":"mybrand.io","available":true,"status":"available","registrar":null,"expires_at":null,"days_until_expiry":null,"expiring_soon":false}],"available_tlds":[".io",".co",".xyz"],"taken_tlds":[".com",".net",".org"],"score":70,"grade":"C","findings":[{"rule":"com_taken","deduction":-20,"detail":"mybrand.com is already registered"}]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"domain":{"type":"string","description":"Domain name with or without TLD (e.g. mybrand or mybrand.com)"}},"required":["domain"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"name":{"type":"string"},"results":{"type":"array"},"available_tlds":{"type":"array"},"taken_tlds":{"type":"array"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/email-intel/analyze","url":"https://netintel.dev/email-intel/analyze","price":"$0.050","description":"Validate an email address for deliverability, detect disposable/temporary domains, identify role-based addresses, verify MX records exist, and return a trust score — so agents can qualify leads, clean lists, and gate signups without sending a single email.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"email":"john@example.com"}},"output":{"type":"json","example":{"email":"john@example.com","domain":"example.com","local_part":"john","format_valid":true,"mx_records_found":true,"mx_records":["mail.example.com"],"is_disposable":false,"is_role_based":false,"is_free_provider":false,"is_business_email":true,"deliverability":"deliverable","score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"email":{"type":"string","description":"Email address to validate (e.g. john@example.com)"}},"required":["email"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"email":{"type":"string"},"domain":{"type":"string"},"local_part":{"type":"string"},"format_valid":{"type":"boolean"},"mx_records_found":{"type":"boolean"},"mx_records":{"type":"array","items":{"type":"string"}},"is_disposable":{"type":"boolean"},"is_role_based":{"type":"boolean"},"is_free_provider":{"type":"boolean"},"is_business_email":{"type":"boolean"},"deliverability":{"type":"string"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array","items":{"type":"string"}}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/og-scraper/extract","url":"https://netintel.dev/og-scraper/extract","price":"$0.010","description":"Fetch any public URL and extract structured metadata — Open Graph tags, Twitter Card tags, canonical URL, title, description, favicon, article author/date, JSON-LD structured data, and content type — so agents can preview, classify, and enrich links without building their own scraper.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"url":"https://example.com"}},"output":{"type":"json","example":{"url":"https://example.com/article","final_url":"https://www.example.com/article","status_code":200,"title":"Article Title Here","description":"A short description of the content","image":"https://example.com/og-image.jpg","favicon":"https://example.com/favicon.ico","site_name":"Example Site","canonical_url":"https://www.example.com/article","content_type":"article","author":"Jane Doe","published_at":"2024-01-15T10:00:00Z","modified_at":"2024-01-16T08:00:00Z","twitter_card":"summary_large_image","json_ld":{"@type":"Article","headline":"Article Title Here"},"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"url":{"type":"string","description":"Public URL to extract metadata from (e.g. https://example.com/article)"}},"required":["url"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"url":{"type":"string"},"final_url":{"type":"string"},"status_code":{"type":"number"},"title":{"type":"string"},"description":{"type":"string"},"image":{"type":"string"},"favicon":{"type":"string"},"site_name":{"type":"string"},"canonical_url":{"type":"string"},"content_type":{"type":"string"},"author":{"type":"string"},"published_at":{"type":"string"},"modified_at":{"type":"string"},"twitter_card":{"type":"string"},"json_ld":{"type":"object"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/page-extract/read","url":"https://netintel.dev/page-extract/read","price":"$0.050","description":"Fetch any article or web page and extract clean readable text stripped of navigation, ads, and boilerplate — returns the main content body, word count, estimated reading time, detected language, and key sentences so agents can read the web without a browser or third-party scraping service.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"url":"https://example.com"}},"output":{"type":"json","example":{"url":"https://example.com/article","final_url":"https://www.example.com/article","title":"The Article Title","content":"Full cleaned article text goes here. Multiple paragraphs separated by newlines...","preview":["First meaningful sentence of the article.","Second sentence providing more context.","Third sentence completing the introduction."],"word_count":1250,"reading_time_minutes":6,"language":"en","content_length_chars":7500,"status_code":200,"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"url":{"type":"string","description":"Public URL to extract content from (e.g. https://example.com/article)"}},"required":["url"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"url":{"type":"string"},"final_url":{"type":"string"},"title":{"type":"string"},"content":{"type":"string"},"preview":{"type":"array"},"word_count":{"type":"number"},"reading_time_minutes":{"type":"number"},"language":{"type":"string"},"content_length_chars":{"type":"number"},"status_code":{"type":"number"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/phone-intel/analyze","url":"https://netintel.dev/phone-intel/analyze","price":"$0.050","description":"Parse and validate any phone number in any format, identify its country, line type (mobile/landline/VOIP/toll-free/premium), carrier region, and return all standard format variants — so agents can validate contacts, normalize phone data, and classify line types without a paid telecom API.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"phone":"+1 (555) 867-5309"}},"output":{"type":"json","example":{"input":"+1 (555) 867-5309","is_valid":true,"e164":"+15558675309","international":"+1 555 867 5309","national":"(555) 867-5309","country_code":"1","country":"US","country_name":"United States","line_type":"mobile_or_landline","digit_count":11,"score":90,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"phone":{"type":"string","description":"Phone number in any format (e.g. +1 555 867-5309)"},"country_hint":{"type":"string","description":"ISO 3166-1 alpha-2 country code hint when no dial code present (e.g. US)"}},"required":["phone"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"input":{"type":"string"},"is_valid":{"type":"boolean"},"e164":{"type":"string"},"international":{"type":"string"},"national":{"type":"string"},"country_code":{"type":"string"},"country":{"type":"string"},"country_name":{"type":"string"},"line_type":{"type":"string"},"digit_count":{"type":"number"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array","items":{"type":"object"}}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/robots-txt/analyze","url":"https://netintel.dev/robots-txt/analyze","price":"$0.010","description":"Fetch and parse a domain's robots.txt file — returns all crawl rules by user-agent, sitemap URLs, crawl delay settings, and checks whether a specific path is allowed or blocked for any bot — so agents can respect crawl policies and locate sitemaps before scraping.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"domain":"example.com"}},"output":{"type":"json","example":{"domain":"example.com","robots_url":"https://example.com/robots.txt","found":true,"status_code":200,"raw_content_preview":"User-agent: *\nDisallow: /private/\n...","sitemaps":["https://example.com/sitemap.xml"],"rules":[{"user_agent":"*","allow":["/public/"],"disallow":["/private/","/admin/"],"crawl_delay":null}],"path_check":{"path":"/private/page","user_agent":"*","allowed":false,"matched_rule":"Disallow: /private/","rule_type":"disallow"},"score":85,"grade":"B","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"domain":{"type":"string","description":"Domain name to fetch robots.txt from (e.g. example.com)"},"path":{"type":"string","description":"URL path to check permission for (e.g. /api/data)"},"user_agent":{"type":"string","description":"Bot name to check rules for (default: *)"}},"required":["domain"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"domain":{"type":"string"},"robots_url":{"type":"string"},"found":{"type":"boolean"},"status_code":{"type":"number"},"raw_content_preview":{"type":"string"},"sitemaps":{"type":"array","items":{"type":"string"}},"rules":{"type":"array","items":{"type":"object"}},"path_check":{"type":"object"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array","items":{"type":"object"}}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/rss-parser/fetch","url":"https://netintel.dev/rss-parser/fetch","price":"$0.010","description":"Fetch and parse any RSS 2.0 or Atom feed URL and return structured articles with title, link, description, author, publish date, and categories — so agents can monitor content sources, build news pipelines, and process any feed without building their own XML parser.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"url":"https://feeds.bbci.co.uk/news/rss.xml"}},"output":{"type":"json","example":{"url":"https://example.com/feed.xml","feed_type":"rss2","feed":{"title":"Example Blog","description":"A blog about interesting things","site_url":"https://example.com","last_updated":"2024-03-10T08:00:00Z"},"total_items_in_feed":25,"items_returned":10,"items":[{"title":"Article Title","url":"https://example.com/article","description":"Short description or summary of the article...","author":"Jane Doe","published_at":"2024-03-10T08:00:00Z","categories":["technology","AI"],"has_full_content":true}],"score":90,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"url":{"type":"string","description":"Feed URL to fetch and parse (e.g. https://example.com/feed.xml)"},"limit":{"type":"integer","description":"Maximum number of items to return (1-50, default 10)"}},"required":["url"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"url":{"type":"string"},"feed_type":{"type":"string"},"feed":{"type":"object"},"total_items_in_feed":{"type":"number"},"items_returned":{"type":"number"},"items":{"type":"array","items":{"type":"object"}},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array","items":{"type":"object"}}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/username-check/lookup","url":"https://netintel.dev/username-check/lookup","price":"$0.030","description":"Check username availability across 20+ social platforms and developer sites simultaneously — returns which platforms have a profile registered under that handle so agents can find people, verify identities, scout brand handles, or check name availability before registration.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"username":"johndoe"}},"output":{"type":"json","example":{"username":"johndoe","taken_count":8,"available_count":10,"unknown_count":4,"results":[{"platform":"GitHub","url":"https://github.com/johndoe","status":"taken"},{"platform":"npm","url":"https://www.npmjs.com/~johndoe","status":"available"},{"platform":"Instagram","url":"https://www.instagram.com/johndoe","status":"unknown"}],"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"username":{"type":"string","description":"Username/handle to check (1-50 chars, alphanumeric + hyphens/underscores/dots)"}},"required":["username"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"username":{"type":"string"},"taken_count":{"type":"number"},"available_count":{"type":"number"},"unknown_count":{"type":"number"},"results":{"type":"array","items":{"type":"object","properties":{"platform":{"type":"string"},"url":{"type":"string"},"status":{"type":"string","enum":["taken","available","unknown"]}}}},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/wayback/lookup","url":"https://netintel.dev/wayback/lookup","price":"$0.010","description":"Query the Internet Archive Wayback Machine to check if a URL has ever been archived, get the closest snapshot to a given date, retrieve the most recent capture, and return archival history stats — so agents can access historical web content, verify past content claims, and recover deleted pages.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"url":"https://example.com"}},"output":{"type":"json","example":{"url":"https://example.com","is_archived":true,"snapshot":{"url":"https://web.archive.org/web/20240115120000/https://example.com","timestamp":"20240115120000","formatted_date":"2024-01-15T12:00:00Z","status_code":"200"},"first_capture":"1996-12-02T00:00:00Z","last_capture":"2024-03-10T08:00:00Z","capture_count_estimate":5400,"timestamp_requested":null,"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"url":{"type":"string","description":"URL to check in the Wayback Machine (e.g. https://example.com)"},"timestamp":{"type":"string","description":"Optional target date in YYYYMMDD or YYYYMMDDHHmmss format to find the closest snapshot"}},"required":["url"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"url":{"type":"string"},"is_archived":{"type":"boolean"},"snapshot":{"type":"object"},"first_capture":{"type":"string"},"last_capture":{"type":"string"},"capture_count_estimate":{"type":"number"},"timestamp_requested":{"type":"string"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/domain-age/check","url":"https://netintel.dev/domain-age/check","price":"$0.030","description":"Determine a domain's age from registration data and archival history — returns creation date, age in years, first Wayback Machine capture, total archived snapshots, and a maturity signal so agents can assess domain trustworthiness and detect freshly registered domains used for fraud or phishing.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"domain":"example.com"}},"output":{"type":"json","example":{"domain":"example.com","created_at":"1995-08-14T04:00:00Z","age_days":11260,"age_years":30.8,"age_source":"rdap","first_archived_at":"1996-12-02T00:00:00Z","archive_snapshot_estimate":5400,"registration_to_archive_gap_days":476,"maturity":"established","score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"domain":{"type":"string","description":"Domain name to assess (e.g. example.com)"}},"required":["domain"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"domain":{"type":"string"},"created_at":{"type":"string"},"age_days":{"type":"number"},"age_years":{"type":"number"},"age_source":{"type":"string"},"first_archived_at":{"type":"string"},"archive_snapshot_estimate":{"type":"number"},"registration_to_archive_gap_days":{"type":"number"},"maturity":{"type":"string"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/github-intel/analyze","url":"https://netintel.dev/github-intel/analyze","price":"$0.030","description":"Fetch public metadata for any GitHub repository — stars, forks, open issues, language breakdown, license, contributors, last commit date, topics, and an activity/health score — so agents can evaluate dependencies, research projects, and assess open source health without the GitHub API complexity.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"repo":"expressjs/express"}},"output":{"type":"json","example":{"repo":"expressjs/express","url":"https://github.com/expressjs/express","description":"Fast, unopinionated, minimalist web framework for node.","stars":65000,"forks":15000,"open_issues":200,"primary_language":"JavaScript","license":"MIT License","license_spdx":"MIT","topics":["nodejs","javascript","web","framework"],"last_pushed_at":"2024-03-10T08:00:00Z","days_since_last_push":12,"is_archived":false,"contributor_count":100,"latest_release":"v4.18.3","score":100,"grade":"A","findings":[{"rule":"active_development","deduction":0,"detail":"Pushed within last 180 days"}]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"repo":{"type":"string","description":"GitHub repository in owner/repo format or full GitHub URL"}},"required":["repo"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"repo":{"type":"string"},"url":{"type":"string"},"description":{"type":"string"},"stars":{"type":"number"},"forks":{"type":"number"},"open_issues":{"type":"number"},"primary_language":{"type":"string"},"license":{"type":"string"},"license_spdx":{"type":"string"},"topics":{"type":"array"},"last_pushed_at":{"type":"string"},"days_since_last_push":{"type":"number"},"is_archived":{"type":"boolean"},"contributor_count":{"type":"number"},"latest_release":{"type":"string"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/holidays/check","url":"https://netintel.dev/holidays/check","price":"$0.005","description":"Look up public holidays for any country and year, check whether a specific date is a holiday, and calculate the next business day — so agents can handle scheduling, SLA calculations, deadline setting, and date-aware workflows without hardcoding country-specific holiday rules.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"country_code":"US","year":2024}},"output":{"type":"json","example":{"country_code":"US","year":2024,"total_holidays":11,"holidays":[{"date":"2024-01-01","name":"New Year's Day","local_name":"New Year's Day","is_global":true,"types":["Public"]}],"date_check":null,"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"country_code":{"type":"string","description":"ISO 3166-1 alpha-2 country code (e.g. US, GB, DE)"},"year":{"type":"integer","description":"4-digit year (default: current year, range 2000-2099)"},"date":{"type":"string","description":"YYYY-MM-DD specific date to check"}},"required":["country_code"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"country_code":{"type":"string"},"year":{"type":"number"},"total_holidays":{"type":"number"},"holidays":{"type":"array"},"date_check":{"type":"object"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/ip-geo/locate","url":"https://netintel.dev/ip-geo/locate","price":"$0.030","description":"Geolocate any IPv4 or IPv6 address to city, region, country, latitude/longitude, timezone, and ISP/ASN — returns structured location data so agents can localize content and enrich user records without a paid geolocation subscription. For proxy/VPN/anonymizer or hosting/datacenter detection, use /ip-risk/score or /ip-reputation/analyze.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"ip":"8.8.8.8"}},"output":{"type":"json","example":{"ip":"8.8.8.8","country":"United States","country_code":"US","region":"VA","region_name":"Virginia","city":"Ashburn","zip":"20149","latitude":39.0438,"longitude":-77.4874,"timezone":"America/New_York","isp":"Google LLC","organization":"Google LLC","asn":"AS15169","score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"ip":{"type":"string","description":"IPv4 or IPv6 address to geolocate (e.g. 8.8.8.8)"}},"required":["ip"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"ip":{"type":"string"},"country":{"type":"string"},"country_code":{"type":"string"},"region":{"type":"string"},"region_name":{"type":"string"},"city":{"type":"string"},"zip":{"type":"string"},"latitude":{"type":"number"},"longitude":{"type":"number"},"timezone":{"type":"string"},"isp":{"type":"string"},"organization":{"type":"string"},"asn":{"type":"string"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/jwt-inspector/decode","url":"https://netintel.dev/jwt-inspector/decode","price":"$0.005","description":"Decode and inspect any JWT token — extracts header algorithm, payload claims, expiry status, issued-at time, audience, issuer, and subject without requiring the secret — so agents can debug auth issues, check token expiry, and extract identity claims from tokens in pipelines.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"}},"output":{"type":"json","example":{"valid_structure":true,"header":{"algorithm":"HS256","token_type":"JWT","key_id":null},"payload":{"issuer":"https://auth.example.com","subject":"user_abc123","audience":"https://api.example.com","expires_at":"2024-06-01T00:00:00.000Z","expires_at_unix":1717200000,"issued_at":"2024-03-01T00:00:00.000Z","issued_at_unix":1709251200,"not_before":null,"jwt_id":null,"custom_claims":{"email":"user@example.com","role":"admin"}},"is_expired":false,"seconds_until_expiry":7890000,"human_expiry":"91 days from now","signature_present":true,"security_flags":[],"score":95,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"token":{"type":"string","description":"JWT token string (3 dot-separated segments)"}},"required":["token"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"valid_structure":{"type":"boolean"},"header":{"type":"object"},"payload":{"type":"object"},"is_expired":{"type":"boolean"},"seconds_until_expiry":{"type":"number"},"human_expiry":{"type":"string"},"signature_present":{"type":"boolean"},"security_flags":{"type":"array"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"POST","path":"/lang-detect/analyze","url":"https://netintel.dev/lang-detect/analyze","price":"$0.005","description":"Detect the language of any text input using character frequency analysis and n-gram pattern matching — returns the detected language, ISO code, confidence score, and top alternative languages so agents can route multilingual content, trigger translation workflows, and classify text without a paid NLP API.","mimeType":"application/json","discovery":{"input":{"type":"http","bodyType":"json","body":{"text":"The quick brown fox jumps over the lazy dog."}},"output":{"type":"json","example":{"detected_language":"English","language_code":"en","confidence":"high","script":"Latin","is_multilingual":false,"alternatives":[{"language":"Dutch","code":"nl","score":0.04},{"language":"German","code":"de","score":0.03},{"language":"French","code":"fr","score":0.02}],"text_length":245,"word_count":47,"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","properties":{"text":{"type":"string","description":"Text to detect the language of (1-10000 characters)"}},"required":["text"]}},"required":["type","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"detected_language":{"type":"string"},"language_code":{"type":"string"},"confidence":{"type":"string"},"script":{"type":"string"},"is_multilingual":{"type":"boolean"},"alternatives":{"type":"array"},"text_length":{"type":"number"},"word_count":{"type":"number"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/npm-intel/analyze","url":"https://netintel.dev/npm-intel/analyze","price":"$0.010","description":"Fetch metadata for any npm package — download counts, latest version, all versions list, dependencies, maintainers, repository URL, license, and a health score based on maintenance signals — so agents can evaluate dependencies, audit package ecosystems, and assess supply chain risk.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"package":"express"}},"output":{"type":"json","example":{"package":"express","description":"Fast, unopinionated, minimalist web framework","latest_version":"4.18.2","total_versions":265,"weekly_downloads":34521000,"license":"MIT","repository":"https://github.com/expressjs/express","homepage":"https://expressjs.com","keywords":["web","framework","http"],"maintainers":["dougwilson","wesleytodd"],"maintainer_count":2,"dependency_count":31,"dev_dependency_count":12,"created_at":"2010-05-22T00:00:00Z","latest_published_at":"2023-02-14T00:00:00Z","days_since_last_publish":390,"is_deprecated":false,"deprecation_message":null,"score":72,"grade":"C","findings":[{"rule":"stale_package","deduction":-15,"detail":"Last published 390 days ago"}]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"package":{"type":"string","description":"npm package name (e.g. express, @types/node)"}},"required":["package"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"package":{"type":"string"},"description":{"type":"string"},"latest_version":{"type":"string"},"total_versions":{"type":"number"},"weekly_downloads":{"type":"number"},"license":{"type":"string"},"repository":{"type":"string"},"homepage":{"type":"string"},"keywords":{"type":"array"},"maintainers":{"type":"array"},"maintainer_count":{"type":"number"},"dependency_count":{"type":"number"},"dev_dependency_count":{"type":"number"},"created_at":{"type":"string"},"latest_published_at":{"type":"string"},"days_since_last_publish":{"type":"number"},"is_deprecated":{"type":"boolean"},"deprecation_message":{"type":"string"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/sitemap-parser/fetch","url":"https://netintel.dev/sitemap-parser/fetch","price":"$0.010","description":"Fetch and parse any XML sitemap or sitemap index file — returns all URLs with their priority, change frequency, and last modified date, handles sitemap index files recursively, and auto-discovers sitemap location from robots.txt — so agents can enumerate site content for crawling, indexing, and SEO analysis.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"url":"https://example.com/sitemap.xml"}},"output":{"type":"json","example":{"source_url":"https://example.com/sitemap.xml","sitemap_type":"urlset","total_urls":847,"urls_returned":100,"child_sitemaps_fetched":0,"urls":[{"url":"https://example.com/page-1","last_modified":"2024-03-01T00:00:00Z","change_frequency":"weekly","priority":0.8}],"stats":{"newest_url_date":"2024-03-10T00:00:00Z","oldest_url_date":"2020-01-01T00:00:00Z","avg_priority":0.6,"has_lastmod":true,"has_priority":true,"has_changefreq":true},"score":88,"grade":"B","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"url":{"type":"string","description":"Sitemap URL or domain name to parse (e.g. https://example.com/sitemap.xml or example.com)"},"limit":{"type":"integer","description":"Maximum number of URLs to return (1-1000, default 100)"}},"required":["url"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"source_url":{"type":"string"},"sitemap_type":{"type":"string"},"total_urls":{"type":"number"},"urls_returned":{"type":"number"},"child_sitemaps_fetched":{"type":"number"},"urls":{"type":"array","items":{"type":"object"}},"stats":{"type":"object"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/url-safety/check","url":"https://netintel.dev/url-safety/check","price":"$0.050","description":"Check a URL against URLhaus malware database and heuristic phishing pattern analysis — returns threat classification, malware family if known, threat confidence, and risk score so agents can screen links before following them or sharing them in automated workflows.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"url":"https://example.com/page"}},"output":{"type":"json","example":{"url":"https://example.com/page","in_urlhaus":false,"urlhaus_status":null,"threat_type":null,"malware_families":[],"blacklisted_gsb":false,"blacklisted_surbl":false,"urlhaus_reference":null,"heuristic_flags":[],"threat_classification":"clean","confidence":"none","score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"url":{"type":"string","description":"URL to check for malware and phishing indicators (e.g. https://example.com/page)"}},"required":["url"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"url":{"type":"string"},"in_urlhaus":{"type":"boolean"},"urlhaus_status":{"type":"string"},"threat_type":{"type":"string"},"malware_families":{"type":"array","items":{"type":"string"}},"blacklisted_gsb":{"type":"boolean"},"blacklisted_surbl":{"type":"boolean"},"heuristic_flags":{"type":"array","items":{"type":"string"}},"threat_classification":{"type":"string"},"confidence":{"type":"string"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array"}}}},"required":["type"]}},"required":["input"]}},{"method":"POST","path":"/bulk-domain/check","url":"https://netintel.dev/bulk-domain/check","price":"$0.100","description":"Check availability of many domain names across multiple TLDs in a single call — submit up to 50 name/TLD combinations and get back per-domain registration status, registrar, and expiry concurrently, so agents can scan an entire naming shortlist or brand portfolio in one request instead of dozens.","mimeType":"application/json","discovery":{"input":{"type":"http","bodyType":"json","body":{"names":["acme","acmehq"],"tlds":[".com",".io",".ai"]}},"output":{"type":"json","example":{"total_checked":6,"available_count":2,"taken_count":4,"names_available_all_tlds":["acmehq"],"results":[{"domain":"acme.com","name":"acme","tld":"com","available":false,"status":"registered","registrar":"GoDaddy LLC","expires_at":"2025-06-01T00:00:00Z","days_until_expiry":79},{"domain":"acmehq.io","name":"acmehq","tld":"io","available":true,"status":"available","registrar":null,"expires_at":null,"days_until_expiry":null}],"score":65,"grade":"C","findings":[{"rule":"low_availability","deduction":-35,"detail":"Only 2 of 6 combinations available"}]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["POST","PUT","PATCH"]},"bodyType":{"type":"string","enum":["json","form-data","text"]},"body":{"type":"object","properties":{"names":{"type":"array","items":{"type":"string"},"description":"1-50 domain names to check (alphanumeric + hyphens, 2-63 chars each), e.g. [\"acme\", \"acmehq\"]"},"tlds":{"type":"array","items":{"type":"string"},"description":"TLDs to check, with or without leading dot (default: [\".com\",\".net\",\".org\",\".io\",\".co\"]). Total names × tlds must not exceed 50."}},"required":["names"]}},"required":["type","bodyType","body"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"total_checked":{"type":"number"},"available_count":{"type":"number"},"taken_count":{"type":"number"},"names_available_all_tlds":{"type":"array","items":{"type":"string"}},"results":{"type":"array","items":{"type":"object"}},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array","items":{"type":"object"}}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/domain-appraise/estimate","url":"https://netintel.dev/domain-appraise/estimate","price":"$0.030","description":"Estimate the market value tier of a domain name using transparent heuristics — length, TLD premium, dictionary-word presence, pronounceability, keyword value, and numeric/hyphen penalties — returns a value tier and 0-100 quality score so agents can triage domain portfolios and prioritize acquisitions without a paid appraisal service.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"domain":"pay.com"}},"output":{"type":"json","example":{"domain":"pay.com","name":"pay","tld":"com","value_score":100,"value_tier":"premium","factors":[{"factor":"length","impact":35,"detail":"3-character name (ultra premium)"},{"factor":"tld","impact":25,"detail":".com TLD"},{"factor":"dictionary_word","impact":20,"detail":"Exact dictionary word"},{"factor":"keyword_category","impact":10,"detail":"Finance keyword: pay"}],"characteristics":{"length":3,"is_dictionary_word":true,"has_hyphen":false,"has_number":false,"pronounceable":true},"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"domain":{"type":"string","description":"Domain name to appraise (e.g. pay.com)"}},"required":["domain"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"domain":{"type":"string"},"name":{"type":"string"},"tld":{"type":"string"},"value_score":{"type":"number"},"value_tier":{"type":"string"},"factors":{"type":"array","items":{"type":"object"}},"characteristics":{"type":"object"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array","items":{"type":"object"}}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/domain-report/analyze","url":"https://netintel.dev/domain-report/analyze","price":"$0.100","description":"One call returns a complete intelligence profile for a domain — WHOIS registration, DNS records, SSL certificate, detected tech stack, and blacklist status — aggregated into a single risk-scored report so agents can fully vet a domain without orchestrating five separate lookups.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"domain":"example.com"}},"output":{"type":"json","example":{"domain":"example.com","resolved_ip":"93.184.216.34","overall_score":78,"grade":"B","risk_level":"low","sections":{"whois":{"available":true,"registrar":"MarkMonitor Inc.","created_at":"1995-08-14T04:00:00Z","expires_at":"2025-08-13T04:00:00Z","days_until_expiry":425,"status":["client transfer prohibited"]},"dns":{"available":true,"a_records":["93.184.216.34"],"mx_records":["mail.example.com"],"ns_records":["a.iana-servers.net","b.iana-servers.net"],"txt_records":["v=spf1 -all"]},"ssl":{"available":true,"issuer":"DigiCert Inc","valid_from":"2024-01-01T00:00:00Z","valid_to":"2025-01-01T00:00:00Z","days_until_expiry":200,"san_count":3},"tech":{"available":true,"server":"ECS","cdn":"Cloudflare","cms":null,"waf":"Cloudflare WAF"},"blacklist":{"available":true,"listed_count":0,"lists_checked":5,"listed_on":[]}},"findings":[{"rule":"section_ok","deduction":0,"detail":"All five checks completed"}]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"domain":{"type":"string","description":"Domain name to profile (e.g. example.com)"}},"required":["domain"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"domain":{"type":"string"},"resolved_ip":{"type":"string"},"overall_score":{"type":"number"},"grade":{"type":"string"},"risk_level":{"type":"string"},"sections":{"type":"object"},"findings":{"type":"array","items":{"type":"object"}}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/ip-risk/score","url":"https://netintel.dev/ip-risk/score","price":"$0.100","description":"One call returns a complete risk profile for an IP address — geolocation, ASN/network owner, blacklist status across multiple DNSBLs, and proxy/VPN/hosting classification — aggregated into a single verdict so agents can make a block/allow decision without calling four separate IP endpoints.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"ip":"1.2.3.4"}},"output":{"type":"json","example":{"ip":"1.2.3.4","risk_score":28,"grade":"F","recommendation":"block","geo":{"available":true,"country":"United States","country_code":"US","city":"Ashburn","timezone":"America/New_York","isp":"Example Hosting","is_proxy":true,"is_hosting":true,"is_mobile":false},"network":{"available":true,"asn":"AS12345","organization":"Example Hosting LLC","classification":"hosting"},"blacklist":{"available":true,"listed_count":3,"lists_checked":8,"listed_on":["zen.spamhaus.org","bl.spamcop.net","xbl.spamhaus.org"]},"findings":[{"rule":"on_blacklists","deduction":-45,"detail":"Listed on 3 of 8 DNSBLs"},{"rule":"is_proxy","deduction":-40,"detail":"IP detected as proxy/VPN"}]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"ip":{"type":"string","description":"IPv4 or IPv6 address to risk-score (private/reserved ranges are rejected)"}},"required":["ip"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"ip":{"type":"string"},"risk_score":{"type":"number"},"grade":{"type":"string"},"recommendation":{"type":"string"},"geo":{"type":"object"},"network":{"type":"object"},"blacklist":{"type":"object"},"findings":{"type":"array","items":{"type":"object"}}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/name-gen/suggest","url":"https://netintel.dev/name-gen/suggest","price":"$0.050","description":"Generate brandable startup/product names from a keyword using prefixes, suffixes, blends, and phonetic patterns, then check .com (or any TLD) availability for each via DNS — returns available names ranked by a brandability heuristic so agents can find a claimable brand without manual brainstorming plus one-by-one availability checks.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"keyword":"cloud"}},"output":{"type":"json","example":{"keyword":"cloud","tld":"com","generated_count":25,"available_count":9,"suggestions":[{"name":"cloudly","domain":"cloudly.com","available":true,"brandability":90,"pattern":"suffix"},{"name":"getcloud","domain":"getcloud.com","available":false,"brandability":80,"pattern":"prefix"}],"top_available":["cloudly.com","cloudkit.com","cloudflow.com"],"score":75,"grade":"B","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"keyword":{"type":"string","description":"Seed keyword to generate names from (2-20 alphanumeric chars, e.g. cloud)"},"tld":{"type":"string","description":"TLD to check availability against (default: com)"},"limit":{"type":"number","description":"Max names to generate and check (default: 25, max: 40)"}},"required":["keyword"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"keyword":{"type":"string"},"tld":{"type":"string"},"generated_count":{"type":"number"},"available_count":{"type":"number"},"suggestions":{"type":"array","items":{"type":"object"}},"top_available":{"type":"array","items":{"type":"string"}},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array","items":{"type":"object"}}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/tld-price/compare","url":"https://netintel.dev/tld-price/compare","price":"$0.010","description":"Compare registration, renewal, and transfer prices for a TLD across major registrars, or for a single domain name across many TLDs — returns sorted reference pricing so agents can find the cheapest place to register, budget domain acquisitions, and spot predatory renewal markups without checking each registrar manually.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"tld":".io"}},"output":{"type":"json","example":{"mode":"tld","tld":"io","pricing":{"register":39.99,"renew":49.99,"transfer":39.99,"currency":"USD"},"renewal_markup_pct":25,"predatory_renewal":false,"is_reference_pricing":true,"score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"tld":{"type":"string","description":"A TLD with or without leading dot to compare registrar pricing for, e.g. .com (Mode A). Provide exactly one of tld or name."},"name":{"type":"string","description":"A domain name without TLD to price across many TLDs, e.g. acme (Mode B). Provide exactly one of tld or name."}}}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"mode":{"type":"string"},"tld":{"type":"string"},"name":{"type":"string"},"pricing":{"type":"object"},"renewal_markup_pct":{"type":"number"},"predatory_renewal":{"type":"boolean"},"cheapest":{"type":"object"},"cheapest_premium":{"type":"object"},"options":{"type":"array","items":{"type":"object"}},"is_reference_pricing":{"type":"boolean"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array","items":{"type":"object"}}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/typosquat/scan","url":"https://netintel.dev/typosquat/scan","price":"$0.050","description":"Generate common typo and look-alike variations of a domain and check which are already registered — catches character swaps, omissions, additions, homoglyphs, and alternate TLDs so agents can detect typosquatting and brand-impersonation domains targeting a company.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"domain":"google.com"}},"output":{"type":"json","example":{"domain":"google.com","name":"google","tld":"com","variations_checked":30,"registered_count":12,"available_count":18,"registered_lookalikes":[{"domain":"g00gle.com","technique":"homoglyph","registered":true},{"domain":"gogle.com","technique":"omission","registered":true},{"domain":"google.net","technique":"alternate_tld","registered":true}],"available_variations":[{"domain":"googgle.com","technique":"duplication","registered":false}],"score":45,"grade":"D","findings":[{"rule":"high_typosquat_exposure","deduction":-40,"detail":"12 of 30 look-alike domains are registered"}]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"domain":{"type":"string","description":"Domain to scan for typosquat look-alikes (e.g. google.com) — must include a TLD"},"limit":{"type":"number","description":"Max variations to generate and check (default: 30, max: 50)"}},"required":["domain"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"domain":{"type":"string"},"name":{"type":"string"},"tld":{"type":"string"},"variations_checked":{"type":"number"},"registered_count":{"type":"number"},"available_count":{"type":"number"},"registered_lookalikes":{"type":"array","items":{"type":"object"}},"available_variations":{"type":"array","items":{"type":"object"}},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array","items":{"type":"object"}}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/domain-due-diligence","url":"https://netintel.dev/domain-due-diligence","price":"$0.20","description":"One call combines domain availability, heuristic value appraisal, and TLD pricing into a single acquisition brief — tells an agent whether a name is available, what it's worth, and what it costs across TLDs, concurrently and with graceful partial-failure handling.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"domain":"acme.com"}},"output":{"type":"json","example":{"domain":"acme.com","name":"acme","tld":"com","generated_at":"2026-06-16T01:00:00Z","sections":{"availability":{"available":true,"is_available":false,"status":"registered","registrar":"GoDaddy LLC","expires_at":"2025-06-01T00:00:00Z"},"appraisal":{"available":true,"value_tier":"premium","value_score":95},"tld_pricing":{"available":true,"cheapest":{"domain":"acme.xyz","register":1.99},"cheapest_premium":{"domain":"acme.com","register":10.99}}},"sections_ok":3,"sections_failed":0,"verdict":"taken_premium","score":70,"grade":"C","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"domain":{"type":"string","description":"Domain to assess, including TLD (e.g. acme.com)"}},"required":["domain"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"domain":{"type":"string"},"name":{"type":"string"},"tld":{"type":"string"},"generated_at":{"type":"string"},"sections":{"type":"object"},"sections_ok":{"type":"number"},"sections_failed":{"type":"number"},"verdict":{"type":"string"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array","items":{"type":"object"}}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/domain-report/full","url":"https://netintel.dev/domain-report/full","price":"$0.25","description":"One premium call returns a complete six-part domain profile — DNS records, SSL certificate, WHOIS registration, cloud fingerprint, technology stack, and security headers — each section run concurrently with graceful partial-failure handling, so agents get an entire domain workup in a single request instead of orchestrating six.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"domain":"example.com"}},"output":{"type":"json","example":{"domain":"example.com","generated_at":"2026-06-16T01:00:00Z","sections":{"dns":{"available":true,"a_records":["93.184.216.34"],"mx_records":["mail.example.com"],"ns_records":["a.iana-servers.net"],"txt_records":["v=spf1 -all"]},"ssl":{"available":true,"issuer":"DigiCert Inc","valid_to":"Feb 13 23:59:59 2027 GMT","days_until_expiry":200},"whois":{"available":true,"registrar":"MarkMonitor Inc.","created_at":"1995-08-14T04:00:00Z","expires_at":"2027-08-13T04:00:00Z","days_until_expiry":425},"cloud":{"available":true,"provider":"Cloudflare","cdn":"Cloudflare","dns_provider":"Cloudflare DNS","grade":"A"},"tech":{"available":true,"server":"Nginx","cdn":"Cloudflare","cms":null,"waf":"Cloudflare WAF"},"security_headers":{"available":false,"error":"timeout"}},"sections_ok":5,"sections_failed":1,"score":80,"grade":"B","findings":[{"rule":"section_failed","deduction":0,"detail":"security_headers: timeout"}]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"domain":{"type":"string","description":"Domain to profile, including TLD (e.g. example.com)"}},"required":["domain"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"domain":{"type":"string"},"generated_at":{"type":"string"},"sections":{"type":"object"},"sections_ok":{"type":"number"},"sections_failed":{"type":"number"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array","items":{"type":"object"}}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/email-report/full","url":"https://netintel.dev/email-report/full","price":"$0.15","description":"One call combines domain email authentication (SPF/DKIM/DMARC), email-address intelligence (deliverability, disposable/role detection), and an optional password breach check into a single email-trust report — each section run concurrently with graceful partial-failure handling — so agents can fully vet an email and its domain in one request.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"email":"user@example.com"}},"output":{"type":"json","example":{"email":"user@example.com","domain":"example.com","generated_at":"2026-06-16T01:00:00Z","sections":{"authentication":{"available":true,"spf":"pass","dkim":"present","dmarc":"p=reject"},"intelligence":{"available":true,"deliverability":"deliverable","is_disposable":false,"is_role_based":false,"is_free_provider":false},"breach":{"available":false,"error":"not_requested"}},"sections_ok":2,"sections_failed":0,"trust_verdict":"trusted","score":100,"grade":"A","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"email":{"type":"string","description":"Email address to vet (e.g. user@example.com)"},"password":{"type":"string","description":"Optional password — if supplied, runs a HIBP breach check on it (e.g. validating a signup)"}},"required":["email"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"email":{"type":"string"},"domain":{"type":"string"},"generated_at":{"type":"string"},"sections":{"type":"object"},"sections_ok":{"type":"number"},"sections_failed":{"type":"number"},"trust_verdict":{"type":"string"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array","items":{"type":"object"}}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/ip-report/full","url":"https://netintel.dev/ip-report/full","price":"$0.20","description":"One premium call returns a complete five-part IP profile — geolocation, ASN/network ownership, multi-DNSBL blacklist status, threat reputation, and an aggregate risk verdict — run concurrently with graceful partial-failure handling, so agents get a full IP workup and a block/allow decision in a single request.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"ip":"8.8.8.8"}},"output":{"type":"json","example":{"ip":"8.8.8.8","generated_at":"2026-06-16T01:00:00Z","sections":{"geo":{"available":true,"country":"United States","city":"Ashburn","timezone":"America/New_York","isp":"Google LLC"},"network":{"available":true,"asn":"AS15169","organization":"Google LLC","classification":"cloud"},"blacklist":{"available":true,"listed_count":0,"lists_checked":15,"listed_on":[]},"reputation":{"available":true,"abuse_confidence":0,"otx_pulses":0},"risk":{"available":true,"risk_score":80,"recommendation":"allow"}},"sections_ok":5,"sections_failed":0,"overall_recommendation":"allow","score":80,"grade":"B","findings":[]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"ip":{"type":"string","description":"IPv4 or IPv6 address to profile (private/reserved ranges are rejected)"}},"required":["ip"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"ip":{"type":"string"},"generated_at":{"type":"string"},"sections":{"type":"object"},"sections_ok":{"type":"number"},"sections_failed":{"type":"number"},"overall_recommendation":{"type":"string"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array","items":{"type":"object"}}}}},"required":["type"]}},"required":["input"]}},{"method":"GET","path":"/url-safety/full","url":"https://netintel.dev/url-safety/full","price":"$0.15","description":"One call vets a URL end to end — traces its full redirect chain, checks it against malware/phishing databases, audits its security headers, and inspects its SSL certificate — concurrent with graceful partial-failure handling, so agents get a complete safety verdict before following a link.","mimeType":"application/json","discovery":{"input":{"type":"http","queryParams":{"url":"https://example.com/page"}},"output":{"type":"json","example":{"url":"https://example.com/page","generated_at":"2026-06-16T01:00:00Z","sections":{"redirects":{"available":true,"hops":1,"final_url":"https://www.example.com/page","open_redirect":false},"malware":{"available":true,"in_urlhaus":false,"threat_classification":"clean","heuristic_flags":[]},"security_headers":{"available":true,"present":["Strict-Transport-Security"],"missing":["Content-Security-Policy"]},"ssl":{"available":true,"valid":true,"issuer":"DigiCert Inc","days_until_expiry":200}},"sections_ok":4,"sections_failed":0,"final_url":"https://www.example.com/page","safety_verdict":"safe","score":90,"grade":"A","findings":[{"rule":"redirects_elsewhere","deduction":0,"detail":"URL redirects to a different final destination — consider re-checking final_url"}]}}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"type":"object","properties":{"type":{"type":"string","const":"http"},"method":{"type":"string","enum":["GET","HEAD","DELETE"]},"queryParams":{"type":"object","properties":{"url":{"type":"string","description":"URL to vet, including scheme (e.g. https://example.com/page)"}},"required":["url"]}},"required":["type"],"additionalProperties":false},"output":{"type":"object","properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"url":{"type":"string"},"generated_at":{"type":"string"},"sections":{"type":"object"},"sections_ok":{"type":"number"},"sections_failed":{"type":"number"},"final_url":{"type":"string"},"safety_verdict":{"type":"string"},"score":{"type":"number"},"grade":{"type":"string"},"findings":{"type":"array","items":{"type":"object"}}}}},"required":["type"]}},"required":["input"]}}],"hints":{"authentication":"none — pay-per-call via x402, no API keys needed","rateLimit":"none — usage is metered by payment, not rate limits","cors":"enabled for all origins","contentType":"application/json for all responses","errorFormat":"{ error: string } with appropriate HTTP status codes","ssrfProtection":"all endpoints validate and block private/internal IPs","timeout":"most endpoints respond in 1-10 seconds","bestFor":["AI agents needing real-time network intelligence","Security auditing and reconnaissance","Domain and infrastructure monitoring","Email deliverability validation","Web technology profiling","OSINT and threat intelligence"]}}