---
title: "listCampaignUpdates"
method: GET
path: "/campaigns/{campaign}/updates"
tags: ["Update"]
deprecated: true
---

# listCampaignUpdates

`GET /campaigns/{campaign}/updates`

> **Deprecated.**

List Campaign Updates

## Path parameters

- `campaign` integer, required

## Query parameters

- `page` integer
- `per_page` integer

## Response `200`

Success

- object
  - `current_page` integer — Index of current page
  - `data` object[] — Collection of Updates
    - `body` string — Main content of Post
    - `comments_count` integer — Cached count of the number of Comments made in response to Post
    - `created_at` string, date-time — Date/time of initial record creation
    - `latest_comments` object[] — Array of latest Comments made in response to Post (limit 2 items)
      - `body` string — The content of the Comment
      - `commentable_id` integer — Primary identifier of associated Commentable Entity
      - `commentable_type` 'feed_item' | 'update' | 'story' — Type of associated Commentable Entity
      - `commenter_name` string — The full name of the creator of the Comment. CFA semantics apply only to comments embedded in a parent FeedItem's `latest_comments` (the FeedItem-level `getLatestCommentsAttribute` override drives the privacy pass). For comments returned by the standalone Post / Story / Update comment endpoints, the legacy shape is preserved regardless of the org's Contact-First Architecture flag — those surfaces are tracked for migration under PRO-4055. When CFA applies (FeedItem-embedded path) and the flag is on (npo_apiv2_ff_contact_first_architecture), this returns the supporter-derived display name (or empty string when no Supporter is found) instead of the member's name. Prefer the new `author_display_name` field for new consumers — `commenter_name` is preserved for back-compat with existing apps and will be cleaned up per-app under PRO-2280.
      - `author_display_name` string, nullable — Supporter-derived display name for the comment author. Populated only on FeedItem-embedded comments (`latest_comments`) — the standalone Post / Story / Update comment endpoints do not include this property; that gap is tracked for migration under PRO-4055. On the FeedItem-embedded path: populated when the owning Organization has Contact-First Architecture enabled (npo_apiv2_ff_contact_first_architecture); also populated (often null) on the fail-closed path when the owning Organization cannot be resolved for the parent FeedItem on a supporter-bearing feedable type. Null when no Supporter record matches the commenter for that org. New consumers should prefer this field over `commenter_name`.
      - `created_at` string, date-time — Date/time of initial record creation
      - `id` integer — Primary identifier of record
      - `likes_count` integer — Amount of likes a Comment has received
      - `member_id` integer — The ID of the Member that created of the Comment
      - `updated_at` string, date-time — Date/time of last record update
    - `likes_count` integer — Cached count of the number of Likes that Post has received
    - `member_id` integer — Primary identifier of Member who created Post (i.e. the poster)
    - `postable_id` integer — Primary identifier of Fundraising Entity for which the Post was made
    - `postable_type` string — String describing type of Fundraising Entity for which the Post was made
    - `poster_name` string, nullable — Full name of Post's creator
    - `shares_count` integer — Cached count of the number of times Post has been shared
    - `status` 'draft' | 'published' — Indication whether Post is a draft or has been published
    - `title` string, nullable — Title of Post
    - `updated_at` string, date-time — Date/time of last record update
    - `views_count` integer — Cached count of the number of times Post has been viewed
    - `asset_id` integer, nullable — ID of associated Asset
    - `asset_url` string, nullable — CDN URL of associated Asset
    - `id` integer — Primary identifier of record
    - `visibility` 'private' | 'public' — Visibility of Update (private updates can only be seen by the Member associated with record)
  - `first_page_url` string, nullable — URL of first page of results
  - `from` integer, nullable — Index of first displayed result within total result set
  - `last_page` integer — Index of last page in result set
  - `last_page_url` string, nullable — URL of last page of results
  - `next_page_url` string, nullable — URL of next page of results
  - `path` string, nullable — URL of current page of results
  - `per_page` integer — Maximum number of records returned per page of results
  - `prev_page_url` string, nullable — URL of previous page of results
  - `links` PaginationLink[] — Collection of objects representing pages {label, URL, active} that can be used to request the associated page of records.
    - `label` string — Identifier of the page.
    - `url` string, nullable — URL that can be used to fetch associated page of records.
    - `active` boolean — Identifies whether the previously requested page matches the page this link object references.
  - `to` integer, nullable — Index of last displayed result within total result set
  - `total` integer — Total count of records in result set

## Other responses

- `403` — Requester is not authorized to perform action
- `404` — Campaign not found

---

[API](https://skmtc.net/gofundme/apis/gofundme-pro-api.md) · [All operations](https://skmtc.net/gofundme/apis/gofundme-pro-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/gofundme/gofundme-pro-api/versions/d22bb925eeed/schema)
