Weekly activity deltas and all-time totals, aggregated across the caller’s campaigns and split by channel.
?campaign_ids=):
weekly — chronological list of per-week deltas, split by linkedin / email. Derived from campaign_weekly_stats snapshots (each snapshot is cumulative; delta is the difference from the previous snapshot, summed across campaigns). The first snapshot per campaign is treated as a baseline and excluded from the series.allTime — cumulative counters summed across every campaign in the query. Read directly from campaigns.stats so it always reflects the latest engine writes, not a snapshot.campaigns array of identity tuples (id, name, type, status) for every campaign included in the rollup.
campaign_ids — comma-separated UUIDs to restrict the rollup. Omit for all campaigns the caller owns.range — all / 12w / 26w / 52w. Trims the weekly series to a trailing window. Defaults to all. Invalid values silently fall back to all.getCampaign — it’s cheaper and has status + stats directly.Weekly series needs at least two snapshots per campaign to show anything. Before the second weekly snapshot (captured Monday by the snapshot-weekly-stats cron), a campaign contributes only to allTime. This is why freshly-launched campaigns show allTime totals but empty weekly buckets — that’s expected, not a bug.Empty stats buckets aren’t errors. weekly: [] with allTime.linkedin: {} and allTime.email: {} means the caller has no campaigns yet.No LLM or external calls. Pure database read — safe to hit at normal UI refresh cadences (e.g. every 30–60 s on an open dashboard).Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Comma-separated campaign UUIDs to restrict the rollup to a subset. Omit to aggregate across every campaign the caller owns.
Trailing window for the weekly series. Defaults to all when omitted or invalid.
all, 12w, 26w, 52w Rollup for the requested campaigns and range. Empty weekly and empty buckets are not errors — they just mean the caller has no campaigns or no deltas yet.
Analytics payload ready to feed a dashboard — no post-processing needed by the caller.
Chronological list of weekly deltas (oldest → newest). Empty when the caller has no campaigns.
Cumulative totals summed across every campaign in the query — pulled directly from campaigns.stats at read time, so it always reflects the latest engine writes (not a weekly snapshot).
Identity tuples for the campaigns included in this rollup. Empty when the caller has no campaigns.