> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.cable.tech/v-2-0/api-documentation/api-reference/person/delete-person/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.cable.tech/_mcp/server. # Submit a deletion request for a person and any related data DELETE https://api.cable.tech/v2/person Content-Type: application/json This operation will submit a request to delete the person and any related data.The deletion request will be processed by the system and the data will be removed permanently from Cable's system. Deletion requests are not processed immediately and may take some time to complete.The status of the deletion request can be checked using the deletion request ID and the status endpoint.This operation is not intended for regular use and should be used with caution. Reference: https://docs.cable.tech/api-documentation/api-reference/person/delete-person ## Authentication - `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer `, where token is your auth token. ## Request ### Body (application/json) This endpoint expects an object. - `person_id` (string, required) — The unique identifier of the person - `reason` (string, required) — The reason for deletion ## Response ### 200 Deletion request submitted successfully - `person_id` (string, optional) — The unique identifier of the person - `deletion_request_id` (string, optional) — The unique identifier of the deletion request ## Errors ### 401 Unauthorized Error Unauthorized request - `code` (integer, required) - `message` (string, required) - `errors` (list of GeneralErrorErrorsItems, optional) — Detailed information about errors in specific fields. ### 404 Not Found Error Person does not exist - `code` (integer, required) - `message` (string, required) - `errors` (list of GeneralErrorErrorsItems, optional) — Detailed information about errors in specific fields. ### 429 Too Many Requests Error Rate limit exceeded - `code` (integer, required) - `message` (string, required) - `errors` (list of GeneralErrorErrorsItems, optional) — Detailed information about errors in specific fields. ### 500 Internal Server Error Server error - `code` (integer, required) - `message` (string, required) - `errors` (list of GeneralErrorErrorsItems, optional) — Detailed information about errors in specific fields. ## Types ### GeneralErrorErrorsItems - `field` (string, optional) - `message` (string, optional) ## Examples **Request** ```json { "person_id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", "reason": "User requested account deletion due to privacy concerns" } ``` **Response** ```json { "person_id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", "deletion_request_id": "d9f8e7c6-b5a4-3210-9876-5432fedcba98" } ``` **SDK Code** ```python import requests url = "https://api.cable.tech/v2/person" payload = { "person_id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", "reason": "User requested account deletion due to privacy concerns" } headers = { "Authorization": "Bearer ", "Content-Type": "application/json" } response = requests.delete(url, json=payload, headers=headers) print(response.json()) ``` ```javascript const url = 'https://api.cable.tech/v2/person'; const options = { method: 'DELETE', headers: {Authorization: 'Bearer ', 'Content-Type': 'application/json'}, body: '{"person_id":"a1b2c3d4-e5f6-7890-ab12-cd34ef567890","reason":"User requested account deletion due to privacy concerns"}' }; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); } ``` ```go package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.cable.tech/v2/person" payload := strings.NewReader("{\n \"person_id\": \"a1b2c3d4-e5f6-7890-ab12-cd34ef567890\",\n \"reason\": \"User requested account deletion due to privacy concerns\"\n}") req, _ := http.NewRequest("DELETE", url, payload) req.Header.Add("Authorization", "Bearer ") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby require 'uri' require 'net/http' url = URI("https://api.cable.tech/v2/person") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Delete.new(url) request["Authorization"] = 'Bearer ' request["Content-Type"] = 'application/json' request.body = "{\n \"person_id\": \"a1b2c3d4-e5f6-7890-ab12-cd34ef567890\",\n \"reason\": \"User requested account deletion due to privacy concerns\"\n}" response = http.request(request) puts response.read_body ``` ```java import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.Unirest; HttpResponse response = Unirest.delete("https://api.cable.tech/v2/person") .header("Authorization", "Bearer ") .header("Content-Type", "application/json") .body("{\n \"person_id\": \"a1b2c3d4-e5f6-7890-ab12-cd34ef567890\",\n \"reason\": \"User requested account deletion due to privacy concerns\"\n}") .asString(); ``` ```php request('DELETE', 'https://api.cable.tech/v2/person', [ 'body' => '{ "person_id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", "reason": "User requested account deletion due to privacy concerns" }', 'headers' => [ 'Authorization' => 'Bearer ', 'Content-Type' => 'application/json', ], ]); echo $response->getBody(); ``` ```csharp using RestSharp; var client = new RestClient("https://api.cable.tech/v2/person"); var request = new RestRequest(Method.DELETE); request.AddHeader("Authorization", "Bearer "); request.AddHeader("Content-Type", "application/json"); request.AddParameter("application/json", "{\n \"person_id\": \"a1b2c3d4-e5f6-7890-ab12-cd34ef567890\",\n \"reason\": \"User requested account deletion due to privacy concerns\"\n}", ParameterType.RequestBody); IRestResponse response = client.Execute(request); ``` ```swift import Foundation let headers = [ "Authorization": "Bearer ", "Content-Type": "application/json" ] let parameters = [ "person_id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", "reason": "User requested account deletion due to privacy concerns" ] as [String : Any] let postData = JSONSerialization.data(withJSONObject: parameters, options: []) let request = NSMutableURLRequest(url: NSURL(string: "https://api.cable.tech/v2/person")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "DELETE" request.allHTTPHeaderFields = headers request.httpBody = postData as Data let session = URLSession.shared let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in if (error != nil) { print(error as Any) } else { let httpResponse = response as? HTTPURLResponse print(httpResponse) } }) dataTask.resume() ```