---
title: "Unenroll Contacts"
method: POST
path: "/v1/contacts/unenroll"
tags: ["contacts"]
---

# Unenroll Contacts

`POST /v1/contacts/unenroll`

Remove contacts from outreach entirely.

Every non-finished sequence of each contact is marked failed and manually
stopped — including leads still waiting for approval — and the contact is
excluded from all outreach for three months. Scope it to one template with
`sequence_template_id`.

This is not `POST /v1/sequences/{sequence_id}/stop`: that closes one
enrollment with an outcome (won or lost) and leaves the contact reachable.

Requires the `sequences:write` scope on the API key.

## Request body

- UnenrollContactsPublicInput
  - `contact_ids` string[], required — Contacts to unenroll from every non-finished sequence.
  - `sequence_template_id` string, uuid, nullable — Only stop sequences built from this template. Omit to stop every non-finished sequence.

## Response `200`

Successful Response

- UnenrollContactsPublicOutput
  - `stopped_sequence_ids` string[], required — Sequences that were stopped.
  - `stopped_count` integer, required — How many sequences were stopped.

---

[API](https://skmtc.net/topo/apis/topo-public-api.md) · [All operations](https://skmtc.net/topo/apis/topo-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/topo/topo-public-api/revisions/ad6ac1d13526/schema)
