> ## 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.

> The whole content tree for one language: nested categories with their articles, in the order they are served, each article flagged with its version and publish state.

# Tree



## OpenAPI

````yaml get /hc/{helpCenterId}/structure/tree
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:
  /hc/{helpCenterId}/structure/tree:
    get:
      summary: Get the help center content tree
      description: >-
        The whole tree for one language — nested topics with their articles, in
        the order they are served. Each article reports whether it has a
        version, a published version and an unsaved draft.
      operationId: getHelpCenterTree
      parameters:
        - schema:
            type: string
            minLength: 2
          in: query
          name: language_code
          required: true
        - schema:
            type: string
            format: uuid
            pattern: >-
              ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
          in: path
          name: helpCenterId
          required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HelpCenterTreeResponseDto'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDto'
components:
  schemas:
    HelpCenterTreeResponseDto:
      $schema: https://json-schema.org/draft/2020-12/schema
      $id: '#/components/schemas/HelpCenterTreeResponseDto'
      type: object
      properties:
        topics:
          type: array
          items:
            type: object
            properties:
              entity_id:
                type: string
                format: uuid
                pattern: >-
                  ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
              name:
                type: string
              description:
                anyOf:
                  - type: string
                  - type: 'null'
              slug:
                type: string
              icon:
                anyOf:
                  - type: string
                  - type: 'null'
              position:
                type: integer
                minimum: -9007199254740991
                maximum: 9007199254740991
              articles:
                type: array
                items:
                  type: object
                  properties:
                    entity_id:
                      type: string
                      format: uuid
                      pattern: >-
                        ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                    title:
                      type: string
                    position:
                      type: integer
                      minimum: -9007199254740991
                      maximum: 9007199254740991
                    has_version:
                      type: boolean
                    has_published_version:
                      type: boolean
                    has_draft:
                      type: boolean
                  required:
                    - entity_id
                    - title
                    - position
                    - has_version
                    - has_published_version
                    - has_draft
                  additionalProperties: false
              topics:
                type: array
                items:
                  type: object
                  properties:
                    entity_id:
                      type: string
                      format: uuid
                      pattern: >-
                        ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                    name:
                      type: string
                    description:
                      anyOf:
                        - type: string
                        - type: 'null'
                    slug:
                      type: string
                    icon:
                      anyOf:
                        - type: string
                        - type: 'null'
                    position:
                      type: integer
                      minimum: -9007199254740991
                      maximum: 9007199254740991
                    articles:
                      type: array
                      items:
                        type: object
                        properties:
                          entity_id:
                            type: string
                            format: uuid
                            pattern: >-
                              ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                          title:
                            type: string
                          position:
                            type: integer
                            minimum: -9007199254740991
                            maximum: 9007199254740991
                          has_version:
                            type: boolean
                          has_published_version:
                            type: boolean
                          has_draft:
                            type: boolean
                        required:
                          - entity_id
                          - title
                          - position
                          - has_version
                          - has_published_version
                          - has_draft
                        additionalProperties: false
                    topics:
                      type: array
                      items:
                        type: object
                        properties:
                          entity_id:
                            type: string
                            format: uuid
                            pattern: >-
                              ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                          name:
                            type: string
                          description:
                            anyOf:
                              - type: string
                              - type: 'null'
                          slug:
                            type: string
                          icon:
                            anyOf:
                              - type: string
                              - type: 'null'
                          position:
                            type: integer
                            minimum: -9007199254740991
                            maximum: 9007199254740991
                          articles:
                            type: array
                            items:
                              type: object
                              properties:
                                entity_id:
                                  type: string
                                  format: uuid
                                  pattern: >-
                                    ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                                title:
                                  type: string
                                position:
                                  type: integer
                                  minimum: -9007199254740991
                                  maximum: 9007199254740991
                                has_version:
                                  type: boolean
                                has_published_version:
                                  type: boolean
                                has_draft:
                                  type: boolean
                              required:
                                - entity_id
                                - title
                                - position
                                - has_version
                                - has_published_version
                                - has_draft
                              additionalProperties: false
                          topics:
                            type: array
                            items:
                              type: object
                              properties:
                                entity_id:
                                  type: string
                                  format: uuid
                                  pattern: >-
                                    ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                                name:
                                  type: string
                                description:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                                slug:
                                  type: string
                                icon:
                                  anyOf:
                                    - type: string
                                    - type: 'null'
                                position:
                                  type: integer
                                  minimum: -9007199254740991
                                  maximum: 9007199254740991
                                articles:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      entity_id:
                                        type: string
                                        format: uuid
                                        pattern: >-
                                          ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                                      title:
                                        type: string
                                      position:
                                        type: integer
                                        minimum: -9007199254740991
                                        maximum: 9007199254740991
                                      has_version:
                                        type: boolean
                                      has_published_version:
                                        type: boolean
                                      has_draft:
                                        type: boolean
                                    required:
                                      - entity_id
                                      - title
                                      - position
                                      - has_version
                                      - has_published_version
                                      - has_draft
                                    additionalProperties: false
                                topics:
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      entity_id:
                                        type: string
                                        format: uuid
                                        pattern: >-
                                          ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                                      name:
                                        type: string
                                      description:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      slug:
                                        type: string
                                      icon:
                                        anyOf:
                                          - type: string
                                          - type: 'null'
                                      position:
                                        type: integer
                                        minimum: -9007199254740991
                                        maximum: 9007199254740991
                                      articles:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            entity_id:
                                              type: string
                                              format: uuid
                                              pattern: >-
                                                ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                                            title:
                                              type: string
                                            position:
                                              type: integer
                                              minimum: -9007199254740991
                                              maximum: 9007199254740991
                                            has_version:
                                              type: boolean
                                            has_published_version:
                                              type: boolean
                                            has_draft:
                                              type: boolean
                                          required:
                                            - entity_id
                                            - title
                                            - position
                                            - has_version
                                            - has_published_version
                                            - has_draft
                                          additionalProperties: false
                                      topics:
                                        default: []
                                        type: array
                                        items:
                                          type: object
                                          properties: {}
                                          additionalProperties: false
                                    required:
                                      - entity_id
                                      - name
                                      - description
                                      - slug
                                      - icon
                                      - position
                                      - articles
                                      - topics
                                    additionalProperties: false
                              required:
                                - entity_id
                                - name
                                - description
                                - slug
                                - icon
                                - position
                                - articles
                                - topics
                              additionalProperties: false
                        required:
                          - entity_id
                          - name
                          - description
                          - slug
                          - icon
                          - position
                          - articles
                          - topics
                        additionalProperties: false
                  required:
                    - entity_id
                    - name
                    - description
                    - slug
                    - icon
                    - position
                    - articles
                    - topics
                  additionalProperties: false
            required:
              - entity_id
              - name
              - description
              - slug
              - icon
              - position
              - articles
              - topics
            additionalProperties: false
      required:
        - topics
      additionalProperties: false
    ErrorDto:
      type: object
      properties:
        statusCode:
          type: integer
        message:
          type: string
        error:
          type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````