schemas
Interfaces
BuiltWithClient
Defined in: schemas.ts:480
The BuiltWith API client. Created via createClient().
All methods return validated, typed responses when using JSON format, or raw strings for XML/TXT/CSV/TSV formats.
Example
import { createClient } from "builtwith-api";
const client = createClient(process.env.BUILTWITH_API_KEY!);
const profile = await client.free("example.com");Methods
companyToUrl()
companyToUrl(companyName, params?): Promise<string | object[]>;Defined in: schemas.ts:516
Find domains associated with a company name.
Parameters
companyName
string
Company name to search.
params?
Optional TLD filter and result count.
amount?
number = ...
tld?
string = ...
Returns
Promise<string | object[]>
domain()
domain(lookup, params?): Promise<
| string
| {
Errors: string[];
Results: object[];
}>;Defined in: schemas.ts:488
Detailed technology profile for one or more domains.
Parameters
lookup
Single domain or array of up to 16 domains.
string | string[]
params?
Optional filters (hide fields, date ranges, etc.).
firstDetectedRange?
string = ...
hideAll?
boolean = ...
hideDescriptionAndLinks?
boolean = ...
lastDetectedRange?
string = ...
noAttributeData?
boolean = ...
noMetaData?
boolean = ...
noPII?
boolean = ...
onlyLiveTechnologies?
boolean = ...
Returns
Promise< | string | { Errors: string[]; Results: object[]; }>
domainLive()
domainLive(lookup): Promise<
| string
| {
Errors: string[];
Results: object[];
}>;Defined in: schemas.ts:518
Live technology lookup — scans the domain in real time.
Parameters
lookup
string
Returns
Promise< | string | { Errors: string[]; Results: object[]; }>
free()
free(lookup): Promise<
| string
| {
domain: string;
first: number;
groups: object[];
last: number;
}>;Defined in: schemas.ts:482
Free lookup — basic technology profile for a single domain.
Parameters
lookup
string
Returns
Promise< | string | { domain: string; first: number; groups: object[]; last: number; }>
keywords()
keywords(lookup): Promise<
| string
| {
Keywords: object[];
}>;Defined in: schemas.ts:504
Get SEO keywords associated with one or more domains.
Parameters
lookup
Single domain or array of up to 16 domains.
string | string[]
Returns
Promise< | string | { Keywords: object[]; }>
lists()
lists(technology, params?): Promise<
| string
| {
NextOffset: string;
Results: object[];
}>;Defined in: schemas.ts:494
List domains using a specific technology.
Parameters
technology
string
Technology name (e.g. "Shopify", "React").
params?
Optional pagination and filtering.
includeMetaData?
boolean = ...
offset?
string = ...
since?
string = ...
Returns
Promise< | string | { NextOffset: string; Results: object[]; }>
product()
product(query): Promise<
| string
| {
credits: number;
is_more: boolean;
limit: number;
next_page: string;
page: number;
query: string;
remaining: number;
results: number;
shop_count: number;
shops: object[];
used: number;
used_this_query: number;
}>;Defined in: schemas.ts:532
Search for products across e-commerce sites.
Parameters
query
string
Returns
Promise< | string | { credits: number; is_more: boolean; limit: number; next_page: string; page: number; query: string; remaining: number; results: number; shop_count: number; shops: object[]; used: number; used_this_query: number; }>
recommendations()
recommendations(lookup): Promise<string | object[]>;Defined in: schemas.ts:528
Get technology recommendations for a domain.
Parameters
lookup
string
Returns
Promise<string | object[]>
redirects()
redirects(lookup): Promise<
| string
| {
Inbound: object[];
Lookup: string;
Outbound: object[];
}>;Defined in: schemas.ts:530
Get inbound and outbound redirect chains for a domain.
Parameters
lookup
string
Returns
Promise< | string | { Inbound: object[]; Lookup: string; Outbound: object[]; }>
relationships()
relationships(lookup): Promise<
| string
| {
Errors: string[];
max_per_page: number;
more_results: boolean;
next_skip: number;
Relationships: object[];
results: number;
}>;Defined in: schemas.ts:499
Find related domains via shared identifiers (analytics IDs, ad accounts, etc.).
Parameters
lookup
Single domain or array of up to 16 domains.
string | string[]
Returns
Promise< | string | { Errors: string[]; max_per_page: number; more_results: boolean; next_skip: number; Relationships: object[]; results: number; }>
tags()
tags(lookup): Promise<string | object[]>;Defined in: schemas.ts:526
Get tracking and analytics tags found on a domain.
Parameters
lookup
string
Returns
Promise<string | object[]>
trends()
trends(technology, params?): Promise<
| string
| {
Tech: {
categories: string[];
coverage: {
expired: number;
hundred_k: number;
live: number;
milly: number;
ten_k: number;
};
description: string;
icon: string;
is_premium: string;
link: string;
name: string;
tag: string;
trends_link: string;
};
}>;Defined in: schemas.ts:510
Technology adoption trends and coverage data.
Parameters
technology
string
Technology name to look up.
params?
Optional date filter.
date?
string = ...
Returns
Promise< | string | { Tech: { categories: string[]; coverage: { expired: number; hundred_k: number; live: number; milly: number; ten_k: number; }; description: string; icon: string; is_premium: string; link: string; name: string; tag: string; trends_link: string; }; }>
trust()
trust(lookup, params?): Promise<
| string
| {
DBRecord: {
AffiliateLinks: boolean;
DBIndexed: boolean;
EarliestRecord: number;
Ecommerce: boolean;
Established: boolean;
LatestUpdate: number;
LiveTechs: boolean;
Parked: boolean;
PaymentOptions: boolean;
PremiumTechs: number;
Spend: number;
};
Domain: string;
LiveRecord: | {
[key: string]: unknown;
}
| null;
Status: number;
}>;Defined in: schemas.ts:524
Trust and verification score for a domain.
Parameters
lookup
string
Domain to look up.
params?
Optional keywords and live analysis toggle.
live?
boolean = ...
words?
string = ...
Returns
Promise< | string | { DBRecord: { AffiliateLinks: boolean; DBIndexed: boolean; EarliestRecord: number; Ecommerce: boolean; Established: boolean; LatestUpdate: number; LiveTechs: boolean; Parked: boolean; PaymentOptions: boolean; PremiumTechs: number; Spend: number; }; Domain: string; LiveRecord: | { [key: string]: unknown; } | null; Status: number; }>
Type Aliases
ClientOptions
type ClientOptions = z.infer<typeof ClientOptionsSchema>;Defined in: schemas.ts:27
Options passed to createClient.
Example
const client = createClient(API_KEY, { responseFormat: "xml" });CompanyToUrlParams
type CompanyToUrlParams = z.infer<typeof CompanyToUrlParamsSchema>;Defined in: schemas.ts:99
Optional parameters for the Company-to-URL API endpoint.
Example
await client.companyToUrl("Google", { tld: "com", amount: 5 });CompanyToUrlResponse
type CompanyToUrlResponse = z.infer<typeof CompanyToUrlResponseSchema>;Defined in: schemas.ts:348
Response from the Company-to-URL API — domains associated with a company name.
DomainParams
type DomainParams = z.infer<typeof DomainParamsSchema>;Defined in: schemas.ts:54
Optional parameters for the Domain API endpoint.
Example
await client.domain("example.com", {
onlyLiveTechnologies: true,
hideAll: true,
});DomainResponse
type DomainResponse = z.infer<typeof DomainResponseSchema>;Defined in: schemas.ts:235
Response from the Domain API — detailed technology profile with metadata and attributes.
FreeResponse
type FreeResponse = z.infer<typeof FreeResponseSchema>;Defined in: schemas.ts:148
Response from the Free API — basic technology profile for a single domain.
KeywordsResponse
type KeywordsResponse = z.infer<typeof KeywordsResponseSchema>;Defined in: schemas.ts:306
Response from the Keywords API — SEO keywords associated with domains.
ListsParams
type ListsParams = z.infer<typeof ListsParamsSchema>;Defined in: schemas.ts:70
Optional parameters for the Lists API endpoint.
Example
await client.lists("Shopify", { since: "2024-01-01" });ListsResponse
type ListsResponse = z.infer<typeof ListsResponseSchema>;Defined in: schemas.ts:262
Response from the Lists API — domains using a specific technology.
ProductResponse
type ProductResponse = z.infer<typeof ProductResponseSchema>;Defined in: schemas.ts:462
Response from the Product API — e-commerce product search results.
RecommendationsResponse
type RecommendationsResponse = z.infer<typeof RecommendationsResponseSchema>;Defined in: schemas.ts:408
Response from the Recommendations API — suggested technologies for a domain.
RedirectsResponse
type RedirectsResponse = z.infer<typeof RedirectsResponseSchema>;Defined in: schemas.ts:429
Response from the Redirects API — inbound and outbound redirect chains.
RelationshipsResponse
type RelationshipsResponse = z.infer<typeof RelationshipsResponseSchema>;Defined in: schemas.ts:294
Response from the Relationships API — domains sharing identifiers (analytics IDs, ad accounts, etc.).
ResponseFormat
type ResponseFormat = z.infer<typeof ResponseFormatSchema>;Defined in: schemas.ts:13
Response format returned by the BuiltWith API.
"json"— parsed and validated (default)"xml"/"txt"/"csv"/"tsv"— returned as raw strings
TagsResponse
type TagsResponse = z.infer<typeof TagsResponseSchema>;Defined in: schemas.ts:388
Response from the Tags API — tracking and analytics tags found on a domain.
TrendsParams
type TrendsParams = z.infer<typeof TrendsParamsSchema>;Defined in: schemas.ts:84
Optional parameters for the Trends API endpoint.
Example
await client.trends("jQuery", { date: "2024-06" });TrendsResponse
type TrendsResponse = z.infer<typeof TrendsResponseSchema>;Defined in: schemas.ts:329
Response from the Trends API — technology adoption coverage data.
TrustParams
type TrustParams = z.infer<typeof TrustParamsSchema>;Defined in: schemas.ts:114
Optional parameters for the Trust API endpoint.
Example
await client.trust("example.com", { words: "shop,buy", live: true });TrustResponse
type TrustResponse = z.infer<typeof TrustResponseSchema>;Defined in: schemas.ts:372
Response from the Trust API — domain verification and trust score.
Variables
ClientOptionsSchema
const ClientOptionsSchema: ZodObject<{
responseFormat: ZodOptional<ZodEnum<{
csv: "csv";
json: "json";
tsv: "tsv";
txt: "txt";
xml: "xml";
}>>;
}, $strict>;Defined in: schemas.ts:16
Validation schema for ClientOptions.
CompanyToUrlParamsSchema
const CompanyToUrlParamsSchema: ZodObject<{
amount: ZodOptional<ZodNumber>;
tld: ZodOptional<ZodString>;
}, $strict>;Defined in: schemas.ts:87
Validation schema for CompanyToUrlParams.
CompanyToUrlResponseSchema
const CompanyToUrlResponseSchema: ZodArray<ZodObject<{
BuiltWithRank: ZodNumber;
City: ZodString;
CompanyName: ZodString;
Country: ZodString;
Domain: ZodString;
PageRank: ZodNumber;
Parked: ZodBoolean;
Postcode: ZodString;
Socials: ZodArray<ZodString>;
Spend: ZodNumber;
State: ZodString;
}, $strict>>;Defined in: schemas.ts:332
Validation schema for CompanyToUrlResponse.
DomainParamsSchema
const DomainParamsSchema: ZodObject<{
firstDetectedRange: ZodOptional<ZodString>;
hideAll: ZodOptional<ZodBoolean>;
hideDescriptionAndLinks: ZodOptional<ZodBoolean>;
lastDetectedRange: ZodOptional<ZodString>;
noAttributeData: ZodOptional<ZodBoolean>;
noMetaData: ZodOptional<ZodBoolean>;
noPII: ZodOptional<ZodBoolean>;
onlyLiveTechnologies: ZodOptional<ZodBoolean>;
}, $strict>;Defined in: schemas.ts:33
Validation schema for DomainParams.
DomainResponseSchema
const DomainResponseSchema: ZodObject<{
Errors: ZodArray<ZodString>;
Results: ZodArray<ZodObject<{
Attributes: ZodObject<{
AdobeTags: ZodNumber;
CDimensions: ZodNumber;
CGoals: ZodNumber;
CMetrics: ZodNumber;
GTMTags: ZodNumber;
MJRank: ZodNumber;
MJTLDRank: ZodNumber;
QubitTags: ZodNumber;
RefIP: ZodNumber;
RefSN: ZodNumber;
Sitemap: ZodNumber;
TealiumTags: ZodNumber;
}, $strict>;
FirstIndexed: ZodNumber;
LastIndexed: ZodNumber;
Lookup: ZodString;
Meta: ZodObject<{
ARank: ZodNumber;
City: ZodString;
CompanyName: ZodString;
Country: ZodString;
Emails: ZodArray<ZodString>;
Majestic: ZodNumber;
Names: ZodArray<ZodObject<{
Email: ZodString;
Level: ZodString;
Name: ZodString;
Type: ZodNumber;
}, $strict>>;
Postcode: ZodString;
QRank: ZodNumber;
Social: ZodArray<ZodString>;
State: ZodString;
Telephones: ZodArray<ZodString>;
Vertical: ZodString;
}, $strict>;
Result: ZodObject<{
IsDB: ZodString;
Paths: ZodArray<ZodObject<{
Domain: ZodString;
FirstIndexed: ZodNumber;
LastIndexed: ZodNumber;
SubDomain: ZodString;
Technologies: ZodArray<...>;
Url: ZodString;
}, $strict>>;
Spend: ZodNumber;
SpendHistory: ZodArray<ZodObject<{
D: ZodNumber;
S: ZodNumber;
}, $strict>>;
}, $strict>;
SalesRevenue: ZodNumber;
}, $strict>>;
}, $strict>;Defined in: schemas.ts:210
Validation schema for DomainResponse.
FreeResponseSchema
const FreeResponseSchema: ZodObject<{
domain: ZodString;
first: ZodNumber;
groups: ZodArray<ZodObject<{
categories: ZodArray<ZodObject<{
dead: ZodNumber;
latest: ZodNumber;
live: ZodNumber;
name: ZodString;
oldest: ZodNumber;
}, $strict>>;
dead: ZodNumber;
latest: ZodNumber;
live: ZodNumber;
name: ZodString;
oldest: ZodNumber;
}, $strict>>;
last: ZodNumber;
}, $strict>;Defined in: schemas.ts:124
Validation schema for FreeResponse.
KeywordsResponseSchema
const KeywordsResponseSchema: ZodObject<{
Keywords: ZodArray<ZodObject<{
Domain: ZodString;
Keywords: ZodArray<ZodString>;
}, $strict>>;
}, $strict>;Defined in: schemas.ts:297
Validation schema for KeywordsResponse.
ListsParamsSchema
const ListsParamsSchema: ZodObject<{
includeMetaData: ZodOptional<ZodBoolean>;
offset: ZodOptional<ZodString>;
since: ZodOptional<ZodString>;
}, $strict>;Defined in: schemas.ts:57
Validation schema for ListsParams.
ListsResponseSchema
const ListsResponseSchema: ZodObject<{
NextOffset: ZodString;
Results: ZodArray<ZodObject<{
A: ZodOptional<ZodNumber>;
Country: ZodOptional<ZodString>;
D: ZodString;
E: ZodOptional<ZodNumber>;
F: ZodOptional<ZodNumber>;
FD: ZodOptional<ZodNumber>;
FI: ZodOptional<ZodNumber>;
LD: ZodOptional<ZodNumber>;
LI: ZodOptional<ZodNumber>;
LOS: ZodOptional<ZodArray<ZodString>>;
M: ZodOptional<ZodNumber>;
Q: ZodOptional<ZodNumber>;
R: ZodOptional<ZodNumber>;
S: ZodOptional<ZodNumber>;
SKU: ZodOptional<ZodNumber>;
U: ZodOptional<ZodNumber>;
}, $strict>>;
}, $strict>;Defined in: schemas.ts:238
Validation schema for ListsResponse.
MultiLookupSchema
const MultiLookupSchema: ZodUnion<readonly [ZodString, ZodArray<ZodString>]>;Defined in: schemas.ts:117
ProductResponseSchema
const ProductResponseSchema: ZodObject<{
credits: ZodNumber;
is_more: ZodBoolean;
limit: ZodNumber;
next_page: ZodString;
page: ZodNumber;
query: ZodString;
remaining: ZodNumber;
results: ZodNumber;
shop_count: ZodNumber;
shops: ZodArray<ZodObject<{
Domain: ZodString;
Products: ZodArray<ZodObject<{
FirstIndexed: ZodString;
Indexed: ZodString;
Price: ZodNumber;
Title: ZodString;
Url: ZodString;
}, $strict>>;
Spend: ZodNumber;
Type: ZodNumber;
}, $strict>>;
used: ZodNumber;
used_this_query: ZodNumber;
}, $strict>;Defined in: schemas.ts:432
Validation schema for ProductResponse.
RecommendationsResponseSchema
const RecommendationsResponseSchema: ZodArray<ZodObject<{
Compiled: ZodString;
Domain: ZodString;
Recommendations: ZodArray<ZodObject<{
categories: ZodArray<ZodString>;
link: ZodString;
match: ZodNumber;
name: ZodString;
stars: ZodNumber;
tag: ZodString;
}, $strict>>;
}, $strict>>;Defined in: schemas.ts:391
Validation schema for RecommendationsResponse.
RedirectsResponseSchema
const RedirectsResponseSchema: ZodObject<{
Inbound: ZodArray<ZodObject<{
Domain: ZodString;
FirstDetected: ZodString;
LastDetected: ZodString;
}, $strict>>;
Lookup: ZodString;
Outbound: ZodArray<ZodObject<{
Domain: ZodString;
FirstDetected: ZodString;
LastDetected: ZodString;
}, $strict>>;
}, $strict>;Defined in: schemas.ts:411
Validation schema for RedirectsResponse.
RelationshipsResponseSchema
const RelationshipsResponseSchema: ZodObject<{
Errors: ZodArray<ZodString>;
max_per_page: ZodNumber;
more_results: ZodBoolean;
next_skip: ZodNumber;
Relationships: ZodArray<ZodObject<{
Domain: ZodString;
Identifiers: ZodArray<ZodObject<{
First: ZodNumber;
Last: ZodNumber;
Matches: ZodArray<ZodObject<{
Domain: ...;
First: ...;
Last: ...;
Overlap: ...;
}, $strict>>;
Type: ZodString;
Value: ZodString;
}, $strict>>;
}, $strict>>;
results: ZodNumber;
}, $strict>;Defined in: schemas.ts:265
Validation schema for RelationshipsResponse.
ResponseFormatSchema
const ResponseFormatSchema: ZodEnum<{
csv: "csv";
json: "json";
tsv: "tsv";
txt: "txt";
xml: "xml";
}>;Defined in: schemas.ts:6
Supported API response formats.
SingleLookupSchema
const SingleLookupSchema: ZodString;Defined in: schemas.ts:116
TagsResponseSchema
const TagsResponseSchema: ZodArray<ZodObject<{
Matches: ZodArray<ZodObject<{
Domain: ZodString;
First: ZodString;
Last: ZodString;
}, $strict>>;
Value: ZodString;
}, $strict>>;Defined in: schemas.ts:375
Validation schema for TagsResponse.
TrendsParamsSchema
const TrendsParamsSchema: ZodObject<{
date: ZodOptional<ZodString>;
}, $strict>;Defined in: schemas.ts:73
Validation schema for TrendsParams.
TrendsResponseSchema
const TrendsResponseSchema: ZodObject<{
Tech: ZodObject<{
categories: ZodArray<ZodString>;
coverage: ZodObject<{
expired: ZodNumber;
hundred_k: ZodNumber;
live: ZodNumber;
milly: ZodNumber;
ten_k: ZodNumber;
}, $strict>;
description: ZodString;
icon: ZodString;
is_premium: ZodString;
link: ZodString;
name: ZodString;
tag: ZodString;
trends_link: ZodString;
}, $strict>;
}, $strict>;Defined in: schemas.ts:309
Validation schema for TrendsResponse.
TrustParamsSchema
const TrustParamsSchema: ZodObject<{
live: ZodOptional<ZodBoolean>;
words: ZodOptional<ZodString>;
}, $strict>;Defined in: schemas.ts:102
Validation schema for TrustParams.
TrustResponseSchema
const TrustResponseSchema: ZodObject<{
DBRecord: ZodObject<{
AffiliateLinks: ZodBoolean;
DBIndexed: ZodBoolean;
EarliestRecord: ZodNumber;
Ecommerce: ZodBoolean;
Established: ZodBoolean;
LatestUpdate: ZodNumber;
LiveTechs: ZodBoolean;
Parked: ZodBoolean;
PaymentOptions: ZodBoolean;
PremiumTechs: ZodNumber;
Spend: ZodNumber;
}, $strict>;
Domain: ZodString;
LiveRecord: ZodNullable<ZodObject<{
}, $loose>>;
Status: ZodNumber;
}, $strict>;Defined in: schemas.ts:351
Validation schema for TrustResponse.