# Apify Contact Info Scraper (pay-per-call via x402)

> Apify Contact Info Scraper (pay-per-call via x402) is a paid API for AI agents from stableapify.dev, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-15).

Scrapes contact information (emails, phone numbers, social profiles) from given website URLs using the vdrmota/contact-info-scraper Apify actor, billed per call via x402/USDC.

## Facts

- Endpoint: POST https://stableapify.dev/api/actors/vdrmota/contact-info-scraper/call
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/apify-contact-info-scraper-pay-per-call-via-x402-a284ce36
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_yOx7XRp_CXUovoUyqmG5L

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 apify-contact-info-scraper-pay-per-call-via-x402-a284ce36 -d '<json body>'
```

Example prompt: Scrape contact info — emails, phone numbers, and social media profiles — from https://example.com, staying within the same domain, crawling up to 50 pages, using Apify proxy, and merge any duplicate contacts you find.

## When to prefer this

Choose this endpoint when you need to extract contact information (emails, phones, social profiles) from one or more websites at scale, especially when you want crawl depth control, same-domain restriction, email verification, and social profile enrichment in a single call. It is ideal for lead generation, sales outreach list building, or enriching existing company data. Prefer it over generic scrapers when structured contact extraction with merging and verification is the goal.

## Known failure modes

- Invalid or unreachable start URLs return empty results or crawl errors
- Payment failure via x402 prevents the actor from starting
- Exceeding maxRequests causes early termination of crawl
- Pages behind login walls or CAPTCHAs may yield no contacts
- Browser mode required for JavaScript-heavy pages; omitting it may miss dynamic content
- Proxy misconfiguration leads to blocked requests and empty results

## How this service works

Search Apify Store actors, start actor runs, and fetch results over x402 and MPP.

## Output

Returns structured contact records including email addresses, phone numbers, and social media profile URLs found across the crawled pages. May include merged/deduplicated contacts, verified email statuses, and enriched lead data depending on input flags.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "startUrls",
    "mergeContacts",
    "sameDomain",
    "considerChildFrames",
    "maximumLeadsEnrichmentRecords",
    "verifyLeadsEnrichmentEmails",
    "scrapeSocialMediaProfiles",
    "useBrowser",
    "waitUntil",
    "proxyConfig"
   ],
   "properties": {
    "maxDepth": {
     "type": "integer",
     "maximum": 9007199254740991,
     "minimum": 0,
     "description": "The maximum number of links away from the Start URLs that the actor will crawl. If 0 , the scraper will not follow any links. If empty or null, the scraper will follow links to an arbitrary depth."
    },
    "startUrls": {
     "type": "array",
     "items": {
      "type": "object",
      "required": [
       "url"
      ],
      "properties": {
       "url": {
        "type": "string",
        "format": "uri"
       },
       "method": {
        "type": "string"
       },
       "headers": {
        "type": "object",
        "propertyNames": {
         "type": "string"
        },
        "additionalProperties": {
         "type": "string"
        }
       },
       "payload": {
        "type": "string"
       },
       "userData": {
        "type": "object",
        "propertyNames": {
         "type": "string"
        },
        "additionalProperties": {}
       }
      },
      "additionalProperties": false
     },
     "description": "The list of web pages from which the scraper will start crawling."
    },
    "waitUntil": {
     "enum": [
      "commit",
      "domcontentloaded",
      "load",
      "networkidle"
     ],
     "type": "string",
     "default": "domcontentloaded",
     "description": "Select when a page should be considered loaded so that the actor can start scraping it. *Only works with the browser.*"
    },
    "sameDomain": {
     "type": "boolean",
     "default": true,
     "description": "If set, the scraper will only follow links within the same domain as the referring page."
    },
    "useBrowser": {
     "type": "boolean",
     "default": false,
     "description": "If set, the scraper will use a browser for crawling the pages."
    },
    "maxRequests": {
     "type": "integer",
     "maximum": 9007199254740991,
     "minimum": 1,
     "description": "The maximum number of pages the scraper will load. It is always a good idea to limit the number of pages, otherwise the scraper might run infinitely or consume too many resources."
    },
    "proxyConfig": {
     
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/apify-contact-info-scraper-pay-per-call-via-x402-a284ce36/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from stableapify.dev](https://www.zero.xyz/host/stableapify.dev/llms.txt)
