Run the hosted Website Technology Lookup Actor on Apify from the web interface without writing code, or integrate it with Python, JavaScript or cURL to look up structured website technology data.
This public repository contains working request examples, sanitized domain input, representative technology results and CSV export code. It is useful both for non-technical users who want to run a domain lookup in Apify and for developers who need an integration example. It documents the integration surface without publishing Actor source code or private runtime configuration.
Browse the technical examples and sample dataset
- Build categorized technology profiles for competitor domains.
- Identify published CMS, hosting, web server, analytics, frontend and security technologies.
- Enrich domain lists for SEO research, sales research, market analysis or lead qualification.
- Keep current detections separate from technologies marked as recently used.
- Process up to 10,000 normalized domains in one hosted Actor run and export the Dataset.
The repository includes a representative result in data/sample-output.json and a flattened table in data/sample-output.csv.
{
"domain": "github.com",
"status": "ok",
"title": "Github.com",
"technologies": [
{
"category": "Content Management System",
"name": "GitHub Pages",
"version": null,
"detectionStatus": "current",
"isCurrentlyDetected": true
}
],
"httpStatusCode": 200,
"attempts": 1,
"error": null
}You can look up website technologies directly from the Apify web interface:
- Open Website Technology Lookup on Apify.
- In the Input tab, add one or more domains or website URLs to Domains.
- Review the list and click Start.
- Open the Dataset tab to inspect one result per normalized domain.
- Export the results as JSON, CSV, Excel or JSONL for a spreadsheet or another workflow.
For a first test, use github.com or the small payload in data/sample-input.json. The web workflow does not require you to install Python or copy an API token into this repository.
See the complete field-by-field walkthrough in docs/no-code-guide.md.
Apify's Free plan includes $5 in monthly prepaid usage that can be spent in the Apify Store or on your own Actors. No credit card is required to start, so a small Website Technology Lookup test can often be run with the monthly credit while it is available.
This is not unlimited free usage. Unused credits expire at the end of the billing cycle and do not roll over. See the current Apify pricing before running a larger domain batch.
pip install -r examples/python/requirements.txtexport APIFY_API_TOKEN="your-token"On Windows PowerShell:
$env:APIFY_API_TOKEN = "your-token"python examples/python/website_technology_lookup.pyThe example reads data/sample-input.json, starts the hosted Actor and prints the returned Dataset items as JSON lines.
{
"domains": [
"github.com",
"example.com",
"https://www.example.org/"
]
}Website URLs are accepted and normalized to their hostname. Equivalent values are deduplicated before processing. See docs/input-reference.md for the complete input contract.
See examples/curl-request.md for the synchronous API request.
See examples/python/website_technology_lookup.py for a complete request and Dataset iteration example.
See examples/javascript/request.mjs for the official JavaScript client.
All examples call the hosted Actor. They do not expose proxy settings, private source code or credentials.
| Field | Meaning |
|---|---|
domain |
Normalized hostname submitted to the lookup. |
status |
ok, not_found, not_crawled or error. |
title |
Published website title when available, otherwise null. |
websiteBackground |
Published site background metadata when available, otherwise null. |
technologies |
Categorized technology records; it can be empty. |
httpStatusCode |
HTTP response status when one was received. |
attempts |
Number of lookup attempts used for the domain. |
error |
Human-readable explanation for a non-ok result, otherwise null. |
Each technology record includes category, name, version, description, hints, detectionStatus and isCurrentlyDetected. Read docs/output-reference.md for the complete contract.
Read docs/use-cases.md for workflows covering:
- Competitor technology profiling.
- CMS and hosting research.
- SEO, sales and lead-list enrichment.
- Recurring technology snapshots.
Use examples/python/website_technology_lookup.py to send a domain list to the hosted Actor and iterate over one Dataset item per normalized domain.
For several domain lists, use examples/python/batch_website_technology_lookup.py. It demonstrates a single run with multiple domains.
The response is a Dataset of domain-level objects. Use status to distinguish a successful technology lookup from a domain that was not found, has not been crawled or returned an error. Use detectionStatus and isCurrentlyDetected when separating current technologies from recent historical signals.
See data/sample-output.json for the complete representative response fixture.
Use examples/python/export_website_technology_csv.py to flatten nested technology records into one CSV row per technology. Domains without technology records remain visible with blank technology columns.
See docs/faq.md for answers about URL normalization, duplicate domains, statuses, current versus recently used technologies, batch sizes, scheduling and CSV export.
- Up to 10,000 domain values per run.
- Equivalent domains are normalized and processed once.
- One Dataset item is returned for each unique normalized domain outcome.
- One
status: "ok"result is one billable event. not_found,not_crawledanderrorresults are not charged.- Current public price: $1 per 1,000 successfully completed domain lookups.
Results are snapshots of publicly available technology information. A later lookup can differ as websites and published data change. The Apify Actor page is authoritative for current pricing and limits.
Use the hosted Actor when you need batching, retries, Dataset storage, API access, recurring schedules or large domain lists without managing the lookup infrastructure yourself:
Run Website Technology Lookup on Apify
Use the returned data lawfully and respect the public source's terms, applicable laws, privacy obligations and third-party rights. The Actor reads publicly available technology information; it does not request a crawl or change the target website. Never commit an Apify token or other credentials to this repository.
For an example or documentation problem, open an issue on GitHub with sanitized input and the error message. For an execution problem, include the Apify run ID but never include your token.
This repository is released under the MIT License.