{
  "openapi": "3.0.3",
  "info": {
    "title": "Website Contact Page Email & Phone Crawler (server mode)",
    "version": "1.1",
    "description": "Send one lookup and get the results back in the response. It takes the same input as a normal run: query parameters with GET, or a JSON body with POST. At most 10 results and 240 seconds per request; start a normal run for bigger jobs. Requests run in your own Apify account at the Actor's normal price.",
    "x-oa-server-mode": "1.1"
  },
  "paths": {
    "/": {
      "get": {
        "operationId": "lookupGet",
        "summary": "Run one lookup (query parameters)",
        "parameters": [
          {
            "name": "urls",
            "in": "query",
            "required": true,
            "description": "Websites to scan for public contact details. You can paste full URLs or bare domains; duplicates are removed. (GET: repeat the parameter once per value.)",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "maxItems": 3
            },
            "style": "form",
            "explode": true,
            "example": [
              "https://apify.com"
            ]
          },
          {
            "name": "maxPagesPerSite",
            "in": "query",
            "required": false,
            "description": "Maximum number of pages to fetch per website. Contact, about, team and imprint pages are prioritised.",
            "schema": {
              "type": "integer",
              "default": 10,
              "minimum": 1,
              "maximum": 10
            },
            "example": 5
          },
          {
            "name": "maxConcurrency",
            "in": "query",
            "required": false,
            "description": "How many pages of the same website may be fetched in parallel.",
            "schema": {
              "type": "integer",
              "default": 5,
              "minimum": 1,
              "maximum": 20
            }
          },
          {
            "name": "maxSitesConcurrency",
            "in": "query",
            "required": false,
            "description": "How many websites are scanned in parallel. Lower this if you hit rate limits.",
            "schema": {
              "type": "integer",
              "default": 3,
              "minimum": 1,
              "maximum": 10
            }
          },
          {
            "name": "requestTimeoutSecs",
            "in": "query",
            "required": false,
            "description": "Maximum time to wait for one page before trying the next proxy tier.",
            "schema": {
              "type": "integer",
              "default": 15,
              "minimum": 5,
              "maximum": 60
            }
          },
          {
            "name": "defaultCountry",
            "in": "query",
            "required": false,
            "description": "ISO 3166-1 alpha-2 country used to interpret phone numbers written without an international prefix. Leave empty to infer from the website domain.",
            "schema": {
              "type": "string",
              "enum": [
                "",
                "AC",
                "AD",
                "AE",
                "AF",
                "AG",
                "AI",
                "AL",
                "AM",
                "AO",
                "AR",
                "AS",
                "AT",
                "AU",
                "AW",
                "AX",
                "AZ",
                "BA",
                "BB",
                "BD",
                "BE",
                "BF",
                "BG",
                "BH",
                "BI",
                "BJ",
                "BL",
                "BM",
                "BN",
                "BO",
                "BQ",
                "BR",
                "BS",
                "BT",
                "BW",
                "BY",
                "BZ",
                "CA",
                "CC",
                "CD",
                "CF",
                "CG",
                "CH",
                "CI",
                "CK",
                "CL",
                "CM",
                "CN",
                "CO",
                "CR",
                "CU",
                "CV",
                "CW",
                "CX",
                "CY",
                "CZ",
                "DE",
                "DJ",
                "DK",
                "DM",
                "DO",
                "DZ",
                "EC",
                "EE",
                "EG",
                "EH",
                "ER",
                "ES",
                "ET",
                "FI",
                "FJ",
                "FK",
                "FM",
                "FO",
                "FR",
                "GA",
                "GB",
                "GD",
                "GE",
                "GF",
                "GG",
                "GH",
                "GI",
                "GL",
                "GM",
                "GN",
                "GP",
                "GQ",
                "GR",
                "GT",
                "GU",
                "GW",
                "GY",
                "HK",
                "HN",
                "HR",
                "HT",
                "HU",
                "ID",
                "IE",
                "IL",
                "IM",
                "IN",
                "IO",
                "IQ",
                "IR",
                "IS",
                "IT",
                "JE",
                "JM",
                "JO",
                "JP",
                "KE",
                "KG",
                "KH",
                "KI",
                "KM",
                "KN",
                "KP",
                "KR",
                "KW",
                "KY",
                "KZ",
                "LA",
                "LB",
                "LC",
                "LI",
                "LK",
                "LR",
                "LS",
                "LT",
                "LU",
                "LV",
                "LY",
                "MA",
                "MC",
                "MD",
                "ME",
                "MF",
                "MG",
                "MH",
                "MK",
                "ML",
                "MM",
                "MN",
                "MO",
                "MP",
                "MQ",
                "MR",
                "MS",
                "MT",
                "MU",
                "MV",
                "MW",
                "MX",
                "MY",
                "MZ",
                "NA",
                "NC",
                "NE",
                "NF",
                "NG",
                "NI",
                "NL",
                "NO",
                "NP",
                "NR",
                "NU",
                "NZ",
                "OM",
                "PA",
                "PE",
                "PF",
                "PG",
                "PH",
                "PK",
                "PL",
                "PM",
                "PR",
                "PS",
                "PT",
                "PW",
                "PY",
                "QA",
                "RE",
                "RO",
                "RS",
                "RU",
                "RW",
                "SA",
                "SB",
                "SC",
                "SD",
                "SE",
                "SG",
                "SH",
                "SI",
                "SJ",
                "SK",
                "SL",
                "SM",
                "SN",
                "SO",
                "SR",
                "SS",
                "ST",
                "SV",
                "SX",
                "SY",
                "SZ",
                "TA",
                "TC",
                "TD",
                "TG",
                "TH",
                "TJ",
                "TK",
                "TL",
                "TM",
                "TN",
                "TO",
                "TR",
                "TT",
                "TV",
                "TW",
                "TZ",
                "UA",
                "UG",
                "US",
                "UY",
                "UZ",
                "VA",
                "VC",
                "VE",
                "VG",
                "VI",
                "VN",
                "VU",
                "WF",
                "WS",
                "XK",
                "YE",
                "YT",
                "ZA",
                "ZM",
                "ZW"
              ],
              "default": ""
            }
          },
          {
            "name": "useProxy",
            "in": "query",
            "required": false,
            "description": "Start with the Apify proxy ladder instead of trying direct requests first. The actor always retries blocked requests through the proxy ladder automatically.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "smartPrioritise",
            "in": "query",
            "required": false,
            "description": "Try common contact, about, team, imprint and support paths first, and queue contact-like links ahead of other internal links.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          },
          {
            "name": "respectRobotsTxt",
            "in": "query",
            "required": false,
            "description": "Skip pages that the website's robots.txt disallows. Turn this off only when you own the site or have permission to crawl it.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          },
          {
            "name": "useSitemap",
            "in": "query",
            "required": false,
            "description": "Read sitemap.xml and robots.txt sitemap entries to find contact and about pages that are not linked from the homepage.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          },
          {
            "name": "renderFallback",
            "in": "query",
            "required": false,
            "description": "If plain HTML contains no email or phone, render up to two pages in a headless browser to capture contacts loaded by JavaScript.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          },
          {
            "name": "onlyWithContacts",
            "in": "query",
            "required": false,
            "description": "Drop records for websites where no email, phone, social profile or contact form was found.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeNamedEmails",
            "in": "query",
            "required": false,
            "description": "Include personal addresses such as jane.smith@company.com. When off, only role addresses such as info@, sales@ and support@ are kept.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The results as a JSON array (at most 10). They are also saved to the run's dataset and billed per result, like a normal run.",
            "headers": {
              "X-Item-Count": {
                "schema": {
                  "type": "integer"
                },
                "description": "Results returned."
              },
              "X-Status-Message": {
                "schema": {
                  "type": "string"
                },
                "description": "The Actor's last status message, e.g. why nothing was found."
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Item"
                  }
                },
                "example": [
                  {
                    "type": "website_contacts",
                    "websiteUrl": "https://apify.com",
                    "status": "success",
                    "pagesCrawled": 5,
                    "maxDepthReached": 1,
                    "crawledAt": "2026-11-10T15:32:38Z",
                    "emails": [
                      "hello@apify.com",
                      "support@apify.com"
                    ],
                    "primaryEmail": "hello@apify.com",
                    "roleEmails": [
                      "hello@apify.com",
                      "support@apify.com"
                    ],
                    "emailDetails": [
                      {
                        "email": "hello@apify.com",
                        "type": "role",
                        "sourceUrl": "https://apify.com/contact",
                        "method": "mailto",
                        "confidence": 0.98,
                        "ownDomain": true,
                        "domainType": "own"
                      },
                      {
                        "email": "support@apify.com",
                        "type": "role",
                        "sourceUrl": "https://apify.com/",
                        "method": "jsonld",
                        "confidence": 0.95,
                        "ownDomain": true,
                        "domainType": "own"
                      }
                    ],
                    "socialLinks": {
                      "discord": "https://discord.com/invite/jyEM2PRvMU",
                      "github": "https://github.com/apify",
                      "linkedin": "https://linkedin.com/company/apify",
                      "tiktok": "https://tiktok.com/@apifyoffice",
                      "twitter": "https://x.com/apify"
                    },
                    "socialProfiles": [
                      {
                        "platform": "discord",
                        "url": "https://discord.com/invite/jyEM2PRvMU",
                        "sourceUrl": "https://apify.com/",
                        "method": "href"
                      },
                      {
                        "platform": "discord",
                        "url": "https://discord.gg/w3e2v7rWDw",
                        "sourceUrl": "https://apify.com/",
                        "method": "href"
                      },
                      {
                        "platform": "github",
                        "url": "https://github.com/apify",
                        "sourceUrl": "https://apify.com/",
                        "method": "href"
                      }
                    ],
                    "companyName": "Apify Technologies s.r.o.",
                    "companyNameSource": "jsonld",
                    "address": {
                      "streetAddress": "Na Příkopě 959/27",
                      "addressLocality": "Prague",
                      "postalCode": "11000",
                      "addressCountry": "CZ"
                    },
                    "contactPageUrl": "https://apify.com/contact",
                    "contactForms": [
                      {
                        "actionUrl": "https://apify.com/contact-sales",
                        "method": "get",
                        "fieldCount": 4,
                        "sourceUrl": "https://apify.com/contact-sales"
                      }
                    ],
                    "pagesCrawledUrls": [
                      "https://apify.com/",
                      "https://apify.com/about",
                      "https://apify.com/change-log/scrapy-support-and-new-integration-guides"
                    ]
                  }
                ]
              }
            }
          },
          "400": {
            "description": "Invalid, missing or unknown input fields. Nothing ran.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                },
                "example": {
                  "error": "invalid_input",
                  "errorDescription": "urls: required"
                }
              }
            }
          },
          "422": {
            "description": "The Actor could not complete this request (for example, nothing matches). No results were delivered.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected failure. Safe to retry.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "504": {
            "description": "The request used up its 240 s budget. The results found so far are in partialItems.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/Error"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "partialItems": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/Item"
                          }
                        }
                      }
                    }
                  ]
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "lookupPost",
        "summary": "Run one lookup (JSON body)",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "urls": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "maxItems": 3,
                    "description": "Websites to scan for public contact details. You can paste full URLs or bare domains; duplicates are removed."
                  },
                  "maxPagesPerSite": {
                    "type": "integer",
                    "default": 10,
                    "minimum": 1,
                    "maximum": 10,
                    "description": "Maximum number of pages to fetch per website. Contact, about, team and imprint pages are prioritised."
                  },
                  "maxConcurrency": {
                    "type": "integer",
                    "default": 5,
                    "minimum": 1,
                    "maximum": 20,
                    "description": "How many pages of the same website may be fetched in parallel."
                  },
                  "maxSitesConcurrency": {
                    "type": "integer",
                    "default": 3,
                    "minimum": 1,
                    "maximum": 10,
                    "description": "How many websites are scanned in parallel. Lower this if you hit rate limits."
                  },
                  "requestTimeoutSecs": {
                    "type": "integer",
                    "default": 15,
                    "minimum": 5,
                    "maximum": 60,
                    "description": "Maximum time to wait for one page before trying the next proxy tier."
                  },
                  "defaultCountry": {
                    "type": "string",
                    "enum": [
                      "",
                      "AC",
                      "AD",
                      "AE",
                      "AF",
                      "AG",
                      "AI",
                      "AL",
                      "AM",
                      "AO",
                      "AR",
                      "AS",
                      "AT",
                      "AU",
                      "AW",
                      "AX",
                      "AZ",
                      "BA",
                      "BB",
                      "BD",
                      "BE",
                      "BF",
                      "BG",
                      "BH",
                      "BI",
                      "BJ",
                      "BL",
                      "BM",
                      "BN",
                      "BO",
                      "BQ",
                      "BR",
                      "BS",
                      "BT",
                      "BW",
                      "BY",
                      "BZ",
                      "CA",
                      "CC",
                      "CD",
                      "CF",
                      "CG",
                      "CH",
                      "CI",
                      "CK",
                      "CL",
                      "CM",
                      "CN",
                      "CO",
                      "CR",
                      "CU",
                      "CV",
                      "CW",
                      "CX",
                      "CY",
                      "CZ",
                      "DE",
                      "DJ",
                      "DK",
                      "DM",
                      "DO",
                      "DZ",
                      "EC",
                      "EE",
                      "EG",
                      "EH",
                      "ER",
                      "ES",
                      "ET",
                      "FI",
                      "FJ",
                      "FK",
                      "FM",
                      "FO",
                      "FR",
                      "GA",
                      "GB",
                      "GD",
                      "GE",
                      "GF",
                      "GG",
                      "GH",
                      "GI",
                      "GL",
                      "GM",
                      "GN",
                      "GP",
                      "GQ",
                      "GR",
                      "GT",
                      "GU",
                      "GW",
                      "GY",
                      "HK",
                      "HN",
                      "HR",
                      "HT",
                      "HU",
                      "ID",
                      "IE",
                      "IL",
                      "IM",
                      "IN",
                      "IO",
                      "IQ",
                      "IR",
                      "IS",
                      "IT",
                      "JE",
                      "JM",
                      "JO",
                      "JP",
                      "KE",
                      "KG",
                      "KH",
                      "KI",
                      "KM",
                      "KN",
                      "KP",
                      "KR",
                      "KW",
                      "KY",
                      "KZ",
                      "LA",
                      "LB",
                      "LC",
                      "LI",
                      "LK",
                      "LR",
                      "LS",
                      "LT",
                      "LU",
                      "LV",
                      "LY",
                      "MA",
                      "MC",
                      "MD",
                      "ME",
                      "MF",
                      "MG",
                      "MH",
                      "MK",
                      "ML",
                      "MM",
                      "MN",
                      "MO",
                      "MP",
                      "MQ",
                      "MR",
                      "MS",
                      "MT",
                      "MU",
                      "MV",
                      "MW",
                      "MX",
                      "MY",
                      "MZ",
                      "NA",
                      "NC",
                      "NE",
                      "NF",
                      "NG",
                      "NI",
                      "NL",
                      "NO",
                      "NP",
                      "NR",
                      "NU",
                      "NZ",
                      "OM",
                      "PA",
                      "PE",
                      "PF",
                      "PG",
                      "PH",
                      "PK",
                      "PL",
                      "PM",
                      "PR",
                      "PS",
                      "PT",
                      "PW",
                      "PY",
                      "QA",
                      "RE",
                      "RO",
                      "RS",
                      "RU",
                      "RW",
                      "SA",
                      "SB",
                      "SC",
                      "SD",
                      "SE",
                      "SG",
                      "SH",
                      "SI",
                      "SJ",
                      "SK",
                      "SL",
                      "SM",
                      "SN",
                      "SO",
                      "SR",
                      "SS",
                      "ST",
                      "SV",
                      "SX",
                      "SY",
                      "SZ",
                      "TA",
                      "TC",
                      "TD",
                      "TG",
                      "TH",
                      "TJ",
                      "TK",
                      "TL",
                      "TM",
                      "TN",
                      "TO",
                      "TR",
                      "TT",
                      "TV",
                      "TW",
                      "TZ",
                      "UA",
                      "UG",
                      "US",
                      "UY",
                      "UZ",
                      "VA",
                      "VC",
                      "VE",
                      "VG",
                      "VI",
                      "VN",
                      "VU",
                      "WF",
                      "WS",
                      "XK",
                      "YE",
                      "YT",
                      "ZA",
                      "ZM",
                      "ZW"
                    ],
                    "default": "",
                    "description": "ISO 3166-1 alpha-2 country used to interpret phone numbers written without an international prefix. Leave empty to infer from the website domain."
                  },
                  "useProxy": {
                    "type": "boolean",
                    "default": false,
                    "description": "Start with the Apify proxy ladder instead of trying direct requests first. The actor always retries blocked requests through the proxy ladder automatically."
                  },
                  "smartPrioritise": {
                    "type": "boolean",
                    "default": true,
                    "description": "Try common contact, about, team, imprint and support paths first, and queue contact-like links ahead of other internal links."
                  },
                  "respectRobotsTxt": {
                    "type": "boolean",
                    "default": true,
                    "description": "Skip pages that the website's robots.txt disallows. Turn this off only when you own the site or have permission to crawl it."
                  },
                  "useSitemap": {
                    "type": "boolean",
                    "default": true,
                    "description": "Read sitemap.xml and robots.txt sitemap entries to find contact and about pages that are not linked from the homepage."
                  },
                  "renderFallback": {
                    "type": "boolean",
                    "default": true,
                    "description": "If plain HTML contains no email or phone, render up to two pages in a headless browser to capture contacts loaded by JavaScript."
                  },
                  "onlyWithContacts": {
                    "type": "boolean",
                    "default": false,
                    "description": "Drop records for websites where no email, phone, social profile or contact form was found."
                  },
                  "includeNamedEmails": {
                    "type": "boolean",
                    "default": true,
                    "description": "Include personal addresses such as jane.smith@company.com. When off, only role addresses such as info@, sales@ and support@ are kept."
                  }
                },
                "additionalProperties": false,
                "required": [
                  "urls"
                ]
              },
              "example": {
                "urls": [
                  "https://apify.com"
                ],
                "maxPagesPerSite": 5
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "The results as a JSON array (at most 10). They are also saved to the run's dataset and billed per result, like a normal run.",
            "headers": {
              "X-Item-Count": {
                "schema": {
                  "type": "integer"
                },
                "description": "Results returned."
              },
              "X-Status-Message": {
                "schema": {
                  "type": "string"
                },
                "description": "The Actor's last status message, e.g. why nothing was found."
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Item"
                  }
                },
                "example": [
                  {
                    "type": "website_contacts",
                    "websiteUrl": "https://apify.com",
                    "status": "success",
                    "pagesCrawled": 5,
                    "maxDepthReached": 1,
                    "crawledAt": "2026-11-10T15:32:38Z",
                    "emails": [
                      "hello@apify.com",
                      "support@apify.com"
                    ],
                    "primaryEmail": "hello@apify.com",
                    "roleEmails": [
                      "hello@apify.com",
                      "support@apify.com"
                    ],
                    "emailDetails": [
                      {
                        "email": "hello@apify.com",
                        "type": "role",
                        "sourceUrl": "https://apify.com/contact",
                        "method": "mailto",
                        "confidence": 0.98,
                        "ownDomain": true,
                        "domainType": "own"
                      },
                      {
                        "email": "support@apify.com",
                        "type": "role",
                        "sourceUrl": "https://apify.com/",
                        "method": "jsonld",
                        "confidence": 0.95,
                        "ownDomain": true,
                        "domainType": "own"
                      }
                    ],
                    "socialLinks": {
                      "discord": "https://discord.com/invite/jyEM2PRvMU",
                      "github": "https://github.com/apify",
                      "linkedin": "https://linkedin.com/company/apify",
                      "tiktok": "https://tiktok.com/@apifyoffice",
                      "twitter": "https://x.com/apify"
                    },
                    "socialProfiles": [
                      {
                        "platform": "discord",
                        "url": "https://discord.com/invite/jyEM2PRvMU",
                        "sourceUrl": "https://apify.com/",
                        "method": "href"
                      },
                      {
                        "platform": "discord",
                        "url": "https://discord.gg/w3e2v7rWDw",
                        "sourceUrl": "https://apify.com/",
                        "method": "href"
                      },
                      {
                        "platform": "github",
                        "url": "https://github.com/apify",
                        "sourceUrl": "https://apify.com/",
                        "method": "href"
                      }
                    ],
                    "companyName": "Apify Technologies s.r.o.",
                    "companyNameSource": "jsonld",
                    "address": {
                      "streetAddress": "Na Příkopě 959/27",
                      "addressLocality": "Prague",
                      "postalCode": "11000",
                      "addressCountry": "CZ"
                    },
                    "contactPageUrl": "https://apify.com/contact",
                    "contactForms": [
                      {
                        "actionUrl": "https://apify.com/contact-sales",
                        "method": "get",
                        "fieldCount": 4,
                        "sourceUrl": "https://apify.com/contact-sales"
                      }
                    ],
                    "pagesCrawledUrls": [
                      "https://apify.com/",
                      "https://apify.com/about",
                      "https://apify.com/change-log/scrapy-support-and-new-integration-guides"
                    ]
                  }
                ]
              }
            }
          },
          "400": {
            "description": "Invalid, missing or unknown input fields. Nothing ran.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                },
                "example": {
                  "error": "invalid_input",
                  "errorDescription": "urls: required"
                }
              }
            }
          },
          "422": {
            "description": "The Actor could not complete this request (for example, nothing matches). No results were delivered.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected failure. Safe to retry.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "504": {
            "description": "The request used up its 240 s budget. The results found so far are in partialItems.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/Error"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "partialItems": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/Item"
                          }
                        }
                      }
                    }
                  ]
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Item": {
        "type": "object",
        "description": "One result, the same record a normal run saves to its dataset.",
        "properties": {
          "type": {
            "type": "string"
          },
          "websiteUrl": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "pagesCrawled": {
            "type": "integer"
          },
          "maxDepthReached": {
            "type": "integer"
          },
          "crawledAt": {
            "type": "string"
          },
          "emails": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "primaryEmail": {
            "type": "string"
          },
          "roleEmails": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "emailDetails": {
            "type": "array",
            "items": {
              "type": "object"
            }
          },
          "socialLinks": {
            "type": "object"
          },
          "socialProfiles": {
            "type": "array",
            "items": {
              "type": "object"
            }
          },
          "companyName": {
            "type": "string"
          },
          "companyNameSource": {
            "type": "string"
          },
          "address": {
            "type": "object"
          },
          "contactPageUrl": {
            "type": "string"
          },
          "contactForms": {
            "type": "array",
            "items": {
              "type": "object"
            }
          },
          "pagesCrawledUrls": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "example": {
          "type": "website_contacts",
          "websiteUrl": "https://apify.com",
          "status": "success",
          "pagesCrawled": 5,
          "maxDepthReached": 1,
          "crawledAt": "2026-11-10T15:32:38Z",
          "emails": [
            "hello@apify.com",
            "support@apify.com"
          ],
          "primaryEmail": "hello@apify.com",
          "roleEmails": [
            "hello@apify.com",
            "support@apify.com"
          ],
          "emailDetails": [
            {
              "email": "hello@apify.com",
              "type": "role",
              "sourceUrl": "https://apify.com/contact",
              "method": "mailto",
              "confidence": 0.98,
              "ownDomain": true,
              "domainType": "own"
            },
            {
              "email": "support@apify.com",
              "type": "role",
              "sourceUrl": "https://apify.com/",
              "method": "jsonld",
              "confidence": 0.95,
              "ownDomain": true,
              "domainType": "own"
            }
          ],
          "socialLinks": {
            "discord": "https://discord.com/invite/jyEM2PRvMU",
            "github": "https://github.com/apify",
            "linkedin": "https://linkedin.com/company/apify",
            "tiktok": "https://tiktok.com/@apifyoffice",
            "twitter": "https://x.com/apify"
          },
          "socialProfiles": [
            {
              "platform": "discord",
              "url": "https://discord.com/invite/jyEM2PRvMU",
              "sourceUrl": "https://apify.com/",
              "method": "href"
            },
            {
              "platform": "discord",
              "url": "https://discord.gg/w3e2v7rWDw",
              "sourceUrl": "https://apify.com/",
              "method": "href"
            },
            {
              "platform": "github",
              "url": "https://github.com/apify",
              "sourceUrl": "https://apify.com/",
              "method": "href"
            }
          ],
          "companyName": "Apify Technologies s.r.o.",
          "companyNameSource": "jsonld",
          "address": {
            "streetAddress": "Na Příkopě 959/27",
            "addressLocality": "Prague",
            "postalCode": "11000",
            "addressCountry": "CZ"
          },
          "contactPageUrl": "https://apify.com/contact",
          "contactForms": [
            {
              "actionUrl": "https://apify.com/contact-sales",
              "method": "get",
              "fieldCount": 4,
              "sourceUrl": "https://apify.com/contact-sales"
            }
          ],
          "pagesCrawledUrls": [
            "https://apify.com/",
            "https://apify.com/about",
            "https://apify.com/change-log/scrapy-support-and-new-integration-guides"
          ]
        }
      },
      "Error": {
        "type": "object",
        "required": [
          "error",
          "errorDescription"
        ],
        "properties": {
          "error": {
            "type": "string",
            "enum": [
              "invalid_input",
              "request_failed",
              "internal_error",
              "timeout",
              "busy",
              "not_found",
              "method_not_allowed",
              "payload_too_large"
            ]
          },
          "errorDescription": {
            "type": "string"
          }
        }
      }
    },
    "securitySchemes": {
      "apifyToken": {
        "type": "http",
        "scheme": "bearer",
        "description": "Your Apify API token (Apify Console, Settings, API and integrations)."
      }
    }
  },
  "servers": [
    {
      "url": "https://nimbryxo-studio--website-contact-page-email-and-phone-crawler.apify.actor"
    }
  ],
  "security": [
    {
      "apifyToken": []
    }
  ]
}