{
  "openapi": "3.0.1",
  "info": {
    "title": "Websites by Technology - BuiltWith Alternative & Store Leads",
    "description": "Lists of websites that use a technology, by country: Shopify stores in Germany, WordPress sites in Taiwan, HubSpot users in the UK. Candidates come from Chrome's top 1K-1M websites per country; each home page is checked live. $5 per 1,000 websites found; scanning is free.",
    "version": "0.1",
    "x-build-id": "DKbv8O9WihgHGbVub"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/tidytools~website-lists/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-tidytools-website-lists",
        "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/tidytools~website-lists/runs": {
      "post": {
        "operationId": "runs-sync-tidytools-website-lists",
        "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/tidytools~website-lists/run-sync": {
      "post": {
        "operationId": "run-sync-tidytools-website-lists",
        "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": {
          "technologies": {
            "title": "Technologies",
            "type": "array",
            "description": "Product names or categories, one per line, e.g. Shopify, WooCommerce, WordPress, HubSpot, Klaviyo, Google Workspace, or a category such as E-commerce, CMS or Live chat. Case does not matter; several names can be separated by commas, semicolons or line breaks (for Shopify AND Klaviyo use separate entries plus the option below). Empty = every website that can be read (a top-sites list with each site's tech stack). Unknown names become a result row with errorType \"invalid_input\" and suggestions (not charged).",
            "items": {
              "type": "string"
            }
          },
          "countries": {
            "title": "Countries",
            "type": "array",
            "description": "Where the websites are popular: two-letter country codes (US, DE, GB, TW, JP, BR ... 238 countries) or \"global\" for the worldwide top list. Several countries are merged (best rank first, each domain once). The lists rank websites by Chrome visits from that country; use the domain filters (e.g. TLD \"de\") for businesses based there.",
            "default": [
              "US"
            ],
            "items": {
              "type": "string"
            }
          },
          "maxRank": {
            "title": "Popularity: top N websites",
            "minimum": 1000,
            "maximum": 1000000,
            "type": "integer",
            "description": "Only websites among the top N of the chosen countries by Chrome UX Report rank. The lists come in buckets of 1,000 / 5,000 / 10,000 / 50,000 / 100,000 / 500,000 / 1,000,000 (other values are rounded up to the next bucket; smaller countries list fewer websites). The most popular websites are scanned first.",
            "default": 10000
          },
          "skipTopRank": {
            "title": "Skip the most popular (optional)",
            "minimum": 0,
            "maximum": 500000,
            "type": "integer",
            "description": "Start after this rank bucket, e.g. 10000 = skip the top 10,000 websites and scan from the next bucket (mid-sized businesses instead of the biggest brands, which rarely run Shopify or WordPress). 0 = start at the top.",
            "default": 0
          },
          "requireAllTechnologies": {
            "title": "Require all technologies",
            "type": "boolean",
            "description": "Off: a website matches when it uses any of the technologies. On: it must use all of them (e.g. Shopify AND Klaviyo).",
            "default": false
          },
          "maxResults": {
            "title": "Max websites to return",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "The run stops after this many matching websites (each one is charged). This is the most the run can cost.",
            "default": 20
          },
          "maxSitesToScan": {
            "title": "Max websites to scan",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "How many candidate websites (in rank order) are checked at most. Scanning is free; only matches are charged. Rare technologies need more scanning: in our tests 2% to 13% of the readable websites matched (Shopify: about 1 in 10 US websites ranked 10K-100K).",
            "default": 500
          },
          "tlds": {
            "title": "Only these domain endings (optional)",
            "type": "array",
            "description": "Keep only domains with these endings, e.g. de, co.uk, com.tw (\"uk\" matches co.uk and org.uk). Empty = all.",
            "items": {
              "type": "string"
            }
          },
          "domainContains": {
            "title": "Domain contains (optional)",
            "type": "array",
            "description": "Keep only domains that contain any of these texts, e.g. shop, store, wine.",
            "items": {
              "type": "string"
            }
          },
          "excludeDomains": {
            "title": "Exclude domains (optional)",
            "type": "array",
            "description": "Domains to skip, e.g. your existing customers or a previous run's results (subdomains are skipped too).",
            "items": {
              "type": "string"
            }
          },
          "enrich": {
            "title": "Add authority and traffic data",
            "type": "array",
            "description": "Optional extra fields for each website found, at no extra cost.",
            "items": {
              "type": "string",
              "enum": [
                "authority",
                "trafficRank"
              ],
              "enumTitles": [
                "Authority score (0-100) and referring domains (Common Crawl web graph)",
                "Global traffic rank and 12-month trend (Chrome UX Report)"
              ]
            },
            "default": []
          },
          "includeEmailProvider": {
            "title": "E-mail provider and DNS tools",
            "type": "boolean",
            "description": "Look up public DNS records (MX, SPF, verification TXT): adds the e-mail provider (Google Workspace, Microsoft 365 ...) and tools verified in DNS, which also count for matching.",
            "default": true
          },
          "minConfidence": {
            "title": "Detection confidence for matching",
            "enum": [
              "high",
              "medium"
            ],
            "type": "string",
            "description": "How sure the detection must be for a website to count as a match. Every row lists each technology with its confidence.",
            "default": "high"
          },
          "excludeAdultSites": {
            "title": "Skip adult websites",
            "type": "boolean",
            "description": "Skip websites with an adult content label (RTA, rating meta tag) or adult words in the title or domain (free, not returned).",
            "default": true
          },
          "retryBlockedSites": {
            "title": "Retry refused websites from our servers",
            "type": "boolean",
            "description": "When a website refuses the request from Apify's network, read its home page once more from our backend (plain HTTP, no browser). Fewer signals are available that way (scripts only).",
            "default": true
          },
          "maxConcurrency": {
            "title": "Websites in parallel",
            "minimum": 1,
            "maximum": 40,
            "type": "integer",
            "description": "How many websites are read at the same time.",
            "default": 16
          },
          "siteTimeoutSecs": {
            "title": "Time limit per website (seconds)",
            "minimum": 10,
            "maximum": 120,
            "type": "integer",
            "description": "A website that takes longer is skipped (free).",
            "default": 40
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}