Bulk delete leads
curl --request DELETE \
--url https://api.naturalead.ai/api/leads/sync \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"lead_ids": [
"<string>"
]
}
'import requests
url = "https://api.naturalead.ai/api/leads/sync"
payload = { "lead_ids": ["<string>"] }
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.delete(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'DELETE',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({lead_ids: ['<string>']})
};
fetch('https://api.naturalead.ai/api/leads/sync', 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.naturalead.ai/api/leads/sync",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_POSTFIELDS => json_encode([
'lead_ids' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.naturalead.ai/api/leads/sync"
payload := strings.NewReader("{\n \"lead_ids\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("DELETE", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
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.naturalead.ai/api/leads/sync")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"lead_ids\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.naturalead.ai/api/leads/sync")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"lead_ids\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"total": 123,
"deleted": 123,
"notFound": 123
}{
"error": "<string>"
}{
"error": "<string>"
}Lead Sync
Bulk Delete Leads
Delete leads in bulk by their external IDs. Leads that do not exist are counted as notFound but do not cause the request to fail.
Permission: leads:sync_delete
Rate limit: 50 requests per minute
DELETE
/
api
/
leads
/
sync
Bulk delete leads
curl --request DELETE \
--url https://api.naturalead.ai/api/leads/sync \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"lead_ids": [
"<string>"
]
}
'import requests
url = "https://api.naturalead.ai/api/leads/sync"
payload = { "lead_ids": ["<string>"] }
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.delete(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'DELETE',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({lead_ids: ['<string>']})
};
fetch('https://api.naturalead.ai/api/leads/sync', 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.naturalead.ai/api/leads/sync",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_POSTFIELDS => json_encode([
'lead_ids' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.naturalead.ai/api/leads/sync"
payload := strings.NewReader("{\n \"lead_ids\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("DELETE", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
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.naturalead.ai/api/leads/sync")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"lead_ids\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.naturalead.ai/api/leads/sync")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"lead_ids\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"total": 123,
"deleted": 123,
"notFound": 123
}{
"error": "<string>"
}{
"error": "<string>"
}Authorizations
ApiKeyAuthBearerAuth
API key passed via the X-API-Key header.
Body
application/json
Array of external lead IDs to delete.
⌘I