---
title: "Compare attributed social performance"
method: GET
path: "/api/v1/analytics"
tags: ["Analytics"]
---

# Compare attributed social performance

`GET /api/v1/analytics`

## Request

- Base URL: `https://blendduck.com`
- URL: `https://blendduck.com/api/v1/analytics`
- Auth: HTTP bearer

Compare attributed social performance.

## Query parameters

- `start` string, date-time, required
- `end` string, date-time, required
- `comparison` 'previous_period' | 'previous_week' | 'previous_month' | 'previous_year' | 'none'
- `comparisonStart` string, date-time
- `comparisonEnd` string, date-time
- `timezone` string
- `channelIds` string
- `tagValues` string
- `contentKinds` string
- `metrics` string
- `groupBy` 'auto' | 'day' | 'week' | 'month'
- `sortBy` string
- `sortOrder` 'asc' | 'desc'
- `page` integer
- `pageSize` integer

## Headers

- `X-Request-ID` string

## Response `200`

Attributed analytics view

- AnalyticsResponse
  - `data` object, required
    - `range` object, required
      - `start` string, date-time, required
      - `end` string, date-time, required
    - `comparisonRange` object, nullable, required
      - `start` string, date-time, required
      - `end` string, date-time, required
    - `timezone` string, required
    - `groupBy` 'day' | 'week' | 'month', required
    - `summary` object[], required
      - `key` string, required
      - `label` string, required
      - `format` 'integer' | 'percent' | 'duration_minutes' | 'duration_seconds', required
      - `aggregation` 'sum' | 'latest' | 'delta' | 'provider' | 'recompute', required
      - `value` number, nullable, required
      - `previousValue` number, nullable, required
      - `change` number, nullable, required
      - `changePercent` number, nullable, required
      - `availableChannels` integer, required
      - `unavailableChannels` integer, required
    - `series` object[], required
      - `key` string, required
      - `start` string, date-time, required
      - `metrics` object, required
    - `channelSeries` object[], required
      - `channelId` string, uuid, required
      - `channelName` string, required
      - `platform` string, required
      - `points` object[], required
        - `key` string, required
        - `start` string, date-time, required
        - `metrics` object, required
    - `channels` object[], required
      - `id` string, uuid, required
      - `name` string, required
      - `platform` string, required
      - `picture` string, nullable, required
      - `metrics` object, required
      - `previousMetrics` object, required
      - `freshness` object, required
        - `state` 'idle' | 'running' | 'ready' | 'delayed' | 'permission_required' | 'rate_limited' | 'failed' | 'unsupported' | 'never_synced', required
        - `dataThrough` string, date-time, nullable, required
        - `lastCompletedAt` string, date-time, nullable, required
        - `delayedBySeconds` number, nullable, required
        - `message` string, required
    - `posts` object[], required
      - `id` string, uuid, required
      - `providerPostId` string, required
      - `channelId` string, uuid, required
      - `channelName` string, required
      - `platform` string, required
      - `content` string, required
      - `kind` 'article' | 'carousel' | 'image' | 'link' | 'post' | 'reel' | 'short' | 'story' | 'text' | 'video', required
      - `source` 'blendduck' | 'native', required
      - `permalink` string, nullable, required
      - `thumbnailUrl` string, nullable, required
      - `publishedAt` string, date-time, required
      - `tags` string[], required
      - `metrics` object, required
      - `nativeMetrics` object, required
      - `dataThrough` string, date-time, nullable, required
      - `postTargetId` string, uuid, nullable, required
      - `attribution` union, required
        - object
          - `source` 'manual', required
          - `appliedAt` string, date-time, required
          - `appliedBy` string, uuid, nullable, required
        - object
          - `source` 'ai', required
          - `model` string, required
          - `action` string, required
          - `promptHash` string, required
          - `generatedAt` string, date-time, required
          - `appliedAt` string, date-time, required
          - `appliedBy` string, uuid, nullable, required
        - object
          - `source` 'api' | 'imported', required
          - `appliedAt` string, date-time, required
          - `appliedBy` string, uuid, nullable, required
          - `metadata` object
      - `approvalHistory` object[], required
        - `state` 'draft' | 'author_approved', required
        - `action` 'draft' | 'schedule' | 'next' | 'prioritize' | 'now' | 'update', required
        - `actorId` string, uuid, nullable, required
        - `occurredAt` string, date-time, required
      - `approvalCycles` object[], required
        - `id` string, uuid, required
        - `version` integer, required
        - `status` 'PENDING' | 'CHANGES_REQUESTED' | 'APPROVED' | 'REJECTED' | 'EXPIRED' | 'REVOKED', required
        - `policyMode` 'none' | 'optional' | 'required' | 'multi_level', required
        - `policyRevision` integer, required
        - `currentStageIndex` integer, required
        - `requestedAt` string, date-time, required
        - `expiresAt` string, date-time, nullable, required
        - `finalizedAt` string, date-time, nullable, required
        - `requestedBy` object, nullable, required
          - `id` string, uuid, required
          - `name` string, nullable, required
        - `stages` object[], required
          - `key` string, required
          - `name` string, required
          - `requiredApprovals` integer, required
          - `approverCount` integer, required
        - `decisions` object[], required
          - `id` string, uuid, required
          - `action` 'SUBMITTED' | 'APPROVED' | 'CHANGES_REQUESTED' | 'REJECTED' | 'EXPIRED' | 'REVOKED', required
          - `stageKey` string, nullable, required
          - `note` string, nullable, required
          - `actor` object, nullable, required
            - `id` string, uuid, required
            - `name` string, nullable, required
          - `occurredAt` string, date-time, required
      - `topic` object, nullable, required
        - `id` string, uuid, required
        - `title` string, nullable, required
    - `topPosts` object, required
      - `impressions` object[], required
        - `id` string, uuid, required
        - `providerPostId` string, required
        - `channelId` string, uuid, required
        - `channelName` string, required
        - `platform` string, required
        - `content` string, required
        - `kind` 'article' | 'carousel' | 'image' | 'link' | 'post' | 'reel' | 'short' | 'story' | 'text' | 'video', required
        - `source` 'blendduck' | 'native', required
        - `permalink` string, nullable, required
        - `thumbnailUrl` string, nullable, required
        - `publishedAt` string, date-time, required
        - `tags` string[], required
        - `metrics` object, required
        - `nativeMetrics` object, required
        - `dataThrough` string, date-time, nullable, required
        - `postTargetId` string, uuid, nullable, required
        - `attribution` union, required
          - object
            - `source` 'manual', required
            - `appliedAt` string, date-time, required
            - `appliedBy` string, uuid, nullable, required
          - object
            - `source` 'ai', required
            - `model` string, required
            - `action` string, required
            - `promptHash` string, required
            - `generatedAt` string, date-time, required
            - `appliedAt` string, date-time, required
            - `appliedBy` string, uuid, nullable, required
          - object
            - `source` 'api' | 'imported', required
            - `appliedAt` string, date-time, required
            - `appliedBy` string, uuid, nullable, required
            - `metadata` object
        - `approvalHistory` object[], required
          - `state` 'draft' | 'author_approved', required
          - `action` 'draft' | 'schedule' | 'next' | 'prioritize' | 'now' | 'update', required
          - `actorId` string, uuid, nullable, required
          - `occurredAt` string, date-time, required
        - `approvalCycles` object[], required
          - `id` string, uuid, required
          - `version` integer, required
          - `status` 'PENDING' | 'CHANGES_REQUESTED' | 'APPROVED' | 'REJECTED' | 'EXPIRED' | 'REVOKED', required
          - `policyMode` 'none' | 'optional' | 'required' | 'multi_level', required
          - `policyRevision` integer, required
          - `currentStageIndex` integer, required
          - `requestedAt` string, date-time, required
          - `expiresAt` string, date-time, nullable, required
          - `finalizedAt` string, date-time, nullable, required
          - `requestedBy` object, nullable, required
            - `id` string, uuid, required
            - `name` string, nullable, required
          - `stages` object[], required
            - `key` string, required
            - `name` string, required
            - `requiredApprovals` integer, required
            - `approverCount` integer, required
          - `decisions` object[], required
            - `id` string, uuid, required
            - `action` 'SUBMITTED' | 'APPROVED' | 'CHANGES_REQUESTED' | 'REJECTED' | 'EXPIRED' | 'REVOKED', required
            - `stageKey` string, nullable, required
            - `note` string, nullable, required
            - `actor` object, nullable, required
              - …
            - `occurredAt` string, date-time, required
        - `topic` object, nullable, required
          - `id` string, uuid, required
          - `title` string, nullable, required
      - `engagements` object[], required
        - `id` string, uuid, required
        - `providerPostId` string, required
        - `channelId` string, uuid, required
        - `channelName` string, required
        - `platform` string, required
        - `content` string, required
        - `kind` 'article' | 'carousel' | 'image' | 'link' | 'post' | 'reel' | 'short' | 'story' | 'text' | 'video', required
        - `source` 'blendduck' | 'native', required
        - `permalink` string, nullable, required
        - `thumbnailUrl` string, nullable, required
        - `publishedAt` string, date-time, required
        - `tags` string[], required
        - `metrics` object, required
        - `nativeMetrics` object, required
        - `dataThrough` string, date-time, nullable, required
        - `postTargetId` string, uuid, nullable, required
        - `attribution` union, required
          - object
            - `source` 'manual', required
            - `appliedAt` string, date-time, required
            - `appliedBy` string, uuid, nullable, required
          - object
            - `source` 'ai', required
            - `model` string, required
            - `action` string, required
            - `promptHash` string, required
            - `generatedAt` string, date-time, required
            - `appliedAt` string, date-time, required
            - `appliedBy` string, uuid, nullable, required
          - object
            - `source` 'api' | 'imported', required
            - `appliedAt` string, date-time, required
            - `appliedBy` string, uuid, nullable, required
            - `metadata` object
        - `approvalHistory` object[], required
          - `state` 'draft' | 'author_approved', required
          - `action` 'draft' | 'schedule' | 'next' | 'prioritize' | 'now' | 'update', required
          - `actorId` string, uuid, nullable, required
          - `occurredAt` string, date-time, required
        - `approvalCycles` object[], required
          - `id` string, uuid, required
          - `version` integer, required
          - `status` 'PENDING' | 'CHANGES_REQUESTED' | 'APPROVED' | 'REJECTED' | 'EXPIRED' | 'REVOKED', required
          - `policyMode` 'none' | 'optional' | 'required' | 'multi_level', required
          - `policyRevision` integer, required
          - `currentStageIndex` integer, required
          - `requestedAt` string, date-time, required
          - `expiresAt` string, date-time, nullable, required
          - `finalizedAt` string, date-time, nullable, required
          - `requestedBy` object, nullable, required
            - `id` string, uuid, required
            - `name` string, nullable, required
          - `stages` object[], required
            - `key` string, required
            - `name` string, required
            - `requiredApprovals` integer, required
            - `approverCount` integer, required
          - `decisions` object[], required
            - `id` string, uuid, required
            - `action` 'SUBMITTED' | 'APPROVED' | 'CHANGES_REQUESTED' | 'REJECTED' | 'EXPIRED' | 'REVOKED', required
            - `stageKey` string, nullable, required
            - `note` string, nullable, required
            - `actor` object, nullable, required
              - …
            - `occurredAt` string, date-time, required
        - `topic` object, nullable, required
          - `id` string, uuid, required
          - `title` string, nullable, required
      - `reactions` object[], required
        - `id` string, uuid, required
        - `providerPostId` string, required
        - `channelId` string, uuid, required
        - `channelName` string, required
        - `platform` string, required
        - `content` string, required
        - `kind` 'article' | 'carousel' | 'image' | 'link' | 'post' | 'reel' | 'short' | 'story' | 'text' | 'video', required
        - `source` 'blendduck' | 'native', required
        - `permalink` string, nullable, required
        - `thumbnailUrl` string, nullable, required
        - `publishedAt` string, date-time, required
        - `tags` string[], required
        - `metrics` object, required
        - `nativeMetrics` object, required
        - `dataThrough` string, date-time, nullable, required
        - `postTargetId` string, uuid, nullable, required
        - `attribution` union, required
          - object
            - `source` 'manual', required
            - `appliedAt` string, date-time, required
            - `appliedBy` string, uuid, nullable, required
          - object
            - `source` 'ai', required
            - `model` string, required
            - `action` string, required
            - `promptHash` string, required
            - `generatedAt` string, date-time, required
            - `appliedAt` string, date-time, required
            - `appliedBy` string, uuid, nullable, required
          - object
            - `source` 'api' | 'imported', required
            - `appliedAt` string, date-time, required
            - `appliedBy` string, uuid, nullable, required
            - `metadata` object
        - `approvalHistory` object[], required
          - `state` 'draft' | 'author_approved', required
          - `action` 'draft' | 'schedule' | 'next' | 'prioritize' | 'now' | 'update', required
          - `actorId` string, uuid, nullable, required
          - `occurredAt` string, date-time, required
        - `approvalCycles` object[], required
          - `id` string, uuid, required
          - `version` integer, required
          - `status` 'PENDING' | 'CHANGES_REQUESTED' | 'APPROVED' | 'REJECTED' | 'EXPIRED' | 'REVOKED', required
          - `policyMode` 'none' | 'optional' | 'required' | 'multi_level', required
          - `policyRevision` integer, required
          - `currentStageIndex` integer, required
          - `requestedAt` string, date-time, required
          - `expiresAt` string, date-time, nullable, required
          - `finalizedAt` string, date-time, nullable, required
          - `requestedBy` object, nullable, required
            - `id` string, uuid, required
            - `name` string, nullable, required
          - `stages` object[], required
            - `key` string, required
            - `name` string, required
            - `requiredApprovals` integer, required
            - `approverCount` integer, required
          - `decisions` object[], required
            - `id` string, uuid, required
            - `action` 'SUBMITTED' | 'APPROVED' | 'CHANGES_REQUESTED' | 'REJECTED' | 'EXPIRED' | 'REVOKED', required
            - `stageKey` string, nullable, required
            - `note` string, nullable, required
            - `actor` object, nullable, required
              - …
            - `occurredAt` string, date-time, required
        - `topic` object, nullable, required
          - `id` string, uuid, required
          - `title` string, nullable, required
      - `comments` object[], required
        - `id` string, uuid, required
        - `providerPostId` string, required
        - `channelId` string, uuid, required
        - `channelName` string, required
        - `platform` string, required
        - `content` string, required
        - `kind` 'article' | 'carousel' | 'image' | 'link' | 'post' | 'reel' | 'short' | 'story' | 'text' | 'video', required
        - `source` 'blendduck' | 'native', required
        - `permalink` string, nullable, required
        - `thumbnailUrl` string, nullable, required
        - `publishedAt` string, date-time, required
        - `tags` string[], required
        - `metrics` object, required
        - `nativeMetrics` object, required
        - `dataThrough` string, date-time, nullable, required
        - `postTargetId` string, uuid, nullable, required
        - `attribution` union, required
          - object
            - `source` 'manual', required
            - `appliedAt` string, date-time, required
            - `appliedBy` string, uuid, nullable, required
          - object
            - `source` 'ai', required
            - `model` string, required
            - `action` string, required
            - `promptHash` string, required
            - `generatedAt` string, date-time, required
            - `appliedAt` string, date-time, required
            - `appliedBy` string, uuid, nullable, required
          - object
            - `source` 'api' | 'imported', required
            - `appliedAt` string, date-time, required
            - `appliedBy` string, uuid, nullable, required
            - `metadata` object
        - `approvalHistory` object[], required
          - `state` 'draft' | 'author_approved', required
          - `action` 'draft' | 'schedule' | 'next' | 'prioritize' | 'now' | 'update', required
          - `actorId` string, uuid, nullable, required
          - `occurredAt` string, date-time, required
        - `approvalCycles` object[], required
          - `id` string, uuid, required
          - `version` integer, required
          - `status` 'PENDING' | 'CHANGES_REQUESTED' | 'APPROVED' | 'REJECTED' | 'EXPIRED' | 'REVOKED', required
          - `policyMode` 'none' | 'optional' | 'required' | 'multi_level', required
          - `policyRevision` integer, required
          - `currentStageIndex` integer, required
          - `requestedAt` string, date-time, required
          - `expiresAt` string, date-time, nullable, required
          - `finalizedAt` string, date-time, nullable, required
          - `requestedBy` object, nullable, required
            - `id` string, uuid, required
            - `name` string, nullable, required
          - `stages` object[], required
            - `key` string, required
            - `name` string, required
            - `requiredApprovals` integer, required
            - `approverCount` integer, required
          - `decisions` object[], required
            - `id` string, uuid, required
            - `action` 'SUBMITTED' | 'APPROVED' | 'CHANGES_REQUESTED' | 'REJECTED' | 'EXPIRED' | 'REVOKED', required
            - `stageKey` string, nullable, required
            - `note` string, nullable, required
            - `actor` object, nullable, required
              - …
            - `occurredAt` string, date-time, required
        - `topic` object, nullable, required
          - `id` string, uuid, required
          - `title` string, nullable, required
    - `audience` object[], required
      - `dimension` string, required
      - `segment` string, required
      - `value` number, nullable, required
      - `percentage` number, nullable, required
      - `channelId` string, uuid, required
      - `capturedAt` string, date-time, required
    - `insights` object, required
      - `byContentType` object[], required
        - `key` string, required
        - `label` string, required
        - `postCount` integer, required
        - `metrics` object, required
      - `byTag` object[], required
        - `key` string, required
        - `label` string, required
        - `postCount` integer, required
        - `metrics` object, required
      - `byAttributionSource` object[], required
        - `key` string, required
        - `label` string, required
        - `postCount` integer, required
        - `metrics` object, required
      - `byAiModel` object[], required
        - `key` string, required
        - `label` string, required
        - `postCount` integer, required
        - `metrics` object, required
      - `byTopic` object[], required
        - `key` string, required
        - `label` string, required
        - `postCount` integer, required
        - `metrics` object, required
      - `byApprovalStatus` object[], required
        - `key` string, required
        - `label` string, required
        - `postCount` integer, required
        - `metrics` object, required
      - `byWeekday` object[], required
        - `key` string, required
        - `label` string, required
        - `postCount` integer, required
        - `metrics` object, required
      - `byHour` object[], required
        - `key` string, required
        - `label` string, required
        - `postCount` integer, required
        - `metrics` object, required
      - `frequency` object, required
        - `totalPosts` integer, required
        - `activeWeeks` integer, required
        - `averagePostsPerWeek` number, nullable, required
        - `metricsPerPost` object, required
    - `pagination` object, required
      - `page` integer, required
      - `pageSize` integer, required
      - `total` integer, required
      - `pages` integer, required
    - `freshness` object, required
      - `state` 'idle' | 'running' | 'ready' | 'delayed' | 'permission_required' | 'rate_limited' | 'failed' | 'unsupported' | 'never_synced', required
      - `dataThrough` string, date-time, nullable, required
      - `lastCompletedAt` string, date-time, nullable, required
      - `delayedBySeconds` number, nullable, required
      - `message` string, required
    - `availableTags` string[], required
    - `generatedAt` string, date-time, required
  - `meta` object, required
    - `requestId` string, required

## Other responses

- `400`: Invalid query, request body, JSON, or request identity.
- `401`: Missing or invalid authentication.
- `403`: Authentication lacks the required role or API-key scope.
- `404`: Resource or tenant path is hidden or absent.
- `409`: Lifecycle, idempotency, or concurrent-state conflict.
- `429`: The API-key operation exhausted its fixed-window quota.
- `500`: Internal or upstream failure.

---

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