---
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

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

## Other responses

- `400` — Distinct ID is not provided
- `401` — API Key is invalid

---

[API](https://skmtc.dev/fynoio/apis/fyno-rest-api.md) · [All operations](https://skmtc.dev/fynoio/apis/fyno-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/fynoio/fyno-rest-api/revisions/2bbe1e92e031/schema)
