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

# List comments



## OpenAPI

````yaml https://public.leanpay.fr/openapi/leanpay_api_documentation.swagger.yaml get /comments
openapi: 3.1.1
info:
  version: 1.0.0
  title: LeanPay Api documentation
  contact:
    email: integration@leanpay.fr
servers:
  - url: https://api.leanpay.fr/v1/public
security: []
tags:
  - name: clients
    description: Routes related to clients
  - name: invoices
    description: Routes related to invoices
  - name: credit-notes
    description: Routes related to credit notes
  - name: misc-operations
    description: Routes related to misc operations
  - name: contacts
    description: Routes related to client contacts
  - name: addresses
    description: Routes related to client addresses
  - name: payments
    description: Routes related to invoice payments
  - name: portal-payments
    description: >-
      Routes related to portal payments (online payments made by debtors from
      the customer portal)
  - name: paybacks
    description: Routes related to credit note paybacks
  - name: links
    description: Routes related to invoice/credit note links
  - name: comments
    description: Routes related to comments
  - name: deleted-elements
    description: Routes related to deleted elements
  - name: client-properties
    description: Routes related to client properties
paths:
  /comments:
    get:
      tags:
        - comments
      summary: List comments
      parameters:
        - in: query
          name: s
          required: false
          description: >
            Filter comments with a **JSON-encoded** condition passed as a string
            in the URL — `?s={"field":{"$operator":value}}` — and combine
            conditions with `$and` / `$or`.


            **Operators** — `$eq` equals · `$ne` not equals · `$gt` `$gte` `$lt`
            `$lte` range · `$between` `[min, max]` · `$in` `$notin` value list ·
            `$isnull` `$notnull` null check. Shorthand: `{"field": value}` is
            the same as `{"field": {"$eq": value}}`. Dates accept `YYYY-MM-DD`
            or full ISO 8601 (`2026-06-01T00:00:00.000Z`); filtering an unlisted
            field returns `400`.


            ### Filterable fields


            | Field | Type | Common operators |

            | --- | --- | --- |

            | `id` | uuid | `$eq` `$in` |

            | `clientId` | uuid | `$eq` `$in` |

            | `invoiceId` | uuid | `$eq` `$in` |

            | `creditNoteId` | uuid | `$eq` `$in` |

            | `userId` | uuid | `$eq` `$in` |

            | `createdAt` | date | `$gt` `$gte` `$lt` `$lte` `$between` |

            | `updatedAt` | date | `$gt` `$gte` `$lt` `$lte` `$between` |


            ### Examples


            ```json

            { "clientId": { "$eq": "00000000-0000-0000-0000-000000000000" } }

            ```

            ```json

            { "updatedAt": { "$gte": "2026-06-01T00:00:00.000Z" } }

            ```

            ```json

            { "$and": [{ "createdAt": { "$gt": "2026-06-01T00:00:00.000Z" } }, {
            "createdAt": { "$lt": "2026-07-01T00:00:00.000Z" } }] }

            ```
          schema:
            type: string
            examples:
              - '{"clientId":{"$eq":"00000000-0000-0000-0000-000000000000"}}'
        - in: query
          name: page
          schema:
            type: integer
          description: The page number to retrieve starting at 1
      responses:
        '200':
          description: List of comments
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CommentsResponse'
      security:
        - authorization: []
components:
  schemas:
    CommentsResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/CommentResponse'
        count:
          type: integer
        total:
          type: integer
        page:
          type: integer
        pageCount:
          type: integer
    CommentResponse:
      type: object
      properties:
        id:
          type: string
          format: uuid
        tenantId:
          type: string
          format: uuid
        client:
          $ref: '#/components/schemas/NullOrIdDefinedAndExternalIdNullable'
        invoice:
          $ref: '#/components/schemas/NullOrIdDefinedAndExternalIdNullable'
        creditNote:
          $ref: '#/components/schemas/NullOrIdDefinedAndExternalIdNullable'
        userId:
          type: string
          format: uuid
        text:
          type: string
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
    NullOrIdDefinedAndExternalIdNullable:
      type:
        - object
        - 'null'
      properties:
        id:
          type: string
          format: uuid
        externalId:
          type:
            - string
            - 'null'
  securitySchemes:
    authorization:
      type: apiKey
      name: Authorization
      in: header

````