Skip to main content
POST
Company Enrichment Launcher
Once you know the company domain, enrich the account. Combine the company details with your product usage data to decide whether the account fits your market.
Input: company domain, LinkedIn identifier, or company name.Output: a job_id. Retrieve output.company through Get account results or a webhook.
Using a workflow tool? Add its webhook URL as webhook_url in this request. We’ll send the completed result there, so you don’t need to poll. See an example.

Use company data to assess fit

Technology and funding fields may be missing or empty. The endpoint returns the company data available. It does not run a live technology scan or calculate an account score.
Prefer domain or linkedin over company name alone. Name-only matching can select the wrong company. When several identifiers are sent, priority is domain, LinkedIn, then name. Next: Find relevant people at a qualified account, or combine account data with product usage.

Authorizations

x-api-key
string
header
required

To access the API, provide your API key in x-api-key.

Body

application/json

Company enrichment payload: provide one company identifier (domain, linkedin, or name) plus optional webhook_url and custom_fields.

Request payload to launch a company enrichment job.

domain
string
required

The domain where you want to find contacts. It can be a plain domain or a full URL; Waterfall automatically extracts the company domain.

Required string length: 4 - 500
Example:

"waterfall.io"

linkedin
string | null

Company LinkedIn URL or ID/handle (for example google from https://www.linkedin.com/company/google/). Recommended input to maximize coverage.

Required string length: 3 - 500
Example:

"waterfall-io"

name
string

The name of the company where you want to find contacts.

Required string length: 3 - 500
Example:

"Waterfall"

webhook_url
string<uri>

Optional webhook callback URL. If supplied, Waterfall POSTs the same payload returned by the Finder endpoint when processing completes. If your webhook responds with 429, 500, 502, or 504, Waterfall retries delivery up to 5 times with exponential backoff. Waterfall includes X-Webhook-Signature containing a compact JWT when webhook signing configuration is available. The JWT protected header contains alg: "EdDSA", kid, and typ: "JWT". Its claims contain iat, exp, jti, job_id, body_hash, and body_hash_alg: "sha-256". body_hash is the unpadded base64url-encoded SHA-256 digest of the exact raw request body bytes. The JSON body is unchanged by signing. Signatures expire exactly 15 minutes after iat; receivers should reject expired signatures. If signing configuration is unavailable or invalid, Waterfall preserves backward compatibility by sending the callback unsigned without X-Webhook-Signature.

Maximum string length: 2083
Example:

"https://webhook.site/70dd34e3-564d-4339-81e3-ed97416140a1"

custom_fields
object | null

Optional custom key-value metadata echoed on job input and output (useful for correlating internal source metadata). On create requests, omit the field or send JSON null when no custom fields are needed; both are stored as {}. When present, the value must be a JSON object with keys matching ^[A-Za-z0-9_-]+$ and values that are a string (max 1000 characters), number, or boolean. Empty string, arrays, and other non-object types return HTTP 400. On job GET responses, input.task.custom_fields is always an object ({} or populated).

Example:

Response

Company enrichment job successfully launched.

Response returned when a company enrichment job is successfully launched.

job_id
string<uuid>
required

A UUID.

Example:

"7d44db58-5de3-4e92-a2fb-8325d12c2e8b"

start_date
string<date-time>
required

A date time in ISO 8601 format.

Example:

"2025-02-05T15:46:35.771751+00:00"