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

# Read ticket lifecycle and internal notes

> Read newest-first, paginated lifecycle history and internal notes for an exact ticketId. Actor identity distinguishes humans, agents, AI and system events. Continue with nextCursor until hasMore is false.



## OpenAPI

````yaml /openapi.json get /tickets/{ticketId}/events
openapi: 3.0.3
info:
  title: Visito M2M API
  version: 1.0.0
  description: >-
    Tenant-scoped server-to-server API for channels, conversations, commerce,
    custom AI tools, and WhatsApp templates. Send operations are asynchronous
    and return queued acknowledgements. Expansion adds conversation controls,
    knowledge, sales opportunities, delivery status, reporting, and signed
    webhooks.
servers:
  - url: https://platform-api.visitoai.com/m2m/v1
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Channels
  - name: Conversations
  - name: Commerce
  - name: Custom tools
  - name: WhatsApp templates
  - name: Properties
  - name: Knowledge
  - name: Sales CRM
  - name: Delivery
  - name: Reporting
  - name: Webhooks
paths:
  /tickets/{ticketId}/events:
    get:
      tags:
        - Tickets
      summary: Read ticket lifecycle and internal notes
      description: >-
        Read newest-first, paginated lifecycle history and internal notes for an
        exact ticketId. Actor identity distinguishes humans, agents, AI and
        system events. Continue with nextCursor until hasMore is false.
      operationId: list_ticket_events
      parameters:
        - name: ticketId
          in: path
          required: true
          schema:
            type: string
            minLength: 1
            maxLength: 200
          description: >-
            The durable ticketId from list_tickets or get_ticket, including
            escalation items. Not a conversationId.
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 25
        - name: cursor
          in: query
          required: false
          schema:
            type: string
            maxLength: 4000
          description: >-
            Continue with nextCursor and unchanged filters. The list is live;
            updated items can move between pages.
      responses:
        '200':
          description: Confirmed resource state.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TicketEventsResponse'
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TicketApiError'
        '401':
          description: Authentication required.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TicketApiError'
        '403':
          description: Required permission missing or read-only rollout.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TicketApiError'
        '404':
          description: Resource unavailable in this workspace.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TicketApiError'
        '409':
          description: State, revision or idempotency conflict.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TicketApiError'
        '502':
          description: Reconcile an uncertain escalation request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TicketApiError'
        '503':
          description: Capability unavailable.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TicketApiError'
      security:
        - bearerAuth: []
components:
  schemas:
    TicketEventsResponse:
      type: object
      properties:
        events:
          type: array
          items:
            $ref: '#/components/schemas/TicketEvent'
        hasMore:
          type: boolean
        nextCursor:
          type: string
          nullable: true
        asOf:
          type: string
      additionalProperties: false
      required:
        - events
        - hasMore
        - nextCursor
        - asOf
    TicketApiError:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
            message:
              type: string
            details:
              type: object
              additionalProperties: true
          additionalProperties: false
          required:
            - code
            - message
      additionalProperties: false
      required:
        - error
    TicketEvent:
      type: object
      properties:
        eventId:
          type: string
        ticketId:
          type: string
        action:
          type: string
        at:
          type: string
        revision:
          type: integer
          minimum: 0
        actor:
          $ref: '#/components/schemas/TicketActor'
        note:
          type: string
      additionalProperties: false
      required:
        - eventId
        - ticketId
        - action
        - at
        - actor
    TicketActor:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        type:
          type: string
          enum:
            - operator
            - agent
            - ai
            - system
      additionalProperties: false
      required:
        - type
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: Visito M2M API key
      description: Server-side tenant-scoped credential created from Build > API Keys.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.