List project updates
Returns the list of published updates for a project, newest first.
GET /api/v1/projects/{id}/updatesAuthentication
Section titled “Authentication”None. This endpoint only exposes already-public data (published updates), so it’s safe to call from widgets embedded in mobile apps or other clients where a token would be exposed. Any valid project ID can be queried, regardless of who owns it.
Path parameters
Section titled “Path parameters”| Parameter | Type | Description |
|---|---|---|
id | string | The project ID whose updates you want to list. |
Query parameters
Section titled “Query parameters”| Parameter | Type | Description |
|---|---|---|
audience | string | Optional. Narrows the listing to one or more audiences. |
An update note can be aimed at an audience you define under Site Settings - Audiences. A note with no audience is meant for everyone.
Leave audience off and you get every update, targeted or not. Pass it and you
get the updates aimed at those audiences plus the updates meant for everyone.
Identify an audience by its slug or its id, and pass several either comma
separated or as an array:
?audience=beta?audience=beta,enterprise?audience[]=beta&audience[]=enterpriseAn audience that matches nothing in the project (a typo, or one that was deleted) returns only the updates meant for everyone, rather than falling back to returning everything.
Example request
Section titled “Example request”curl https://updatify.io/api/v1/projects/PROJECT_ID/updates
# Only what beta testers should seecurl "https://updatify.io/api/v1/projects/PROJECT_ID/updates?audience=beta"Response
Section titled “Response”200 OK with a JSON object containing a data array of updates and a config
object with the project’s widget settings.
{ "data": [ { "id": "b3f1c2d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d", "title": "Dark mode is here", "body": "<p>You can now switch between light and dark themes.</p>", "heroimage": "https://updatify-image.nyc3.cdn.digitaloceanspaces.com/heroimage/dark-mode.png", "created_at": "2026-07-01T09:30:00Z", "post_type": "feature_highlight", "author": "Alex Bell" } ], "config": { "voting_enabled": true, "widget_title": "What's new" }}Update object
Section titled “Update object”| Field | Type | Description |
|---|---|---|
id | string | Unique identifier for the update. |
title | string | The update’s title. |
body | string | The update body as HTML. |
heroimage | string | null | URL of the hero image, or null if none. |
created_at | string (ISO 8601) | When the update was created. |
post_type | string (enum) | One of update, announcement, bugfix, blogpost, feature_highlight. |
author | string | Name of the user who published the update. |
Config object
Section titled “Config object”The same widget configuration returned by the config endpoint, embedded here so a widget or mobile app can render itself in a single request.
| Field | Type | Description |
|---|---|---|
voting_enabled | boolean | Whether the up/downvote section should be offered for this project’s updates. |
widget_title | string | null | Title shown at the top of the widget, or null if the project hasn’t set one. |
Errors
Section titled “Errors”| Status | Meaning |
|---|---|
404 Not Found | The project doesn’t exist. |
See Errors for details.