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

# List macros

> List every org-wide macro (saved reply) in your organization, with its body, options, attachments, and detected source language.

Personal macros are never returned: an API key is an integration, not an agent, so it only sees the macros shared with the whole organization. Each macro carries `source_language`, the language it is written in, which is `null` until it has been detected.


## OpenAPI

````yaml get /macros
openapi: 3.1.0
info:
  title: OpenCX API
  description: >

    OpenCX is an AI-powered, all-in-one platform for customer support and
    outbound communications.


    Use this API to manage your OpenCX organization's AI agents, actions,
    conversations, contacts, and more.


    To get started, generate a new API key from the dashboard.


    ## Authentication

    All API endpoints require authentication using a Bearer token. You can
    generate an API key from your OpenCX dashboard.


    ## Rate Limiting

    API requests are rate limited to ensure fair usage. The current limits are:

    - 100 requests per minute for standard endpoints

    - 1000 requests per minute for streaming endpoints


    ## Error Handling

    The API uses standard HTTP status codes and returns detailed error messages
    in the response body.
  version: 1.0-beta
  license:
    name: MIT
    url: https://opensource.org/licenses/MIT
servers:
  - url: http://localhost:8080
    description: Development
  - url: https://api.open.cx
    description: Production
security:
  - bearerAuth: []
paths:
  /macros:
    get:
      summary: List macros
      description: List all saved-reply macros for the organization.
      operationId: listMacros
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListMacrosOutput'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDto'
components:
  schemas:
    ListMacrosOutput:
      $schema: https://json-schema.org/draft/2020-12/schema
      $id: '#/components/schemas/ListMacrosOutput'
      type: array
      items:
        $ref: '#/components/schemas/SavedReplyDto'
    ErrorDto:
      type: object
      properties:
        statusCode:
          type: integer
        message:
          type: string
        error:
          type: string
    SavedReplyDto:
      $schema: https://json-schema.org/draft/2020-12/schema
      $id: '#/components/schemas/SavedReplyDto'
      type: object
      properties:
        id:
          type: string
        org_id:
          type: string
        category:
          type: string
        title:
          type: string
        content:
          type: string
          description: Macro body as channel-safe HTML, with {{variable}} references.
        attachments:
          type: array
          items:
            $ref: '#/components/schemas/MacroAttachmentDto'
        options:
          type: array
          items:
            $ref: '#/components/schemas/MessageOptionDto'
        user_id:
          anyOf:
            - type: number
            - type: 'null'
        overrides_saved_reply_id:
          anyOf:
            - type: string
            - type: 'null'
        exclude_from_suggestions:
          type: boolean
        source_language:
          anyOf:
            - type: string
            - type: 'null'
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
      required:
        - id
        - org_id
        - category
        - title
        - content
        - attachments
        - options
        - user_id
        - overrides_saved_reply_id
        - exclude_from_suggestions
        - source_language
        - created_at
        - updated_at
      additionalProperties: false
    MacroAttachmentDto:
      $schema: https://json-schema.org/draft/2020-12/schema
      $id: '#/components/schemas/MacroAttachmentDto'
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        size:
          type: number
        type:
          type: string
        url:
          type: string
      required:
        - id
        - name
        - size
        - type
        - url
      additionalProperties: false
    MessageOptionDto:
      $schema: https://json-schema.org/draft/2020-12/schema
      $id: '#/components/schemas/MessageOptionDto'
      type: object
      properties:
        id:
          type: string
        label:
          type: string
        type:
          $ref: '#/components/schemas/MessageOptionType'
      required:
        - id
        - label
        - type
      additionalProperties: false
    MessageOptionType:
      $schema: https://json-schema.org/draft/2020-12/schema
      $id: '#/components/schemas/MessageOptionType'
      type: string
      enum:
        - text
        - workflow
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````

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