---
title: "Remove Contacts from Lists"
method: POST
path: "/activities/remove_list_memberships"
tags: ["Bulk Activities"]
---

# Remove Contacts from Lists

`POST /activities/remove_list_memberships`

Use this method to create an activity that removes contacts from one or more contact lists. Use the properties in the `source` object to remove specific contacts from your lists. Use the `list_ids` array to specify the target lists from which contacts are removed. Optionally, if the source is  `all_active_contacts` (billable) or `list_ids`, use the `exclude` object to exclude specific contacts from being removed from the destination lists.

## Request body

- ListActivityRemoveContacts
  - `source` object, required — Specifies the contacts to remove from your target list(s) using one of several mutually exclusive properties.
    - `list_ids` string[] — Include up to 50 <code>list_id</code> values to remove all contact list members from your target list(s). This property is mutually exclusive with all other <code>source</code> properties.
    - `contact_ids` string[] — Include up to 500 <code>contact_id</code> values to remove the contacts from your target lists. This property is mutually exclusive with all other <code>source</code> properties.
    - `all_active_contacts` boolean — Removes all active (billable) contacts from your targeted lists. This property is mutually exclusive with all other <code>source</code> properties.
    - `engagement_level` string — Removes all contacts that meet the selected <code>engagement_level </code> to your target lists. This property is mutually exclusive with all other <code>source</code> properties.
    - `tag_ids` string[] — Removes all contacts assigned with the specified <code>tag_id</code>s from your target lists. This property is mutually exclusive with all other <code>source</code> properties.
  - `exclude` object
    - `contact_ids` string[] — Excludes specified contacts (<code>contact_id</code>) from being deleted from the target list and only applicable if using either the <code>all_active_contacts</code> (billable) or <code>list_ids</code> as the source.
  - `list_ids` string[], required — Specify up to 50 target <code>list_id</code>s from which to remove contacts.

## Response `201`

Request successful. Activity queued for processing.

- ActivityListsMembership
  - `activity_id` string, uuid — Unique ID for the activity.
  - `state` string — The state of the request: <p><ul> <li>initialized - request has been received</li> <li>processing - request is being processed</li> <li>completed - job completed</li> <li>cancelled - request was cancelled</li> <li>failed - job failed to complete</li> <li>timed_out - the request timed out before completing"</li> </ul> </p>
  - `started_at` string, date-time — Timestamp showing when we began processing the activity request, in ISO-8601 format.
  - `completed_at` string, date-time — Timestamp showing when we completed processing the activity, in ISO-8601 format.
  - `created_at` string, date-time — Timestamp showing when we created the activity, in ISO-8601 format.
  - `updated_at` string, date-time — Timestamp showing when we last updated the activity, in ISO-8601 format.
  - `percent_done` integer — Shows the percent done for an activity that we are still processing.
  - `activity_errors` string[] — Array of messages describing the errors that occurred.
  - `status` object
    - `items_total_count` integer — Total number of contacts to add to or remove from lists.
    - `items_completed_count` integer — The number of contacts processed.
    - `list_count` integer — The number of lists specified in the request.
  - `_links` ActivityStatusLink
    - `self` object — HATEOS-style link to the activity status (this object).
      - `href` string

## Other responses

- `400` — Bad request. Either the JSON was malformed or there was a data validation error.
- `401` — The Access Token used is invalid.
- `403` — Forbidden request. You lack the necessary scopes, you lack the necessary user privileges, or the application is deactivated.
- `404` — The requested resource was not found.
- `429` — Too many requests. You exceeded 1,000 queued activities for this user account.
- `500` — There was a problem with our internal service.
- `503` — Our internal service is temporarily unavailable.

---

[API](https://skmtc.net/cc/apis/appconnect-v3.md) · [All operations](https://skmtc.net/cc/apis/appconnect-v3/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/cc/appconnect-v3/revisions/4b4a534c818d/schema)
