Skip to main content
POST
https://YOUR_DEPLOYMENT.lupitor.com/api/v1
/
api
/
v1
/
records
/
bulk-delete
curl -X POST https://YOUR_DEPLOYMENT.lupitor.com/api/v1/records/bulk-delete \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "campaignId": "YOUR_CAMPAIGN_ID",
    "leads": [
      { "externalId": "CRM_001" },
      { "externalId": "CRM_002" },
      { "phoneNumber": "+15555551234" }
    ]
  }'
{
  "success": true,
  "data": {
    "deleted": 3,
    "notFound": 0,
    "deletedIdentifiers": [
      "CRM_001",
      "CRM_002",
      "+15555551234"
    ],
    "notFoundIdentifiers": []
  },
  "error": null
}
Endpoint Alias: This endpoint is an alias for /api/v1/leads/bulk-delete. Both endpoints are functionally identical - use whichever naming convention fits your integration.
Why POST? This endpoint uses POST instead of DELETE because DELETE requests with a body are not universally supported by all HTTP clients and proxies.

Record Lookup

Records are identified by externalId or phoneNumber, not internal IDs.
Each record must have at least one of phoneNumber or externalId. If both are provided, externalId takes priority for the lookup.

Authentication

x-api-key
string
required
Your API key with write scope

Request Body

campaignId
string
required
The ID of the campaign these records belong to
leads
array
required
Array of record identifiers to delete (max 1000 per request)

Response

success
boolean
Whether the request was successful
data
object
error
string | null
Error message if request failed

Examples

curl -X POST https://YOUR_DEPLOYMENT.lupitor.com/api/v1/records/bulk-delete \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "campaignId": "YOUR_CAMPAIGN_ID",
    "leads": [
      { "externalId": "CRM_001" },
      { "externalId": "CRM_002" },
      { "phoneNumber": "+15555551234" }
    ]
  }'
{
  "success": true,
  "data": {
    "deleted": 3,
    "notFound": 0,
    "deletedIdentifiers": [
      "CRM_001",
      "CRM_002",
      "+15555551234"
    ],
    "notFoundIdentifiers": []
  },
  "error": null
}

Notes

Permanent Deletion: This action cannot be undone. Records will be permanently deleted.
Need the record data? Fetch the records first, then delete them.
For full documentation including best practices, see Bulk Delete Leads.