Référence Développeur
Détection de la pile technologique Documentation de l'API
Détection de la pile technologique Documentation de l'API: Détecter les technologies utilisées par un site Web, y compris les fournisseurs de CDN, les plates-formes CMS, les frameworks JavaScript, les outils d'analyse, les réseaux publicitaires et bien d'autres. Analyse les en-têtes HTTP, le contenu HTML et les bibliothèques JavaScript.
Détection de la pile technologique
Détecter les technologies utilisées par un site Web, y compris les fournisseurs de CDN, les plates-formes CMS, les frameworks JavaScript, les outils d'analyse, les réseaux publicitaires et bien d'autres. Analyse les en-têtes HTTP, le contenu HTML et les bibliothèques JavaScript.
GET
/v1/tech
Paramètres de Requête
| Paramètre | Type | Description |
|---|---|---|
| domain requis | string | Domaine à analyser (par exemple, "github.com") |
Catégories technologiques
| Catégorie | Exemples |
|---|---|
cdn | Cloudflare, Fastly, Akamai, CloudFront |
cms | WordPress, Drupal, Shopify, Squarespace |
analytics | Google Analytics, Mixpanel, Segment |
framework | React, Vue.js, Angular, Next.js |
server | nginx, Apache, IIS, LiteSpeed |
hosting | AWS, Google Cloud, Azure, Vercel |
platform | GitHub, Medium, Substack, GitBook |
Exemple de Requête
curl "https://domscan.net/v1/tech?domain=shopify.com"
const response = await fetch(
"https://domscan.net/v1/tech?domain=shopify.com"
);
const data = await response.json();
for (const tech of data.technologies) {
console.log(`${tech.category}: ${tech.name} (${tech.confidence})`);
}
import requests
response = requests.get(
"https://domscan.net/v1/tech",
params={"domain": "shopify.com"}
)
data = response.json()
for tech in data['technologies']:
print(f"{tech['category']}: {tech['name']} ({tech['confidence']})")
Exemple de Réponse
{
"url": "https://shopify.com",
"technologies": [
{ "name": "Cloudflare", "category": "cdn", "confidence": "high", "evidence": "Header: server" },
{ "name": "Shopify", "category": "cms", "confidence": "high", "evidence": "Header: x-shopify-stage + Asset URL" },
{ "name": "Google Analytics", "category": "analytics", "confidence": "medium", "evidence": "Asset URL" }
],
"summary": {
"cdn": "Cloudflare",
"cms": "Shopify",
"analytics": ["Google Analytics"]
},
"headers": {
"server": "cloudflare",
"x-shopify-stage": "production"
},
"_meta": { "analysis_status": "ok", "response_status": 200 }
}
Champs de Réponse
| Champ | Type |
|---|---|
url |
string |
technologies[] |
object[] |
technologies[] |
object |
technologies[].name |
string |
technologies[].category |
string |
technologies[].version |
string |
technologies[].confidence |
string |
technologies[].evidence |
string |
summary |
object |
summary.cdn |
string |
summary.server |
string |
summary.framework |
string |
summary.cms |
string |
summary.hosting |
string |
summary.platform |
string |
summary.analytics[] |
string[] |
headers |
object |
meta |
object |
ssl |
object |
ssl.enabled |
boolean |
total_time_ms |
integer |
checked_at |
string |
GET
/v1/hosting
Paramètres de Requête
| Paramètre | Type | requis |
|---|---|---|
| domain | string | requis |
Champs de Réponse
| Champ | Type |
|---|---|
domain |
string |
hosting |
object |
hosting.provider |
string |
hosting.provider_id |
string |
hosting.confidence |
number |
hosting.region |
string |
hosting.detection_method |
string |
cdn |
object |
cdn.detected |
boolean |
cdn.provider |
string |
cdn.provider_id |
string |
cdn.confidence |
number |
cdn.detection_method |
string |
cdn.features[] |
string[] |
waf |
object |
waf.detected |
boolean |
waf.provider |
string |
waf.provider_id |
string |
waf.confidence |
number |
waf.detection_method |
string |
dns_provider |
object |
dns_provider.provider |
string |
dns_provider.provider_id |
string |
dns_provider.nameservers[] |
string[] |
dns_provider.confidence |
number |
dns_providers[] |
object[] |
dns_providers[] |
object |
dns_providers[].provider_id |
string |
dns_providers[].provider |
string |
email_provider |
object |
email_provider.provider |
string |
email_provider.provider_id |
string |
email_provider.mx_records[] |
string[] |
email_provider.confidence |
number |
ssh |
object |
ssh.host |
string |
ssh.port |
integer |
ssh.reachable |
boolean |
ssh.banner |
string | null |
ssh.algorithms[] |
string[] |
ssh.weak_algorithms[] |
string[] |
ssh.keys[] |
object[] |
ssh.keys[] |
object |
ssh.keys[].host |
string |
ssh.keys[].algorithm |
string |
ssh.keys[].key_size |
integer | null |
ssh.keys[].fingerprint_sha256 |
string | null |
ssh.keys[].weak |
boolean |
ssh.keys[].weak_reasons[] |
string[] |
ssh.error |
string | null |
ssh.checked_at |
string |
ip_info |
object |
ip_info.ipv4[] |
string[] |
ip_info.ipv6[] |
string[] |
checked_at |
string |
check_duration_ms |
integer |
Exemple de Requête
curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/hosting?domain=example.com"
Exemple de Réponse
{
"domain": "github.com",
"hosting": {
"provider": "Microsoft Azure",
"provider_id": "azure",
"confidence": 0.86,
"detection_method": "ip_range"
},
"cdn": {
"detected": true,
"provider": "Fastly",
"provider_id": "fastly",
"confidence": 0.94,
"detection_method": "headers"
},
"waf": {
"detected": false,
"confidence": 0.2,
"detection_method": "headers"
},
"dns_provider": {
"provider": "AWS Route 53",
"provider_id": "route53",
"nameservers": [
"ns-1283.awsdns-32.org",
"ns-1707.awsdns-21.co.uk"
],
"confidence": 0.9
},
"email_provider": {
"provider": "Google Workspace",
"provider_id": "google_workspace",
"mx_records": [
"aspmx.l.google.com"
],
"confidence": 0.95
},
"ssh": {
"host": "github.com",
"port": 22,
"reachable": true,
"banner": "SSH-2.0-babeld",
"algorithms": [
"ssh-ed25519",
"ecdsa-sha2-nistp256"
],
"weak_algorithms": [],
"keys": [
{
"host": "github.com",
"algorithm": "ssh-ed25519",
"key_size": 256,
"fingerprint_sha256": "SHA256:+DiY3wvvV6TuJJhbpZisF/Ym7N3QKXNoZk6sJ2x2d2s",
"weak": false,
"weak_reasons": []
}
],
"error": null,
"checked_at": "2026-04-18T21:00:00Z"
},
"ip_info": {
"ipv4": [
"140.82.121.4"
],
"ipv6": []
},
"checked_at": "2026-04-18T21:00:00Z",
"check_duration_ms": 156
}
GET
/v1/parking
Paramètres de Requête
| Paramètre | Type | requis |
|---|---|---|
| domain | string | requis |
Champs de Réponse
| Champ | Type |
|---|---|
domain |
string |
is_parked |
boolean |
is_for_sale |
boolean |
parking_provider |
string | null |
aftermarket_listings[] |
object[] |
aftermarket_listings[] |
object |
aftermarket_listings[].platform |
string |
aftermarket_listings[].detected_via |
string |
signals[] |
object[] |
signals[] |
object |
signals[].type |
string |
signals[].detail |
string |
signals[].provider |
string |
confidence |
number |
checked_at |
string |
check_duration_ms |
integer |
Exemple de Requête
curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/parking?domain=example.com"
Exemple de Réponse
{
"domain": "example.com",
"is_parked": true,
"is_for_sale": true,
"parking_provider": "string",
"aftermarket_listings": [
{
"platform": "string",
"detected_via": "dns"
}
],
"signals": [
{
"type": "string",
"detail": "string",
"provider": "string"
}
],
"confidence": 1,
"checked_at": "2026-04-15T12:00:00Z",
"check_duration_ms": 1
}