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

> ## Agent Instructions
> Internal links on these pages omit the .md extension. Append .md to a docs page URL, or send an Accept: text/markdown header, to get that page as markdown.

# List app folders

> <Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Returns the folders you can see in the workspace: its workspace folders, which every member sees, and your personal folders, which only you see.

A folder holds builder apps or agents, never both. Set `app_type` to `user_agent` to list agent folders.

Each folder names the folder it sits in through `parent_folder_id`, so build the tree from that. This returns folders only. To list the apps in a folder, call [List apps](/api-reference/list-apps) with `folder_id`.

This is limited to 300 requests per minute. A signed-in session has its own limit, and every personal access token for the workspace shares one. Some workspaces have a different limit.

<Note>Call this with a personal access token sent as a Bearer token, or from a signed-in session. A token works on its own workspace's folders. Workspace API keys aren't accepted, and a read-only token works.</Note>



## OpenAPI

````yaml /developers/references/app-management/app-management-openapi.json get /api/app-folders/tree
openapi: 3.1.0
info:
  title: Base44 App Management API
  version: 1.0.0
servers:
  - url: https://app.base44.com
security:
  - PersonalAccessTokenAuth: []
paths:
  /api/app-folders/tree:
    get:
      summary: List app folders
      description: >-
        <Info>This API is in beta. Endpoints, fields, and behavior may still
        change, so avoid depending on it in production.</Info>


        Returns the folders you can see in the workspace: its workspace folders,
        which every member sees, and your personal folders, which only you see.


        A folder holds builder apps or agents, never both. Set `app_type` to
        `user_agent` to list agent folders.


        Each folder names the folder it sits in through `parent_folder_id`, so
        build the tree from that. This returns folders only. To list the apps in
        a folder, call [List apps](/api-reference/list-apps) with `folder_id`.


        This is limited to 300 requests per minute. A signed-in session has its
        own limit, and every personal access token for the workspace shares one.
        Some workspaces have a different limit.


        <Note>Call this with a personal access token sent as a Bearer token, or
        from a signed-in session. A token works on its own workspace's folders.
        Workspace API keys aren't accepted, and a read-only token works.</Note>
      operationId: get_folder_tree_api_app_folders_tree_get
      parameters:
        - name: app_type
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Which folders to list: `user_app` for builder app folders, or
              `user_agent` for agent folders. Defaults to `user_app`, and so
              does any other value.
            title: App Type
          description: >-
            Which folders to list: `user_app` for builder app folders, or
            `user_agent` for agent folders. Defaults to `user_app`, and so does
            any other value.
          example: user_app
      responses:
        '200':
          description: The folders you can see.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppFolderTree'
        '401':
          description: Missing or invalid credentials.
        '429':
          description: Rate limit exceeded.
components:
  schemas:
    AppFolderTree:
      properties:
        workspace_folders:
          items:
            $ref: '#/components/schemas/AppFolderSummary'
          type: array
          title: Workspace Folders
          description: Workspace folders, sorted by `position`.
          example:
            - app_type: user_app
              color: '#3B82F6'
              created_date: '2026-08-01T09:15:00'
              icon: briefcase
              id: 68c1f2a9b4e7d3005a2c9e11
              name: Client projects
              position: 2
              scope: workspace
        personal_folders:
          items:
            $ref: '#/components/schemas/AppFolderSummary'
          type: array
          title: Personal Folders
          description: Your personal folders, sorted by `position`.
          example:
            - app_type: user_app
              color: '#3B82F6'
              created_date: '2026-08-01T09:15:00'
              icon: briefcase
              id: 68c1f27eb4e7d3005a2c9e0f
              name: Drafts
              position: 1
              scope: personal
        favorite_folder_ids:
          items:
            type: string
          type: array
          title: Favorite Folder Ids
          description: >-
            IDs of the folders in this response that you starred in the Base44
            dashboard.
          example:
            - 68c1f2a9b4e7d3005a2c9e11
      type: object
      required:
        - workspace_folders
        - personal_folders
        - favorite_folder_ids
      title: AppFolderTree
    AppFolderSummary:
      properties:
        id:
          type: string
          title: Id
          description: ID of the folder.
          example: 68c1f2a9b4e7d3005a2c9e11
        name:
          type: string
          title: Name
          description: Name of the folder.
          example: Client projects
        parent_folder_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Parent Folder Id
          description: ID of the folder this one sits in, or `null` for a top-level folder.
          example: 68c1f27eb4e7d3005a2c9e0f
        scope:
          type: string
          enum:
            - workspace
            - personal
          title: Scope
          description: >-
            `workspace` for a folder every member of the workspace sees, or
            `personal` for one only you see.
          example: workspace
        position:
          type: number
          title: Position
          description: Sort key among folders. Lower values come first.
          example: 2
        color:
          anyOf:
            - type: string
            - type: 'null'
          title: Color
          description: Color set on the folder, or `null` when none is set.
          example: '#3B82F6'
        icon:
          anyOf:
            - type: string
            - type: 'null'
          title: Icon
          description: Icon name set on the folder, or `null` when none is set.
          example: briefcase
        app_type:
          anyOf:
            - type: string
              enum:
                - user_app
                - user_agent
            - type: 'null'
          title: App Type
          description: >-
            `user_app` for a folder of builder apps, or `user_agent` for a
            folder of agents. Builder app folders created before agent folders
            existed leave it out.
          example: user_app
        created_date:
          type: string
          format: date-time
          title: Created Date
          description: >-
            Time the folder was created, in UTC, as an ISO 8601 timestamp
            without a time zone offset.
          example: '2026-08-01T09:15:00'
      type: object
      required:
        - id
        - name
        - parent_folder_id
        - scope
        - position
        - created_date
      title: AppFolderSummary
  securitySchemes:
    PersonalAccessTokenAuth:
      type: http
      scheme: bearer
      description: 'Personal access token, sent as `Authorization: Bearer <token>`.'

````

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