Analytics

Read-only metrics, refreshed hourly by the analytics sync crons.

GET/analyticsanalytics:read

Query: period = 7d | 30d (default) | 90d | all; platform (filter); limit (default 200, max 500).

responsejson
{
  "period": "30d",
  "summary": {
    "totals":    { "views": 12000, "likes": 800, "comments": 45, "shares": 30 },
    "byPlatform": { "instagram": { "views": 9000, "likes": 600 } }
  },
  "posts": [
    {
      "postId": "…", "caption": "…", "publishedAt": "2026-07-01T…",
      "platform": "instagram",
      "views": 9000, "likes": 600, "comments": 40, "shares": 20,
      "reach": 8000, "saves": 15, "impressions": 9500, "reposts": null,
      "totalInteractions": 675, "fetchedAt": "2026-07-13T08:00:00Z", "error": null
    }
  ]
}