# Saylor Innovations Web Contact Extractor

> Saylor Innovations Web Contact Extractor is a paid API for AI agents from saylorinnovations.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-27).

Extracts public contact details (emails, phone numbers, social profile links) from a website's home and contact pages

## Facts

- Endpoint: GET https://saylorinnovations.com/api/web/contacts?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-27
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/saylor-innovations-web-contact-extractor-f9bad5d7
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_FW9XB8szRnRI_ZY6uS6HK

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability saylor-innovations-web-contact-extractor-f9bad5d7
```

Example prompt: Can you pull all the public contact details from stripe.com — emails, phone numbers, and any social media profiles listed on their homepage or contact page?

## When to prefer this

Use this endpoint when you need to quickly gather publicly listed contact information from a business website without building your own scraper. It is ideal for lead enrichment, sales prospecting, journalist outreach, or competitive research where you need emails, phone numbers, and social handles from a company's public web presence. Prefer this over manual lookup or generic web search when you need structured, parsed contact data returned in a consistent JSON format.

## Known failure modes

- Website blocks scraping bots — returns empty or partial results
- Domain not found or unreachable — returns error or null data
- No contact information publicly listed on home/contact page — returns empty arrays
- Rate limiting by target site — may return incomplete data
- Dynamically rendered pages (JavaScript-heavy SPAs) may not expose contacts to static scraping

## How this service works

Public contact details a website publishes - emails flagged role-based or same-domain, phone numbers and social profile links from the home and contact page

## Output

Returns a JSON object containing the canonical URL scraped, arrays of email addresses (flagged as role-based like info@ or press@ and same-domain), arrays of phone numbers, a structured object of social profile links (LinkedIn, Twitter/X, GitHub, YouTube, Bluesky), counts of each contact type found, and an optional note with caveats about the result.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "url"
     ],
     "properties": {
      "url": {
       "type": "string",
       "description": "Public site URL or bare domain"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "json"
    },
    "example": {
     "type": "object",
     "required": [
      "url",
      "emails",
      "social"
     ],
     "properties": {
      "url": {
       "type": "string",
       "description": "Canonical URL"
      },
      "note": {
       "type": "string",
       "description": "Caveat or context for reading the result"
      },
      "counts": {
       "type": "object",
       "properties": {
        "emails": {
         "type": [
          "number",
          "null"
         ],
         "description": "Number of email addresses found"
        },
        "phones": {
         "type": [
          "number",
          "null"
         ],
         "description": "Number of phone numbers found"
        },
        "social": {
         "type": [
          "number",
          "null"
         ],
         "description": "Number of social links found"
        }
       },
       "description": "How many emails, phones and social links were found"
      },
      "emails": {
       "type": "array",
       "description": "Public email addresses found on the page, flagged as same-domain and role-based (info@, press@)"
      },
      "phones": {
       "type": "array",
       "description": "Public phone numbers found on the page"
      },
      "social": {
       "type": "object",
       "properties": {
        "github": {
         "type": [
          "string",
          "null"
         ],
         "description": "GitHub profile URL found on the page"
        },
        "bluesky": {
         "type": [
          "string",
          "null"
         ],
         "description": "Bluesky profile URL found on the page"
        },
        "twitter": {
         "type": [
          "string",
          "nu
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/saylor-innovations-web-contact-extractor-f9bad5d7/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from saylorinnovations.com](https://www.zero.xyz/host/saylorinnovations.com/llms.txt)
