Delete directory object

Deletes a directory object.

DELETE ~/api/directoryObjects?<parameters>

Query parameters

  • Name

  • Required

  • Type

  • Description

  • directoryobject

  • True

  • string

  • The identifier of the directory object to delete. You can use:

     Distinguished name (DN)
    # Example
    CN=John Smith,CN=Users,DC=example,DC=com
    
     Globally unique identifier (GUID)
    # Example
    7a4267ce-d354-44e7-8bd6-c681f1284a41
    
     Security identifier (SID)
    # Example
    S-1-5-21-3635565734-1729062999-1822655016-1627
    

Request headers

  • Name

  • Required

  • Description

  • Adm-Authorization

  • True

  • Specify an access token.

  • Content-Type

  • False

  • Use application/json as the value of this header if you included a body in this request.

Request body

The request body is optional. It is a JSON object with the following data structure:

{
    "operationReason": {
        "value": "<reasonText>",
        "label": "<fieldLabel>"
    }
}

operationReason OperationReason

Lets you include any supporting information when executing an operation. For example, the reason for its execution. The information will be present in the operation description in the log and visible to the approvers (if approval is required for this operation).

 Show attributes

operationReason.value string

Custom text to include as supporting information.


operationReason.label string

The label for the text. The label doesn't have to be the same every time you perform the operation. Use an appropriate label for the type of information you provided. For example, Operation reason or Ticket number.


Responses

If successful, returns 200 OK status code and an operation result in the response body. Otherwise, returns one of the common HTTP error codes and an error description in the response body.

Examples

 Delete a user

The following code sample deletes a user account.

Request

PowerShell
Add-Type -AssemblyName System.Web
$baseUrl = "https://host.example.com/restApi"
$endpoint = "/api/directoryObjects"

# Request parameters
$userIdentifier = [System.Web.HttpUtility]::UrlEncode("CN=John Smith,CN=Users,DC=example,DC=com")
$queryParams = "?directoryobject=$userIdentifier"
$requestUrl = $baseUrl + $endpoint + $queryParams
$requestHeaders = @{"Adm-Authorization" = YOUR-ACCESS-TOKEN}

# Make request
Invoke-RestMethod -Method DELETE -Headers $requestHeaders -Uri $requestUrl
C#
using System;
using System.Net.Http;
using System.Threading.Tasks;

class Program
{
    static async Task Main()
    {
        const string baseUrl = "https://host.example.com";
        const string endpoint = "/restApi/api/directoryObjects";

        // Request parameters
        const string userIdentifier = "CN=John Smith,CN=Users,DC=example,DC=com";
        UriBuilder requestUrl = new()
        {
            Host = baseUrl + endpoint,
            Query = $"?directoryObject={userIdentifier}"
        };

        // Initialize HTTP client
        using HttpClient client = new();
        client.DefaultRequestHeaders.Add("Adm-Authorization", YOUR-ACCESS-TOKEN);

        // Make request
        HttpResponseMessage response = await client.DeleteAsync(requestUrl.ToString());
        string responseBody = response.Content.ReadAsStringAsync().Result;
        Console.WriteLine(responseBody);
    }
}
cURL
curl  --header 'Adm-Authorization: YOUR-ACCESS-TOKEN' \
--get -X DELETE 'https://host.example.com/restApi/api/directoryObjects' \
--data-urlencode 'directoryobject=CN=John Smith,CN=Users,DC=example,DC=com'
node.js
async function deleteDirectoryObject() {
    // Request parameters
    const userIdentifier = encodeURIComponent("CN=John Smith,CN=Users,DC=example,DC=com");
    
    const baseUrl = "https://host.example.com/restapi";
    const endpoint = "/api/directoryObjects";
    const queryParams = `?directoryobject=${userIdentifier}`;
    const requestPath = `${baseUrl}${endpoint}${queryParams}`;

    // Make request
    const response = await fetch(requestPath, {
        method: "DELETE",
        headers: { "Adm-Authorization": "YOUR-ACCESS-TOKEN" }
    });

    if (!response.ok) {
        throw new Error(`Request failed with status ${response.status}`);
    }

    const result = await response.json();
    console.log(result);
}

deleteDirectoryObject();
Python
import requests
import json

baseUrl = "https://host.example.com/restApi"
endpoint = "/api/directoryObjects"

# Request parameters
requestUrl = baseUrl + endpoint
requestHeaders = {"Adm-Authorization": YOUR-ACCESS-TOKEN}
queryParams = {"directoryobject": "CN=John Smith,CN=Users,DC=example,DC=com"}

# Make request
request = requests.delete(requestUrl, headers=requestHeaders, params=queryParams)
response = json.loads(request.content)
print(response)

Response

HTTP Status code: 200 OK
Response body:

{
    "resultType": 0,
    "innerMessages": [],
    "exception": null,
    "actualObjectDN": "CN=John Smith,CN=Users,DC=example,DC=com",
    "noChanges": false,
    "extraInfo": {}
}

See also