Feedback postsUpdate

Update a feedback post

Patch any combination of fields on an existing feedback post — only present fields are applied.

Updates a feedback post. The endpoint is patch-style: any subset of the optional body fields may be present, and only those fields are applied. Omitted fields keep their current values.

Status changes (passing status_id) emit a post.status_changed webhook event in addition to post.edited. Tag changes (passing tag_ids) emit post.tag_added or post.tag_removed per tag delta.

Endpoint

POST https://api.productbridge.io/api/external/v1/feedback-posts/update

Arguments

body
api_keystring
Required

Your organization's public API key. See Authentication.

body
post_idstring
Required

UUID of the feedback post to update.

body
user_idstring
Required

UUID of the user performing the update. Recorded for audit and used as the actor on derived events (e.g. post.status_changed).

body
titlestring

New title (1–512 chars). Triggers post.edited webhook.

body
detailsstring

New body / description.

body
board_idstring

Move the post to a different feedback board. Validated to belong to your organization.

body
status_idstring

Set the post's status. Validated to belong to your organization. Triggers post.status_changed webhook.

body
category_idstring

Set the post's category. Validated to belong to your organization. Pass an empty / null value to clear.

body
tag_idsarray of strings

Replace the post's tags with this exact set. Tags not in the new set are removed (post.tag_removed per tag); new tags are added (post.tag_added per tag).

body
owner_idstring

Assign an owner. Pass null/empty to clear.

body
etastring

Expected ship date as YYYY-MM-DD.

body
moderation_status_codestring

Override the moderation state. Common values: "accepted", "pending", "rejected".

body
should_notify_votersboolean

Canny-compatible field for status changes. Currently informational — ProductBridge always emits notifications when status changes.

body
change_commentstring

Canny-compatible field for status changes. Currently informational only.

Returns

{ "success": true }

Example request

curl -X POST https://api.productbridge.io/api/external/v1/feedback-posts/update \
  -H 'Content-Type: application/json' \
  -d '{
    "api_key": "pb_YOUR_PUBLIC_API_KEY",
    "post_id": "aa3c3ef8-b8cd-cd15-01ba-postpost0001",
    "user_id": "cc3c3ef8-b8cd-cd15-01ba-adminuser001",
    "status_id": "883c3ef8-b8cd-cd15-01ba-status000002",
    "eta": "2026-09-01"
  }'

Example response

{ "success": true }

Errors

StatusBodyCause
401{"detail":{"error":"invalid api_key"}}Missing / unknown / inactive api_key.
400{"detail":{"error":"<resource> not found in this organization"}}A referenced board_id, status_id, or category_id doesn't belong to your organization.
404{"detail":{"error":"feedback post not found"}}The post_id doesn't exist or belongs to another organization.
422Validation error envelopeMissing required fields, wrong types, title length out of bounds.

See Errors for the full envelope shape.

Was this page helpful?

Last updated 1 week ago

Built with Documentation.AI