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

# List Annotations

> Retrieves a paginated list of annotations for the application. Supports keyword search filtering.



## OpenAPI

````yaml /en/api-reference/openapi_chatflow.json get /apps/annotations
openapi: 3.0.1
info:
  title: Chatflow App API
  description: >-
    Chatflow applications support session persistence, allowing previous chat
    history to be used as context for responses. Chatflow apps use the
    `advanced-chat` mode, providing workflow-level streaming events for detailed
    execution tracking including node starts, finishes, iterations, and workflow
    lifecycle.
  version: 1.0.0
servers:
  - url: '{api_base_url}'
    description: >-
      The base URL for the Chatflow App API. Replace {api_base_url} with the
      actual API base URL provided for your application.
    variables:
      api_base_url:
        default: https://api.dify.ai/v1
        description: Actual base URL of the API
security:
  - ApiKeyAuth: []
tags:
  - name: Chatflows
    description: >-
      Operations for Chatflow apps, including chat messaging, workflow run
      details, and event streaming.
  - name: Files
    description: File upload and preview operations.
  - name: End Users
    description: Operations related to end user information.
  - name: Feedback
    description: User feedback operations.
  - name: Conversations
    description: Operations related to managing conversations.
  - name: TTS
    description: Text-to-Speech and Speech-to-Text operations.
  - name: Applications
    description: Operations to retrieve application settings and information.
  - name: Annotations
    description: Operations related to managing annotations for direct replies.
  - name: Human Input
    description: Endpoints for resuming paused workflows that require human input.
paths:
  /apps/annotations:
    get:
      tags:
        - Annotations
      summary: List Annotations
      description: >-
        Retrieves a paginated list of annotations for the application. Supports
        keyword search filtering.
      operationId: getAdvancedAnnotationList
      parameters:
        - name: page
          in: query
          description: Page number for pagination.
          required: false
          schema:
            type: integer
            default: 1
        - name: limit
          in: query
          description: Number of items per page.
          required: false
          schema:
            type: integer
            default: 20
        - name: keyword
          in: query
          description: Keyword to filter annotations by question or answer content.
          required: false
          schema:
            type: string
      responses:
        '200':
          description: Successfully retrieved annotation list.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnnotationListResponse'
              examples:
                annotationList:
                  summary: Response Example
                  value:
                    data:
                      - id: a1b2c3d4-5678-90ab-cdef-1234567890ab
                        question: What is Dify?
                        answer: >-
                          Dify is an open-source LLM application development
                          platform.
                        hit_count: 5
                        created_at: 1705407629
                    has_more: false
                    limit: 20
                    total: 1
                    page: 1
components:
  schemas:
    AnnotationListResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/AnnotationItem'
          description: List of annotation items for the current page.
        has_more:
          type: boolean
          description: '`true` if more pages are available beyond the current result set.'
        limit:
          type: integer
          description: Number of items per page.
        total:
          type: integer
          description: Total number of annotations matching the query.
        page:
          type: integer
          description: Current page number.
    AnnotationItem:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Unique annotation identifier.
        question:
          type: string
          nullable: true
          description: Question text that triggers this annotation.
        answer:
          type: string
          nullable: true
          description: Predefined answer returned when the annotation is matched.
        hit_count:
          type: integer
          nullable: true
          description: >-
            Number of times this annotation has been matched and returned as a
            reply.
        created_at:
          type: integer
          format: int64
          nullable: true
          description: Creation timestamp (Unix epoch seconds).
  securitySchemes:
    ApiKeyAuth:
      type: http
      scheme: bearer
      bearerFormat: API_KEY
      description: >-
        API Key authentication. For all API requests, include your API Key in
        the `Authorization` HTTP Header, prefixed with `Bearer `. Example:
        `Authorization: Bearer {API_KEY}`. **Strongly recommend storing your API
        Key on the server-side, not shared or stored on the client-side, to
        avoid possible API-Key leakage that can lead to serious consequences.**

````