# Subscription lists

Create audience lists that users subscribe to for messaging on specific topics and channels.

> **Important:** Please consult your legal counsel before implementing a particular subscription list approach or to help define the subscription purpose in order to address your specific use case or regulatory requirements in your jurisdiction.


## How subscription lists work

A subscription list is a record of audience members opted in to receive messages for a defined topic on specified channels. Users control their own membership using opt-in and opt-out methods you provide. You can also add users through the API or opt in all audience members automatically.

Using these lists can help retain customers, since recipients can opt in and out of content per list rather than opting out of all messaging when messaging feels irrelevant or too frequent. For example, a retail brand can create a Weekly Deal Alerts list for email and SMS, and a customer can opt in on either or both channels.

### Subscription types

Each list is for either commercial or transactional purposes. You specify the type when creating one and can change it at any time:

- **Commercial** content advertises or promotes a commercial product or service, including content on a website operated for a commercial purpose.
- **Transactional** content facilitates an already agreed-upon transaction, or updates a customer about an ongoing transaction.

Only send content that matches the list's purpose. For transactional messages, verify with your legal team to comply with regulations.

### Opt-in requirements

For a user to receive a message from a subscription list, they must be opted in to the list and to messaging on the [engagement channel](https://www.airship.com/docs/reference/glossary/#channel_engage) the list is for. For commercial lists, they must be opted in to commercial messaging on that channel. For transactional lists, they must not be opted out of transactional messaging on that channel.

If any requirement isn't met, Airship drops them from the audience. For example, someone subscribed to your commercial email list who is unsubscribed from marketing emails is excluded from your send. They said yes to the topic, but no to the emails.

### Auto opt-in

[AXP](https://www.airship.com/docs/reference/feature-packages/)

When creating a new list, you can automatically opt in all channels of the types the list is for. Existing channels are opted in immediately when you save the list, and new channels are opted in as they are added to your project.

Auto opt-in cannot be disabled after saving your list. Lists with auto opt-in enabled also cannot be used with the [Subscription trigger](https://www.airship.com/docs/guides/messaging/messages/sequences/triggers/#subscription) for Sequences and Automation.

### Opt-in and opt-out methods

Set up the following so users can control their own list memberships:

* **Preference Centers** — Create a page in your app or website, or an Airship-hosted page linked from an email, where users can manage their memberships. See [Preference Centers](https://www.airship.com/docs/guides/messaging/features/preference-centers/).
* **SMS keywords** — Include keywords in your messages, telling audience members how to opt in or out. See [SMS keywords](https://www.airship.com/docs/guides/messaging/features/sms-keywords/).
* **Buttons** — [AXP](https://www.airship.com/docs/reference/feature-packages/) Opt a user in to or out of a subscription list when they tap a button in your message. See [Add buttons to message content](https://www.airship.com/docs/guides/messaging/messages/buttons/#add-buttons-to-message-content) in *Buttons*.

You can also add and remove list members using the API. See [Populating a list using the API](#populating-a-list-using-the-api).

> **Note:** Airship does not record opt-in/out dates or sources unless [Real-Time Data Streaming (RTDS)](https://www.airship.com/docs/reference/glossary/#rtds) is set up. See the [Subscription list event](https://www.airship.com/docs/developer/rest-api/connect/schemas/events/#subscription-list) in the RTDS API reference.


## Using subscription lists with messaging

Include or exclude members of a subscription list in the audience for messages, [feature flags](https://www.airship.com/docs/reference/glossary/#feature_flag), [A/B tests](https://www.airship.com/docs/guides/experimentation/a-b-tests/), and [Intelligent Rollouts](https://www.airship.com/docs/guides/experimentation/intelligent-rollouts/). Using the API, include `"subscription_list": "name_of_list"` in the audience object. See [Audience Selection](https://www.airship.com/docs/developer/rest-api/ua/schemas/audience-selection/) in the API reference. You can also include the lists in [segments](https://www.airship.com/docs/reference/glossary/#segment).

When sending an email to a subscription list, you must include an unsubscribe link for opting out of all email messaging, and can also include a link to opt out of that list only. See [Email unsubscribe links](https://www.airship.com/docs/guides/messaging/messages/content/email/email-unsubscribe-links/).

Subscription opt-in status can start [Automations and Sequences](https://www.airship.com/docs/guides/messaging/messages/sequences/about/) and control message delivery:

* **Trigger** — Start an Automation or Sequence when a user opts in or out of a subscription list. See [Subscription](https://www.airship.com/docs/guides/messaging/messages/sequences/triggers/#subscription) in *Automation and Sequence triggers*.
* **Delivery condition** — Restrict message delivery based on opt-in status. See [Conditions](https://www.airship.com/docs/guides/messaging/messages/sequences/create-automation/#conditions) in *Create an Automation* and [Conditions](https://www.airship.com/docs/guides/messaging/messages/sequences/create/add-messages/#conditions) in *Add Messages to a Sequence*.

## Create a list

You can create up to 20 subscription lists per project:

1. Go to **Audience**, then **Lists**, then **Subscription**, and select **Create subscription list**.
1. Enter a name and description for the list. Both appear in your project's [Preference Centers](https://www.airship.com/docs/reference/glossary/#preference_center).
1. (Optional) Enter a custom list ID. You cannot change the ID after saving the list.
1. Select **Next**.
1. Enable the channels you want to include in the list.
1. Select a [subscription type](#subscription-types).
1. (Optional) Check the box to enable [auto opt-in](#auto-opt-in). You cannot change this setting after saving the list.
1. Select **Save**.

After saving a list, you can edit or archive it. Archived lists cannot be used for targeting. Search for lists by name, ID, or description. Select the regenerate icon () to see the number of [channels](https://www.airship.com/docs/reference/glossary/#channel_term) in the list.

## Populating a list using the API

Subscription is tracked per named user, per channel type. A user's opt-in on email is independent of their opt-in on SMS, but all of that user's email channels share the same email subscription. Use the [Scoped named user batch operations endpoint](https://www.airship.com/docs/developer/rest-api/ua/operations/named-users/#performnameduserscopedbatchoperations) to subscribe or unsubscribe named users.

> **Note:** If you are using a single-channel Preference Center created before October 10, 2022, that has not been [migrated to user-level](https://www.airship.com/docs/guides/messaging/features/preference-centers/#migrating-to-a-user-level-preference-center), use the [Subscribe or unsubscribe channels to/from subscription lists](https://www.airship.com/docs/developer/rest-api/ua/operations/channels/#modifychannelsubscriptions) endpoint.


## View eligible subscriber count over time

You can view the count of unique users subscribed to a list and opted in to notifications. Go to **Audience**, then **Lists**, then **Subscription**, and select the report icon (
) for a list. The default view is the last 30 days of data. Use the date filter to select a new time frame. To export the data as CSV, TXT, or JSON, select the download icon ().

Reporting is not available for lists enabled for [auto opt-in](#auto-opt-in).
