API documentation · Entity mentions

Company mentions API endpoint

GET /api/v1/entity-mentions/ Cursor pagination · newest first

All requests go to https://subalytics.com/api/v1/ with your key in the X-API-key header. Authentication, pagination, date filters and responses & errors apply to every endpoint.

One row per company mention in one piece of content, across all three sources. Filter by symbol to see who is talking about a company, or by sub_id to see which companies a creator or podcast talks about.

Query parameters

ParameterTypeDescription
mention_idstringOne mention
symbolstringMentions of one company
sourcestringsubstack, bluesky or podcast; omit for all
sub_idstringMentions by one creator or in one podcast
content_idstringMentions in one post or episode (post_id, post_uri or episode_sub_id)
match_typestringcashtag, company_name, alias, product or ticker
min_confidencenumber0.5–1.0, default 0.7
published_fromdateContent published on or after
published_todateContent published on or before
updated_fromdateMention last changed on or after (use for sync)
updated_todateMention last changed on or before
limitintResults per page (default 25, max 100)
cursorstringnext_cursor from the previous page

Response fields

FieldTypeDescription
mention_idstringPublic mention ID
symbolstringCompany ticker
company_namestringOfficial company name
sourcestringsubstack, bluesky or podcast
content_idstringID of the post or episode on its content endpoint
sub_idstringThe creator or podcast
content_urlstring | nullLink to the original post or episode page
published_utcdateWhen the content was published
match_typestringWhat was matched: cashtag, company_name, alias, product or ticker
matched_textstringThe text as it appeared in the content
confidencenumber0–1
snippetstringThe sentence or passage around the mention
fieldstring | nullPosts only: where the match was found
start, endnumber | nullPodcasts only: seconds from the start of the audio
created_atdateWhen the mention was first found
updated_atdateWhen the mention last changed (e.g. re-scored)

Example

GET /api/v1/entity-mentions/?symbol=META&published_from=2026-09-20&limit=2
{
  "success": true,
  "results": [
    {
      "mention_id": "9f2c41d07ab35e18",
      "symbol": "META",
      "company_name": "Meta Platforms, Inc.",
      "source": "bluesky",
      "content_id": "at://did:plc:exampleaccount000000000/app.bsky.feed.post/3lqz7x2kfbc2s",
      "sub_id": "e81a3f90c2",
      "content_url": "https://bsky.app/profile/did:plc:exampleaccount000000000/post/3lqz7x2kfbc2s",
      "published_utc": "2026-09-27T14:02:11Z",
      "match_type": "cashtag",
      "matched_text": "$META",
      "confidence": 0.95,
      "snippet": "$META up 4% premarket after ad revenue beat.",
      "field": "text",
      "start": null,
      "end": null,
      "created_at": "2026-09-27T14:03:40Z",
      "updated_at": "2026-09-27T14:03:40Z"
    },
    {
      "mention_id": "c07e5b1a94d2f836",
      "symbol": "META",
      "company_name": "Meta Platforms, Inc.",
      "source": "podcast",
      "content_id": "c41f7a09e2b85d13",
      "sub_id": "a1b2c3d4e5",
      "content_url": "https://example.com/podcast/episodes/248",
      "published_utc": "2026-09-24T16:38:09Z",
      "match_type": "product",
      "matched_text": "instagram",
      "confidence": 0.78,
      "snippet": "and instagram is basically where every small brand does its marketing now",
      "field": null,
      "start": 1834.2,
      "end": 1841.9,
      "created_at": "2026-09-25T07:15:03Z",
      "updated_at": "2026-09-25T07:15:03Z"
    }
  ],
  "returned_results": 2,
  "limit": 2,
  "next_cursor": "6a7d9a11c8173839e2253ae4"
}