POST /v1/company/profile reads one company’s brand identity, colors, logos, socials, address, contact channels, key links, legal details, technologies and pixels from its own website, with an optional measured styleguide. POST /v1/company/search finds companies by name or domain among stored profiles, then on the web.
Get a company profile
Use a key withscrape scope.
Create an operation key once before a new request:
uuidgen is unavailable, set your own unique value. For a different request, generate a new value.
Node.js and Python require the saved key and use the shared HTTP client. Read retries before retrying a request whose result you did not receive.
domain accepts a bare domain or any URL on the company’s site; IP addresses and bare public suffixes such as co.uk or github.io are rejected. The profile is keyed by the registrable domain, so www.example.com and shop.example.com/about both describe example.com, and the homepage of the host you send is read. styleguide defaults to false; set it to true to add the measured styleguide object for 5 more credits. timeout is in milliseconds, covers the whole request, defaults to 30,000 and accepts up to 120,000.
Each request reads the site fresh: the homepage, then at most four contact, about, imprint, privacy and terms pages linked from it on the same domain.
Profile response
The request returns HTTP200 with the profile in data:
A value is
null or empty when the site gives no signal for it. Nothing is inferred or invented.
Styleguide
The styleguide is measured on the rendered homepage in light mode at 1920x1080. It does not reconstruct responsive layouts, dark mode or hover states.Contacts
email and phone are company channels, never people:
email: the first address from the site’s structured organization data or a linked address whose mailbox is a role such asinfo,contact,hello,sales,support,office,team,press,media,billing,help,service,enquiries,inquiries,kontakt,admin,privacy,legal,jobs,careers,hr,marketingorpartners. Personal addresses such asfirst.last@example.comare left out.phone: the first number from structured data or from phone links on the homepage and contact page.
Technology and pixel slugs
technologies and pixels in the profile, and the search filters of the same name, use these slugs:
Search companies
Use a key withmap scope.
query is a company name or domain, up to 200 characters; a URL is reduced to its registrable domain. Filters match fields of stored profiles, and every filter you send must hold:
country: an ISO 3166-1 alpha-2 code.technologies,pixels: up to 20 slugs each, all of which must be detected, for example["shopify"]or["meta"].hasEmail,hasPhone:truefor companies with a known email or phone,falsefor those without.
query, at least one filter, or both. limit defaults to 10 and accepts 1 to 20.
Stored profiles are matched first, ranked by exact domain, domain prefix, title prefix, then title. When a query has fewer stored matches than limit and no filter is set, one web search fills the rest. Web results are reduced to one result per company domain; social networks and domains already listed are skipped. A search with any filter returns stored companies only.
Search response
source is index for a stored company and search for a web result. company summarizes the stored profile, or is null when the company has no profile yet; call Get a company profile to read one. If web search is unavailable but stored matches exist, the results hold stored companies only and warning explains why.
Credits
A profile whose homepage returns a non-2xx status, is blocked, times out or is cancelled is not charged; a failed contact or legal page never fails the request. A search fails without a charge when web search is unavailable and no stored company matches. An identical idempotency key replays the stored response without another charge.
Errors
Company profile shares the scrape rate limit and company search shares the map and search limit. See errors and retries before retrying.