---
title: "List compact campaign content"
method: GET
path: "/v1/workspaces/{workspaceId}/campaigns/{id}/content"
tags: ["Campaigns"]
---

# List compact campaign content

`GET /v1/workspaces/{workspaceId}/campaigns/{id}/content`

## Request

- Base URL: `https://api.maevesocial.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.maevesocial.com/v1/workspaces/{workspaceId}/campaigns/{id}/content`
- Auth: HTTP bearer

## Path parameters

- `id` string, required
- `workspaceId` string, uuid, required

## Query parameters

- `limit` integer, nullable: Maximum content rows to return.
- `offset` integer, nullable: Number of content rows to skip.
- `phase` string, nullable: Filter by phase id, or "none" for campaign content without a phase.
- `status` 'draft' | 'pending_approval' | 'rejected' | 'scheduled' | 'sent' | 'failed' | 'cancelled', nullable: Filter by content status.
- `platform` string, nullable: Filter by integration platform.
- `sortDirection` 'asc' | 'desc', nullable: Primary date sort direction.

## Response `200`

Campaign content page

- object
  - `data` PublicCampaignContentPageDto, required
    - `items` union[], required
      - union
        - object
          - `id` string, uuid, required
          - `postId` string, uuid, required
          - `title` string, nullable, required
          - `content` string, required
          - `plannedAt` string, date-time, nullable, required
          - `scheduledAt` unknown, required
          - `sentAt` unknown, required
          - `createdAt` string, date-time, required
          - `updatedAt` string, date-time, required
          - `campaignId` string, uuid, nullable, required
          - `campaignPhaseId` string, uuid, nullable, required
          - `priority` string, nullable, required
          - `media` object[], required
            - `id` string, uuid, required
            - `url` string, required
            - `type` string, required
            - `filename` string, required
            - `thumbnailUrl` string, nullable
            - `fileSize` number, nullable
            - `width` number, nullable
            - `height` number, nullable
            - `durationSeconds` number, nullable
            - `videoCodec` string, nullable
            - `videoBitrate` number, nullable
            - `videoFrameRate` number, nullable
            - `hasAudio` boolean, nullable
            - `altText` string, nullable
            - `assetOrigin` 'user_upload' | 'platform_mirror' | 'conversation'
            - `visibility` 'media_room' | 'reference_only' | 'hidden'
          - `kind` 'root_draft', required
          - `status` 'draft', required
          - `platform` unknown, required
          - `platforms` string[], required
        - object
          - `id` string, uuid, required
          - `postId` string, uuid, required
          - `title` string, nullable, required
          - `content` string, required
          - `plannedAt` string, date-time, nullable, required
          - `scheduledAt` string, date-time, nullable, required
          - `sentAt` string, date-time, nullable, required
          - `createdAt` string, date-time, required
          - `updatedAt` string, date-time, required
          - `campaignId` string, uuid, nullable, required
          - `campaignPhaseId` string, uuid, nullable, required
          - `priority` string, nullable, required
          - `media` object[], required
            - `id` string, uuid, required
            - `url` string, required
            - `type` string, required
            - `filename` string, required
            - `thumbnailUrl` string, nullable
            - `fileSize` number, nullable
            - `width` number, nullable
            - `height` number, nullable
            - `durationSeconds` number, nullable
            - `videoCodec` string, nullable
            - `videoBitrate` number, nullable
            - `videoFrameRate` number, nullable
            - `hasAudio` boolean, nullable
            - `altText` string, nullable
            - `assetOrigin` 'user_upload' | 'platform_mirror' | 'conversation'
            - `visibility` 'media_room' | 'reference_only' | 'hidden'
          - `kind` 'edition', required
          - `groupId` string, uuid, required
          - `origin` string, required
          - `internalTitle` string, nullable, required
          - `publishTitle` string, nullable, required
          - `captions` object, required
          - `resolvedCaption` string, nullable, required
          - `calendarAt` string, date-time, nullable, required
          - `status` 'draft' | 'pending_approval' | 'rejected' | 'scheduled' | 'sent' | 'failed' | 'cancelled', required
          - `platform` string, required
          - `platformUsername` string, required
          - `integrationId` string, uuid, required
          - `postType` string, required
          - `firstComment` string, nullable, required
          - `mediaCrops` object, required
          - `coverUrl` string, nullable, required
          - `shareToFeed` boolean, required
          - `threadSize` number, required
          - `workflowMode` 'direct' | 'internal' | 'client' | 'internal_client', required
          - `workflowStatus` string, nullable, required
          - `avatarUrl` string, nullable, required
          - `platformName` string, nullable, required
    - `pagination` object, required
      - `total` number, required
      - `limit` number, required
      - `offset` number, required
      - `hasMore` boolean, required
  - `meta` unknown, required

---

[API](https://skmtc.dev/maevesocial/apis/maeve-social-api.md) · [All operations](https://skmtc.dev/maevesocial/apis/maeve-social-api/llms.txt) · [OpenAPI document](https://skmtc.dev/maevesocial/apis/maeve-social-api/revisions/1b00fd7e4b15?raw)
