// post /v1/bulk/company
Bulk Company Enrichment API
Convert domain lists into structured company intelligence with one async bulk job built for modern GTM teams.
Domains or company namesTot 25,000 rijen
curl -X POST "https://api.tomba.io/v1/bulk/company" \
-H "X-Tomba-Key: $TOMBA_API_KEY" \
-H "X-Tomba-Secret: $TOMBA_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"Company Enrichment job","list":"piedpiper.com\nshopify.com","launch":true,"webhook_url":"https://hooks.example.com/tomba"}'const res = await fetch("https://api.tomba.io/v1/bulk/company", {
method: "POST",
headers: {
"X-Tomba-Key": process.env.TOMBA_API_KEY,
"X-Tomba-Secret": process.env.TOMBA_SECRET_KEY,
"Content-Type": "application/json"
},
body: JSON.stringify({
"name": "Company Enrichment job",
"list": "piedpiper.com\nshopify.com",
"launch": true,
"webhook_url": "https://hooks.example.com/tomba"
})
});
const { data } = await res.json(); // { id }import os, requests
res = requests.post(
"https://api.tomba.io/v1/bulk/company",
headers={
"X-Tomba-Key": os.environ["TOMBA_API_KEY"],
"X-Tomba-Secret": os.environ["TOMBA_SECRET_KEY"],
},
json={
"name": "Company Enrichment job",
"list": "piedpiper.com\nshopify.com",
"launch": True,
"webhook_url": "https://hooks.example.com/tomba"
},
)
job_id = res.json()["data"]["id"]// 01 · verzoek
Bulk Company Enrichment is één HTTPS-verzoek
Stuur de parameters mee met je sleutel en secret. Elke SDK, de CLI en de MCP-server doen precies deze aanroep.
- type
- company
- list | data | file
- Domains or company names
- launch
- true start de taak meteen
- webhook_url
- Ontvangt een ondertekend event als de taak klaar is
- rows
- Tot 25,000 per taak
curl -X POST "https://api.tomba.io/v1/bulk/company" \
-H "X-Tomba-Key: $TOMBA_API_KEY" \
-H "X-Tomba-Secret: $TOMBA_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"Company Enrichment job","list":"piedpiper.com\nshopify.com","launch":true,"webhook_url":"https://hooks.example.com/tomba"}'const res = await fetch("https://api.tomba.io/v1/bulk/company", {
method: "POST",
headers: {
"X-Tomba-Key": process.env.TOMBA_API_KEY,
"X-Tomba-Secret": process.env.TOMBA_SECRET_KEY,
"Content-Type": "application/json"
},
body: JSON.stringify({
"name": "Company Enrichment job",
"list": "piedpiper.com\nshopify.com",
"launch": true,
"webhook_url": "https://hooks.example.com/tomba"
})
});
const { data } = await res.json(); // { id }import os, requests
res = requests.post(
"https://api.tomba.io/v1/bulk/company",
headers={
"X-Tomba-Key": os.environ["TOMBA_API_KEY"],
"X-Tomba-Secret": os.environ["TOMBA_SECRET_KEY"],
},
json={
"name": "Company Enrichment job",
"list": "piedpiper.com\nshopify.com",
"launch": True,
"webhook_url": "https://hooks.example.com/tomba"
},
)
job_id = res.json()["data"]["id"]// 02 · antwoord
Wat je terugkrijgt
JSON, in elke taal hetzelfde. Velden die Tomba niet kent zijn null, nooit gegokt.
GET
/companies/findVelddata.name, data.legalName, data.domainstring | null- Who the company is
data.description, data.foundedYear, data.typestring | null- What it does, when it was founded, its ownership
data.categoryobject- Sector, industry, SIC and NAICS codes
data.geoobject- Street address, city, state, country, coordinates
data.metricsobject- Employees, traffic rank, revenue, funding
data.linkedin, data.twitter, data.facebookobject- Social handles
data.tech[], data.techCategories[]array | null- Technologies the website runs
meta.domainstring | null- The domain you sent
errorsobject- When nothing is found the response is still 200, with errors {type, message, code} instead of data
POST /bulk/company
201 Created
{
"data": {
"id": 1042
}
}Elke rij, zoals GET /companies/find die teruggeeft
200 OK
{
"data": {
"name": "Pied Piper",
"legalName": "Pied Piper, Inc.",
"domain": "piedpiper.com",
"domainAliases": [],
"site": {
"phoneNumbers": [],
"emailAddresses": [
"hello@piedpiper.com"
]
},
"category": {
"sector": "Information Technology",
"industryGroup": "Software & Services",
"industry": "Internet Software & Services",
"subIndustry": "Internet Software & Services",
"sicCode": "73",
"sic4Codes": [
"7372"
],
"naicsCode": "51",
"naics6Codes": [
"511210"
],
"naics6Codes2022": [
"513210"
]
},
"tags": [
"Compression",
"Decentralized internet"
],
"description": "Pied Piper builds middle-out compression for files, video and a decentralized internet.",
"foundedYear": "2014",
"location": "5230 Newell Road, Palo Alto, CA 94303, United States",
"timeZone": "America/Los_Angeles",
"utcOffset": -8,
"geo": {
"streetNumber": "5230",
"streetName": "Newell Road",
"subPremise": null,
"streetAddress": "5230 Newell Road",
"city": "Palo Alto",
"postalCode": "94303",
"state": "California",
"stateCode": "CA",
"country": "United States",
"countryCode": "US",
"lat": 37.4419,
"lng": -122.143
},
"logo": "https://logo.tomba.io/piedpiper.com",
"facebook": {
"handle": null,
"likes": null
},
"linkedin": {
"handle": "company/pied-piper"
},
"twitter": {
"handle": null,
"id": null,
"bio": null,
"followers": null,
"following": null,
"location": null,
"site": null,
"avatar": null
},
"whois": {
"registrar_name": null,
"created_date": null,
"referral_url": null
},
"emailProvider": "Google",
"type": "private",
"ticker": null,
"identifiers": {
"usEIN": null
},
"metrics": {
"alexaUsRank": null,
"alexaGlobalRank": null,
"trafficRank": null,
"employees": "11-50",
"marketCap": null,
"raised": null,
"annualRevenue": null,
"estimatedAnnualRevenue": null,
"fiscalYearEnd": null
},
"indexedAt": "2025-01-15T10:32:00+01:00",
"tech": [
"google_apps",
"intercom"
],
"techCategories": [
"email_hosting_service",
"live_chat"
],
"parent": {
"domain": null
},
"ultimateParent": {
"domain": null
}
},
"meta": {
"domain": "piedpiper.com"
}
}// 03 · kosten en limieten
Wat een aanroep kost
Een aanroep wordt alleen in rekening gebracht onder de voorwaarde hieronder. Rate limits hangen af van je abonnement.
// kosten
1 search credit per company found. Plus 1 per company with phone data.
Charged once, at the first download; later downloads are free
- Jobs created: 15 per day for each type
- Running jobs: 2 per type
- Downloads: 25 per day for each job
- Request size: 4 MB (CSV, list or rows)
Create a bulk operation by uploading company domains, then launch the operation. The API enriches each domain with comprehensive company data asynchronously.
You can enrich up to 25,000 company domains per bulk operation. For larger datasets, create multiple bulk operations.
Each domain is enriched with company name, description, industry classification (SIC/NAICS codes), location, employee count, revenue estimates, technology stack, and social profiles.
De verwerkingstijd hangt af van de grootte van de lijst en de opzoekingen die nodig zijn. Vraag de status van de taak op of stel een webhook in om te horen wanneer hij klaar is.
Each domain that returns enrichment data counts as 1 request. Domains with no data found are not counted against your quota.
The API detects 6000+ technologies including web frameworks, CMS platforms, analytics tools, cloud providers, and development tools used by each company.
Yes, configure a webhook URL to receive a notification when your bulk company enrichment operation completes with results ready for download.
Once processing completes, use the download endpoint to get all enriched company data as CSV or JSON format.
Yes. Many teams enrich domains first to qualify target accounts, then run Domain Search and Email Finder only on high-fit companies.
Use root company domains, remove URL paths/subdomains where possible, and deduplicate records before upload for best enrichment coverage.