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

# List Communication Groups

> List all communication groups



## OpenAPI

````yaml GET /api/communication-groups
openapi: 3.0.0
info:
  title: Reach API
  version: 1.0.0
  description: API documentation for Reach platform
servers:
  - url: https://api.embedreach.com
    description: Production server
security: []
paths:
  /api/communication-groups:
    get:
      tags:
        - Communication Groups
      summary: List Communication Groups
      description: List all communication groups
      parameters:
        - name: reach-tenant-id
          in: header
          required: false
          schema:
            type: string
            description: >-
              If using a platform scoped JWT, you can pass in a header to
              impersonate a specific tenant to impersonate the request as.
        - schema:
            type: string
            description: The cursor to start from
          required: false
          description: The cursor to start from
          name: cursor
          in: query
        - schema:
            type: number
            nullable: true
            description: The limit of items to return, default is 100
          required: false
          description: The limit of items to return, default is 100
          name: limit
          in: query
      responses:
        '200':
          description: Status 200 response
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  message:
                    type: string
                  data:
                    type: object
                    properties:
                      results:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: string
                              description: The id of the communication group
                            emailChannelSenderId:
                              type: string
                              nullable: true
                              description: The id of the email channel sender
                            emailHtmlBody:
                              type: string
                              nullable: true
                              description: The html body of the email
                            emailCompiledHtml:
                              type: string
                              nullable: true
                              description: The compiled html body of the email
                            emailTextBody:
                              type: string
                              nullable: true
                              description: The text body of the email
                            emailPreviewText:
                              type: string
                              nullable: true
                              description: The preview text of the email
                            emailSubject:
                              type: string
                              nullable: true
                              description: The subject of the email
                            smsChannelSenderId:
                              type: string
                              nullable: true
                              description: The id of the sms channel sender
                            smsMessageBody:
                              type: string
                              nullable: true
                              description: The body of the sms message
                            textMessageCompanyName:
                              type: string
                              nullable: true
                              description: The company name to prefix the text message
                            extraMergeFields:
                              type: array
                              nullable: true
                              items:
                                oneOf:
                                  - type: object
                                    properties:
                                      id:
                                        type: string
                                        description: The id of the merge field
                                      type:
                                        type: string
                                        enum:
                                          - static
                                      templateName:
                                        type: string
                                        description: >-
                                          The template name of the merge field
                                          (e.g. black_friday_coupon)
                                      displayName:
                                        type: string
                                        description: >-
                                          The display name of the merge field
                                          (e.g. "Black Friday Sale 50% off")
                                      staticValue:
                                        type: string
                                        description: >-
                                          The static value of the merge field
                                          (e.g. "CODE123")
                                    required:
                                      - id
                                      - type
                                      - templateName
                                      - displayName
                                      - staticValue
                                  - type: object
                                    properties:
                                      id:
                                        type: string
                                        description: The id of the merge field
                                      type:
                                        type: string
                                        enum:
                                          - dynamic
                                      mergeFields:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            templateName:
                                              type: string
                                              description: >-
                                                The template name of the merge field
                                                (e.g. black_friday_coupon)
                                            displayName:
                                              type: string
                                              description: >-
                                                The display name of the merge field
                                                (e.g. "Black Friday Sale 50% off")
                                            image:
                                              type: object
                                              properties:
                                                placeholderUrl:
                                                  type: string
                                                  description: The placeholder url of the image
                                                maxSize:
                                                  type: number
                                                  description: The max size of the image in bytes
                                              required:
                                                - placeholderUrl
                                                - maxSize
                                          required:
                                            - templateName
                                            - displayName
                                      url:
                                        type: string
                                        description: >-
                                          The url to fetch the dynamic merge
                                          fields from
                                      parameters:
                                        type: object
                                        additionalProperties:
                                          nullable: true
                                        description: >-
                                          Additional parameters for the dynamic
                                          merge field
                                    required:
                                      - id
                                      - type
                                      - mergeFields
                                      - url
                              description: >-
                                The extra merge fields to include in the
                                communication group
                            updatedFromDefault:
                              type: object
                              nullable: true
                              properties:
                                email_html_body:
                                  type: string
                                  nullable: true
                                email_text_body:
                                  type: string
                                  nullable: true
                                text_message_body:
                                  type: string
                                  nullable: true
                              required:
                                - email_html_body
                                - email_text_body
                                - text_message_body
                              description: >-
                                The fields along with the timestamp that were
                                updated from the default template if this is a
                                managed communication group
                            textMessageMediaUrls:
                              type: array
                              nullable: true
                              items:
                                type: string
                              description: >-
                                The urls of the media to include in the text
                                message
                            type:
                              type: string
                              nullable: true
                              enum:
                                - custom
                                - managed
                              description: >-
                                The type of the communication group (e.g.
                                managed or custom)
                          required:
                            - id
                            - emailChannelSenderId
                            - emailHtmlBody
                            - emailCompiledHtml
                            - emailTextBody
                            - emailPreviewText
                            - emailSubject
                            - smsChannelSenderId
                            - smsMessageBody
                            - textMessageCompanyName
                            - updatedFromDefault
                            - textMessageMediaUrls
                            - type
                      pagination:
                        type: object
                        properties:
                          hasNextPage:
                            type: boolean
                          cursor:
                            type: string
                            nullable: true
                          total:
                            type: number
                        required:
                          - hasNextPage
                    required:
                      - results
                      - pagination
                required:
                  - success
        '400':
          description: Bad Request - Validation or request error
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    enum:
                      - false
                    default: false
                  message:
                    type: string
                    description: Error message describing what went wrong
                  errors:
                    type: array
                    items:
                      type: string
                    description: Optional array of specific validation errors
                required:
                  - message

````