DEV Community

Oleksyj Mokrousov
Oleksyj Mokrousov

Posted on • Originally published at perigon.io

Company News API Guide - Search by Company, Ticker, Domain, and Executive Mentions

Why company news search needs more than keywords

Building a company news feed on raw text search fails in predictable ways. q=Apple matches fruit and Apple Records. q=Meta hits meta-analyses. Tickers like AI or NOW appear in ordinary English. A CEO's shared surname attaches the wrong person to the result set. Products that need business news data, financial news data, or ticker news require the API to resolve which company or person was linked - not which substring appeared.

Developers evaluating a news API, news search API, or business news provider usually ask:

What is a company news API?

How do you search company mentions and ticker news by domain, symbol, or ID?

Why use company entity filters instead of keyword search alone?

The sections below answer each in order, then give query examples and when to use Articles vs Stories for company-scoped news articles.

Try it live: Test company filters in the sandbox · Read the docs: Entities guide · Compare plans: API pricing and features

What is a company news API?

A company news API is not a separate product SKU. It is a news provider (or financial news provider) that treats organizations and people as entities and lets you filter news articles by those entities.

On Perigon, Articles (/v1/all), Headlines, and Stories (/v1/stories/all) accept company and person parameters. Each hit can include structured fields: company IDs, names, domains, symbols, people, publishers, topics, and dates. Resolve canonical records on /companies and /people once, then pass those IDs into search.

That is the difference between fragile keyword strings and reusable identifiers for b2b data provider news and market data provider news pipelines - the same pattern a financial news or media intelligence product needs behind the UI.

For product-style digests and scheduled briefings across companies or topics, use Perigon's Signals product. This guide is for embedding entity search in your own stack.

How to search news by company domain, ticker, and ID

On the Articles API, company filters match enriched company fields - not a free-text guess.

Parameter Matches Typical use
companyDomain Company web domains (e.g. apple.com) Brand / website scoped search
companySymbol Stock tickers (e.g. AAPL) Ticker news, equities queries
companyId Perigon company UUIDs Stable IDs from /companies
companyName Exact company name When ID is unknown
personName Exact person name Executive mentions by display name
personWikidataId Wikidata Q-IDs Disambiguated people from /people

Includes on one field are OR joined. Excludes (excludeCompanyDomain, excludeCompanySymbol, excludeCompanyId, excludePersonName, excludePersonWikidataId) are AND-joined.

Goal Prefer
Ticker news companySymbol
Private companies / brand sites companyDomain or companyId
Executive mentions personWikidataId first; personName when spelling is canonical

Matched articles return companies and people arrays. Stories return topCompanies and topPeople for narrative-level filters. See the data model for how those objects relate.

Keyword search vs entity filters explained

Keyword q searches title, description, and body. Entity filters ask: was this company or person linked on the article?

Approach Strength Weakness
Keyword q only Flexible phrases ("product recall", "class action") Ambiguous names, ticker collisions
companyDomain / companySymbol / companyId Precise org match Entity must be linked
personName / personWikidataId Precise people match Exact name or Wikidata ID required
Keywords plus entities Event language inside a known org Best default for litigation, product, crisis

Rival coverage is a clear case: three companyDomain values avoid category-word false hits. A portfolio query ORs companySymbol holdings. An IR or PR query pins a CEO with personWikidataId and adds q for "resignation" or "investigation" when event type matters as much as the entity.

That keeps market intelligence and news filtering result sets auditable: the allowlist defines organizations and people, not shared English tokens.

Company news query examples

How to search rival company domains

Pass one or more rival companyDomain values. Add excludeLabel for press release or opinion when you want earned coverage only. Use addDateFrom when the client polls for new matches since the last checkpoint.

How to search ticker news for a portfolio

OR holdings through companySymbol. Optionally narrow publishers with sourceGroup=top25finance for financial news outlets (domain list and paywalls live in the finance source-group guide). Same symbols on Stories for market-moving narratives instead of every analyst reprint.

And search for such symbols:
PORTFOLIO = ["AAPL", "MSFT", "NVDA"] # companySymbol values

companies_ticker_search_articles_params_improved.png

companies_ticker_search_articles_output_imroved (1).jpg

companies_ticker_search_stories_output_imroved.jpg

How to search executive mentions

Resolve the person on /people, filter with personWikidataId, and optionally require companyDomain for the employer. Drop collisions with excludePersonName or excludePersonWikidataId.

Product, litigation, and market-moving language

Product / launch: pin companyId or companyDomain, add q for the codename or SKU.

Litigation / risk: same company pin + legal keywords; Stories when one filing reprints widely.

Earnings / M&A / guidance: companySymbol with date or addDate sort; Stories when you need one cluster with top companies attached.

A grounded company news summary of these hits belongs on the Search Summarizer path - keep this guide on entity search, then summarize the filtered set.

When to use Articles vs Stories for company search

Need Use Entity scope
Every linked mention Articles API (/v1/all) Company or person on that article
One narrative per event Stories API (/v1/stories/all) Top companies / top people on the cluster
Headline-only surfaces Headlines Same company/person params as Articles

Clustering mechanics live in the Stories guide. Here the decision is only top-entity vs any linked mention.

Best practices: compose entities with other filters

Keep this guide focused on who. Around the entity allowlist, add the usual news search controls - source / sourceGroup, from / to / addDateFrom, topic (to filter news by topic), category, excludeLabel. A common business news provider pattern is companyDomain (or companySymbol for portfolios) + a trusted sourceGroup + addDateFrom for incremental pulls.

Entity filters ship on plans that include article and story search; compare tiers on API pricing.

Key takeaways

A company news API is entity-aware news search - companies and people as linked objects, not only keywords.

Use companyDomain, companySymbol, companyId, and companyName for orgs; personName and personWikidataId for executive mentions.

Articles return every linked mention; Stories scope to top companies and top people on the cluster.

Keep keywords for event language inside an entity allowlist.

Resolve IDs on /companies and /people, then reuse them in competitor, portfolio, and executive queries.

Get started: Sandbox · Entities · API reference · API pricing

Top comments (0)