Endpoints
/v1/subsidiaries
https://secfeedapi.com/v1/subsidiariesSubsidiaries and jurisdictions from Exhibit 21.
| Parameter | Type | Description | Example |
|---|---|---|---|
ticker | string | Company ticker. Use either ticker or cik. | AAPL |
cik | string | Company CIK. Takes precedence over ticker. | 320193 |
accessionNo | string | A specific annual report. Defaults to the latest 10-K, 20-F or 40-F. | 0000320193-25-000079 |
- Many companies list only significant subsidiaries, so the list is what the company chose to disclose.
Request examples
Every response below is real output from the API, trimmed to the first records.
Apple's subsidiaries
Name and jurisdiction for each subsidiary in Exhibit 21.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/subsidiaries?ticker=AAPL"
import os, requests
r = requests.get(
"https://secfeedapi.com/v1/subsidiaries",
params={'ticker': 'AAPL'},
headers={"Authorization": f"Bearer {os.environ['SECFEED_KEY']}"},
timeout=60,
)
r.raise_for_status()
print(r.json()){
"cik": 320193,
"accessionNo": "0000320193-25-000079",
"exhibit": "https://www.sec.gov/Archives/edgar/data/320193/000032019325000079/a10-kexhibit21109272025.htm",
"subsidiaries": [
{
"name": "Apple Asia Limited",
"jurisdiction": "Hong Kong"
},
{
"name": "Apple Asia LLC",
"jurisdiction": "Delaware, U.S."
}
]
}Microsoft by CIK
exhibit links the source document.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/subsidiaries?cik=789019"
import os, requests
r = requests.get(
"https://secfeedapi.com/v1/subsidiaries",
params={'cik': '789019'},
headers={"Authorization": f"Bearer {os.environ['SECFEED_KEY']}"},
timeout=60,
)
r.raise_for_status()
print(r.json()){
"cik": 789019,
"accessionNo": "0001193125-26-323660",
"exhibit": "https://www.sec.gov/Archives/edgar/data/789019/000119312526323660/msft-ex21.htm",
"subsidiaries": [
{
"name": "Microsoft Ireland Research Unlimited Company",
"jurisdiction": "Ireland"
},
{
"name": "Microsoft Global Finance Unlimited Company",
"jurisdiction": "Ireland"
}
]
}Coca-Cola
Group by jurisdiction to see where a company operates.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/subsidiaries?ticker=KO"
import os, requests
r = requests.get(
"https://secfeedapi.com/v1/subsidiaries",
params={'ticker': 'KO'},
headers={"Authorization": f"Bearer {os.environ['SECFEED_KEY']}"},
timeout=60,
)
r.raise_for_status()
print(r.json()){
"cik": 21344,
"accessionNo": "0001628280-26-010047",
"exhibit": "https://www.sec.gov/Archives/edgar/data/21344/000162828026010047/a20251231exhibit211.htm",
"subsidiaries": [
{
"name": "The Coca-Cola Company",
"jurisdiction": "Delaware"
},
{
"name": "Atlantic Industries",
"jurisdiction": "Cayman Islands"
}
]
}Response fields
| Field | Type | Meaning |
|---|---|---|
cik | integer | Company CIK. |
accessionNo | string | Annual report the exhibit belongs to. |
exhibit | string | URL of the Exhibit 21 document. |
subsidiaries[] | array | One object per subsidiary, in filing order. |
subsidiaries[].name | string | Subsidiary name as written. |
subsidiaries[].jurisdiction | string | State or country of organization, null when the exhibit does not say. |
How to
How do I count subsidiaries by country?
Group subsidiaries by jurisdiction.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/subsidiaries?ticker=MSFT"
How do I use an older annual report?
Pass that report's accessionNo.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/subsidiaries?ticker=AAPL&accessionNo=0000320193-25-000079"
How do I find the annual report accession numbers?
Search 10-K filings with the Filing Query API.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/filings?query=ticker:AAPL%20AND%20formType:%2210-K%22&size=5"
How do I see the exhibit as filed?
Open the exhibit URL or convert it with the PDF Generator.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/subsidiaries?ticker=KO"
How do I compare two years?
Call once per accessionNo and diff the names.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/subsidiaries?ticker=AAPL"
Does it work for foreign filers?
Yes, for 20-F and 40-F filers that attach an Exhibit 21 or 8.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/subsidiaries?ticker=JNJ"
What if the company has no Exhibit 21?
You get a 400 saying no Exhibit 21 in this filing. Large filers such as Pfizer attach one, so the example returns the list.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/subsidiaries?ticker=PFE"
Can I use a CIK with leading zeros?
Yes, leading zeros are ignored.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/subsidiaries?cik=0000320193"
Errors
- 400 no Exhibit 21 in this filing.
- 400 when the ticker cannot be resolved.
See also the error codes every endpoint shares.
Try it with your own key
500 free calls a month.