---
title: "Get Summary"
method: GET
path: "/workspaces/{workspace_id}/analytics/summary"
tags: ["analytics"]
---

# Get Summary

`GET /workspaces/{workspace_id}/analytics/summary`

## Request

- Base URL: `https://api.reeldrop.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.reeldrop.io/workspaces/{workspace_id}/analytics/summary`
- Auth: HTTP bearer

## Path parameters

- `workspace_id` string, required

## Query parameters

- `tz_offset_minutes` integer
- `since` string, nullable
- `until` string, nullable

## Response `200`

Successful Response

- SummaryResponse
  - `total_published` integer, required
  - `total_scheduled` integer, required
  - `total_failed` integer, required
  - `ai_caption_rate` number, required
  - `ai_hashtag_rate` number, required
  - `posts_in_range` integer, required
  - `posts_by_day` DayCount[], required
    - `date` string, required
    - `count` integer, required
  - `best_hours` HourSlot[], required
    - `day` integer, required
    - `hour` integer, required
    - `count` integer, required
  - `range` RangeEcho, required: The window a response was actually built for. Always echoed so a caller labels the numbers from what came back, not from request state — the 90-day clamp and the cache can both make those differ.
    - `since` string, required
    - `until` string, required

## Other responses

- `422`: Validation Error

---

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