---
title: "List Requestable Roles"
method: GET
path: "/v2/requestable-roles"
tags: ["Access Request API"]
---

# List Requestable Roles

`GET /v2/requestable-roles`

List roles that are available for requesting access. Returns roles with their access policy IDs so callers can look up policy constraints (max duration, justification requirements) via the Access Policy API.

## Query parameters

- `teamId` string, required — The ID of the team. Required.
- `targetUserId` string — The ID of the user to check requestable roles for. Defaults to the authenticated user if omitted.
- `pageSize` integer — Maximum number of results to return. Default is 100, maximum is 1000.
- `pageToken` string — Token for pagination. Leave empty for the first request.

## Response `200`

Success

- SvflowPublicapiListRequestableRolesResponse
  - `data` SvflowPubapimodelsRequestableRole[] — The list of requestable roles with their access policies.
    - `role` SvflowPubapimodelsRole — Role represents a requestable role on an app resource.
      - `id` string — The ID of the role.
      - `resourceId` string — The ID of the resource that the role belongs to.
      - `name` string — The name of the role.
      - `description` string — A description of the role.
      - `requestsEnabled` boolean — Whether requests are enabled for the role.
      - `accessPolicyId` string, nullable — The default access policy for the role.
      - `provisioningMethod` union — Provisioning configuration for a role. Exactly one method should be set.
        - object
          - `builtinWorkflow` SvflowPubapimodelsBuiltinWorkflowProvisioning, required — Provisioning is handled by the service's builtin workflow integration.
        - object
          - `customWorkflow` SvflowPubapimodelsCustomWorkflowProvisioning, required — Provisioning is handled by custom workflows for provision + deprovision.
            - `provisionWorkflowId` string — The workflow ID to provision access.
            - `deprovisionWorkflowId` string — The workflow ID to deprovision access.
        - object
          - `linkedRoles` SvflowPubapimodelsLinkedRolesProvisioning, required — Provisioning depends on prerequisite roles being provisioned first.
            - `linkedRoleIds` string[] — The IDs of prerequisite roles.
        - object
          - `manual` SvflowPubapimodelsManualProvisioning, required — Provisioning is handled manually by assigned users/groups.
            - `assignees` SvflowPubapimodelsManualProvisioningAssignee[] — Users and groups that should be assigned/notified for manual provisioning.
              - …
      - `externalId` string, nullable — The external ID of the role in the external system (optional).
      - `externalData` string, nullable — Data from the external system as a JSON string (computed by server).
      - `requireFormConfirmation` boolean
      - `tagIds` string[] — IDs of the tags currently attached to this role.
    - `accessPolicy` SvflowPubapimodelsAccessPolicy
      - `id` string — The ID of the access policy.
      - `teamId` string — The ID of the team that the access policy belongs to.
      - `name` string — The name of the access policy.
      - `description` string, nullable — A description of the access policy.
      - `maxAccessMinutes` integer, nullable — The maximum number of minutes that access can be granted for.
      - `requireBusinessJustification` boolean, nullable — Whether a business justification is required when requesting access.
      - `recommendedAccessMinutes` integer, nullable — The recommended duration in minutes for access requests (optional).
      - `requireOnBehalfOfConfirmation` boolean, nullable — Whether requests made on behalf of others require the target user's confirmation.
  - `nextPageToken` string, nullable — Token for retrieving the next page of results. Empty if no more results.

## Other responses

- `default` — Error

---

[API](https://skmtc.net/serval/apis/serval-public-api.md) · [All operations](https://skmtc.net/serval/apis/serval-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/serval/serval-public-api/versions/0549515e9384/schema)
