---
title: "Get permissions for a folder"
method: GET
path: "/folders/{folderId}/permissions"
tags: ["Folders"]
---

# Get permissions for a folder

`GET /folders/{folderId}/permissions`

Returns the complete list of permissions on a folder, one entry per user or group. `accessLevel` is `Custom` when the atom combination does not match a predefined level. Groups appear with synthetic `group-<id>@process.st` emails on the embedded user.

## Path parameters

- `folderId` string, required

## Response `200`

- PublicApiFolderPermissionListResponse
  - `data` object[] — The list of resources returned by this request.
    - `user` object, required — User this entry refers to.
      - `id` string, required — The resource's ID.
      - `email` string, required — The user's email address (also their login identifier).
      - `username` string, required — The user's display name (e.g. `Jane Doe`).
    - `accessLevel` 'Edit' | 'EditViewOwn' | 'ViewAll' | 'Run' | 'View' | 'Custom', required — Access level a user or group has on this folder. The level cascades to every workflow, page, and run inside the folder. `Edit` — full edit on the folder and all its contents; can run workflows and view all runs. `EditViewOwn` — edit folder contents and run workflows, but only see runs assigned to them (available on some plans). `ViewAll` — view the folder, all its contents, and all runs; can run workflows but cannot edit. `Run` — view the folder and run its workflows; only sees runs assigned to them. `View` — view the folder and its contents; cannot run workflows. `Custom` — the user's underlying permission atoms don't match any predefined level; inspect the `permissions` object on the same entry for the actual atoms.
    - `permissions` object, required — Granular permission flags this user or group has on the folder and its contents.
      - `folderCreate` boolean, required — Can create subfolders inside this folder.
      - `folderRead` boolean, required — Can view this folder.
      - `folderUpdate` boolean, required — Can edit this folder (rename, move).
      - `folderDelete` boolean, required — Can delete this folder.
      - `templateCreate` boolean, required — Can create workflows inside this folder.
      - `templateRead` boolean, required — Can view workflows inside this folder.
      - `templateUpdate` boolean, required — Can edit workflows inside this folder.
      - `templateDelete` boolean, required — Can delete workflows inside this folder.
      - `pageCreate` boolean, required — Can create pages inside this folder.
      - `pageRead` boolean, required — Can view pages inside this folder.
      - `pageUpdate` boolean, required — Can edit pages inside this folder.
      - `pageDelete` boolean, required — Can delete pages inside this folder.
      - `checklistCreate` boolean, required — Can start workflow runs from workflows in this folder.
      - `checklistRead` boolean, required — Can view workflow runs of workflows in this folder.
      - `checklistUpdate` boolean, required — Can edit workflow runs (e.g. complete tasks, fill form fields, change due dates).
      - `checklistDelete` boolean, required — Can delete workflow runs.
      - `doodadCreate` boolean, required — Can add comments and attachments to workflow runs.
      - `doodadRead` boolean, required — Can view comments and attachments on workflow runs.
      - `doodadUpdate` boolean, required — Can edit comments and attachments on workflow runs.
      - `doodadDelete` boolean, required — Can delete comments and attachments on workflow runs.
  - `links` object[] — Pagination links. When the result has more pages, look for an entry with `name: "next"` — its `href` is the URL to fetch the next page. Absence of `next` means there are no more pages. For single-resource responses this array is typically empty.
    - `name` string, required — Standard link relation name (RFC 5988) indicating this link's role. Common values include `self`, `edit`, `related`, `previous`, `next`.
    - `href` string, required — URL of the linked resource.
    - `rel` 'Approval Task' | 'Approvals' | 'Assignees' | 'Comment' | 'Data Set Records' | 'Data Sets' | 'Form Field Values' | 'Subject Task' | 'Task' | 'Tasks' | 'Users' | 'Webhook' | 'Workflow' | 'Workflow Run' — Optional. The kind of resource this link points to (e.g. `Workflow`, `Task`, `Comment`).
    - `type` 'Api' | 'App', required — Whether this link targets an API endpoint or a Process Street app URL. `Api` — a callable API endpoint you can fetch directly. `App` — a browser-facing URL in the Process Street UI.

## Other responses

- `default`

---

[API](https://skmtc.net/process/apis/process-street-public-api.md) · [All operations](https://skmtc.net/process/apis/process-street-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/process/process-street-public-api/revisions/6199a9464227/schema)
