> ## Documentation Index
> Fetch the complete documentation index at: https://www.pickfu.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Add respondents

> Adds more respondents to a completed survey by extending the sample size. The `respondentsAmount` parameter is the **new total** number of respondents (not the number to add).

### Prerequisites
- Survey must be completed (`done` status)
- MTurk-sourced surveys only
- Under 1000 total respondents
- Completed within the last 120 days
- Account must have sufficient credits

Use `preview: true` to get a cost estimate without making changes. Credits-only — card payment is not supported via the API.



## OpenAPI

````yaml /api-reference/openapi.json post /surveys/{id}/respondents
openapi: 3.1.0
info:
  title: PickFu API
  version: 1.0.0
  description: >-
    The PickFu API enables programmatic access to create surveys, retrieve
    results, and integrate PickFu into your workflows.


    ## Overview


    PickFu helps you get instant consumer feedback through surveys. With the
    API, you can:


    - Create surveys programmatically

    - Retrieve survey results and respondent data

    - Target specific audiences with demographic traits

    - Integrate PickFu into your product development workflow


    ## Rate Limits


    Selected endpoints (currently the CSV export endpoints) enforce per-caller
    rate limits and return `429 Too Many Requests` when exceeded. See each
    endpoint description for its specific budget.


    ## Authentication


    All API requests require a Bearer token — either an API key or an OAuth 2.0
    access token. See the [Authentication
    guide](https://www.pickfu.com/docs/developers/authentication) for details.
  contact:
    name: PickFu Support
    email: support@pickfu.com
    url: https://www.pickfu.com
servers:
  - url: https://api.pickfu.com/v1
    description: Production
  - url: https://api.pickfu-sandbox.com/v1
    description: Sandbox
security:
  - bearerAuth: []
tags:
  - name: Surveys
    description: >-
      Create, retrieve, update, and publish surveys. Surveys are the core
      resource — each contains one or more questions with answer options.
  - name: Responses
    description: >-
      Retrieve individual responses (answers) for a survey, with pagination and
      per-question filtering.
  - name: Tags
    description: Organize surveys with tags. Tags are scoped to your team/account.
  - name: Projects
    description: >-
      Organize surveys into projects. Projects group related surveys and can be
      bookmarked or archived.
  - name: Traits
    description: >-
      Audience targeting and reporting traits used to reach specific
      demographics and segment survey results.
  - name: Playbooks
    description: >-
      Discover and retrieve step-by-step research playbooks. Each playbook is a
      structured sequence of polls designed for a specific research goal.
  - name: Help
    description: Search the PickFu help center for articles and guides.
  - name: Media
    description: >-
      Generate images from text prompts and upload media files to the PickFu
      CDN.
paths:
  /surveys/{id}/respondents:
    post:
      tags:
        - Surveys
      summary: Add respondents
      description: >-
        Adds more respondents to a completed survey by extending the sample
        size. The `respondentsAmount` parameter is the **new total** number of
        respondents (not the number to add).


        ### Prerequisites

        - Survey must be completed (`done` status)

        - MTurk-sourced surveys only

        - Under 1000 total respondents

        - Completed within the last 120 days

        - Account must have sufficient credits


        Use `preview: true` to get a cost estimate without making changes.
        Credits-only — card payment is not supported via the API.
      operationId: addRespondents
      parameters:
        - schema:
            type: string
          in: path
          name: id
          required: true
          description: Survey ID (GUID)
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - respondentsAmount
              properties:
                respondentsAmount:
                  type: integer
                  minimum: 1
                  maximum: 1000
                  description: >-
                    The new total number of respondents (not the delta). Must be
                    greater than the current amount.
                preview:
                  type: boolean
                  default: false
                  description: If true, returns cost estimate without making changes.
              additionalProperties: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  preview:
                    type: boolean
                  data:
                    type: object
                    properties:
                      currentRespondents:
                        type: integer
                      newRespondents:
                        type: integer
                      additionalRespondents:
                        type: integer
                      amount:
                        type: number
                      balance:
                        type: number
                      currency:
                        type: string
                      canPayWithBalance:
                        type: boolean
                      id:
                        type: string
                      respondentsAmount:
                        type: integer
                      state:
                        type: string
        '400':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
        '401':
          description: Default Response
          content:
            application/json:
              schema:
                type: string
        '402':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
                  amount:
                    type: number
                  balance:
                    type: number
                  currency:
                    type: string
        '403':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
        '404':
          description: Default Response
          content:
            application/json:
              schema:
                type: string
        '409':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        OAuth2 access token obtained via the authorization flow. Include in the
        Authorization header as: `Bearer {access_token}`

````