parcelLab · Capability

parcelLab API — Surveys

parcelLab API — Surveys. Retrieve survey definitions, prefilled answers, and submit responses.

parcelLab API — Surveys is a Naftiko capability published by parcelLab, one of 8 capabilities the APIs.io network indexes for this provider. It bundles 3 operations across the GET and POST methods rooted at /v1/surveys/{…}.

The capability includes 1 read-only operation and 1 state-changing operation. Lead operation: Get survey by id. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include ParcelLab, Surveys, and Feedback.

Run with Naftiko ParcelLabSurveysFeedback

What You Can Do

GET
Getsurvey — Get survey by id.
/v1/surveys/{id}
GET
Getsurveyanswer — Get survey answer.
/v1/surveys/{id}/answer
POST
Submitsurveyanswer — Submit survey answer.
/v1/surveys/{id}/answer

MCP Tools

get-survey

Get survey by id.

read-only idempotent
submit-survey-answer

Submit survey responses.

Capability Spec

parcellab-surveys.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: parcelLab API — Surveys
  description: parcelLab API — Surveys. Retrieve survey definitions, prefilled answers, and submit responses.
  tags:
  - ParcelLab
  - Surveys
  - Feedback
  created: '2026-05-25'
  modified: '2026-05-25'
binds:
- namespace: env
  keys:
    PARCELLAB_API_TOKEN: PARCELLAB_API_TOKEN
capability:
  consumes:
  - type: http
    namespace: parcellab-surveys
    baseUri: https://api.parcellab.com
    description: parcelLab Surveys surface.
    resources:
    - name: survey
      path: /v4/survey/survey/{id}/
      operations:
      - name: getsurvey
        method: GET
        description: Retrieve a survey by id.
        outputRawFormat: json
        outputParameters: [{ name: result, type: object, value: $. }]
        inputParameters:
        - { name: id, in: path, type: string, required: true }
    - name: survey-answer
      path: /v4/survey/survey/{id}/answer/
      operations:
      - name: getsurveyanswer
        method: GET
        description: Retrieve prefilled answers for a survey.
        outputRawFormat: json
        outputParameters: [{ name: result, type: object, value: $. }]
        inputParameters:
        - { name: id, in: path, type: string, required: true }
        - { name: ref_id, in: query, type: string, required: true }
        - { name: reference_type, in: query, type: string, required: false }
      - name: submitsurveyanswer
        method: POST
        description: Submit survey responses.
        outputRawFormat: json
        outputParameters: [{ name: result, type: object, value: $. }]
        inputParameters:
        - { name: id, in: path, type: string, required: true }
        - { name: body, in: body, type: object, required: true }
    - name: survey-themes
      path: /v4/survey/survey/themes/
      operations:
      - name: listsurveythemes
        method: GET
        description: List survey theme configurations.
        outputRawFormat: json
        outputParameters: [{ name: result, type: object, value: $. }]
        inputParameters:
        - { name: default, in: query, type: boolean, required: false }
    authentication:
      type: header
      header: Authorization
      value: 'Parcellab-API-Token {{env.PARCELLAB_API_TOKEN}}'
  exposes:
  - type: rest
    namespace: parcellab-surveys-rest
    port: 8080
    description: REST adapter for parcelLab Surveys.
    resources:
    - path: /v1/surveys/{id}
      name: survey
      operations:
      - method: GET
        name: getsurvey
        description: Get survey by id.
        call: parcellab-surveys.getsurvey
        with: { id: rest.id }
        outputParameters: [{ type: object, mapping: $. }]
    - path: /v1/surveys/{id}/answer
      name: survey-answer
      operations:
      - method: GET
        name: getsurveyanswer
        description: Get survey answer.
        call: parcellab-surveys.getsurveyanswer
        with: { id: rest.id, ref_id: rest.ref_id, reference_type: rest.reference_type }
        outputParameters: [{ type: object, mapping: $. }]
      - method: POST
        name: submitsurveyanswer
        description: Submit survey answer.
        call: parcellab-surveys.submitsurveyanswer
        with: { id: rest.id, body: rest.body }
        outputParameters: [{ type: object, mapping: $. }]
  - type: mcp
    namespace: parcellab-surveys-mcp
    port: 9090
    transport: http
    description: MCP adapter for parcelLab Surveys.
    tools:
    - name: get-survey
      description: Get survey by id.
      hints: { readOnly: true, destructive: false, idempotent: true }
      call: parcellab-surveys.getsurvey
      with: { id: tools.id }
      outputParameters: [{ type: object, mapping: $. }]
    - name: submit-survey-answer
      description: Submit survey responses.
      hints: { readOnly: false, destructive: false, idempotent: false }
      call: parcellab-surveys.submitsurveyanswer
      with: { id: tools.id, body: tools.body }
      outputParameters: [{ type: object, mapping: $. }]