Deregister an EMP identity
curl --request DELETE \
--url https://api.spirii.com/emsp/v1/tenant/emp-identities/{emp_identity_id} \
--header 'Idempotency-Key: <idempotency-key>'import requests
url = "https://api.spirii.com/emsp/v1/tenant/emp-identities/{emp_identity_id}"
headers = {"Idempotency-Key": "<idempotency-key>"}
response = requests.delete(url, headers=headers)
print(response.text)const options = {method: 'DELETE', headers: {'Idempotency-Key': '<idempotency-key>'}};
fetch('https://api.spirii.com/emsp/v1/tenant/emp-identities/{emp_identity_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.spirii.com/emsp/v1/tenant/emp-identities/{emp_identity_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"Idempotency-Key: <idempotency-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.spirii.com/emsp/v1/tenant/emp-identities/{emp_identity_id}"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("Idempotency-Key", "<idempotency-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://api.spirii.com/emsp/v1/tenant/emp-identities/{emp_identity_id}")
.header("Idempotency-Key", "<idempotency-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.spirii.com/emsp/v1/tenant/emp-identities/{emp_identity_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["Idempotency-Key"] = '<idempotency-key>'
response = http.request(request)
puts response.read_body{
"type": "about:blank",
"title": "Tenant not found",
"status": 404,
"detail": "No tenant exists with id 0192...c3.",
"instance": "/v1/tenant/profile",
"code": "tenant_not_found",
"trace_id": "abc123def456",
"timestamp": "2026-06-10T09:30:00.000Z",
"errors": [
{
"field": "workspace_id",
"code": "is_uuid",
"message": "workspace_id must be a UUID"
}
]
}{
"type": "about:blank",
"title": "Tenant not found",
"status": 404,
"detail": "No tenant exists with id 0192...c3.",
"instance": "/v1/tenant/profile",
"code": "tenant_not_found",
"trace_id": "abc123def456",
"timestamp": "2026-06-10T09:30:00.000Z",
"errors": [
{
"field": "workspace_id",
"code": "is_uuid",
"message": "workspace_id must be a UUID"
}
]
}Deregister an EMP identity
Removes a roaming identity from your organization. Two things to know first, your organization must always keep at least one identity, so you can’t remove the last one, and you can’t remove an identity that’s still in use. Sort those out first, then remove it.
DELETE
/
emsp
/
v1
/
tenant
/
emp-identities
/
{emp_identity_id}
Deregister an EMP identity
curl --request DELETE \
--url https://api.spirii.com/emsp/v1/tenant/emp-identities/{emp_identity_id} \
--header 'Idempotency-Key: <idempotency-key>'import requests
url = "https://api.spirii.com/emsp/v1/tenant/emp-identities/{emp_identity_id}"
headers = {"Idempotency-Key": "<idempotency-key>"}
response = requests.delete(url, headers=headers)
print(response.text)const options = {method: 'DELETE', headers: {'Idempotency-Key': '<idempotency-key>'}};
fetch('https://api.spirii.com/emsp/v1/tenant/emp-identities/{emp_identity_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.spirii.com/emsp/v1/tenant/emp-identities/{emp_identity_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => [
"Idempotency-Key: <idempotency-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.spirii.com/emsp/v1/tenant/emp-identities/{emp_identity_id}"
req, _ := http.NewRequest("DELETE", url, nil)
req.Header.Add("Idempotency-Key", "<idempotency-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.delete("https://api.spirii.com/emsp/v1/tenant/emp-identities/{emp_identity_id}")
.header("Idempotency-Key", "<idempotency-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.spirii.com/emsp/v1/tenant/emp-identities/{emp_identity_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["Idempotency-Key"] = '<idempotency-key>'
response = http.request(request)
puts response.read_body{
"type": "about:blank",
"title": "Tenant not found",
"status": 404,
"detail": "No tenant exists with id 0192...c3.",
"instance": "/v1/tenant/profile",
"code": "tenant_not_found",
"trace_id": "abc123def456",
"timestamp": "2026-06-10T09:30:00.000Z",
"errors": [
{
"field": "workspace_id",
"code": "is_uuid",
"message": "workspace_id must be a UUID"
}
]
}{
"type": "about:blank",
"title": "Tenant not found",
"status": 404,
"detail": "No tenant exists with id 0192...c3.",
"instance": "/v1/tenant/profile",
"code": "tenant_not_found",
"trace_id": "abc123def456",
"timestamp": "2026-06-10T09:30:00.000Z",
"errors": [
{
"field": "workspace_id",
"code": "is_uuid",
"message": "workspace_id must be a UUID"
}
]
}Was this page helpful?