servicePrincipal: Add owner

Namespace: microsoft.graph

Use this API to add an owner for the servicePrincipal. Service principal owners can be users, the service principal itself, or other service principals.

This API is available in the following national cloud deployments.

Global service US Government L4 US Government L5 (DOD) China operated by 21Vianet

Permissions

Choose the permission or permissions marked as least privileged for this API. Use a higher privileged permission or permissions only if your app requires it. For details about delegated and application permissions, see Permission types. To learn more about these permissions, see the permissions reference.

Permission type Least privileged permissions Higher privileged permissions
Delegated (work or school account) Application.ReadWrite.All and Directory.Read.All Directory.ReadWrite.All
Delegated (personal Microsoft account) Not supported. Not supported.
Application Application.ReadWrite.OwnedBy and Directory.Read.All Directory.Read.All and Application.ReadWrite.All, Directory.ReadWrite.All

HTTP request

You can address the service principal using either its id or appId. id and appId are referred to as the Object ID and Application (Client) ID, respectively, in app registrations in the Microsoft Entra admin center.

POST /servicePrincipals/{id}/owners/$ref
POST /servicePrincipals(appId='{appId}')/owners/$ref

Request headers

Name Description
Authorization Bearer {token}. Required. Learn more about authentication and authorization.
Content-Type application/json. Required.

Request body

In the request body, supply a JSON representation of directoryObject object.

Response

If successful, this method returns a 204 No Content response code and a directoryObject object in the response body.

Examples

Request

The following example shows a request.

POST https://graph.microsoft.com/v1.0/servicePrincipals/{id}/owners/$ref
Content-type: application/json

{
    "@odata.id": "https://graph.microsoft.com/v1.0/directoryObjects/{id}"
}

In the request body, supply a JSON representation of directoryObject object.

Response

The following example shows the response.

HTTP/1.1 204 No Content