Create Batch Remove from List Job
Changed onSchedule an asynchronous job that removes members from a single list. The target list is identified by data.attributes.list_id in the request body; its prefix (company_ or contact_) determines whether company or contact references are accepted. The members are supplied either as an explicit data.attributes.items array (up to 100 items per request), or — for company lists only — as a data.attributes.advanced_search selection that is resolved into the list's matching companies (up to 100,000) when the job runs. To add members, use POST /v1/lists/batch-add-to-list-jobs — adding and removing are separate jobs.
When the job is created, the list is only checked for being one you can read. If you may not change its members, or it is a read-only list, such as a revealed, CRM or custom feed list, the job fails when it removes members from it.
Returns 202 Accepted with a job handle. Poll GET /v1/lists/batch-remove-from-list-jobs/{job_id} to observe progress and the outcome: per-item results plus summary counts for items jobs, summary counts only for jobs created from a search selection.
Credit Note: Removing members from a list does not consume credits.
:::info Requires the lists:write OAuth2 scope. :::
Request
- Base URLhttps://api.leadfeeder.com
- URLhttps://api.leadfeeder.com/v1/lists/batch-remove-from-list-jobs
- Auth
- API key in header X-Api-Key
- or OAuth 2Authorization code: https://api.leadfeeder.com/v1/oauth/authorizeToken URL: https://api.leadfeeder.com/v1/oauth/token scopes: lists:write
Query parameters
The Leadfeeder Account ID. The Account ID can be retrieved using the List Accounts endpoint.
Request body
Example request
{
"data": {
"attributes": {
"items": [
{
"id": "3170656125",
"type": "contact"
},
{
"id": "3219787635",
"type": "contact"
}
],
"list_id": "contact_456"
},
"type": "batch_remove_from_list_job"
}
}Response
Batch remove-from-list job accepted and enqueued
Example response
{
"data": {
"attributes": {
"completed_at": "2026-05-13T12:00:18Z",
"configuration": {
"advanced_search": {
"excluded_company_ids": [
"651713"
],
"filters": {
"items": [
{
"field": "country_code",
"operator": "in",
"type": "filter",
"value": [
"DE"
]
},
{
"field": "employee_count",
"operator": "in_range",
"type": "filter",
"value": {
"gte": 50
}
}
],
"operator": "and",
"type": "group"
},
"page": {
"size": 1000
},
"sort": {
"direction": "desc",
"field": "employee_count"
}
},
"items": [
{
"id": "3170656125",
"type": "contact"
}
],
"list_id": "contact_456"
},
"created_at": "2026-05-13T12:00:00Z",
"errors": [
{
"code": "job_failed",
"title": "External contact data provider timeout"
}
],
"results": [
{
"id": "3170656125",
"status": "removed",
"type": "contact"
}
],
"status": "running",
"summary": {
"list_size_after": 49,
"removed": 2
}
},
"id": "job_7c9e6679-7425-40de-944b-e07fc1f90ae7",
"type": "batch_remove_from_list_job"
},
"meta": {
"request_id": "cf054205-dd8c-4473-8689-07c30fe0789f"
}
}Changes
- info
removed the
not_presentenum value from the////response property for the response status - info
removed the
scope_mismatchenum value from the////response property for the response status
- info
- breaking
the
//////response property's minItems was decreased from1to0for the response status - breaking
the
/////////response property's minItems was decreased from1to0for the response status
- breaking