Skip to main content
POST
/
v1
/
deals
/
bulk-delete
Bulk Delete Deals
curl --request POST \
  --url https://api.example.com/v1/deals/bulk-delete \
  --header 'Content-Type: application/json' \
  --data '
{
  "deal_ids": [
    {}
  ],
  "dry_run": true
}
'
{
  "data": {
    "deleted_count": 123,
    "not_found_count": 123,
    "errors": [
      {}
    ]
  }
}

Request

Deletion is permanent. Associated activities, notes, and tasks remain on the timeline but lose their deal back-reference. Documents remain available via the document library.

Headers

Authorization: Bearer wbk_your_api_key_here
Content-Type: application/json
Idempotency-Key
string
Strongly recommended. Same key returns the same result within 24 hours.

Body Parameters

deal_ids
array
required
Array of deal UUIDs to delete. Maximum 500.
dry_run
boolean
default:"false"
When true, the API validates input and returns counts but makes no changes.

Response

data
object
Responses include X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, and X-Request-ID. Each successful deletion emits a deal.deleted webhook event.
curl -X POST \
  https://data.leadlex.com/functions/v1/api-gateway/v1/deals/bulk-delete \
  -H "Authorization: Bearer wbk_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{"deal_ids": ["deal_01HY1", "deal_02HY2"]}'

Example Response

{
  "data": {
    "deleted_count": 2,
    "not_found_count": 0,
    "errors": []
  }
}

Errors

StatusCodeDescription
400validation_errorMore than 500 IDs or missing deal_ids
401invalid_keyInvalid or expired API key
403insufficient_permissionsMissing write:deals permission
429rate_limitedRate limit exceeded