opencorporates.com APIopencorporates.com ↗
Access company registration details, officer records, and filing histories across global jurisdictions via the OpenCorporates API. 6 endpoints.
curl -X GET 'https://api.parse.bot/scraper/094dd742-46a2-442e-8d2b-a99f7200f14d/search_companies' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for companies by name across all or a specific jurisdiction. Requires API token.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination |
| queryrequired | string | Search keyword (company name) |
| api_token | string | OpenCorporates API token |
| company_type | string | Filter by company type |
| country_code | string | Filter by country code |
| current_status | string | Filter by current status (e.g., Active) |
| jurisdiction_code | string | Filter by jurisdiction code (e.g., us_de) |
{
"type": "object",
"fields": {
"companies": "array of objects",
"total_count": "integer"
},
"sample": {
"companies": [
{
"company": {
"name": "Cribl, Inc.",
"company_number": "7371712",
"jurisdiction_code": "us_de"
}
}
],
"total_count": 1
}
}About the opencorporates.com API
This API exposes 6 endpoints for querying OpenCorporates data, covering company registration records, officer details, filing histories, and jurisdiction listings across hundreds of global jurisdictions. Use search_companies to find companies by name with filters for jurisdiction, company type, and status, or call get_company to retrieve the full registration record for a known company number.
Company Search and Lookup
The search_companies endpoint accepts a query string and returns an array of matching companies along with a total_count integer. You can narrow results using jurisdiction_code (e.g., us_de for Delaware), country_code, company_type, and current_status. Pagination is handled with the page parameter. The get_company endpoint fetches a single company record by jurisdiction_code and company_number, returning a company object with full registration details. Pass sparse=true for a lighter payload when only basic fields are needed.
Officer Search and Profiles
search_officers queries officer records by name and returns an officers array with a total_count. Each result includes the officer's association with one or more companies. The scrape_officer_page endpoint takes an OpenCorporates id and returns officer_name, an attributes object of key-value metadata, and a companies array listing every corporate involvement recorded for that individual.
Filing History and Registration Attributes
scrape_company_page returns structured data from the full company profile: company_name, an attributes object containing registration metadata (such as incorporation date, registered address, and company type), an officers array, and a filings array with historical filing records. This endpoint does not require an API token but may encounter hCaptcha challenges on some requests.
Jurisdiction Coverage
The list_jurisdictions endpoint returns a jurisdictions array describing every jurisdiction OpenCorporates indexes. OpenCorporates covers company registries from over 140 jurisdictions worldwide, making it one of the broader sources for cross-border corporate data. All token-required endpoints expect an api_token parameter tied to an OpenCorporates account.
- Due diligence: retrieve full company registration details and filing history for a target entity by jurisdiction and company number.
- Officer background checks: search officers by name and pull all associated corporate involvements via scrape_officer_page.
- Corporate network mapping: link officers to multiple companies using the companies array returned by the officer endpoints.
- Compliance screening: filter company searches by current_status to identify active versus dissolved entities in a specific jurisdiction.
- Jurisdiction enumeration: use list_jurisdictions to determine which registries are indexed before programmatically searching across multiple regions.
- Registered agent research: extract attributes from scrape_company_page to surface registered address and agent details from historical filings.
- Bulk corporate data enrichment: paginate search_companies results to build datasets of companies matching a type or status within a country.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does OpenCorporates have an official developer API?+
search_companies, get_company, search_officers, list_jurisdictions) pass through to that official API.What does the scrape_company_page endpoint return that get_company does not?+
scrape_company_page endpoint returns a filings array with historical filing records and an officers array alongside the attributes object — detail that may not be fully present in the official API's get_company response depending on the jurisdiction and your API tier. It does not require an API token but may encounter hCaptcha on some requests.Can I retrieve beneficial ownership or shareholder data?+
How does pagination work across the search endpoints?+
search_companies and search_officers accept an integer page parameter. The response includes a total_count so you can calculate how many pages exist at the default page size. There is no cursor-based pagination; increment page numerically to walk through results.