Reference · Companies
search_companies
Find US-listed companies by name or ticker in the SEC EDGAR directory. Returns ticker, name, exchange, country and CIK, best match first. Use it first when you are not sure of a ticker.
GET https://api.fundalyze.ai/api/public/v1/search_companiesMCPsearch_companiesParameters
| Parameter | Type | Default | Description |
|---|---|---|---|
queryrequired | stringup to 100 characters | — | Company name or ticker, e.g. 'apple' or 'AAPL'. |
limit | integer1–25 | 10 | Rows to return, 1-25. |
Example
A real call and its answer. Replace fdz_live_YOUR_KEY with your key, or set FUNDALYZE_API_KEY for the Python and JavaScript versions.
curl -H "Authorization: Bearer fdz_live_YOUR_KEY" "https://api.fundalyze.ai/api/public/v1/search_companies?query=berkshire&limit=5"import os
import requests
response = requests.get(
"https://api.fundalyze.ai/api/public/v1/search_companies",
params={
"query": "berkshire",
"limit": 5,
},
headers={"Authorization": f"Bearer {os.environ['FUNDALYZE_API_KEY']}"},
timeout=60,
)
response.raise_for_status()
answer = response.json()
print(answer["text"])
print("Calls left today:", response.headers.get("X-Quota-Remaining"))const params = new URLSearchParams()
params.append("query", "berkshire")
params.append("limit", "5")
const response = await fetch(`https://api.fundalyze.ai/api/public/v1/search_companies?${params}`, {
headers: { Authorization: `Bearer ${process.env.FUNDALYZE_API_KEY}` },
})
const answer = await response.json()
if (!response.ok) throw new Error(`${response.status}: ${answer.detail}`)
console.log(answer.text)
console.log('Calls left today:', response.headers.get('X-Quota-Remaining'))The same call as an MCP tools/call: what an assistant sends.
{
"name": "search_companies",
"arguments": {
"query": "berkshire",
"limit": 5
}
}Response
Generated from live data on Oct 7, 2026; figures change as filings arrive.
What an assistant reads (and what MCP returns).
Companies matching 'berkshire' · SEC EDGAR directory · best match first
ticker,name,exchange,country,cik
BRK-A,BERKSHIRE HATHAWAY INC,NYSE,US,1067983
BRK-B,BERKSHIRE HATHAWAY INC,NYSE,US,1067983
More: https://fundalyze.ai/stocksThe same content as JSON (REST).
{
"query": "berkshire",
"companies": [
{
"ticker": "BRK-A",
"name": "BERKSHIRE HATHAWAY INC",
"exchange": "NYSE",
"country": "US",
"cik": 1067983
},
{
"ticker": "BRK-B",
"name": "BERKSHIRE HATHAWAY INC",
"exchange": "NYSE",
"country": "US",
"cik": 1067983
}
]
}Fields of data
What each field of data means. rows[].field is a field of each row in the rows list.
| Field | Meaning |
|---|---|
query | The search text as used, after removing characters that cannot match. |
companies | Matching companies, best match first (an exact ticker leads). |
companies[].ticker | The ticker as listed in the SEC EDGAR directory, upper case. |
companies[].name | Company name as registered with the SEC. |
companies[].exchange | Listing exchange (NASDAQ, NYSE, AMEX, OTC, CBOE...), or null. |
companies[].country | Country of the company's business address. |
companies[].cik | SEC Central Index Key, the company's permanent EDGAR id. |
The link
Every answer ends with More: <link>, and REST returns the same URL as link: the fundalyze.ai page where the figures can be checked (here, fundalyze.ai/stocks). Cite it when you show the data to others, as the attribution rules ask.
Errors
A bad parameter is a 400 naming it, an unknown ticker a 404, a busy key or a used-up day a 429. Every status and message: Errors.
This page as Markdown, for language models and scripts: /developers/md/reference/search_companies