JS SDK: /api/v2/conversations vs /api/v2/analytics/conversations data mismatch

Pulling active conversation data for a dashboard widget. The JS SDK exposes methods for both /api/v2/conversations and /api/v2/analytics/conversations. The v2 endpoint returns real-time state but lacks historical context. The analytics endpoint has the history but feels like a laggy snapshot.

const convs = await client.conversationsApi.getConversations({
 pageSize: 100,
 domain: 'all'
});

const analyticsConvs = await client.analyticsApi.getConversationsData({
 body: {
 entities: [{ id: 'all', type: 'conversation' }],
 filters: [{ dimension: 'state', operator: 'contains', values: ['active'] }],
 interval: 'PT1H'
 }
});

The conversationsApi response has 45 items. The analyticsApi response shows 42 for the same time window. The IDs don’t overlap perfectly. Is there a caching layer on the analytics side causing this drift, or am I missing a filter parameter?

  • Node.js 20 LTS
  • @genesyscloud/api-client@4.1.2
  • Region: US East
  • Timezone: WAT (UTC+1)
  • Tried adding includeMetrics: true to analytics call
  • Checked Retry-After headers on both calls