Omnist API
API Reference

News clusters

List story clusters and fetch cluster members.

GET /v1/news/clusters

Lists non-stub story clusters ordered by cluster creation time. Use this for feeds, research queues, or any surface that wants stories rather than individual articles.

Query parameters

ParameterTypeNotes
start_dateISO date or datetimeStart of cluster creation window. Defaults to recent clusters.
end_dateISO date or datetimeEnd of cluster creation window.
limitnumberDefault 25, maximum 100.
offsetnumberDefault 0.

Response

{
  "clusters": [
    {
      "cluster_id": "cluster_...",
      "cluster_type": "cluster",
      "status": "regular",
      "featured_status": "standard",
      "title": "Example story cluster",
      "abstract": "A short description of the story.",
      "member_count": 8,
      "unique_source_count": 5,
      "source_keys": ["example.com"],
      "key_entities": ["Example Company"],
      "key_ideas": ["Export controls"],
      "first_published_at": "2026-05-07T10:00:00Z",
      "latest_published_at": "2026-05-07T14:03:00Z",
      "latest_member_added_at": "2026-05-07T14:05:00Z",
      "profile_version": 1,
      "created_at": "2026-05-07T14:06:00Z",
      "updated_at": "2026-05-07T14:06:00Z"
    }
  ],
  "limit": 25,
  "offset": 0,
  "next_offset": null,
  "has_more": false
}

GET /v1/news/clusters/{cluster_id}

Fetches one cluster and the articles assigned to it. Looking up a specific cluster ID can return a stub cluster.

Response

{
  "cluster": {
    "cluster_id": "cluster_...",
    "cluster_type": "cluster",
    "title": "Example story cluster",
    "member_count": 8
  },
  "members": [
    {
      "cluster_member_id": "member_...",
      "content_id": "content_...",
      "published_date": "2026-05-07T14:03:00Z",
      "assigned_at": "2026-05-07T14:05:00Z",
      "link_confidence": "high",
      "source_key": "example.com",
      "content_item": {
        "id": "content_...",
        "title": "Example article"
      }
    }
  ]
}

On this page