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

# Permissions

> Get user RBAC permissions using the Stytch Vanilla JS SDK

`rbac.allPermissions` is an asynchronous method that returns the complete list of permissions assigned to the currently logged-in User. If the User is not logged in, all values will be false.

<Note>
  As a best practice, authorization checks for sensitive actions should also occur on the backend.
</Note>

## Response

<ResponseField name="permissions" type="Promise<Record<RoleId, Record<Action, boolean>>>" required>
  A promise that resolves to a map of all permissions assigned to the currently logged-in User.

  The key is the human-readable ID of the role, and the value is a map of all actions for the given role. The boolean value signifies whether the User has permission (true) or not (false) to perform the specified action.
</ResponseField>

<Panel>
  <RequestExample>
    ```jsx theme={null}
    import { StytchClient } from '@stytch/vanilla-js';

    const stytch = new StytchClient('public-token-test-b8c84de4-7d58-4ffc-9341-432b56596862');

    export const getAllPermissions = async () => {
    const permissions = await stytch.rbac.allPermissions();
    console.log(permissions);
    return permissions;
    };
    ```
  </RequestExample>

  <ResponseExample>
    ```json theme={null}
    {
        "stytch_permissions": {
          "documents": {
            "edit": false,
            "read": true,
          },
          "images": {
            "create": false,
            "view": true,
          },
        },
    }
    ```
  </ResponseExample>
</Panel>
