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

# List ticket feedbacks

> Retrieve paginated ticket feedback records with optional filtering by type, date range, pipeline, and response status.



## OpenAPI

````yaml /openapi.json get /api/public/ticket-feedback
openapi: 3.0.0
info:
  title: Vambe AI API
  description: Vambe AI documentation
  version: '1.0'
  contact: {}
servers:
  - url: https://api.vambe.me
    description: Production Server
security: []
tags:
  - name: Vambe AI
    description: ''
paths:
  /api/public/ticket-feedback:
    get:
      tags:
        - Ticket Feedback
      summary: List ticket feedbacks
      description: >-
        Retrieve paginated ticket feedback records with optional filtering by
        type, date range, pipeline, and response status.
      operationId: PublicTicketFeedbackController_listFeedbacks
      parameters:
        - name: x-api-key
          in: header
          description: API key needed to authorize the request
          required: true
          schema:
            type: string
        - name: page
          required: false
          in: query
          schema:
            type: integer
            minimum: 1
            default: 1
          description: 'Page number (default: 1)'
        - name: page_size
          required: false
          in: query
          schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 20
          description: 'Items per page (default: 20, max: 100)'
        - name: feedback_type
          required: false
          in: query
          schema:
            type: string
            enum:
              - csat
              - nps
          description: Filter by feedback type
        - name: scheduled_at_start
          required: false
          in: query
          description: Filter feedbacks scheduled at or after this date (ISO 8601)
          schema:
            format: date-time
            pattern: >-
              ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
            example: '2025-01-01T00:00:00Z'
            type: string
        - name: scheduled_at_end
          required: false
          in: query
          description: Filter feedbacks scheduled before this date (ISO 8601)
          schema:
            format: date-time
            pattern: >-
              ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
            example: '2025-12-31T23:59:59Z'
            type: string
        - name: pipeline_id
          required: false
          in: query
          description: >-
            Filter by pipeline ID(s). Only returns feedbacks for tickets whose
            current or closure stage belongs to the specified pipeline(s).
          schema:
            type: array
            items:
              type: string
              format: uuid
              pattern: >-
                ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
        - name: responded
          required: false
          in: query
          schema:
            type: string
            enum:
              - 'true'
              - 'false'
          description: >-
            Filter by response status. "true" returns only answered feedbacks,
            "false" returns only pending.
      responses:
        '200':
          description: Feedbacks retrieved successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          format: uuid
                          type: string
                        ticket_id:
                          format: uuid
                          type: string
                        type:
                          type: string
                          enum:
                            - csat
                            - nps
                        value:
                          type: number
                          nullable: true
                        comment:
                          type: string
                          nullable: true
                        scheduled_at:
                          format: date-time
                          type: string
                        responded_at:
                          format: date-time
                          type: string
                          nullable: true
                        created_at:
                          format: date-time
                          type: string
                        pipeline:
                          type: object
                          nullable: true
                          properties:
                            id:
                              format: uuid
                              type: string
                            name:
                              type: string
                        customer:
                          type: object
                          nullable: true
                          properties:
                            id:
                              format: uuid
                              type: string
                            name:
                              type: string
                            phone:
                              type: string
                            email:
                              type: string
                  page:
                    type: number
                    example: 1
                  page_size:
                    type: number
                    example: 20
                  has_next_page:
                    type: boolean
        '401':
          description: Unauthorized - Invalid or missing API key.

````