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

# List tour feedback

> Returns post-tour feedback surveys for the company, newest first.

A survey is created when a tour showing is approved on a board with tour
feedback enabled, and the applicant answers it through an emailed link.

Accepts an API key (`x-token`), delegate token (`Authorization: DelegateToken <token>`
with the `tours` scope), or partner token (`Authorization: Bearer <token>` with
`boards` permission). When using a partner token, pass `companyId` as a query parameter.




## OpenAPI

````yaml /openapi.yaml get /api/tours/feedback
openapi: 3.0.3
info:
  title: Aptly API
  version: '1.0'
  description: |
    The Aptly API lets external systems work with boards, contacts, inboxes,
    tasks, files, and other Aptly resources.

    Most endpoints accept an API key in the `x-token` header. Some endpoints
    also accept a delegate token or partner bearer token, as shown in each
    operation's security requirements, and explicitly public endpoints require
    no credential. API keys are scoped to a company and may be restricted to
    specific boards and read, insert, or update permissions; requests outside
    those restrictions receive a 403 `FORBIDDEN` response.
servers:
  - url: https://core-api.getaptly.com
    description: Production
security:
  - ApiKeyHeader: []
paths:
  /api/tours/feedback:
    get:
      tags:
        - Tours
      summary: List tour feedback
      description: >
        Returns post-tour feedback surveys for the company, newest first.


        A survey is created when a tour showing is approved on a board with tour

        feedback enabled, and the applicant answers it through an emailed link.


        Accepts an API key (`x-token`), delegate token (`Authorization:
        DelegateToken <token>`

        with the `tours` scope), or partner token (`Authorization: Bearer
        <token>` with

        `boards` permission). When using a partner token, pass `companyId` as a
        query parameter.
      operationId: listTourFeedback
      parameters:
        - name: companyId
          in: query
          schema:
            type: string
          description: >-
            Company ID. Required when using a partner token; resolved
            automatically for API key and delegate token auth.
        - name: instanceId
          in: query
          schema:
            type: string
          description: Only surveys for this location/unit card.
        - name: status
          in: query
          schema:
            type: string
            enum:
              - completed
              - pending
              - all
            default: completed
          description: >-
            Whether to return answered surveys, surveys still awaiting an
            answer, or both.
        - name: startDate
          in: query
          schema:
            type: string
            format: date-time
          description: Only surveys completed on or after this ISO date.
        - name: endDate
          in: query
          schema:
            type: string
            format: date-time
          description: Only surveys completed on or before this ISO date.
        - name: limit
          in: query
          schema:
            type: integer
            default: 50
            maximum: 200
          description: Page size. Values above 200 are clamped.
        - name: offset
          in: query
          schema:
            type: integer
            default: 0
      responses:
        '200':
          description: A page of tour feedback.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/TourFeedback'
                  total:
                    type: integer
                    description: Total matching surveys, ignoring limit/offset.
                  limit:
                    type: integer
                  offset:
                    type: integer
        '400':
          description: Missing companyId, or an invalid status, date, limit or offset.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Invalid or missing credential.
      security:
        - ApiKeyHeader: []
        - DelegateToken: []
        - PartnerBearer: []
components:
  schemas:
    TourFeedback:
      type: object
      description: One tour showing's post-tour feedback survey.
      properties:
        showingId:
          type: string
          description: Showing (portal application) ID.
        status:
          type: string
          enum:
            - completed
            - pending
          description: >-
            `completed` once the applicant answered; `pending` while the survey
            is still out.
        sentAt:
          type: string
          format: date-time
          nullable: true
          description: When the survey was emailed to the applicant.
        completedAt:
          type: string
          format: date-time
          nullable: true
          description: When the applicant submitted their answers.
        tourDate:
          type: string
          format: date-time
          nullable: true
        instanceId:
          type: string
          nullable: true
          description: The location/unit card the tour was for.
        propertyName:
          type: string
          nullable: true
          description: Name of that location card.
        applicant:
          type: object
          properties:
            firstName:
              type: string
              nullable: true
            lastName:
              type: string
              nullable: true
            email:
              type: string
              nullable: true
        responses:
          type: array
          items:
            type: object
            properties:
              question:
                type: string
                nullable: true
                description: The question text as it was shown to the applicant.
              answer:
                type: string
                nullable: true
                description: >-
                  The raw answer. Rating questions answer "1"-"5"; text
                  questions answer free text.
              rating:
                type: integer
                nullable: true
                minimum: 1
                maximum: 5
                description: >-
                  The answer as a number when it is a 1-5 rating, otherwise
                  null.
        averageRating:
          type: number
          nullable: true
          description: >-
            Mean of this survey's numeric ratings, or null when nothing was
            rated.
    Error:
      type: object
      properties:
        error:
          type: string
        message:
          type: string
  securitySchemes:
    ApiKeyHeader:
      type: apiKey
      in: header
      name: x-token
    DelegateToken:
      type: apiKey
      in: header
      name: Authorization
      description: 'Delegate token issued by the platform. Format: `DelegateToken <token>`'
    PartnerBearer:
      type: http
      scheme: bearer
      description: 'Partner token. Format: `Authorization: Bearer <token>`'

````