privilegedRoleAssignment: makePermanent

Namespace: microsoft.graph

Important

APIs under the /beta version in Microsoft Graph are subject to change. Use of these APIs in production applications is not supported. To determine whether an API is available in v1.0, use the Version selector.

Caution

This version of the Privileged Identity Management (PIM) API for Azure Active Directory (Azure AD) roles is deprecated and stopped returning data on May 31, 2021. Use the new PIM v3 API for managing Azure AD roles or learn how to migrate.

Make the role assignment permanent.

Permissions

One of the following permissions is required to call this API. To learn more, including how to choose permissions, see Permissions.

The tenant needs to be registered to PIM. Otherwise, HTTP 403 Forbidden error will be returned.

The requestor needs to have Privileged Role Administrator role.

Permission type Permissions (from least to most privileged)
Delegated (work or school account) Directory.AccessAsUser.All
Delegated (personal Microsoft account) Not supported.
Application Not supported.

HTTP request

POST /privilegedRoleAssignments/{id}/makePermanent

Request headers

Name Description
Authorization Bearer {token}. Required.

Request body

In the request body, provide a JSON object with the following parameters.

Parameter Type Description
reason string Optional. The reason to make this call.
ticketNumber string Optional. The ticket number that is associated with this action.
ticketSystem string Optional. The ticket system.

Response

If successful, this method returns 200 OK response code and privilegedRoleAssignment object in the response body.

Example

Here is an example of how to call this API.

Request

Here is an example of the request.

POST https://graph.microsoft.com/beta/privilegedRoleAssignments/{id}/makePermanent
Content-type: application/json

{
  "reason": "reason-value",
  "ticketNumber": "ticketNumber-value",
  "ticketSystem": "ticketSystem-value"
}
Response

Here is an example of the response. Note: The response object shown here might be shortened for readability.

HTTP/1.1 200 OK
Content-type: application/json

{
  "id": "id-value",
  "userId": "userId-value",
  "roleId": "roleId-value",
  "isElevated": true,
  "expirationDateTime": "2016-10-19T10:37:00Z",
  "resultMessage": "resultMessage-value"
}