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

# Newsletter messages

> Lists a newsletter's messages. `count` caps the amount and `before` paginates from an id.



## OpenAPI

````yaml /en/api-reference/openapi.json get /newsletters/messages
openapi: 3.1.0
info:
  title: Zapfy API
  description: >-
    Multi-tenant WhatsApp API. Send messages and manage webhooks through a
    single surface.
  version: 1.0.0
servers:
  - url: https://api.zapfy.io/v1
security:
  - accountToken: []
paths:
  /newsletters/messages:
    get:
      tags:
        - Newsletters
      summary: Newsletter messages
      description: >-
        Lists a newsletter's messages. `count` caps the amount and `before`
        paginates from an id.
      parameters:
        - name: id
          in: query
          required: true
          schema:
            $ref: '#/components/schemas/NewsletterId'
          description: Newsletter id.
          example: 120363012345678901@newsletter
        - name: count
          in: query
          required: false
          schema:
            type: integer
          description: Max messages (1–100).
          example: 20
        - name: before
          in: query
          required: false
          schema:
            type: integer
          description: Paginate from this server id.
          example: 100
      responses:
        '200':
          $ref: '#/components/responses/NewsletterMessageList'
        '400':
          $ref: '#/components/responses/Error'
        '401':
          $ref: '#/components/responses/Error'
        '403':
          $ref: '#/components/responses/Error'
        '502':
          $ref: '#/components/responses/Error'
      security:
        - instanceToken: []
components:
  schemas:
    NewsletterId:
      type: string
      description: >-
        Newsletter id (WhatsApp Channel): the same opaque value returned by GET
        /newsletters (e.g. `...@newsletter`). Use it exactly as received.
      example: 120363012345678901@newsletter
    NewsletterMessage:
      type: object
      properties:
        messageId:
          type: string
          description: Message id.
          example: 3EB0C7...
        serverId:
          type: integer
          description: Sequential id on the newsletter server.
          example: 42
        type:
          type: string
          description: Message type.
          example: text
        timestamp:
          type: string
          description: When it was posted.
          example: '2026-06-25T12:00:00Z'
        views:
          type: integer
          description: View count.
          example: 1024
        reactions:
          type: object
          additionalProperties:
            type: integer
          description: Reaction counts by emoji.
          example:
            👍: 12
  responses:
    NewsletterMessageList:
      description: Newsletter messages.
      content:
        application/json:
          schema:
            type: object
            properties:
              data:
                type: array
                items:
                  $ref: '#/components/schemas/NewsletterMessage'
    Error:
      description: Error.
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: string
                example: Instance not found
  securitySchemes:
    accountToken:
      type: http
      scheme: bearer
      description: Account token (`zpfy_acct_...`) — manages instances and webhooks.
    instanceToken:
      type: http
      scheme: bearer
      description: Instance token (`zpfy_inst_...`) — sends messages.

````