API-Guthabennutzung

Sie müssen Login oder Melden Sie sich an um die BuiltWith-API zu verwenden. Nach der Anmeldung wird hier Ihr aktueller API-Schlüssel angezeigt.

Einführung

Erhalten Sie XML- und JSON-Ergebnisse von Beziehungen zwischen Websites, die zeigen, welche Websites miteinander verknüpft sind, wodurch und wie lange.

Die Relationship-API verwendet 1 API-Guthaben pro 500 Beziehungen.

Die allgemeine Zugriffsmethode ist wie folgt -
https://api.builtwith.com/rv4/api.[xml|json|csv]?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=[DOMAIN]

Authentifizierung

Sie müssen bei jeder Suche Ihren API-Schlüssel angeben. Unsere Endpunkte sind ausschließlich HTTPS-fähig und bieten Schlüsselverschlüsselung. Geben Sie Ihren API-Schlüssel niemals preis.

Ihr API-Schlüssel ist
00000000-0000-0000-0000-000000000000

Beispiel für die Domänenabfrage

JSON Einzelne Domain erhalten
https://api.builtwith.com/rv4/api.json?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=builtwith.com

XML Einzelne Domain erhalten
https://api.builtwith.com/rv4/api.xml?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=hotelscombined.com

CSV Einzelne Domain erhalten
https://api.builtwith.com/rv4/api.csv?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=builtwith.com

TSV Einzelne Domain erhalten
https://api.builtwith.com/rv4/api.Tsv?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=builtwith.com

Referenz
Parameter
Die folgenden GET-Parameter können für Lookups angegeben werden
NameBeispieleErforderlich
KEY00000000-0000-0000-0000-000000000000
Dies ist Ihr Schlüssel. Verwenden Sie ihn für Nachschlagevorgänge.
Ja
LOOKUPcnn.com
news.ycombinator.com
Domänen und Subdomänen funktionieren mit der Relationship API (keine internen Seiten)
Mehrfach-Suchoption
Bei der Durchführung von RAW-Domänensuchen können Sie bis zu 16 Domänen gleichzeitig als CSV analysieren. Zum Beispiel cnn.com,about.com,builtwith.com - Dadurch wird der Durchsatz erheblich verbessert.
Ja
OFFSET500
Der Seitenversatz für Beziehungsergebnisse. next_offset in der Antwort hat den Offset und more_results wird wahr sein.
NEIN
IPyes
Laden Sie die IP-Daten der Website, dies erhöht die Anzahl der Ergebnisse erheblich.
NEIN
API-Metadaten
NameBeispielBeschreibung
results24Die Gesamtzahl der Beziehungsergebnisse für diese Suche
max_per_page500Die maximale Anzahl an Ergebnissen, die wir pro Suche zurückgeben.
next_skip1500Die Zahl, die als OFFSET-Parameter für die nächste Ergebnisseite bereitgestellt werden soll, wenn more_results wahr ist.
more_resultstrueDies gilt auch, wenn weitere Ergebnisse vorliegen.
Antworten
Format: Relationships[Relationship->Identifiers[Identifer]]
Beziehung
„Ergebnisse“ ist die Antwort der obersten Ebene, die die Suche identifiziert.
NameBeispielBeschreibung
Domainhotelscombined.comDie gesuchte Domäne.
IdentifiersKennung unten erklärt.Wird unten erklärt.
Kennung
Kennungen sind die eindeutigen Codes, die in der Domäne und anderen Domänen, die sie ebenfalls haben, zu finden sind.
NameBeispielBeschreibung
Typegoogle-analyticsDer Typ der Kennung Alle Typen anzeigen
Value454517Der Wert der Kennung – normalerweise der Code der Kennung wie eine IP-Adresse oder eine Konto-ID.
First1368860400000Das Datum, an dem wir diese Kennung erstmals in der Epoche ms erkannt haben.
Last1398860400000Das Datum, an dem wir diese Kennung zuletzt in Epoche ms erkannt haben.
MatchesSpiel unten erklärt.Erklären Sie es unten.
Übereinstimmen
Übereinstimmungen sind andere Domänen, die diese Kennung haben.
NameBeispielBeschreibung
Domaincom-hotel.comDer Domänenname der Übereinstimmung.
First1398860400000Das Datum, an dem wir dies erstmals in der übereinstimmenden Domäne in Epoche ms festgestellt haben.
Last1418860400000Das Datum, an dem wir dies zuletzt in der übereinstimmenden Domäne in Epoche ms festgestellt haben.
OverlaptrueWenn diese Domäne die Kennung gleichzeitig mit der Suchdomäne verwendet hat.
Codebeispiele

Hier sind Implementierungsbeispiele in verschiedenen Programmiersprachen zum Stellen von API-Anfragen:

var client = new HttpClient();
var request = new HttpRequestMessage
{
    Method = HttpMethod.Get,
    RequestUri = new Uri("https://api.builtwith.com/rv4/api.json" +
                        "?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com"),
};
using (var response = await client.SendAsync(request))
{
    response.EnsureSuccessStatusCode();
    var body = await response.Content.ReadAsStringAsync();
    Console.WriteLine(body);
}
import requests
url = "https://api.builtwith.com/rv4/api.json"
params = {
    'KEY': '00000000-0000-0000-0000-000000000000',
    'LOOKUP': 'wayfair.com'
}
response = requests.get(url, params=params)
print(response.json())
<?php
$url = "https://api.builtwith.com/rv4/api.json";
$params = array(
    'KEY' => '00000000-0000-0000-0000-000000000000',
    'LOOKUP' => 'wayfair.com'
);
$url_with_params = $url . '?' . http_build_query($params);
$response = file_get_contents($url_with_params);
$data = json_decode($response, true);
print_r($data);
?>
const https = require('https');
const url = 'https://api.builtwith.com/rv4/api.json?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com';
https.get(url, (res) => {
    let data = '';
    res.on('data', (chunk) => {
        data += chunk;
    });
    res.on('end', () => {
        console.log(JSON.parse(data));
    });
}).on('error', (err) => {
    console.log('Error: ' + err.message);
});
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
public class BuiltWithAPI {
    public static void main(String[] args) throws Exception {
        String url = "https://api.builtwith.com/rv4/api.json" +
                    "?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com";
        URL obj = new URL(url);
        HttpURLConnection con = (HttpURLConnection) obj.openConnection();
        con.setRequestMethod("GET");
        BufferedReader in = new BufferedReader(
            new InputStreamReader(con.getInputStream()));
        String inputLine;
        StringBuffer response = new StringBuffer();
        while ((inputLine = in.readLine()) != null) {
            response.append(inputLine);
        }
        in.close();
        System.out.println(response.toString());
    }
}
require 'net/http'
require 'uri'
require 'json'
uri = URI('https://api.builtwith.com/rv4/api.json')
uri.query = URI.encode_www_form({
    'KEY' => '00000000-0000-0000-0000-000000000000',
    'LOOKUP' => 'wayfair.com'
})
response = Net::HTTP.get_response(uri)
data = JSON.parse(response.body)
puts data
package main
import (
    "fmt"
    "io/ioutil"
    "net/http"
)
func main() {
    url := "https://api.builtwith.com/rv4/api.json?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com"
    resp, err := http.Get(url)
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()
    body, err := ioutil.ReadAll(resp.Body)
    if err != nil {
        panic(err)
    }
    fmt.Println(string(body))
}
curl -X GET
"https://api.builtwith.com/rv4/api.json?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com"
Spezielle Domänen

Wir führen für Sie zwei Listen, die Sie bei der Suche nach Domänen verwenden können: Ignorierlisten und BuiltWith-Suffixlisten.

Ignorierliste
TDies ist unsere eigene interne Liste von Domänen, die wir nicht indizieren. Sie sind entweder blockiert, enthalten zu viele irreführende Technologien oder zu viele Subdomänen mit benutzergenerierten Inhalten.

BuiltWith Suffixliste
Dies basiert auf der Öffentliche Suffixliste enthält aber viele zusätzliche Einträge für Unternehmen mit Subdomänen, die als Top-Level-Domänen betrachtet werden sollten. Diese Liste bietet uns eine bessere Sichtbarkeit für interne Websites, beispielsweise bringt sie northernbeaches.nsw.gov.au auf die oberste Ebene über nsw.gov.au.

Domänen ignorieren (XML, JSON or TXT)
https://api.builtwith.com/ignoresv1/api.json
Suffixdomänen (XML, JSON or TXT)
https://api.builtwith.com/suffixv1/api.json
Fehlercodes

Beachten Sie, dass Fehlermeldungen in diesem Format nicht garantiert werden können. Ihre Implementierung sollte auch Antwortcodes ungleich 200 als Fehler betrachten. Die Lookup-Eigenschaft ist null (JSON) oder wird nicht bereitgestellt (XML), wenn der Fehler serverbezogen ist. Alle potenziellen wohlgeformten Fehlercodes anzeigen.

Nutzungsbedingungen

Unser Allgemeine Geschäftsbedingungen decken die Verwendung aller unserer APIs ab.

Sie können die API grundsätzlich nutzen, um Ihr Produkt auf vielfältige Weise zu verbessern. Die einzige Einschränkung besteht darin, dass Sie die Daten nicht unverändert weiterverkaufen oder doppelte Funktionen für builtwith.com und die zugehörigen Dienste bereitstellen dürfen.