> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dripstack.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Search Articles by Company

> Find newsletter and podcast articles that mention a specific company.

Use `GET /api/v1/entities/search` with a `company` to find curated articles
that mention a company by name — a case-insensitive substring match, so
`company=apple` matches "Apple Inc." When a company listing is known, the
name also expands to related tickers, so tagged `$AAPL` posts are included.
Limited to enabled publications curated for chat. Free, no auth required.

## Request

The endpoint requires at least one of `ticker`, `company`, `person`,
`organization`, `subject`, or `author`. Multiple entity inputs are matched
as alternatives; `author` and the other filters narrow the results.

```bash theme={null}
curl "https://dripstack.com/api/v1/entities/search?company=apple&limit=5"
```

| Parameter | Required | Description |
| - | - | - |
| `company` | one of | Company name, minimum 2 characters, matched as a case-insensitive substring |
| `author` | one of | Source article author, minimum 2 characters, matched as a case-insensitive substring |
| `stockPicksOnly` | optional | `true` or `false` (default); only return articles linked to a stock pick when true |
| `sort` | optional | `latest` (default) or `earliest`, ordered by publication date |
| `publicationSlug` | optional | Restrict results to one publication |
| `publishedAfter` / `publishedBefore` | optional | `YYYY-MM-DD`, inclusive UTC calendar day bounds |
| `limit` | optional | 1-30, defaults to 10 |
| `cursor` | optional | Pass the previous response's `nextCursor` to fetch the next page |

Set `sort=earliest` for oldest first. Keep the same filters and sort when
following `nextCursor`. Invalid parameters, reversed date bounds, or an invalid
cursor return `400`.

## Response

```json theme={null}
{
  "query": {
    "ticker": null,
    "company": "apple",
    "person": null,
    "organization": null,
    "subject": null,
    "author": null,
    "stockPicksOnly": false,
    "sort": "latest",
    "publicationSlug": null,
    "publishedAfter": null,
    "publishedBefore": null
  },
  "matchedEntity": {
    "kind": "company",
    "name": "Apple",
    "description": "American multinational technology company",
    "companies": [{ "name": "Apple", "ticker": "AAPL" }],
    "tickers": ["AAPL"],
    "matchedVia": ["ticker", "company"]
  },
  "count": 1,
  "nextCursor": null,
  "items": [
    {
      "publicationSlug": "stratechery",
      "slug": "aapl-earnings-recap",
      "title": "Apple's Earnings Recap",
      "author": "Ben Thompson",
      "publishedAt": "2026-08-15T00:00:00.000Z",
      "priceCents": 500,
      "url": "https://stratechery.com/p/aapl-earnings-recap",
      "isPodcast": false
    }
  ]
}
```

Results are sorted by `publishedAt`, most recent first by default (`sort=latest`).
For relevance ranking, use `/api/v1/search`. `priceCents` is the price to unlock the paid post response;
the search itself is free. `isPodcast` is true for podcast episodes — the
paid post response then includes a `transcript` when ready.

## Company matching

`company` matches against the free-text company names Drip's extraction
pipeline wrote for each article, then ORs in related tickers when known.
`matchedEntity` is `null` when that expansion
misses; the raw company string is still searched. If you already know the
ticker, [Search by Ticker](/entity-search/ticker) is the direct path.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.