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

# Get Public Help Center Tree



## OpenAPI

````yaml get /api/v1/public/help-centers/{slug}/tree
openapi: 3.0.0
info:
  title: Libredesk API
  description: >-
    REST API documentation for Libredesk helpdesk system.


    ## Authentication


    The Libredesk API supports two authentication methods:


    ### 1. Basic Authentication

    Use your API key and secret with Basic authentication:

    ```

    Authorization: Basic <base64_encoded_api_key:api_secret>

    ```


    ### 2. Token Authentication  

    Use your API key and secret with token authentication:

    ```

    Authorization: token api_key:api_secret

    ```


    To obtain API credentials, generate them from your agent profile in the
    Libredesk dashboard.
  version: 1.0.0
servers:
  - url: http://localhost:8080
    description: Local development server
security:
  - basicAuth: []
  - tokenAuth: []
paths:
  /api/v1/public/help-centers/{slug}/tree:
    get:
      tags:
        - Help center
      summary: Get Public Help Center Tree
      operationId: handleGetPublicHelpCenterTree
      parameters:
        - name: slug
          in: path
          required: true
          schema:
            type: string
          description: Help center slug.
        - name: locale
          in: query
          required: false
          schema:
            type: string
          description: >-
            Locale code. Falls back to the help center's default locale when
            missing or not allowed.
      responses:
        '200':
          description: Published collections and articles of an active help center
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HelpCenterTreeResponse'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security: []
components:
  schemas:
    HelpCenterTreeResponse:
      type: object
      properties:
        status:
          type: string
          example: success
        data:
          $ref: '#/components/schemas/HelpCenterTree'
    ErrorResponse:
      type: object
      description: Error response format
      properties:
        status:
          type: string
          example: error
        message:
          type: string
          description: Error message
          example: Invalid request
        data:
          nullable: true
          description: Additional error data
        error_type:
          type: string
          enum:
            - GeneralException
            - PermissionException
            - InputException
            - DataException
            - NetworkException
            - NotFoundException
            - ConflictException
            - UnauthorizedException
            - RateLimitException
    HelpCenterTree:
      type: object
      properties:
        help_center:
          $ref: '#/components/schemas/HelpCenter'
        tree:
          type: array
          items:
            $ref: '#/components/schemas/HelpCenterTreeCollection'
    HelpCenter:
      type: object
      properties:
        id:
          type: integer
          example: 1
        created_at:
          type: string
          format: date-time
          example: '2025-08-28T10:00:00Z'
        updated_at:
          type: string
          format: date-time
          example: '2025-08-28T10:00:00Z'
        name:
          type: string
          example: Help center
        slug:
          type: string
          example: help
        page_title:
          type: string
          example: Help center
        meta_description:
          type: string
          example: ''
        custom_css:
          type: string
          example: ''
        custom_js:
          type: string
          example: ''
        default_locale:
          type: string
          example: en
        allowed_locales:
          type: array
          items:
            type: string
          example:
            - en
        is_active:
          type: boolean
          example: true
        theme:
          type: object
          description: Help center theme settings.
        custom_domain:
          type: string
          example: ''
        template:
          type: string
          example: classic
    HelpCenterTreeCollection:
      type: object
      properties:
        id:
          type: integer
          example: 1
        created_at:
          type: string
          format: date-time
          example: '2025-08-28T10:00:00Z'
        updated_at:
          type: string
          format: date-time
          example: '2025-08-28T10:00:00Z'
        help_center_id:
          type: integer
          example: 1
        slug:
          type: string
          example: account
        parent_id:
          type: integer
          nullable: true
        locale:
          type: string
          example: en
        name:
          type: string
          example: Account
        description:
          type: string
          example: ''
        icon:
          type: string
          example: ''
        sort_order:
          type: integer
          example: 0
        is_published:
          type: boolean
          example: true
        articles:
          type: array
          items:
            $ref: '#/components/schemas/HelpCenterArticle'
        children:
          type: array
          items:
            $ref: '#/components/schemas/HelpCenterTreeCollection'
        article_count:
          type: integer
          example: 3
        authors:
          type: array
          items:
            $ref: '#/components/schemas/HelpCenterArticleAuthor'
        author_count:
          type: integer
          example: 1
    HelpCenterArticle:
      type: object
      properties:
        id:
          type: integer
          example: 1
        created_at:
          type: string
          format: date-time
          example: '2025-08-28T10:00:00Z'
        updated_at:
          type: string
          format: date-time
          example: '2025-08-28T10:00:00Z'
        collection_id:
          type: integer
          example: 1
        author_id:
          type: integer
          nullable: true
        author_name:
          type: string
          nullable: true
        author_avatar:
          type: string
          nullable: true
        created_by:
          type: integer
          nullable: true
        created_by_name:
          type: string
          nullable: true
        slug:
          type: string
          example: reset-password
        locale:
          type: string
          example: en
        title:
          type: string
          example: Reset your password
        content:
          type: string
          example: <p>...</p>
        excerpt:
          type: string
          example: ''
        meta_title:
          type: string
          example: ''
        meta_description:
          type: string
          example: ''
        meta_image_url:
          type: string
          example: ''
        sort_order:
          type: integer
          example: 0
        status:
          type: string
          example: published
        view_count:
          type: integer
          example: 0
        ai_enabled:
          type: boolean
          example: false
        helpful_count:
          type: integer
          example: 0
        not_helpful_count:
          type: integer
          example: 0
    HelpCenterArticleAuthor:
      type: object
      properties:
        name:
          type: string
          example: Agent A
        avatar:
          type: string
          example: ''
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: >-
        Basic authentication using base64 encoded API key and secret. Format:
        `Authorization: Basic <base64(api_key:api_secret)>`
    tokenAuth:
      type: apiKey
      name: Authorization
      in: header
      description: >-
        Token authentication using API key and secret. Format: `Authorization:
        token api_key:api_secret`

````