---
title: "Update a suggestion box"
method: PATCH
path: "/api/v2/suggestion_boxes/{id}"
tags: ["Suggestion Boxes"]
---

# Update a suggestion box

`PATCH /api/v2/suggestion_boxes/{id}`

## Request

- Base URL: `https://yournation.nationbuilder.com`
- URL: `https://yournation.nationbuilder.com/api/v2/suggestion_boxes/{id}`
- Auth: HTTP bearer

Make updates to a SuggestionBox.

**Attributes:**
- `site_id` - ID of the site to place the SuggestionBox page on
- `name` - Display name for the SuggestionBox page
- `status` - Publication status ('published', 'draft', 'unlisted')
- `slug` - URL-friendly identifier (auto-generated from name if not provided)
- `content` - Description/instructions for the SuggestionBox page
- `tag_list` - Comma-separated list of tags to accept for related suggestions
- `require_image` - Whether suggestions must include images
- `send_auto_responses` - Enable automatic thank you emails when suggestions are submitted (boolean, default: true)
- `auto_response_broadcaster` - Broadcaster ID for automatic thank you responses (integer, defaults to site broadcaster)
- `send_response_notifications` - Enable automatic emails when community members respond to suggestions (boolean, default: true)
- `response_notification_broadcaster` - Broadcaster ID for community response notifications (integer, defaults to site broadcaster)
- `send_official_response_notifications` - Enable automatic email notifications when officials provide answers to suggestions (boolean, default: true)
- `official_response_notification_broadcaster` - Broadcaster ID for official response notifications (integer, defaults to site broadcaster)
- `point_person_id` - Signup ID of the Point Person assigned to manage Suggestions in this SuggestionBox

## Request body

- SuggestionBoxUpdateRequest: The JSON:API top-level document shape for update requests, whose data member identifies the resource by type and id and carries the changed attributes.
  - `data` object, required
    - `id` string, required: The ID of the resource being updated.
    - `type` 'suggestion_boxes', required: The JSON:API resource type of the resource being updated.
    - `attributes` SuggestionBoxReadWriteAttributes: The attributes of a suggestion_box that can be both read and written.
      - `allow_image` boolean: Allow image attachments for submissions
      - `auto_response_broadcaster` string, nullable: Broadcaster ID for automatic thank you responses when suggestions are submitted
      - `content` string, nullable: Instructions or description for this SuggestionBox
      - `external_id` string, nullable: Client-provided idempotency key stored on the related Page (unique across pages).
      - `headline` string, nullable: Page headline. If not provided, will default to name
      - `name` string: Page name for this SuggestionBox
      - `official_response_notification_broadcaster` string, nullable: Broadcaster ID for official response notifications to suggestion authors
      - `point_person_id` string, nullable: Signup ID of the Point Person assigned to manage Suggestions in this SuggestionBox
      - `require_image` boolean: Require image attachments for submissions
      - `response_notification_broadcaster` string, nullable: Broadcaster ID for community response notifications
      - `send_auto_responses` boolean: Whether to send automatic thank you email responses when suggestions are submitted
      - `send_official_response_notifications` boolean: Whether to send automatic email notifications to suggestion authors when officials provide answers/responses. When true, allows the notify_followers parameter to trigger email notifications when providing official responses to suggestions.
      - `send_response_notifications` boolean: Whether to send emails to suggestion authors when other users respond to suggestions
      - `site_id` string: Site where this content will be published
      - `slug` string: URL path for this content. Must be unique within the site. Auto-generated from name if not provided.
      - `status` 'archived' | 'deleted' | 'expired' | 'hidden' | 'published' | 'rule_violated' | 'unlisted': Publication status of the page. Must be one of: archived, deleted, expired, hidden, published, rule_violated, unlisted
      - `tag_list` string, nullable: Comma-separated list of tags to be used for categorizing Suggestions
      - `title` string: Page title. If not provided, or set to empty, will default to "name - site.name"

## Response `200`

partial page attribute updates

- SuggestionBoxShowResponse: The JSON:API top-level document shape for responses returning a single resource under the data member.
  - `data` object, required: A JSON:API resource identifier object, the type/id pair that uniquely identifies a single resource.
    - `id` string, required: Unique identifier of the resource.
    - `type` 'suggestion_boxes', required: The JSON:API resource type.
    - `attributes` object: The read-only attributes of a suggestion_box.
      - `allow_image` boolean: Allow image attachments for submissions
      - `auto_response_broadcaster` string, nullable: Broadcaster ID for automatic thank you responses when suggestions are submitted
      - `content` string, nullable: Instructions or description for this SuggestionBox
      - `external_id` string, nullable: Client-provided idempotency key stored on the related Page (unique across pages).
      - `headline` string, nullable: Page headline. If not provided, will default to name
      - `name` string: Page name for this SuggestionBox
      - `official_response_notification_broadcaster` string, nullable: Broadcaster ID for official response notifications to suggestion authors
      - `point_person_id` string, nullable: Signup ID of the Point Person assigned to manage Suggestions in this SuggestionBox
      - `require_image` boolean: Require image attachments for submissions
      - `response_notification_broadcaster` string, nullable: Broadcaster ID for community response notifications
      - `send_auto_responses` boolean: Whether to send automatic thank you email responses when suggestions are submitted
      - `send_official_response_notifications` boolean: Whether to send automatic email notifications to suggestion authors when officials provide answers/responses. When true, allows the notify_followers parameter to trigger email notifications when providing official responses to suggestions.
      - `send_response_notifications` boolean: Whether to send emails to suggestion authors when other users respond to suggestions
      - `site_id` string: Site where this content will be published
      - `slug` string: URL path for this content. Must be unique within the site. Auto-generated from name if not provided.
      - `status` 'archived' | 'deleted' | 'expired' | 'hidden' | 'published' | 'rule_violated' | 'unlisted': Publication status of the page. Must be one of: archived, deleted, expired, hidden, published, rule_violated, unlisted
      - `tag_list` string, nullable: Comma-separated list of tags to be used for categorizing Suggestions
      - `title` string: Page title. If not provided, or set to empty, will default to "name - site.name"
      - `created_at` string, date-time
      - `page_id` string: Associated page ID (read-only)
      - `updated_at` string, date-time
  - `included` Resource[]: Sideloaded resources requested via the include query parameter. Each entry is a full resource object whose shape is documented under its own resource type.
    - `id` string, required: Unique identifier of the resource.
    - `type` string, required: The JSON:API resource type.
    - `attributes` object: The attributes of the resource, as documented for its resource type.
    - `relationships` object: References from this resource to other resources in the document.
  - `meta` object: Non-standard information about the document. Empty unless the endpoint has metadata to convey.

## Other responses

- `400`: The request body or query parameters are invalid, such as an unknown attribute, filter, filter operator, sort field, or sideload.
- `401`: The access token is missing, expired, or not authorized to access this resource.
- `404`: No resource exists with the provided ID.
- `422`: Model validations failed for the resource being created or updated. Unlike this API's other errors, validation failures are returned as a JSON:API errors document locating each invalid field.
- `429`: The access token has exceeded its request quota for the current rate-limit window.

## Changes

- **2026-11-05** `d5c88ca497ac`: 4 breaking, 1 warning, 8 info
  - added `#/components/schemas/update_request_document, subschema #2` to the request body `allOf` list
  - the request's body type changed from `object` to no type
  - the response's body type changed from `object` to no type for status `200`
  - removed the required property `data` from the response with the `200` status
  - …9 more
- **2026-02-14** `31995b0a1e61`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/nationbuilder/apis/nationbuilder-v2-api/changes/api/v2/suggestion_boxes/:id/patch.md)

---

[API](https://skmtc.dev/nationbuilder/apis/nationbuilder-v2-api.md) - [All operations](https://skmtc.dev/nationbuilder/apis/nationbuilder-v2-api/llms.txt) - [OpenAPI document](https://skmtc.dev/nationbuilder/apis/nationbuilder-v2-api/revisions/d5c88ca497ac?raw)
