---
title: "Profile stats"
method: GET
path: "/api/profiles/{id}/stats"
tags: ["Profiles"]
---

# Profile stats

`GET /api/profiles/{id}/stats`

## Request

- Base URL: `https://api.postproxy.dev`
- URL: `https://api.postproxy.dev/api/profiles/{id}/stats`
- Auth: HTTP bearer

Retrieves the full stats timeseries for a profile. Snapshots are captured roughly every 23 hours; for networks with multiple placements, placement_id is required so the response is scoped to a single placement.

## Path parameters

- `id` string, required

## Query parameters

- `profile_group_id` string
- `placement_id` string
- `from` string
- `to` string

## Response `200`

Stats timeseries for the profile

- object
  - `data` object
    - `profile_id` string: Profile ID.
    - `platform` string: Network name (facebook, linkedin, bluesky, etc.).
    - `placement_id` string, nullable: The placement filter that was applied (echo of the request). null for non-placement networks.
    - `records` object[]: Snapshots ordered by recorded_at ascending.
      - `stats` object: Platform-specific metrics. Keys come straight from each platform's API and are not normalized into a common schema.
      - `recorded_at` string: ISO 8601 timestamp when the snapshot was captured.

## Other responses

- `400`: Missing required parameters.
- `401`: Invalid, missing, or insufficient API key permissions.
- `404`: Resource does not exist or is not accessible.

---

[API](https://skmtc.dev/postproxy/apis/postproxy-social-media-api.md) - [All operations](https://skmtc.dev/postproxy/apis/postproxy-social-media-api/llms.txt) - [OpenAPI document](https://skmtc.dev/postproxy/apis/postproxy-social-media-api/revisions/d54482ac4ce7?raw)
