---
title: "Get user preference"
method: GET
path: "/{WSID}/{version}/subscriptions/preference"
tags: ["Manage User Subscriptions & Preferences"]
---

# Get user preference

`GET /{WSID}/{version}/subscriptions/preference`

This API enables you to get all the subscriptions topics (with sections) defined in your workspace along with the opted-in/opted-out preference of a particular user.

## Path parameters

- `WSID` string, required
- `version` 'live' | 'test', required

## Query parameters

- `distinct_id` string, required
- `event_list` true | false

## Response `200`

Preference fetched successfully

- object
  - `meta` object, required
    - `all` object, required
      - `preference` PreferenceChannelsOptedOut, required
        - `discord` 'opted-out'
        - `email` 'opted-out'
        - `inapp` 'opted-out'
        - `push` 'opted-out'
        - `slack` 'opted-out'
        - `sms` 'opted-out'
        - `teams` 'opted-out'
        - `voice` 'opted-out'
        - `whatsapp` 'opted-out'
      - `updated_at` UpdatedAt, required
        - `discord` string
        - `email` string
        - `inapp` string
        - `push` string
        - `slack` string
        - `sms` string
        - `teams` string
        - `voice` string
        - `webpush` string
        - `whatsapp` string
  - `result` object, required
    - `Section1` object[], required
      - `channel_config` object, required
        - `discord` 'on' | 'off' | 'required'
        - `email` 'on' | 'off' | 'required'
        - `inapp` 'on' | 'off' | 'required'
        - `push` 'on' | 'off' | 'required'
        - `slack` 'on' | 'off' | 'required'
        - `sms` 'on' | 'off' | 'required'
        - `teams` 'on' | 'off' | 'required'
        - `voice` 'on' | 'off' | 'required'
        - `webpush` 'on' | 'off' | 'required'
        - `whatsapp` 'on' | 'off' | 'required'
      - `description` string, required
      - `is_global_opted_out` object, required
        - `discord` true
        - `email` true
        - `inapp` true
        - `push` true
        - `slack` true
        - `sms` true
        - `teams` true
        - `voice` true
        - `webpush` true
        - `whatsapp` true
      - `name` string, required
      - `notification_events` object[], required
        - `event_id` string
        - `event_name` string
      - `preference` PreferenceChannels, required
        - `discord` 'opted-out' | 'opted-in'
        - `email` 'opted-out' | 'opted-in'
        - `inapp` 'opted-out' | 'opted-in'
        - `push` 'opted-out' | 'opted-in'
        - `slack` 'opted-out' | 'opted-in'
        - `sms` 'opted-out' | 'opted-in'
        - `teams` 'opted-out' | 'opted-in'
        - `voice` 'opted-out' | 'opted-in'
        - `webpush` 'opted-out' | 'opted-in'
        - `whatsapp` 'opted-out' | 'opted-in'
      - `subscription_id` string, required
      - `updated_at` UpdatedAt, required
        - `discord` string
        - `email` string
        - `inapp` string
        - `push` string
        - `slack` string
        - `sms` string
        - `teams` string
        - `voice` string
        - `webpush` string
        - `whatsapp` string

## Other responses

- `400` — Distinct ID is not provided
- `401` — API Key or Workspace ID is invalid. User is unauthorised.

---

[API](https://skmtc.net/fynoio/apis/fyno-rest-api.md) · [All operations](https://skmtc.net/fynoio/apis/fyno-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/fynoio/fyno-rest-api/versions/021088e9cb30/schema)
