Endpoint
DELETE /api/v1/{subdomain}/contacts/{id}
contacts.delete.
Headers
| Header | Value |
|---|---|
Authorization | Bearer <your-64-hex-token> |
Accept | application/json |
Path parameters
string
required
Your workspace subdomain.
integer
required
Contact id.
Example request
curl -X DELETE https://dash.xobito.com/api/v1/acme/contacts/451 \
-H "Authorization: Bearer <your_token>" \
-H "Accept: application/json"
const res = await fetch(
"https://dash.xobito.com/api/v1/acme/contacts/451",
{
method: "DELETE",
headers: {
Authorization: "Bearer <your_token>",
Accept: "application/json",
},
}
);
const body = await res.json();
import requests
r = requests.delete(
"https://dash.xobito.com/api/v1/acme/contacts/451",
headers={
"Authorization": "Bearer <your_token>",
"Accept": "application/json",
},
)
body = r.json()
<?php
$ch = curl_init('https://dash.xobito.com/api/v1/acme/contacts/451');
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'DELETE',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer <your_token>',
'Accept: application/json',
],
]);
$body = json_decode(curl_exec($ch), true);
curl_close($ch);
Example response
200 OK
{
"status": "success",
"message": "Contact deleted successfully",
"data": null
}
Error responses
| Status | When | Example body |
|---|---|---|
401 | Missing / invalid token | {"status":"error","message":"Invalid API token"} |
403 | Missing ability | {"status":"error","message":"Token does not have the required ability: contacts.delete"} |
404 | Contact not found | {"status":"error","message":"Contact not found"} |
429 | Rate limit | {"message":"Too many requests","retry_after":45} |
500 | Server error | {"status":"error","message":"Failed to delete contact"} |
Delete is permanent. A
deleted webhook fires for subscribers of contacts_actions.delete — see Webhook Events.