信任 API

API 信用使用情况

你需要 登录 或者 报名 使用 BuiltWith API. 登录后,您的实际 API 密钥将显示在这里。

介绍

BuiltWith Trust API 为您提供网站域名的概览,让您能够判断其可信度。我们使用技术投入、时间、与其他网站的关系、当前响应、关键字以及未公开的方法等属性来评估域名的可信度。

一般访问方法如下:
https://api.builtwith.com/trustv1/api.[xml|json]?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=[DOMAIN]

验证

每次查询时,您都必须提供 API 密钥。我们的端点仅支持 HTTPS,并提供密钥加密。 永远不要暴露您的 API 密钥。

您的 API 密钥是
00000000-0000-0000-0000-000000000000

获取域名示例

XML 获取域名
https://api.builtwith.com/trustv1/api.xml?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=hotelscombined.com

JSON 获取域名
https://api.builtwith.com/trustv1/api.json?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=builtwith.com

JSON 获取额外的实时查找
https://api.builtwith.com/trustv1/api.json?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=builtwith.com&LIVE=yes

最佳实践

如果您要提供新注册域名的列表,请始终使用 &LIVE=true o因为我们的数据库总是会返回可疑结果。如果您正在处理大型列表,请提供 &LIVE=true 仅当状态返回为“needLive”(json 中的 2)时 - 这才会提高吞吐量性能。

代码示例

以下是使用不同编程语言进行 API 请求的实现示例:

var client = new HttpClient();
var request = new HttpRequestMessage
{
    Method = HttpMethod.Get,
    RequestUri = new Uri("https://api.builtwith.com/trustv1/api.json" +
   "?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com.com&LIVE=yes&WORDS=gold,diamonds"),
};
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/trustv1/api.json"
params = {
    'KEY': '00000000-0000-0000-0000-000000000000',
    'LOOKUP': 'wayfair.com.com',
    'LIVE': 'yes',
    'WORDS': 'gold,diamonds'
}
response = requests.get(url, params=params)
print(response.json())
<?php
$url = "https://api.builtwith.com/trustv1/api.json";
$params = array(
    'KEY' => '00000000-0000-0000-0000-000000000000',
    'LOOKUP' => 'wayfair.com.com',
    'LIVE' => 'yes',
    'WORDS' => 'gold,diamonds'
);
$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/trustv1/api.json?KEY='+
  '00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com.com&LIVE=yes&WORDS=gold,diamonds';
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/trustv1/api.json" +
"?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com.com&LIVE=yes&WORDS=gold,diamonds";
        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/trustv1/api.json')
uri.query = URI.encode_www_form({
    'KEY' => '00000000-0000-0000-0000-000000000000',
    'LOOKUP' => 'wayfair.com.com',
    'LIVE' => 'yes',
    'WORDS' => 'gold,diamonds'
})
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/trustv1/api.json?"+
"KEY=00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com.com&LIVE=yes&WORDS=gold,diamonds"
    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/trustv1/api.json?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com.com&LIVE=yes&WORDS=gold,diamonds"
参考
获取请求参数
姓名示例必需的
KEY00000000-0000-0000-0000-000000000000
这是您的密钥,使用它进行查找。
是的
LOOKUPcnn.com
hotelscombined.com
Trust API 支持子域和内部页面,但仅使用 Trust API 的 LIVE 查找功能。
是的
LIVEyes
对相关网站进行实时查询。这会降低响应速度。状态为“needLive”的结果需要使用 LIVE 选项来确定该网站是否可疑。实时查询会降低 API 的响应速度,因此,如果非实时查询的响应状态为“needLive”,则应考虑调用此功能。
响应对象
Result - 结果是查找返回的根对象
姓名例子描述
Domainhotelscombined.com所查找的域/子域/url。
Statusok可疑(json 中的 1)- 该网站因我们发现的某个属性而可疑
ok(json 中为 0)- 我们认为该网站没有问题
needLive(json 中的 2)- 使用以下命令再次查找此网站 &LIVE=yes 参数以获得更详细的响应。
LiveRecordLiveRecord explained below对域进行实时查找的结果。
DBRecordDBRecord 解释如下。来自我们数据库的结果。
DBRecord
DBRecord - 这包含在我们的数据库中针对该域执行查找的结果。
姓名例子描述
EarliestRecord1436584145该域的最早技术记录的纪元秒时间 - 首先检查 DBIndexed 是否为真。
LatestUpdate1543584145自我们更新一项技术以来,经过了纪元秒的时间 - 首先检查了 DBIndexed 是否为真。
PremiumTechs5我们在网站上发现的优质技术的数量。
LiveTechsfalse如果网站当前跟踪任何实时技术,则为 true。
AffiliateLinksfalse如果该网站目前有任何联属计划广告系统。
PaymentOptionstrue如果该网站有支付提供商,则提及支付系统。
Ecommercetrue如果该网站具有电子商务技术或购物车/购买链接。
Parkedfalse如果站点正在使用任何停放技术或提及停放。
Spend80整个域的平均每月支出。
Establishedtrue如果根据我们的技术索引,该网站已存在 1 年以上。
DBIndexedtrue如果该网站在我们的数据库中 - 如果是假的,则该网站是可疑的。
LiveRecord
LiveRecord - 这包含在域上执行实时查找的结果。
姓名例子描述
LookupErrorThe remote name could not be resolved尝试查找网站时出现的任何错误。
WebsiteErrorWebsite Lookup Failed与 LookupError 类似,但可能是空白的 HTML 响应。
Spend0从网页技术中发现的平均每月支出。
Parkedfalse如果站点正在使用任何停放技术或提及停放。
AffiliateLinkstrue如果该网站有联属广告。
PaymentOptionstrue如果该网站有支付提供商,则提及支付系统。
Ecommercetrue如果该网站具有电子商务技术或购物车/购买链接。
特殊域名

我们维护两个列表,供您在查找域名时使用。“忽略”列表和“BuiltWith 后缀”列表。

忽略列表
T这是我们内部不予索引的域名列表。这些域名要么被屏蔽,要么包含太多误导性技术,要么包含太多包含用户生成内容的子域名。

BuiltWith 后缀列表
这是基于 公共后缀列表 但对于拥有子域名的公司来说,还包括许多额外的条目,这些子域名应被视为顶级域名。 此列表为我们提供了内部网站的更好可见性,例如,它将 northernbeaches.nsw.gov.au 置于 nsw.gov.au 之上。

忽略域 (XML, JSON or TXT)
https://api.builtwith.com/ignoresv1/api.json
后缀域 (XML, JSON or TXT)
https://api.builtwith.com/suffixv1/api.json
错误代码

请注意,这种格式的错误消息无法保证,您的实现也应该将非 200 响应代码视为错误。 如果错误与服务器相关,则 Lookup 属性将为 null(json)或未提供(xml)。 查看所有潜在的格式正确的错误代码.

使用条款

我们的 标准条款 涵盖我们所有 API 的使用。

一般来说,您可以使用 API 以多种方式增强您的产品。唯一的限制是您不能按原样转售数据,也不能向builtwith.com及其相关服务提供重复的功能。