---
title: "Unsubscribe subscriptions for a user"
method: POST
path: "/subscriptions/unsubscribe"
tags: ["Subscribers"]
---

# Unsubscribe subscriptions for a user

`POST /subscriptions/unsubscribe`

Make a call to this endpoint to unsubscribe a user from a subscription type or channel. If no subscriptions
are present in the request, the user is unsubscribed from all subscriptions. If subscriptions are present
in the request, the user is unsubscribed from the requested type or channel combination. By default, if a
subscription exists, but the user is already unsubscribed, it records the attempt to unsubscribe the
subscription again. For TEXT subscriptions, a message is sent to the person indicating that they are
unsubscribed.

For the user object, the email data point determines which email subscriptions a user has and the phone data point 
determines which text (or sms) subscriptions a user has. Passing in an email does not locate, nor unsubscribe, 
a user from any sms subscriptions. Similarly, passing in a phone does not locate, nor unsubscribe, a user from any email subscriptions.

## Request body

- UnsubscribeSubscriptionsRequestDto
  - `user` UserDto1, required — User associated with the action. Note that this is a visitor to the site and does not need to be actively subscribed to Attentive.
    - `phone` string — Phone number of the user associated with the action. [E.164 format](https://en.wikipedia.org/wiki/E.164) is required. This field is required if email is not provided.
    - `email` string — Email of the user associated with the action. This field is required if phone is not provided.
  - `subscriptions` SubscriptionDto[]
    - `type` 'MARKETING' | 'TRANSACTIONAL' | 'CHECKOUT_ABANDONED'
    - `channel` 'TEXT' | 'EMAIL'
  - `notification` NotificationConfigDto — Optional notification properties to override
    - `language` string — Standard language tags as defined by the ISO. Currently only supports en-US and fr-CA. Case sensitive, must match exactly.
    - `disabled` boolean — A boolean representing if a user should not receive a confirmation message upon unsubscribing. Assumed false by default.

## Response `202`

Accepted an unsubscribe subscription(s) request. The response body will contain info about which subscription(s) are already unsubscribed, and which subscription(s) will be unsubscribed (asynchronously).

- UnsubscribeSubscriptionsResponseDto
  - `user` UserDto1 — User associated with the action. Note that this is a visitor to the site and does not need to be actively subscribed to Attentive.
    - `phone` string — Phone number of the user associated with the action. [E.164 format](https://en.wikipedia.org/wiki/E.164) is required. This field is required if email is not provided.
    - `email` string — Email of the user associated with the action. This field is required if phone is not provided.
  - `subscriptionResponses` UnsubscribeSubscriptionResponseDto[]
    - `subscription` SubscriptionDto — A type and channel combination.
      - `type` 'MARKETING' | 'TRANSACTIONAL' | 'CHECKOUT_ABANDONED'
      - `channel` 'TEXT' | 'EMAIL'
    - `subscriptionUnsubscribeStatus` 'NEWLY_UNSUBSCRIBED' | 'PREVIOUSLY_UNSUBSCRIBED'

## Other responses

- `400` — Invalid parameter in request query or body
- `401` — Unauthorized
- `403` — Access Denied
- `404` — The specified resource was not found
- `429` — The user has sent too many requests in a given amount of time
- `500` — Internal Server Error

---

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