# List Effective Privilege Assignments

`GET /api/2.1/unity-catalog/effective-privilege-assignments/{securable_type}/{full_name}`

Lists the effective privilege assignments for a securable. Includes inherited privileges.
 Paginated version of Get Effective Permissions API.

API scopes: unity-catalog

## Path parameters

- `securable_type` (string, optional)
  Type of securable.
- `full_name` (string, optional)
  Full name of securable.

## Query parameters

- `principal` (string, optional)
  If provided, only the effective permissions for the specified principal (user or group) are returned.
- `page_size` (int32, optional)
  Specifies the maximum number of privilege assignments to return (page length).
   Every EffectivePrivilegeAssignment present in a single page response is guaranteed to contain all the effective
   privileges granted on (or inherited by) the requested Securable for the respective principal.
  
   If not set, a server-configured default is used.
   If set to
     - lesser than 0: invalid parameter error
     - 0: page length is set to a server configured value
     - lesser than 150 but greater than 0: invalid parameter error (this is to ensure that server is able to return at
       least one complete EffectivePrivilegeAssignment in a single page response)
     - greater than (or equal to) 150: page length is the minimum of this value and a server configured value
- `page_token` (string, optional)
  Opaque pagination token to go to next page based on previous query.

## Returns

- `effective_privilege_assignments` (array of object, optional)
  The effective privilege assignments for the securable (and optional principal).
  - `principal` (string, optional)
    The principal (user email address or group name).
  - `privileges` (array of object, optional)
    The privileges conveyed to the principal (either directly or via inheritance).
    - `privilege` (string, optional)
      The privilege assigned to the principal.
    - `inherited_from_type` (string, optional)
      The type of the object that conveys this privilege via inheritance.
       This field is omitted when privilege is not inherited (it's assigned to the securable itself).
    - `inherited_from_name` (string, optional)
      The full name of the object that conveys this privilege via inheritance.
       This field is omitted when privilege is not inherited (it's assigned to the securable itself).
- `next_page_token` (string, optional)
  Opaque token to retrieve the next page of results. Absent if there are no more pages.
   __page_token__ should be set to this value for the next request (for the next page of results).

## Response

```json
{
  "effective_privilege_assignments": [
    {
      "principal": "string",
      "privileges": [
        {}
      ]
    }
  ],
  "next_page_token": "string"
}
```

