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

# Listar templates

> Lista templates do workspace com paginacao.



## OpenAPI

````yaml /template-api/api-reference/openapi-templates.json get /v1/templates
openapi: 3.0.3
info:
  title: Notifique API - Templates
  description: >-
    CRUD de templates multicanal e envio. Canais: whatsapp, sms, email,
    telegram, rcs, push, voice. Instagram e Widget nao sao canais de template.
  version: 1.0.0
servers:
  - url: https://api.notifique.dev
    description: Producao
security:
  - BearerAuth: []
  - ApiKeyHeader: []
tags:
  - name: Templates
    description: Templates multicanal e envio
paths:
  /v1/templates:
    get:
      tags:
        - Templates
      summary: Listar templates
      description: Lista templates do workspace com paginacao.
      parameters:
        - name: page
          in: query
          schema:
            type: integer
            minimum: 1
            default: 1
        - name: limit
          in: query
          schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 20
        - name: search
          in: query
          description: Filtro por nome
          schema:
            type: string
      responses:
        '200':
          description: Lista de templates
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TemplateListResponse'
              examples:
                ok:
                  summary: Lista com um template
                  value:
                    success: true
                    data:
                      - id: cltmpl01abc
                        workspaceId: clws01xyz
                        name: alerta_pedido
                        category: TRANSACTIONAL
                        language: pt_BR
                        source: null
                        status: ACTIVE
                        metaId: null
                        type: null
                        components: null
                        variables:
                          - codigo
                          - name
                        variableDefaults:
                          name: Cliente
                        usageCount: 12
                        lastUsedAt: '2026-07-08T10:15:00.000Z'
                        marketingTopicId: null
                        appendPreferencesLink: true
                        localeTranslations: null
                        enabledChannels:
                          - sms
                          - email
                          - whatsapp
                        sms:
                          enabled: true
                          payload:
                            content: Pedido {{codigo}} despachado, {{name}}.
                        whatsapp:
                          enabled: true
                          payload:
                            content: Ola {{name}}, pedido {{codigo}} saiu para entrega.
                            mediaUrl: null
                            buttons: null
                        telegram:
                          enabled: false
                          payload:
                            content: ''
                            mediaUrl: null
                            buttons: null
                        email:
                          enabled: true
                          payload:
                            subject: Pedido {{codigo}}
                            html: <p>Ola {{name}}, seu pedido saiu.</p>
                            containerWidth: 600
                            containerPadding: 24
                            imageUrls: null
                            buttons: null
                        rcs:
                          enabled: false
                          payload:
                            messageType: BASIC
                            message: ''
                            payload: null
                        push:
                          enabled: false
                          payload:
                            title: null
                            body: null
                            url: null
                            icon: null
                            image: null
                            data: null
                        voice:
                          enabled: false
                          payload:
                            speakText: ''
                            speakVoice: null
                            gather: null
                        createdAt: '2026-06-01T12:00:00.000Z'
                        updatedAt: '2026-07-01T09:30:00.000Z'
                    pagination:
                      total: 1
                      page: 1
                      limit: 20
                      totalPages: 1
                    planLimits:
                      maxTemplates: 100
                    totalTemplateCount: 1
components:
  schemas:
    TemplateListResponse:
      type: object
      required:
        - success
        - data
        - pagination
      properties:
        success:
          type: boolean
          example: true
        data:
          type: array
          items:
            $ref: '#/components/schemas/TemplateObject'
        pagination:
          type: object
          required:
            - total
            - page
            - limit
            - totalPages
          properties:
            total:
              type: integer
              example: 1
            page:
              type: integer
              example: 1
            limit:
              type: integer
              example: 20
            totalPages:
              type: integer
              example: 1
        planLimits:
          type: object
          properties:
            maxTemplates:
              type: integer
              example: 100
        totalTemplateCount:
          type: integer
          example: 1
    TemplateObject:
      type: object
      required:
        - id
        - workspaceId
        - name
        - enabledChannels
        - sms
        - whatsapp
        - telegram
        - email
        - rcs
        - push
        - voice
      properties:
        id:
          type: string
          example: cltmpl01abc
        workspaceId:
          type: string
          example: clws01xyz
        name:
          type: string
          example: alerta_pedido
        category:
          type: string
          enum:
            - MARKETING
            - TRANSACTIONAL
            - NOTIFICATION
            - AUTHENTICATION
            - CUSTOM
          example: TRANSACTIONAL
        language:
          type: string
          example: pt_BR
        source:
          type: string
          nullable: true
          enum:
            - ZENVIO
            - WHATSAPP_OFFICIAL
          description: >-
            Origem do template. `WHATSAPP_OFFICIAL` = catálogo Meta (WABA).
            `ZENVIO` ou null = template interno Notifique.
          example: null
        status:
          type: string
          example: ACTIVE
        metaId:
          type: string
          nullable: true
          description: ID do message_template na Graph (quando oficial).
          example: null
        metaName:
          type: string
          nullable: true
          description: >-
            Nome Graph do template (`a-z`, `0-9`, `_`). Usado no envio Cloud;
            pode diferir do `name` interno.
          example: hello_world
        metaWabaId:
          type: string
          nullable: true
          description: WABA de origem do template oficial.
          example: null
        type:
          type: string
          nullable: true
          example: null
        components:
          nullable: true
          description: >-
            Componentes Meta (HEADER/BODY/FOOTER/BUTTONS/CAROUSEL) quando
            `source` é WHATSAPP_OFFICIAL.
          example: null
        variables:
          type: array
          items:
            type: string
          example:
            - codigo
            - name
        variableDefaults:
          type: object
          additionalProperties:
            type: string
          example:
            name: Cliente
        usageCount:
          type: integer
          example: 12
        lastUsedAt:
          type: string
          format: date-time
          nullable: true
          example: '2026-07-08T10:15:00.000Z'
        marketingTopicId:
          type: string
          nullable: true
          example: null
        appendPreferencesLink:
          type: boolean
          example: true
        localeTranslations:
          nullable: true
          example: null
        enabledChannels:
          type: array
          items:
            type: string
            enum:
              - sms
              - whatsapp
              - telegram
              - email
              - rcs
              - push
              - voice
          example:
            - sms
            - email
            - whatsapp
        sms:
          allOf:
            - $ref: '#/components/schemas/ChannelEnabledPayload'
          example:
            enabled: true
            payload:
              content: Pedido {{codigo}} despachado, {{name}}.
        whatsapp:
          allOf:
            - $ref: '#/components/schemas/ChannelEnabledPayload'
          example:
            enabled: true
            payload:
              content: Ola {{name}}, pedido {{codigo}} saiu para entrega.
              mediaUrl: null
              buttons: null
        telegram:
          allOf:
            - $ref: '#/components/schemas/ChannelEnabledPayload'
          example:
            enabled: false
            payload:
              content: ''
              mediaUrl: null
              buttons: null
        email:
          allOf:
            - $ref: '#/components/schemas/ChannelEnabledPayload'
          example:
            enabled: true
            payload:
              subject: Pedido {{codigo}}
              html: <p>Ola {{name}}, seu pedido saiu.</p>
              containerWidth: 600
              containerPadding: 24
              imageUrls: null
              buttons: null
        rcs:
          allOf:
            - $ref: '#/components/schemas/ChannelEnabledPayload'
          example:
            enabled: false
            payload:
              messageType: BASIC
              message: ''
              payload: null
        push:
          allOf:
            - $ref: '#/components/schemas/ChannelEnabledPayload'
          example:
            enabled: false
            payload:
              title: null
              body: null
              url: null
              icon: null
              image: null
              data: null
        voice:
          allOf:
            - $ref: '#/components/schemas/ChannelEnabledPayload'
          example:
            enabled: false
            payload:
              speakText: ''
              speakVoice: null
              gather: null
        createdAt:
          type: string
          format: date-time
          example: '2026-06-01T12:00:00.000Z'
        updatedAt:
          type: string
          format: date-time
          example: '2026-07-01T09:30:00.000Z'
      example:
        id: cltmpl01abc
        workspaceId: clws01xyz
        name: alerta_pedido
        category: TRANSACTIONAL
        language: pt_BR
        source: null
        status: ACTIVE
        metaId: null
        type: null
        components: null
        variables:
          - codigo
          - name
        variableDefaults:
          name: Cliente
        usageCount: 12
        lastUsedAt: '2026-07-08T10:15:00.000Z'
        marketingTopicId: null
        appendPreferencesLink: true
        localeTranslations: null
        enabledChannels:
          - sms
          - email
          - whatsapp
        sms:
          enabled: true
          payload:
            content: Pedido {{codigo}} despachado, {{name}}.
        whatsapp:
          enabled: true
          payload:
            content: Ola {{name}}, pedido {{codigo}} saiu para entrega.
            mediaUrl: null
            buttons: null
        telegram:
          enabled: false
          payload:
            content: ''
            mediaUrl: null
            buttons: null
        email:
          enabled: true
          payload:
            subject: Pedido {{codigo}}
            html: <p>Ola {{name}}, seu pedido saiu.</p>
            containerWidth: 600
            containerPadding: 24
            imageUrls: null
            buttons: null
        rcs:
          enabled: false
          payload:
            messageType: BASIC
            message: ''
            payload: null
        push:
          enabled: false
          payload:
            title: null
            body: null
            url: null
            icon: null
            image: null
            data: null
        voice:
          enabled: false
          payload:
            speakText: ''
            speakVoice: null
            gather: null
        createdAt: '2026-06-01T12:00:00.000Z'
        updatedAt: '2026-07-01T09:30:00.000Z'
    ChannelEnabledPayload:
      type: object
      required:
        - enabled
        - payload
      properties:
        enabled:
          type: boolean
          example: true
        payload:
          type: object
          additionalProperties: true
          description: >-
            Campos do canal (content, subject, html, messageType, title,
            speakText, etc.)
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
    ApiKeyHeader:
      type: apiKey
      in: header
      name: x-api-key

````