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

# List folders

> Returns the folders the API key owner can access, ordered by name. Rebuild the tree from `parentFolderId`; a folder whose parent is not accessible to the key owner still carries its real `parentFolderId`.



## OpenAPI

````yaml /openapi-2025-01-29.alpha.json get /folders
openapi: 3.0.0
info:
  title: Tomorro API
  description: >
    The Tomorro Public API enables you to programmatically manage contracts,
    members, and counterparties. Build powerful integrations that automate your
    contract management workflows.


    ## API Version: 2025-01-29.alpha


    This documentation is for API version `2025-01-29.alpha`.


    ### Using this version

    ```

    curl -X GET https://api.tomorro.com/members \
      -H "x-api-key: YOUR_API_KEY" \
      -H "tomorro-version: 2025-01-29.alpha"
    ```
  version: 2025-01-29.alpha
  contact: {}
servers:
  - url: https://api.tomorro.com/v2
    description: Production
  - url: https://api.demo.tomorro.com/v2
    description: Demo
  - url: http://localhost:3015
    description: Local Development
security: []
tags: []
paths:
  /folders:
    get:
      tags:
        - Folders
      summary: List folders
      description: >-
        Returns the folders the API key owner can access, ordered by name.
        Rebuild the tree from `parentFolderId`; a folder whose parent is not
        accessible to the key owner still carries its real `parentFolderId`.
      operationId: FoldersController_listFolders
      parameters:
        - name: limit
          required: false
          in: query
          description: Number of items per page (1-50)
          schema:
            minimum: 1
            maximum: 50
            default: 20
            example: 20
            type: integer
        - name: after
          required: false
          in: query
          description: >-
            Cursor for forward pagination. Use the `next_cursor` value from a
            previous response.
          schema:
            example: eyJpZCI6IjEyMyJ9
            type: string
        - name: before
          required: false
          in: query
          description: >-
            Cursor for backward pagination. Use the `prev_cursor` value from a
            previous response.
          schema:
            example: eyJpZCI6IjEwMCJ9
            type: string
        - name: parentFolderId
          required: false
          in: query
          description: >-
            Filter by parent folder. Use `root` for top-level folders. Formats:
            `parentFolderId=<uuid>` (direct children), `parentFolderId=root`,
            `parentFolderId=in:<uuid>,<uuid>,root`.
          schema:
            example: root
            type: string
        - name: search
          required: false
          in: query
          description: Case-insensitive substring match on the folder name.
          schema:
            maxLength: 255
            example: nda
            type: string
        - name: updatedAt
          required: false
          in: query
          description: >-
            Filter by last modification date (ISO 8601). Formats:
            `updatedAt=gte:2026-10-01T00:00:00Z`, `gt:`, `lte:`, `lt:`.
          schema:
            example: gte:2026-10-01T00:00:00Z
            type: string
      responses:
        '200':
          description: Paginated list of folders
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FolderListResponseDto'
        '400':
          description: Invalid request body
        '401':
          description: Unauthorized - Invalid or missing API key
        '403':
          description: Forbidden - Insufficient permissions
        '429':
          description: Too Many Requests - Rate limit exceeded
      security:
        - X-API-KEY: []
components:
  schemas:
    FolderListResponseDto:
      type: object
      properties:
        data:
          description: Folders of the current page.
          example:
            - id: 3f2a1c9e-8b7d-4e6f-9a0b-1c2d3e4f5a6b
              name: NDA
              parentFolderId: 7c8d9e0f-1a2b-4c3d-8e4f-5a6b7c8d9e0f
              ownerId: 550e8400-e29b-41d4-a716-446655440000
              createdAt: '2026-10-01T09:00:00.000Z'
              updatedAt: '2026-10-15T14:30:00.000Z'
          type: array
          items:
            $ref: '#/components/schemas/FolderResponseDto'
        pagination:
          description: Pagination metadata including cursors and navigation flags.
          example:
            limit: 20
            next_cursor: eyJvZmZzZXQiOjIwfQ
            prev_cursor: null
            has_next: true
            has_previous: false
          allOf:
            - $ref: '#/components/schemas/PaginationMetaDto'
        links:
          description: >-
            HATEOAS navigation links for pagination. Active filters are kept in
            the links.
          example:
            self: /folders?limit=20&parentFolderId=root
            next: /folders?limit=20&after=eyJvZmZzZXQiOjIwfQ&parentFolderId=root
            prev: null
          allOf:
            - $ref: '#/components/schemas/PaginationLinksDto'
      required:
        - data
        - pagination
        - links
    FolderResponseDto:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the folder.
          example: 3f2a1c9e-8b7d-4e6f-9a0b-1c2d3e4f5a6b
        name:
          type: string
          description: Name of the folder, unique among its siblings.
          example: NDA
        parentFolderId:
          type: string
          description: >-
            Identifier of the parent folder, `null` for a root folder. Always
            the real parent, even when the authenticated member cannot access it
            (a `GET` on that id then returns 404).
          nullable: true
          example: 7c8d9e0f-1a2b-4c3d-8e4f-5a6b7c8d9e0f
        ownerId:
          type: string
          description: Identifier of the member who owns the folder.
          example: 550e8400-e29b-41d4-a716-446655440000
        createdAt:
          format: date-time
          type: string
          description: Creation date (ISO 8601).
          example: '2026-10-01T09:00:00.000Z'
        updatedAt:
          format: date-time
          type: string
          description: Last modification date (ISO 8601).
          example: '2026-10-15T14:30:00.000Z'
      required:
        - id
        - name
        - parentFolderId
        - ownerId
        - createdAt
        - updatedAt
    PaginationMetaDto:
      type: object
      properties:
        limit:
          type: number
          description: The number of items per page.
          example: 20
        next_cursor:
          type: string
          description: >-
            Cursor for fetching the next page. Use with the `after` query
            parameter.
          nullable: true
          example: eyJpZCI6IjEyMyJ9
        prev_cursor:
          type: string
          description: >-
            Cursor for fetching the previous page. Use with the `before` query
            parameter.
          nullable: true
          example: eyJpZCI6IjEwMCJ9
        has_next:
          type: boolean
          description: Whether there are more items available after this page.
          example: true
        has_previous:
          type: boolean
          description: Whether there are items available before this page.
          example: false
      required:
        - limit
        - next_cursor
        - prev_cursor
        - has_next
        - has_previous
    PaginationLinksDto:
      type: object
      properties:
        self:
          type: string
          description: URL of the current page.
          example: /members?limit=20
        next:
          type: string
          description: URL to fetch the next page. Null if there is no next page.
          nullable: true
          example: /members?limit=20&after=eyJpZCI6IjEyMyJ9
        prev:
          type: string
          description: URL to fetch the previous page. Null if there is no previous page.
          nullable: true
          example: /members?limit=20&before=eyJpZCI6IjEwMCJ9
      required:
        - self
        - next
        - prev
  securitySchemes:
    X-API-KEY:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        API key for authentication. Get your key at
        https://app.tomorro.com/settings/integrations?integration=api-key

````

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