API de confianza construida con

Uso de crédito API

Necesitas acceso o inscribirse para utilizar la API BuiltWith. Después de iniciar sesión, su clave API real se mostrará aquí.

Introducción

La API BuiltWith Trust te ofrece una visión general del dominio de un sitio web, lo que te permite determinar su grado de confianza. Utilizamos atributos como el gasto en tecnología, el tiempo, las relaciones con otros sitios, la respuesta actual, las palabras clave y los métodos no divulgados para determinar la confiabilidad de un dominio.

El método de acceso general es el siguiente:
https://api.builtwith.com/trustv2/api.[xml|json]?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=[DOMAIN]

La respuesta se basa en un único y explicable Assessment.TrustLevel (Confiable, Neutral, Precaución, Se recomienda verificación, Contenido restringido, Alto riesgo o No verificado) con lenguaje sencillo Assessment.Reasons detrás de él, más un ContentSafety Bloquea contenido que detecta juegos de azar, contenido para adultos, estafas sospechosas y contenido de relleno (lorem ipsum), por lo que no es necesario decodificar nada a partir de números o valores booleanos para que lo entienda un ser humano o un agente de IA.

🤖 Mensaje del agente de IA
Reference https://api.builtwith.com/llms.txt and
https://raw.githubusercontent.com/builtwith/builtwith-ai-sdk/refs/heads/main/README.md
Add builtwith AI api to my app as a client. Make a call to the trust API for the domain hotelscombined.com
Autenticación

Debe proporcionar su clave API en cada búsqueda. Nuestros puntos finales son solo HTTPS, lo que proporciona cifrado de clave. Nunca exponga su clave API.

Su clave API es
00000000-0000-0000-0000-000000000000

Puede proporcionar su clave como un parámetro de cadena de consulta o como un encabezado HTTP:

  • Cadena de consulta: ?KEY=00000000-0000-0000-0000-000000000000
  • encabezado HTTP: Authorization: API 00000000-0000-0000-0000-000000000000
Obtener ejemplo de dominio

XML Obtener dominio
https://api.builtwith.com/trustv2/api.xml?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=hotelscombined.com

JSON Obtener dominio
https://api.builtwith.com/trustv2/api.json?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=builtwith.com

JSON Obtenga búsquedas en vivo adicionales
https://api.builtwith.com/trustv2/api.json?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=builtwith.com&LIVE=yes

Mejores prácticas

Si proporciona una lista de dominios recientemente registrados, utilice siempre el &LIVE=true opción ya que nuestra base de datos siempre devolverá No verificado para un dominio del que no tenga registro. Si está trabajando con una lista grande, proporcione &LIVE=true Solo si Assessment.TrustLevel devuelve 'Unverified' o 'VerificationRecommended', esto mantiene un alto rendimiento.

Ejemplos de código

A continuación se muestran ejemplos de implementación en diferentes lenguajes de programación para realizar solicitudes de API:

var client = new HttpClient();
var request = new HttpRequestMessage
{
    Method = HttpMethod.Get,
    RequestUri = new Uri("https://api.builtwith.com/trustv2/api.json" +
   "?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com&LIVE=yes"),
};
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/trustv2/api.json"
params = {
    'KEY': '00000000-0000-0000-0000-000000000000',
    'LOOKUP': 'wayfair.com',
    'LIVE': 'yes'
}
response = requests.get(url, params=params)
print(response.json())
<?php
$url = "https://api.builtwith.com/trustv2/api.json";
$params = array(
    'KEY' => '00000000-0000-0000-0000-000000000000',
    'LOOKUP' => 'wayfair.com',
    'LIVE' => 'yes'
);
$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/trustv2/api.json?KEY='+
  '00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com&LIVE=yes';
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/trustv2/api.json" +
"?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com&LIVE=yes";
        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/trustv2/api.json')
uri.query = URI.encode_www_form({
    'KEY' => '00000000-0000-0000-0000-000000000000',
    'LOOKUP' => 'wayfair.com',
    'LIVE' => 'yes'
})
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/trustv2/api.json?"+
"KEY=00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com&LIVE=yes"
    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/trustv2/api.json?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com&LIVE=yes"
Referencia
Parámetros de la solicitud GET
NombreEjemplosRequerido
KEY00000000-0000-0000-0000-000000000000
Esta es tu clave, úsala para realizar búsquedas.
LOOKUPcnn.com
hotelscombined.com
Trust API admite subdominios y páginas internas, pero solo mediante la función de búsqueda EN VIVO de Trust API.
LIVEyes
Realiza una consulta en tiempo real del sitio web en cuestión. Esto ralentiza la respuesta, pero completa LiveVerification y nos permite confirmar un resultado de 'VerificationRecommended' o 'Unverified'. Considere llamar a esta función solo cuando la respuesta que no sea en tiempo real sea uno de esos dos niveles de confianza, para mantener un alto rendimiento.
No
Objeto de respuesta
Result - El resultado es el objeto raíz devuelto por la búsqueda. Cada campo es autoexplicativo: los nombres indican exactamente lo que significan, los valores booleanos se leen como preguntas de sí/no (Es..., Tiene...), y los indicadores TrustLevel y ContentSafety se devuelven como cadenas/valores booleanos legibles en lugar de códigos numéricos, por lo que la respuesta se puede comprender y utilizar sin necesidad de consultar esta página.
NombreEjemploDescripción
Domainhotelscombined.comEl dominio/subdominio/URL que se buscó.
AssessmentAssessment explained belowEl veredicto general de confianza para el dominio, en lenguaje sencillo, y las razones por las que llegamos a esa conclusión.
ContentSafetyContentSafety explained belowMarcas de juegos de apuestas, contenido para adultos, sospecha de estafa y contenido de marcador de posición en vivo (lorem ipsum).
BusinessProfileBusinessProfile explained belowLo que nuestra base de datos sabe sobre el historial tecnológico de este dominio.
LiveVerificationLiveVerification explained belowSolo presente cuando la solicitud incluye &LIVE=yes. Resultado de la comprobación del sitio web en este momento.
Assessment
Assessment - El veredicto: un único Nivel de Confianza, sus razones y un resumen de una línea. Este es el primer campo que debe leer: ContentSafety/BusinessProfile/LiveVerification son las señales originales a partir de las cuales se creó, que se conservan en la respuesta para que pueda analizarlas en detalle o aplicar su propia política.
NombreEjemploDescripción
TrustLevelTrustedTrusted - Historial tecnológico consolidado y/o inversión significativa: un negocio real y en marcha.
Neutral - No se encontró nada sospechoso, pero tampoco ninguna señal positiva clara.
Caution - aparcado, mostrando contenido de marcador de posición u otras señales que merecen una mirada más atenta.
VerificationRecommended - Enlaces de afiliados registrados pero aún no se ha realizado ninguna verificación en vivo; vuelva a llamar con &LIVE=yes.
RestrictedContent - Se ha detectado tecnología de juegos de azar o contenido para adultos.
HighRisk - asociado con una estafa conocida.
Unverified - aún no hay registro para este dominio - vuelva a llamar con &LIVE=yes para una verificación en tiempo real.
Summaryhotelscombined.com is assessed as Trusted: Domain has an established technology history spanning over a year.Una explicación de una sola frase, lista para mostrar, sobre el Nivel de Confianza, útil para que aparezca directamente en una interfaz de usuario o en la respuesta de un agente de IA.
Reasons["Domain has an established technology history spanning over a year."]La(s) señal(es) específica(s) que motivaron la decisión sobre el nivel de confianza, explicadas en lenguaje sencillo.
ContentSafety
ContentSafety - Se ha comprobado con todas las tecnologías que hemos detectado en el dominio, con una excepción: PlaceholderContent solo informa sobre las tecnologías que forman parte de la pila tecnológica activa del sitio, por lo que un dominio que se ha convertido en un negocio real no se marca para siempre por contenido de marcador de posición antiguo.
NombreEjemploDescripción
GamblingfalseCierto si el dominio utiliza tecnología relacionada con los juegos de azar.
AdultContentfalseCierto si el dominio utiliza tecnología clasificada como contenido para adultos.
SuspectedScamfalseEsto es cierto si el dominio utiliza una tecnología que hemos identificado como una estafa conocida.
PlaceholderContentfalseVerdadero solo si el contenido de marcador de posición/lorem-ipsum forma parte de la pila tecnológica activa actual del dominio (no una detección obsoleta e histórica).
BusinessProfile
BusinessProfile - Lo que nuestra base de datos sabe sobre el historial tecnológico de este dominio. Si IsIndexed es falso, todos los demás campos de este bloque se dejan con su valor predeterminado y deben ignorarse.
NombreEjemploDescripción
IsIndexedtrueVerdadero si este dominio está en nuestra base de datos. Si es falso, trate el dominio como no verificado en lugar de no confiable.
DomainAgeDays1642Días desde nuestro primer registro tecnológico para este dominio.
LastCrawledDaysAgo3Días transcurridos desde la última vez que detectamos algún cambio tecnológico en este dominio.
PremiumTechnologyCount5Número de tecnologías premium (de mayor fiabilidad, de pago) detectadas actualmente en el sitio.
HasActiveTechnologyStacktrueVerdadero si el dominio actualmente tiene alguna tecnología que se esté rastreando activamente (en contraposición a solo tecnologías históricas).
IsParkedDomainfalseEsto es cierto si el dominio utiliza tecnología de página aparcada o si, por alguna otra razón, parece estar aparcado.
IsEcommerceSitetrueEsto es cierto si el sitio web utiliza tecnología de comercio electrónico (un carrito de compras, un proceso de pago o similar).
HasPaymentProcessingtrueEsto es cierto si el sitio web utiliza un proveedor o procesador de pagos.
HasAffiliateLinksfalseCierto si el sitio utiliza tecnología de publicidad de programas de afiliados.
IsEstablishedBusinesstrueCierto una vez que DomainAgeDays supera el año: un indicador de que "esto parece un negocio en funcionamiento, no algo recién creado".
EstimatedMonthlySpendUSD80Gasto mensual promedio estimado en tecnología en todo el sector, en USD.
LiveVerification
LiveVerification - Solo presente cuando la solicitud incluye &LIVE=yes. Resultado de comprobar el contenido actual del dominio en tiempo real, en lugar de basarnos en nuestro historial indexado.
NombreEjemploDescripción
LookupSucceededtrueFalso si la búsqueda en vivo falló (ver LookupError); los campos restantes en este bloque deben ignorarse cuando sea falso.
LookupErrorThe remote name could not be resolvedEl error se produce al intentar acceder al sitio web en directo si LookupSucceeded es falso.
IsParkedDomainfalseEsto es cierto si el sitio web en funcionamiento utiliza tecnología de página aparcada o si, por cualquier otro motivo, parece estar aparcado.
IsEcommerceSitetrueCierto si el sitio web en funcionamiento utiliza tecnología de comercio electrónico.
HasPaymentProcessingtrueEsto es cierto si el sitio web en funcionamiento utiliza un proveedor o procesador de pagos.
HasAffiliateLinkstrueEsto es cierto si el sitio web en funcionamiento utiliza tecnología de publicidad de afiliados.
EstimatedMonthlySpendUSD0Estimación del gasto mensual en tecnología basada en lo que está publicado en la página en este momento.
Bibliotecas API
Node.js NPM

https://www.npmjs.com/package/builtwith-api
NPM paquete por Zach Caceres - https://github.com/zcaceres/builtwith-api

Microsoft .NET Nuget

https://www.nuget.org/packages/BuiltWith/
C# paquete por BuiltWith Pty Ltd - https://github.com/builtwith/BuiltWith-C-Client-API

Ejemplos de código

https://github.com/builtwith/code-examples
Ejemplos de todos los puntos finales de API en varios idiomas

Dominios especiales

Mantenemos dos listas útiles para la búsqueda de dominios: listas de ignorados y listas de sufijos incorporados.

Lista de ignorados
TEsta es nuestra lista interna de dominios que no indexamos. Están bloqueados, contienen demasiadas tecnologías engañosas o demasiados subdominios con contenido generado por el usuario.

BuiltWith Lista de sufijos
Esto se basa en la Lista de sufijos públicos pero incluye muchas entradas adicionales para empresas con subdominios que deberían considerarse dominios de nivel superior. Esta lista nos proporciona una mejor visibilidad para los sitios web internos, por ejemplo, lleva a northernbeaches.nsw.gov.au al nivel superior sobre nsw.gov.au.

Ignorar dominios (XML, JSON or TXT)
https://api.builtwith.com/ignoresv1/api.json
Dominios de sufijo (XML, JSON or TXT)
https://api.builtwith.com/suffixv1/api.json
Códigos de error

Tenga en cuenta que no se pueden garantizar los mensajes de error en este formato; su implementación también debe considerar los códigos de respuesta distintos de 200 como errores. La propiedad Lookup será nula (json) o no se proporcionará (xml) si el error está relacionado con el servidor. Ver todos los posibles códigos de error bien formados.

Condiciones de uso

Nuestro términos estándar cubrir el uso de todas nuestras API.

En general, puede usar la API para mejorar su producto de diversas maneras. La única limitación es que no puede revender los datos tal cual ni proporcionar funcionalidad duplicada a builtwith.com y sus servicios asociados.