---
title: "List all suggestions in a nation"
method: GET
path: "/api/v2/suggestions"
tags: ["Suggestions"]
---

# List all suggestions in a nation

`GET /api/v2/suggestions`

## Request

- Base URL: `https://yournation.nationbuilder.com`
- URL: `https://yournation.nationbuilder.com/api/v2/suggestions`
- Auth: HTTP bearer

Returns a paginated list of all Suggestions across all SuggestionBoxes.

## Query parameters

- `page[number]` string
- `page[size]` string

## Response `200`

A page of matching suggestions.

- SuggestionIndexResponse: The JSON:API top-level document shape for paginated collection responses, with resource objects under data and pagination links.
  - `data` SuggestionResponseData[], required: The page of resource objects for this collection; each resource binds its concrete item schema here via allOf composition.
    - `id` string, required: Unique identifier of the resource.
    - `type` 'suggestions', required: The JSON:API resource type.
    - `attributes` object: The read-only attributes of a suggestion.
      - `content` string, nullable: Text content of the Suggestion (labeled "Further explanation" in the UI)
      - `external_id` string, nullable: Client-provided idempotency key stored on the related Page (unique across pages).
      - `headline` string: Page headline for this Suggestion
      - `official_response` string, nullable: Official response to the suggestion. Can be used alone or combined with `response_type_id` to provide both a status update and detailed explanation.
      - `recruiter_id` string, nullable: Signup ID of the person who recruited the Suggestion author
      - `responded_at` string, date-time, nullable: Timestamp when the suggestion was responded to. Automatically set when `response` or `response_type_id` is first added.
      - `response_author_id` string, nullable: Signup ID of the person who provided the response
      - `response_type_id` integer, nullable: Status/stage of the suggestion in the review process. Response types: 0=Not Planned, 1=Considering, 2=Planned, 3=Started, 4=Completed, 5=Incomplete, 6=Duplicate, 7=Submitted (default/no response). A suggestion is considered "responded to" if it has `response` text OR a non-7 `response_type_id`.
      - `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
      - `suggestion_box_id` string: SuggestionBox to which this Suggestion will be submitted
      - `created_at` string, date-time
      - `has_image` boolean: Whether this Suggestion includes an image
      - `is_responded` boolean: Whether this Suggestion has been responded to. A suggestion is considered "responded to" if it has `response` text OR `response_type_id` is not 7 (Submitted).
      - `page_id` string: Associated page ID (read-only)
      - `site_id` string: Site where this Suggestion is published (inherited from SuggestionBox)
      - `updated_at` string, date-time
  - `links` PaginationLinks: JSON:API pagination links for the pages of a collection. A key whose page is unavailable, or that the server's pagination strategy does not provide, is omitted or null.
    - `self` string: Link to the current page.
    - `first` string, nullable: Link to the first page.
    - `last` string, nullable: Link to the last page.
    - `prev` string, nullable: Link to the previous page.
    - `next` string, nullable: Link to the next page.
  - `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, such as requested statistics. Empty unless the endpoint has metadata to convey.

## Other responses

- `401`: The access token is missing, expired, or not authorized to access this resource.
- `429`: The access token has exceeded its request quota for the current rate-limit window.

## Changes

- **2026-11-05** `d5c88ca497ac`: 4 breaking, 1 warning, 4 info
  - for the `query` request parameter `page[number]`, default value `1` was added
  - for the `query` request parameter `page[size]`, default value `20` was added
  - 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
  - …5 more
- **2026-02-14** `31995b0a1e61`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/nationbuilder/apis/nationbuilder-v2-api/changes/api/v2/suggestions/get.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)
