---
title: "Get workspace analytics totals"
method: GET
path: "/v0/analytics/overview"
tags: ["Analytics"]
---

# Get workspace analytics totals

`GET /v0/analytics/overview`

## Request

- Base URL: `https://api.schedulin.app`
- URL: `https://api.schedulin.app/v0/analytics/overview`
- Auth: one of:
  - API key in header `x-api-key`
  - OAuth 2 (authorization code, authorization URL `https://api.schedulin.app/oauth/authorize`, token URL `https://api.schedulin.app/oauth/token`, scopes: `analytics:read`)

Aggregate engagement totals (impressions, reach, likes, comments, shares, saves, video views, clicks, engagement), follower audience and posts published for the window, plus percent change vs the previous window of the same length. Covers posts published from the workspace's connected accounts. Filter with `platforms` and `socialAccountIds`; `from`/`to` may span up to 400 days. Metrics are collected periodically per post, so the most recent hours may still be filling in.

## Query parameters

- `from` string, required: Start of the window (inclusive), ISO 8601. The window may span up to 400 days.
- `to` string, required: End of the window (exclusive), ISO 8601
- `platforms` string[]: Only include these platforms
- `socialAccountIds` string[]: Only include these social accounts

## Response `200`

OK

- object
  - `totals` object, required
    - `impressions` integer, required
    - `reach` integer, required
    - `likes` integer, required
    - `comments` integer, required
    - `shares` integer, required
    - `saves` integer, required
    - `videoViews` integer, required
    - `clicks` integer, required
    - `linkClicks` integer, required
    - `engagement` integer, required
    - `audience` integer, required: Sum of the latest follower count of each account at `to`
    - `postsPublished` integer, required
  - `trend` object, required: Percent change vs the previous window of the same length: 0 when both windows are zero, null when only the previous window is zero
    - `impressions` number, nullable, required
    - `engagement` number, nullable, required
    - `likes` number, nullable, required
    - `audience` number, nullable, required

## Other responses

- `400`: Bad Request — the request isn't allowed in the resource's current state (e.g. editing a published post).
- `401`: Unauthorized — missing or invalid API key / access token.
- `403`: Forbidden — the credential lacks the required scope or access.
- `422`: Unprocessable request. Schema validation failures have `code: "INPUT_VALIDATION_FAILED"` and `data.fieldErrors` mapping each invalid field to its messages (nested issues name their full path, e.g. `media[0].url: ...`). Business-rule rejections (e.g. a `scheduledAt` in the past) have `code: "UNPROCESSABLE_CONTENT"` and carry the reason in `data.message` and `data.formErrors`.
- `429`: Rate limit exceeded. Wait `Retry-After` seconds before retrying.
- `500`: Internal Server Error

---

[API](https://skmtc.dev/schedulin/apis/schedulin-api.md) · [All operations](https://skmtc.dev/schedulin/apis/schedulin-api/llms.txt) · [OpenAPI document](https://skmtc.dev/schedulin/apis/schedulin-api/revisions/17e886f3bcf3?raw)
