{
  "openapi": "3.0.1",
  "info": {
    "title": "Shopify & Ecommerce Store Finder — Emails, Phones & Tech (69M)",
    "description": "Find Shopify & ecommerce stores at scale: 69M+ sites across Shopify, WooCommerce, Wix, WordPress and more. Verified emails, phones, tech stack and 59 firmographic fields. Filter by platform, country and tech. 1 store = 1 row.",
    "version": "0.18",
    "x-build-id": "WzRh0tKwcvQAkwjxc"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/apivault_labs~website-leads-database/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-apivault_labs-website-leads-database",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/apivault_labs~website-leads-database/runs": {
      "post": {
        "operationId": "runs-sync-apivault_labs-website-leads-database",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/apivault_labs~website-leads-database/run-sync": {
      "post": {
        "operationId": "run-sync-apivault_labs-website-leads-database",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "workflow": {
            "title": "Workflow",
            "enum": [
              "auto",
              "export",
              "count"
            ],
            "type": "string",
            "description": "Auto uses countOnly as before; Export returns lead rows; Count previews the audience without paid Dataset rows.",
            "default": "auto"
          },
          "platforms": {
            "title": "Platforms",
            "uniqueItems": true,
            "type": "array",
            "description": "Which platform tables to pull sites from. Leave empty to search ALL platforms.",
            "items": {
              "type": "string",
              "enum": [
                "all",
                "wordpress_sites",
                "wix_sites",
                "shopify_sites",
                "woocommerce_sites",
                "woocommerce_checkout_sites",
                "aspnet_sites",
                "mastercard_sites",
                "squarespace_addtocart_sites",
                "mailchimp_sites",
                "joomla_sites",
                "prestashop_sites",
                "magento_sites",
                "bigcommerce_sites",
                "angular_sites",
                "mixed_sites"
              ],
              "enumTitles": [
                "All platforms",
                "WordPress",
                "Wix",
                "Shopify",
                "WooCommerce",
                "WooCommerce Checkout",
                "ASP.NET",
                "Mastercard",
                "Squarespace",
                "Mailchimp",
                "Joomla",
                "PrestaShop",
                "Magento",
                "BigCommerce",
                "Angular",
                "Mixed website datasets"
              ]
            },
            "default": [
              "all"
            ]
          },
          "outputPreset": {
            "title": "Output preset",
            "enum": [
              "compact",
              "contacts",
              "sales",
              "traffic",
              "full",
              "custom"
            ],
            "type": "string",
            "description": "Compact is best for general AI use; Contacts and Sales produce focused lead lists; Traffic adds traffic enrichment; Full returns all 59 core columns; Custom uses Output columns.",
            "default": "custom"
          },
          "columns": {
            "title": "Output columns",
            "uniqueItems": true,
            "type": "array",
            "description": "Which fields to return. IMPORTANT: dataset tabs only display fields saved by this run; selecting only Emails makes Traffic, Firmographics and Tech Stack tabs empty. Leave this field empty to populate ALL tabs with all 59 columns. Root Domain and _platform are always added.",
            "items": {
              "type": "string",
              "enum": [
                "Root Domain",
                "Location on Site",
                "Primary Domain",
                "Technology Spend",
                "Sales Revenue",
                "Social",
                "Employees",
                "SKU",
                "Company",
                "Vertical",
                "Tranco",
                "Page Rank",
                "Majestic",
                "Umbrella",
                "Overall Score",
                "Performance",
                "Accessibility",
                "SEO",
                "Best Practices",
                "Telephones",
                "Emails",
                "X",
                "Twitter",
                "TikTok",
                "Weibo",
                "Threads",
                "Facebook",
                "LinkedIn",
                "Google",
                "Pinterest",
                "GitHub",
                "Instagram",
                "Vk",
                "Vimeo",
                "YouTube",
                "People",
                "Ticker",
                "Verified Profiles",
                "City",
                "State",
                "Zip",
                "Country",
                "First Detected",
                "Last Found",
                "First Indexed",
                "Last Indexed",
                "eCommerce Platform",
                "CMS Platform",
                "CRM Platform",
                "Marketing Automation Platform",
                "Payment Platforms",
                "CRuX Rank",
                "Cloudflare Rank",
                "Agency",
                "Has Ads",
                "Hosting Provider",
                "AI",
                "Exclusion",
                "Compliance"
              ]
            },
            "default": [
              "Root Domain",
              "Location on Site",
              "Primary Domain",
              "Technology Spend",
              "Sales Revenue",
              "Social",
              "Employees",
              "SKU",
              "Company",
              "Vertical",
              "Tranco",
              "Page Rank",
              "Majestic",
              "Umbrella",
              "Overall Score",
              "Performance",
              "Accessibility",
              "SEO",
              "Best Practices",
              "Telephones",
              "Emails",
              "X",
              "Twitter",
              "TikTok",
              "Weibo",
              "Threads",
              "Facebook",
              "LinkedIn",
              "Google",
              "Pinterest",
              "GitHub",
              "Instagram",
              "Vk",
              "Vimeo",
              "YouTube",
              "People",
              "Ticker",
              "Verified Profiles",
              "City",
              "State",
              "Zip",
              "Country",
              "First Detected",
              "Last Found",
              "First Indexed",
              "Last Indexed",
              "eCommerce Platform",
              "CMS Platform",
              "CRM Platform",
              "Marketing Automation Platform",
              "Payment Platforms",
              "CRuX Rank",
              "Cloudflare Rank",
              "Agency",
              "Has Ads",
              "Hosting Provider",
              "AI",
              "Exclusion",
              "Compliance"
            ]
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "Overall Score",
              "Tranco",
              "Page Rank",
              "Sales Revenue",
              "Employees",
              "Technology Spend",
              "SKU",
              "Performance",
              "SEO",
              "Last Found"
            ],
            "type": "string",
            "description": "Order rows by this column before applying the limit, so you get the top leads instead of an arbitrary slice. Empty — no ordering."
          },
          "country": {
            "title": "Countries (ISO-2)",
            "uniqueItems": true,
            "type": "array",
            "description": "One or more ISO-2 country codes, e.g. DE, IT, US. Type each code and press Enter. Empty — no country filter.",
            "items": {
              "type": "string"
            }
          },
          "keyword": {
            "title": "Keyword",
            "type": "string",
            "description": "Substring in domain or company name. Empty — no filter."
          },
          "phoneCode": {
            "title": "Phone country code",
            "type": "string",
            "description": "E.g. +1 or +44. Keeps sites where AT LEAST ONE phone starts with this code. Empty — no filter."
          },
          "filters": {
            "title": "Extra filters (any columns)",
            "type": "array",
            "description": "Array of conditions on ANY of the 59 columns. Each item: {\"column\": \"City\", \"operator\": \"contains\", \"value\": \"Milano\"}. Operators: equals, not_equals, contains, not_contains, starts_with, ends_with, in_list (comma-separated), not_empty, empty. Conditions are combined with AND.",
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "column",
                "operator"
              ],
              "properties": {
                "column": {
                  "title": "Column",
                  "type": "string",
                  "description": "Exact case-sensitive name of one of the 59 output columns.",
                  "enum": [
                    "Root Domain",
                    "Location on Site",
                    "Primary Domain",
                    "Technology Spend",
                    "Sales Revenue",
                    "Social",
                    "Employees",
                    "SKU",
                    "Company",
                    "Vertical",
                    "Tranco",
                    "Page Rank",
                    "Majestic",
                    "Umbrella",
                    "Overall Score",
                    "Performance",
                    "Accessibility",
                    "SEO",
                    "Best Practices",
                    "Telephones",
                    "Emails",
                    "X",
                    "Twitter",
                    "TikTok",
                    "Weibo",
                    "Threads",
                    "Facebook",
                    "LinkedIn",
                    "Google",
                    "Pinterest",
                    "GitHub",
                    "Instagram",
                    "Vk",
                    "Vimeo",
                    "YouTube",
                    "People",
                    "Ticker",
                    "Verified Profiles",
                    "City",
                    "State",
                    "Zip",
                    "Country",
                    "First Detected",
                    "Last Found",
                    "First Indexed",
                    "Last Indexed",
                    "eCommerce Platform",
                    "CMS Platform",
                    "CRM Platform",
                    "Marketing Automation Platform",
                    "Payment Platforms",
                    "CRuX Rank",
                    "Cloudflare Rank",
                    "Agency",
                    "Has Ads",
                    "Hosting Provider",
                    "AI",
                    "Exclusion",
                    "Compliance"
                  ]
                },
                "operator": {
                  "title": "Operator",
                  "type": "string",
                  "description": "Allowed comparison operator. Conditions are combined with AND.",
                  "enum": [
                    "equals",
                    "not_equals",
                    "contains",
                    "not_contains",
                    "starts_with",
                    "ends_with",
                    "in_list",
                    "not_empty",
                    "empty"
                  ]
                },
                "value": {
                  "title": "Value",
                  "type": "string",
                  "description": "Comparison value. Omit or use an empty string for not_empty and empty. For in_list, pass a comma-separated string."
                }
              }
            }
          },
          "hasEmail": {
            "title": "Only with email",
            "type": "boolean",
            "description": "Keep only sites where the Emails column is not empty.",
            "default": false
          },
          "includeTrafficData": {
            "title": "Add website traffic data",
            "type": "boolean",
            "description": "Optional and slower. Match exported domains against the traffic database and add visits, rank, growth, engagement and channel shares. Traffic filters below automatically enable this option.",
            "default": false
          },
          "onlyWithTrafficData": {
            "title": "Only sites with traffic data",
            "type": "boolean",
            "description": "Return and charge only websites that have a traffic estimate. Automatically enables traffic enrichment.",
            "default": false
          },
          "minMonthlyVisits": {
            "title": "Minimum monthly visits",
            "minimum": 0,
            "type": "integer",
            "description": "Optional lower traffic threshold. Sites without traffic data or below this estimate are excluded before Dataset billing."
          },
          "maxMonthlyVisits": {
            "title": "Maximum monthly visits",
            "minimum": 0,
            "type": "integer",
            "description": "Optional upper traffic threshold. Sites without traffic data or above this estimate are excluded before Dataset billing."
          },
          "trafficSortOrder": {
            "title": "Sort by monthly visits",
            "enum": [
              "none",
              "highest",
              "lowest"
            ],
            "type": "string",
            "description": "Order traffic-matched rows inside each export selection. Traffic fields are added automatically when sorting is enabled.",
            "default": "none"
          },
          "hasPhone": {
            "title": "Only with phone",
            "type": "boolean",
            "description": "Keep only sites where the Telephones column is not empty.",
            "default": false
          },
          "sortDesc": {
            "title": "Sort descending",
            "type": "boolean",
            "description": "Highest values first (recommended for scores/traffic/revenue).",
            "default": true
          },
          "dedupeByDomain": {
            "title": "Deduplicate by domain",
            "type": "boolean",
            "description": "Do not output repeated Root Domain values when several platform datasets overlap. Single-platform datasets are already unique.",
            "default": true
          },
          "countOnly": {
            "title": "Count only",
            "type": "boolean",
            "description": "Preview matching segment rows without per-result charges. Saves structured COUNT_SUMMARY and SUMMARY records; Actor start and platform usage may still apply. Counts can include cross-platform overlap.",
            "default": false
          },
          "maxItems": {
            "title": "Max rows",
            "minimum": 1,
            "maximum": 250000,
            "type": "integer",
            "description": "Upper limit on returned rows per run (across all platforms combined). Max 250000. There is no total cap — use Offset to page through unlimited results across runs.",
            "default": 10000
          },
          "offset": {
            "title": "Offset (skip first N)",
            "minimum": 0,
            "type": "integer",
            "description": "Skip the first N source rows, then return the next batch. After a capped run, copy the exact nextOffset or resumeInput from EXPORT_CONTINUATION in the run's Key-Value Store. Set a Sort by column for stable pagination.",
            "default": 0
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}