Использование API-кредита

Вам нужно авторизоваться или зарегистрироваться использовать BuiltWith API. После входа в систему здесь будет отображен ваш актуальный ключ API.

Введение

API BuiltWith Domain предоставляет доступ к технологической информации веб-сайта в формате XML, JSON, CSV и XLSX, включая всю техническую информацию, найденную в подробных поисковых запросах на builtwith.com, а также дополнительные метаданные (при наличии).

Аутентификация

Вам необходимо указывать свой ключ API при каждом поиске. Наши конечные точки работают только по протоколу HTTPS, обеспечивая шифрование ключей. Никогда не раскрывайте свой ключ API.

Ваш ключ API
00000000-0000-0000-0000-000000000000

Получить пример домена
XML Формат
https://api.builtwith.com/v22/api.xml?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=hotelscombined.com
JSON Формат
https://api.builtwith.com/v22/api.json?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=hotelscombined.com
CSV Формат
https://api.builtwith.com/v22/api.csv?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=hotelscombined.com
Пример получения нескольких доменов
CSV-файл с несколькими доменами (до 16)
https://api.builtwith.com/v22/api.json?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=hotelscombined.com,builtwith.com
CSV с рабочими листами по доменам
https://api.builtwith.com/v22/api.csv?KEY=00000000-0000-0000-0000-000000000000&LOOKUP=hotelscombined.com,builtwith.com
Высокопроизводительные поиски
Сверхбыстрый высокопроизводительный API
https://api.builtwith.com/v22/api.json?KEY=00000000-0000-0000-0000-000000000000&HIDETEXT=yes&NOMETA=yes&NOPII=yes&NOATTR=yes&LOOKUP=site1.com,site2.com,site3.com,site4.com,site5.com,site6.com,site7.com,site8.com,site9.com,site10.com,site11.com,site12.com,site13.com,site14.com,site15.com,site16.com
  • 16 Только корневые домены или поддомены За поиск
  • Текст, метаданные, атрибуты, контакты — всё удалено.
  • Удаляет поиск результатов в реальном времени, если их нет в нашей базе данных

Для еще более высокой пропускной способности связаться с нами о специализированных решениях для конечных точек.

Массовый поиск доменов

Вы можете добавить список корневых доменов в систему массового поиска вместо выполнения GET-запросов.

Примеры кода

Вот примеры реализации на разных языках программирования для выполнения API-запросов:

var client = new HttpClient();
var request = new HttpRequestMessage
{
    Method = HttpMethod.Get,
    RequestUri = new Uri("https://api.builtwith.com/v22/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/v22/api.json"
params = {
    "KEY": "00000000-0000-0000-0000-000000000000",
    "LOOKUP": "wayfair.com"
}
response = requests.get(url, params=params)
response.raise_for_status()
print(response.text)
<?php
$url = "https://api.builtwith.com/v22/api.json?KEY=
                        00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com";
$curl = curl_init();
curl_setopt_array($curl, [
    CURLOPT_URL => $url,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        "Accept: application/json"
    ]
]);
$response = curl_exec($curl);
$httpCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($httpCode === 200) {
    echo $response;
} else {
    echo "Error: HTTP " . $httpCode;
}
?>
const url = "https://api.builtwith.com/v22/api.json?KEY=" +
                        "00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com";
fetch(url)
    .then(response => {
        if (!response.ok) {
            throw new Error(`HTTP error! status: ${response.status}`);
        }
        return response.text();
    })
    .then(data => {
        console.log(data);
    })
    .catch(error => {
        console.error('Error:', error);
    });
import java.net.URI;
import java.net.http.HttpClient; import java.net.http.HttpRequest; import java.net.http.HttpResponse; public class ApiExample { public static void main(String[] args) throws Exception { String url = "https://api.builtwith.com/v22/api.json?KEY= 00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com"; HttpClient client = HttpClient.newHttpClient(); HttpRequest request = HttpRequest.newBuilder() .uri(URI.create(url)) .GET() .build(); HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString()); if (response.statusCode() == 200) { System.out.println(response.body()); } else { System.err.println("Error: HTTP " + response.statusCode()); } } }
require 'net/http'
require 'uri'
url = URI('https://api.builtwith.com/v22/api.json?KEY=
                        00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com')
begin
  response = Net::HTTP.get_response(url)
  if response.code == '200'
    puts response.body
  else
    puts "Error: HTTP #{response.code}"
  end
rescue StandardError => e
  puts "Error: #{e.message}"
end
package main
import (
    "fmt"
    "io"
    "net/http"
)
func main() {
    url := "https://api.builtwith.com/v22/api.json?KEY=
                        00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com"
    resp, err := http.Get(url)
    if err != nil {
        fmt.Printf("Error: %v\n", err)
        return
    }
    defer resp.Body.Close()
    if resp.StatusCode != http.StatusOK {
        fmt.Printf("Error: HTTP %d\n", resp.StatusCode)
        return
    }
    body, err := io.ReadAll(resp.Body)
    if err != nil {
        fmt.Printf("Error reading response: %v\n", err)
        return
    }
    fmt.Println(string(body))
}
curl -X GET \
  "https://api.builtwith.com/v22/api.json?KEY=
                        00000000-0000-0000-0000-000000000000&LOOKUP=wayfair.com" \
  -H "Accept: application/json"
# Alternative with URL parameters separated for readability:
curl -G \
  "https://api.builtwith.com/v22/api.json" \
  -d "KEY=00000000-0000-0000-0000-000000000000" \
  -d "LOOKUP=wayfair.com" \
  -H "Accept: application/json"
API-библиотеки
Справочник API
Параметры запроса GET
ИмяПримерыНеобходимый
KEY00000000-0000-0000-0000-000000000000
Это ваш ключ, используйте его для поиска.
Да
LOOKUPcnn.com
example.com
Все поисковые запросы должны выполняться в корневом домене.
Множественный поиск: Анализ до 16 доменов в формате CSV (cnn.com,about.com,builtwith.com)
Да
HIDETEXTyes
Скрыть поля описания технологии, ссылки, тега и категории.
Нет
HIDEDLyes
Скрыть описание технологии и поля ссылок (сохранить теги и категории).
Нет
LIVEONLYyes
Возвращайте только технологии, которые считаются действующими.
Нет
TRUSTyes
То же, что и дополнительный Доверять API вызов - использует дополнительный API-кредит.
Нет
NOMETAyes
Метаданные (адреса, имена и т. д.) не возвращаются. Повышает производительность.
Нет
NOPIIyes
Удалить имена и адреса электронной почты людей. Персональные данные для ЕС и Калифорнии автоматически удаляются.
Нет
NOATTRyes
Данные об атрибутах не возвращаются. Повышает производительность.
Нет
Объект ответа
Format: Result -> Paths[Path -> Technologies[Technology]],Meta,Attributes
Результаты
ИмяПримерОписание
Lookuphotelscombined.comДомен, который был найден.
ResultПоиск технологийОбъясняется ниже.
IsDBTrue/False/MisleadingЕсли поиск производился по базе данных или посещенному сайту, или если профиль «вводит в заблуждение» (сайт с пользовательским контентом).
Spend4364Средние ежемесячные расходы на технологии в долларах США на основе обнаруженных технологий.
SalesRevenue29853826Расчетный ежемесячный доход от продаж в долларах США для электронной коммерции (0 для неэлектронной коммерции).
SpendHistory[{"D":1140042000000,"S":100},...]Массив дат/расходов по всему охвату домена — максимум 60 периодов между первым/последним индексом.
MetaМета-объект поясняется нижеВсе метаданные, связанные с этим доменом.
AttributesОбъект «Атрибуты» поясняется ниже.Все атрибутивные данные, связанные с этим доменом.
FirstIndexed2012-07-29T14:00:00ZСамая ранняя точка индекса для всего домена.
LastIndexed2014-07-29T14:00:00ZСамая последняя точка индекса для всего домена.
Paths
ИмяПримерОписание
Domain disney.comКорневой домен
UrlddЗначение «dd» означает данные пути, построенные из нескольких подстраниц (поиск только по домену).
SubDomainblogПоддомен (например, «блог» + «disney.com» = профиль blog.disney.com).
FirstIndexed2012-07-29T14:00:00ZСамая ранняя индексная точка для этого пути.
LastIndexed2014-07-29T14:00:00ZСамая последняя индексная точка для этого пути.
Технологии
ИмяПримерОписание
ИмяTwitter PlatformНазвание найденной технологии.
ParentJQueryНазвание родительской технологии (для версий и т. д.).
ОписаниеНа этой странице встроена платформа Twitter...Описание технологии находится на странице.
Linkhttps://twitter.com/about/resourcesСсылка на сайт технологии.
IsPremiumnoЭто платная технология? Ценности: да, нет, возможно.
TagjavascriptБазовая категория. Видеть индекс категорий.
CategoriesSocial SDKМассив подкатегорий для тега.
FirstDetected2012-07-29T14:00:00ZТехнология Date впервые обнаружена BuiltWith.
LastDetected2018-04-30T14:00:00ZДата последнего обнаружения технологии. Видеть обновить конечную точку.
Meta
ИмяПримерОписание
ARank2323213Page Rank от 1 до 100 000 000
QRank12121Рейтинг трафика страницы Transco от 1 до 1 000 000
Majestic23231Величественный ранг от 1 до 1 000 000
Umbrella6423Рейтинг трафика Umbrella Global Router от 1 до 1 000 000
CompanyNameRodale Inc.Действительное зарегистрированное название компании
CitySan FranciscoДопустимое название города для поддерживаемых стран
Postcode94105Действительный почтовый индекс
StateCAДействительный штат/страна
CountryUSКод страны ISO 3166-1 альфа-2
VerticalTechnology and ComputingОдин из эти категории или пустым.
[Telephones]+1-650-745-0728Действительные международные телефонные номера
[Emails]support@site.comДействительные адреса электронной почты домена
[Social]https://x.com/websiteСоциальное присутствие
[Names]Name→Joe→Joe Bloggs
Level→CEO
Email→→joe.bloggs@twitter.com
Имена, адреса электронной почты и должности.
Attributes
ИмяПримерОписание
MJRank2312Величественный ранг до 1 м
Followers1000Подписчики бренда - Группы (1000 = 1000+, но <2000)..
ProductCount40Артикул Количество продуктов
Response Headers
ИмяПримерОписание
X-API-CREDITS-AVAILABLE322442Поиск кредитов, доступных по вашему идентификатору.
X-API-CREDITS-USED3442Поиск использованных вами кредитов.
X-API-CREDITS-REMAINING34242Осталось кредитов для поиска.
X-RATELIMIT-CURRENT-CONCURRENT2Количество одновременных запросов, которые вы делаете.
X-RATELIMIT-CURRENT-PERSECOND2Количество запросов в секунду, которые вы делаете
X-RATELIMIT-LIMIT-CONCURRENT8Максимальная скорость одновременных операций до 429 ошибок.
X-RATELIMIT-LIMIT-PERSECOND10Максимальное количество запросов в секунду до 429 ошибок.
Ограничение скорости

Максимальное количество одновременных запросов — 8, в секунду — не более 10 запросов. Пожалуйста, убедитесь, что это значение ниже, иначе возникнет 429 ошибок.

Для снятия ограничения скорости связаться с нами о специализированных решениях для конечных точек.

Rate Limit Error Format{"error":"Rate limit exceeded","maxConcurrentRequests":8,"maxRequestsPerSecond":1,"currentConcurrentRequests":0,"currentRequestsInWindow":1,"retryAfterSeconds":1}
Специальные домены

Мы ведём два списка, которые пригодятся вам при поиске доменов: списки игнорирования и списки BuiltWith Suffix.

Список игнорирования
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 и связанным с ним сервисам.