---
title: "Search company news"
method: POST
path: "/news/search"
tags: ["News"]
---

# Search company news

`POST /news/search`

Searches live and historical company news for one company, identified in searchBy by name, domain, ticker (optionally disambiguated by exchange), or ISIN. Results can be filtered by publisher domain, publisher country, article language, article type, and published-at date, and include stable story IDs, source metadata, verified entity relevance, cursor pagination, and an explicit quality signal.

## Request body

- object
  - `searchBy` object, required — What to search for.
    - `type` 'entity', required — How to search. Only entity search is supported.
    - `entity` union, required — The company to search news for, identified by name, domain, ticker, or ISIN.
      - NewsSearchEntityByName — Identify the company by name.
        - `type` 'name', required
        - `name` string, required — Company name.
      - NewsSearchEntityByDomain — Identify the company by website domain.
        - `type` 'domain', required
        - `domain` string, required — Company website domain, such as apple.com.
      - NewsSearchEntityByTicker — Identify the company by stock ticker, optionally scoped to an exchange.
        - `type` 'ticker', required
        - `ticker` string, required — Public-company ticker.
        - `exchange` 'AMEX' | 'AMS' | 'AQS' | 'ASX' | 'ATH' | 'BER' | 'BME' | 'BRU' | 'BSE' | 'BUD' | 'BUE' | 'BVC' | 'CBOE' | 'CNQ' | 'CPH' | 'DFM' | 'DOH' | 'DUB' | 'DUS' | 'DXE' | 'EGX' | 'FSX' | 'HAM' | 'HEL' | 'HKSE' | 'HOSE' | 'ICE' | 'IOB' | 'IST' | 'JKT' | 'JNB' | 'JPX' | 'KLS' | 'KOE' | 'KSC' | 'KUW' | 'LIS' | 'LSE' | 'MCX' | 'MEX' | 'MIL' | 'MUN' | 'NASDAQ' | 'NEO' | 'NSE' | 'NYSE' | 'NZE' | 'OSL' | 'OTC' | 'PAR' | 'PNK' | 'PRA' | 'RIS' | 'SAO' | 'SAU' | 'SES' | 'SET' | 'SGO' | 'SHH' | 'SHZ' | 'SIX' | 'STO' | 'STU' | 'TAI' | 'TAL' | 'TLV' | 'TSX' | 'TSXV' | 'TWO' | 'VIE' | 'WSE' | 'XETRA' — Stock exchange the ticker trades on, used to disambiguate tickers listed on multiple exchanges.
      - NewsSearchEntityByIsin — Identify the company by International Securities Identification Number.
        - `type` 'isin', required
        - `isin` string, required — International Securities Identification Number.
  - `filterBy` object — Optional result filters.
    - `includeUnverified` boolean — Include candidates that could not be entity-verified. Defaults to false.
    - `sourceDomain` string[] — Publisher domains to include.
    - `sourceCountry` string[] — Publisher countries to include, as lowercase ISO 3166-1 alpha-2 codes.
    - `articleLanguage` string[] — Article languages to include.
    - `articleType` string[] — Article types to include.
    - `date` object — Published-at window in epoch milliseconds.
      - `from` integer — Inclusive start of the published-at window, in epoch milliseconds.
      - `to` integer — Inclusive end of the published-at window, in epoch milliseconds.
  - `sortBy` object — Result ordering. Defaults to newest.
    - `type` 'relevance' | 'newest', required — Result ordering.
  - `limit` integer — Maximum results to return. Defaults to 10.
  - `cursor` string, nullable — Opaque next_cursor from the previous response, or null for the first page.
  - `tags` string[] — Optional tags for tracking usage. Up to 20 tags, each 1 to 50 characters.

## Response `200`

Company news results

- object
  - `data` object[], required
    - `id` string, required
    - `story_id` string, required — Groups matching normalized headlines published on the same UTC day.
    - `url` string, uri, required
    - `title` string, required
    - `description` string, nullable, required
    - `language` string, nullable, required
    - `authors` string[], required
    - `image_url` string, nullable, required
    - `published_at` string, date-time, nullable, required
    - `type` 'editorial' | 'press_release' | 'regulatory_filing' | 'advisory', required
    - `source` object, required
      - `name` string, required
      - `domain` string, required
      - `direct` boolean, required — True when Context observed this article in the publisher-owned feed.
    - `match` object, required
      - `level` 'primary' | 'secondary' | 'unverified', required
      - `confidence` number, nullable, required
  - `has_more` boolean, required
  - `next_cursor` string, nullable, required
  - `meta` object, required
    - `count` integer, required
    - `quality` 'complete' | 'degraded', required — Degraded means one or more candidates could not be entity-verified.
  - `key_metadata` KeyMetadata — Metadata about the API key used for the request. Included in every response whenever a valid API key is provided, even when the response status is not 200.
    - `credits_consumed` integer, required — The number of credits consumed by this request.
    - `credits_remaining` integer, required — The number of credits remaining for your organization after this request.

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `404` — Not found
- `429` — Request exceeded the applicable rate limit.
- `500` — News search failed because the index or an upstream resolver was unavailable.

---

[API](https://skmtc.net/context/apis/context-dev.md) · [All operations](https://skmtc.net/context/apis/context-dev/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/context/context-dev/versions/3c6a01ba967f/schema)
