US Business Data API - Business Listings and Firmographics
Under maintenancePricing
$10.00 / 1,000 results
US Business Data API - Business Listings and Firmographics
Under maintenanceSearch millions of US and Canada business listings by NAICS or SIC code, state, city, postal code, radius, employee count, sales volume and credit score. Returns name, address, phone, email, size, sales, credit and executive contacts as flat rows. Pay per result. Bring your own API key.
Pricing
$10.00 / 1,000 results
Rating
0.0
(0)
Developer
Nabeel Hassan
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
US Business Data API
Search millions of US and Canada business listings by industry code, location, radius, size, sales volume and credit, and get name, address, phone, email, executives and corporate linkage as flat rows.
This is local business data with an industry code on every record. If your target is defined by what a business does and where it is, rather than by what its website says, this is the shape of data you want: a NAICS or SIC code, a verified address, an employee count, an estimated sales volume, and a date it was last verified.
Three modes
| Mode | What it does | What you give it |
|---|---|---|
business-search | Finds business listings by filter, free text, or both | Industry codes, location, size, radius |
business-lookup | Reads records you already hold identifiers for | A list of record ids |
people-search | Runs the same filter language against the consumer index | Location and name criteria |
Filters that matter
Industry is the backbone. primaryNaicsCodes and primarySicCodes match the main line of business; the any-code variants match a secondary line too. The provider extends the standard codes with extra digits, so a longer code is narrower: 551103 is used car dealers rather than motor vehicle dealers in general.
Location works three ways: exact states, cities and postal codes; a radius from a latitude and longitude; or a radius from a list of postal codes. Set geoDistance to something like 7km or 5mi and give it a centre.
Size comes in four flavours. estimatedLocationEmployeeCount carries the actual figure when one exists and an estimate otherwise, so it has the highest fill rate and is usually the better filter. locationEmployeeCount is the reported figure only. The corporate variants count everyone across the whole corporate family rather than at one site.
Freshness is a filter, not an afterthought. inBusiness defaults to yes, which is verified operating, and verifiedAfter restricts to records the provider re-checked since a date you choose.
What comes back
Rows carry the provider's record id; business name, alternative name and legal names; place type; street, suite, city, state, postal code, ZIP, ZIP+4 and country; latitude, longitude and the precision level of that geocode; phone, additional phone, toll-free number, fax and email; primary and secondary NAICS and SIC codes; location, estimated location, corporate and estimated corporate employee counts; location sales volume; credit grade, credit score, credit limit and a bankruptcy count; operational status, last verified date, record created date, and opening and closing dates; corporate linkage as a direct headquarters id, an ultimate headquarters id and the full ancestor chain; and the primary contact's name, email, job titles and management level plus a count of all known contacts.
Every row carries raw, the untouched provider record, so nothing is lost by the flattening.
Example output
{"recordType": "business","matched": true,"infogroupId": "830123091","name": "Brooklyn Pizza","placeType": "independent","street": "15511 Edwards St","city": "Huntington Beach","state": "CA","postalCode": "92648","countryCode": "US","latitude": 33.7085,"longitude": -118.0059,"phone": "7145550142","primaryNaicsCode": "722511","primarySicCode": "581208","estimatedLocationEmployeeCount": 14,"locationSalesVolume": 1240000,"creditGrade": "B","creditScore": 68,"inBusiness": "yes","verifiedOn": "2026-04-27","primaryContactLastName": "Alvarez","primaryContactManagementLevel": "Owner","contactCount": 3}
Pricing
Pay per result. You are charged once per record saved to the dataset. Duplicates are removed before charging, and an identifier that resolves to nothing is stored with matched: false free of charge, so a list of dead ids costs you nothing. Apify platform usage is included in the per-result price. Your own provider plan is billed separately by the provider.
Bring your own API key
This actor does not include data access. You use your own API token from Data Axle, which is the provider whose API this actor calls. The token is sent as the X-AUTH-TOKEN request header rather than as a URL parameter, so it never appears in a log line or a redirect. If your account holds more than one contract, set the contract id as well so the provider knows which entitlement to bill.
FAQ
What is a business data API?
A business data API returns structured records for physical businesses: name, verified address, phone, industry classification, employee count, estimated sales and operational status. It differs from a web-scraped company database in that records are verified against phone calls, filings and field research and carry a last-verified date. This actor wraps one and turns its results into a dataset you can export as CSV, JSON or Excel, or pull from another tool.
How do I find every business of one type in a city?
Set primaryNaicsCodes or primarySicCodes to the industry, cities to the city, and leave inBusiness on yes. Run business-search. The run logs the total match count before the first row is written, so you know straight away whether the filter is too wide or too narrow.
Can I search within a radius rather than by city?
Yes. Set geoDistance to a value like 7km, 5mi, 1500m or 3000ft, then give it a centre: either geoLatitude and geoLongitude, or one or more geoPostalCodes. You can also sort by distance from that centre.
What is the difference between location and corporate employee counts?
Location counts include only the people at that site. Corporate counts include everyone across the corporate family the site belongs to, so a headquarters can carry both. The estimated variants fall back to the actual value when the provider holds one, which makes them the more usable filter.
How do I find all the branches of one company?
Take the ultimateHeadquartersId from any row in the corporate family, then filter on it with the advanced filter: {"relation":"equals","attribute":"ancestor_headquarters_ids","value":"959792284"}. Every branch and subsidiary in the family carries its ancestors in that list.
Can I get executive names and emails?
Yes. Rows carry the primary contact's first and last name, email, job titles and management level, and the full contact list is preserved under raw. Contacts are ordered by seniority, so the first entries are the most senior known people at the location.
Why does paging stop before I reach my result limit?
The provider caps the paging offset at 4,000 records per filter set. Beyond that its own bulk endpoint is the intended route. The practical fix is to split the run: one run per state, per postal code group, or per industry code, each of which stays inside the ceiling. The actor logs a clear message when it hits the cap rather than looping.
How many results can one run return?
Up to 25,000 per run, paged at up to 400 records per request, subject to the provider's 4,000 offset ceiling per filter set.
Do I need my own API key?
Yes. This actor is bring your own key, and your usage is billed on your own provider plan. The actor charges separately for each result it returns.
Keyword map
US business data API, business listings API, local business data API, business search API, NAICS code search API, SIC code lookup API, firmographics API, company data API, business database API, employee count data, sales volume data, business credit score API, corporate linkage data, business email and phone data, radius search API, geo search business data, consumer data API, B2B prospecting data