Misar IO Docs

Stats & TrendPulse

Dashboard overview stats, post engagement metrics, and TrendPulse trend tracking via the MisarSocial API.

Dashboard Stats

GET /api/stats

Returns overview stats for the authenticated user's dashboard. Data is aggregated across all connected accounts.

Response

{
  "connectedAccounts": 3,
  "queuedPosts": 12,
  "publishedThisWeek": 8,
  "publishedThisMonth": 24,
  "drafts": 5,
  "lastPost": {
    "platform": "twitter",
    "content_text": "Just launched...",
    "published_at": "2026-05-21T14:30:00+00:00",
    "platform_post_url": "https://x.com/..."
  },
  "topPerformingPost": {
    "platform": "linkedin",
    "likes": 142,
    "comments": 28,
    "reposts": 19,
    "impressions": 4820,
    "contentSnippet": "We just open-sourced our TypeScript SDK...",
    "publishedAt": "2026-05-15T10:00:00+00:00"
  },
  "avgEngagementRate": 4.37
}
connectedAccountsnumber

Number of active connected social accounts.

queuedPostsnumber

Posts currently in queued, pending, or publishing status.

publishedThisWeeknumber

Posts published in the last 7 days.

publishedThisMonthnumber

Posts published since the start of the current calendar month.

draftsnumber

Variants in draft or pending_review status.

topPerformingPostobject | null

Highest-engagement post in the last 30 days by total likes. null if no posts have metrics yet.

avgEngagementRatenumber | null

Average engagement rate (%) across all posts with metrics in the last 30 days. Calculated as (likes + comments + reposts) / impressions * 100. null if no metrics exist.


GET /api/trendpulse

Returns trend snapshots for the user's configured niches. Serves from cache if snapshots are less than 2 hours old; otherwise triggers a live refresh.

Response

{
  "trends": [
    {
      "id": "550e8400-...",
      "hashtag": "#AIEngineering",
      "niche": "technology",
      "source": "twitter",
      "score": 94.2,
      "growth_pct": 38.5,
      "volume": 14200,
      "lifecycle": "rising",
      "sampled_at": "2026-05-21T12:00:00+00:00"
    }
  ],
  "source": "cache"
}
trendsarray

Up to 30 trend snapshots ordered by score descending.

trends[].lifecyclestring

Trend lifecycle stage: emerging, rising, peak, declining.

trends[].growth_pctnumber

Volume growth percentage vs. 24 hours ago.

sourcestring

"cache" if served from DB cache, "live" if freshly fetched.


TrendPulse — Trigger Pipeline

POST /api/trendpulse

Generates draft post variants from selected trend snapshots. Creates one draft per snapshot per connected platform.

Body

snapshotIdsstring[]required

Array of trend snapshot UUIDs to generate content for. Min 1, max 3.

Response

{ "queued": ["uuid-1", "uuid-2", "uuid-3"] }
queuedstring[]

UUIDs of the newly created draft post variants.

Generated drafts appear in /api/drafts with source: "trendpulse". Approve them from the Drafts view before scheduling.