Skip to main content
POST

Good to know

  • Send domain or email, not both. With an email, only the domain is used. Send a bare hostname such as stripe.com. A URL like https://stripe.com/about returns invalid_input.
  • Check free_email_domain first. Addresses at Gmail, Outlook and similar providers belong to people, not companies, so name, description and logo_url are null.
  • Missing fields are normal. Small sites often have no description, no social links or no reachable homepage. Every field can be null or empty, so render what is there.
  • Results are cached per domain for up to 30 days. A company that changes its website may take that long to show the change. Every lookup costs 1 credit, cached or not.
  • No firmographics. The result is built from the company’s own homepage and DNS records. It has no employee count, revenue or industry.
  • technologies is evidence, not a full inventory. A service shows up only when it leaves a trace in DNS or on the homepage.
  • company_unavailable is free. If the lookup can’t complete, the request returns 503 and is not charged. Try again after a short delay.

API reference introduction

Base URL, authentication and conventions shared by every endpoint.

Authorizations

Authorization
string
header
required

Your Finowl API key, for example finowl_3f9a.... Create keys in the dashboard under API Keys.

Body

application/json
domain
string
required

A bare hostname such as stripe.com. URLs with a scheme, path or port, such as https://stripe.com/about, return invalid_input.

Maximum string length: 253
Example:

"stripe.com"

Response

The lookup completed. Fields that could not be found are null or empty.

domain
string
required

The normalized domain that was looked up: lowercase, with no www. prefix or trailing dot.

name
string | null
required

The company name from the homepage. null when unknown or for free mailbox domains.

description
string | null
required

The homepage's own description of the company. null when unknown.

country_code
string
required

ISO 3166-1 alpha-2 code of the company's likely country, from the domain, the homepage and its phone links. Empty when unknown.

country
string
required

The country name for country_code. Empty when unknown.

language
string | null
required

The homepage's declared language, such as en or de. null when unknown.

logo_url
string<uri> | null
required

An absolute https URL of the best available logo or icon: the Apple touch icon, then the social sharing image, then the largest icon, then /favicon.ico. null when none was found. The image is hosted by the company, so cache it yourself if you show it often.

website_reachable
boolean
required

true when the homepage answered over HTTPS. When false, homepage fields are null and the result comes from DNS only.

social
object
required

Company profiles linked from the homepage, as absolute URLs. Only profiles that were found are present, so the object can be empty.

email_provider
enum<string> | null
required

Who hosts the domain's email, from its MX records. null when the domain has no mail servers. Treat values you don't recognize like other. For free mailbox domains this names the provider's own mail system, so gmail.com returns google_workspace and outlook.com returns microsoft_365.

Available options:
google_workspace,
microsoft_365,
zoho,
proton,
fastmail,
yandex,
other,
null
technologies
string[]
required

Services detected from the domain's DNS verification and SPF records and from the homepage, sorted and unique. Examples: google_workspace, microsoft_365, hubspot, salesforce, mailchimp, sendgrid, amazon_ses, mailgun, postmark, zendesk, freshdesk, intercom, atlassian, docusign, stripe, shopify, wordpress, wix, squarespace, webflow, cloudflare, google_analytics, google_tag_manager, facebook_pixel, hotjar, segment, apple, adobe, slack, zoom, openai, vercel, nextjs, onetrust, mimecast, proofpoint. The list is not exhaustive and new values may be added. A verification record only shows the domain was verified with a service at some point, not that it is still in use.

free_email_domain
boolean
required

true for free mailbox domains such as gmail.com. The address belongs to a person, not a company, so the homepage is not read and name, description and logo_url are null.