# List folders in a workspace `GET /folders` **Required scope:** `folders:read` parentFolder query: omitted/"root" = top-level only (default); "" = that folder's direct children; "all" = every folder at all depths (parents + children) in one call. Child folders are NOT in the default response. Use parentFolder=all to see them. Each row carries its own parentFolder id. ## Responses | Status | Meaning | |---|---| | `200` | Success | | `400` | BadRequest | | `401` | Unauthorized | | `403` | Forbidden | | `429` | RateLimited | ## Example ```bash curl -X GET "https://backend.immut.io/api/v1/folders" \ -H "Authorization: Bearer $IMMUT_API_KEY" ``` ## OpenAPI fragment ```json { "/folders": { "get": { "operationId": "getfolders", "summary": "List folders in a workspace. parentFolder query: omitted/\"root\" = top-level only (default); \"\" = that folder's direct children; \"all\" = every folder at all depths (parents + children) in one call. Child folders are NOT in the default response. Use parentFolder=all to see them. Each row carries its own parentFolder id.", "description": "List folders in a workspace. parentFolder query: omitted/\"root\" = top-level only (default); \"\" = that folder's direct children; \"all\" = every folder at all depths (parents + children) in one call. Child folders are NOT in the default response. Use parentFolder=all to see them. Each row carries its own parentFolder id.", "responses": { "200": { "description": "Success" }, "400": { "$ref": "#/components/responses/BadRequest" }, "401": { "$ref": "#/components/responses/Unauthorized" }, "403": { "$ref": "#/components/responses/Forbidden" }, "429": { "$ref": "#/components/responses/RateLimited" } }, "tags": [ "Folders" ], "x-required-scope": "folders:read" } } } ```