# Substack posts with mentions: API endpoint

Source: https://subalytics.com/docs/entity-substack-posts/

> GET /api/v1/entity-substack-posts/: Substack posts that mention at least one monitored company, each with its entities. Parameters and example.

`GET /api/v1/entity-substack-posts/` (Cursor pagination · newest first). Base URL `https://subalytics.com/api/v1/`, API key in the `X-API-key` header; authentication, pagination, dates and errors: https://subalytics.com/docs/

Substack posts that mention at least one monitored company, each with its `entities[]`. This is separate from [`/api/v1/substack-posts/`](https://subalytics.com/docs/substack-posts/), which returns all posts. Post bodies are not returned: only the title, subtitle, description and the mention snippets.

## Query parameters

| Parameter | Type | Description |
|---|---|---|
| `post_id` | string | One post |
| `sub_id` | string | Posts by one creator |
| `symbol` | string | Posts mentioning one company |
| `min_confidence` | number | 0.5–1.0, default 0.7 |
| `published_from` | date | Published on or after |
| `published_to` | date | Published on or before |
| `updated_from` | date | Mentions last changed on or after (use for sync) |
| `updated_to` | date | Mentions last changed on or before |
| `limit` | int | Results per page (default 25, max 100) |
| `cursor` | string | next_cursor from the previous page |

## Response fields

| Field | Type | Description |
|---|---|---|
| `post_id` | string | Public post ID; content_id in entity-mentions |
| `sub_id` | string | The creator |
| `author_name` | string \| null | Author |
| `title` | string \| null | Post title |
| `subtitle` | string \| null | Post subtitle |
| `description` | string \| null | Post description |
| `canonical_url` | string | Link to the post |
| `published_utc` | date | When the post was published |
| `entities` | array | Company mentions: mention_id, symbol, company_name, match_type, matched_text, confidence, snippet, field |
| `created_at` | date | When the post first appeared in this product |
| `updated_at` | date | When its mentions last changed |

## Example

```
GET /api/v1/entity-substack-posts/?symbol=META&limit=1
```

```
{
  "success": true,
  "results": [
    {
      "post_id": "173920451",
      "sub_id": "803b198749",
      "author_name": "Jane Writer",
      "title": "The Ad Market Reset",
      "subtitle": "Instagram now drives more ad revenue than the core app.",
      "description": "Why Meta and Google are fighting over the same small advertisers.",
      "canonical_url": "https://newsletter.example.com/p/the-ad-market-reset",
      "published_utc": "2026-09-20T11:00:00Z",
      "entities": [
        {
          "mention_id": "51b8e2d7f03a9c64",
          "symbol": "META",
          "company_name": "Meta Platforms, Inc.",
          "match_type": "product",
          "matched_text": "Instagram",
          "confidence": 0.78,
          "snippet": "Instagram now drives more ad revenue than the core app.",
          "field": "subtitle"
        },
        {
          "mention_id": "a3d90c6e18f2b475",
          "symbol": "GOOGL",
          "company_name": "Alphabet Inc.",
          "match_type": "alias",
          "matched_text": "Google",
          "confidence": 0.84,
          "snippet": "Why Meta and Google are fighting over the same small advertisers.",
          "field": "description"
        }
      ],
      "created_at": "2026-09-20T12:31:17Z",
      "updated_at": "2026-09-20T12:31:17Z"
    }
  ],
  "returned_results": 1,
  "limit": 1,
  "next_cursor": "6a7d9b02c8173839e2253b10"
}
```
