# fyi.opensocial.getNotificationPreferences

> How much of a group reaches the caller's Activity: theirs alone.

- Kind: query
- Authority: opensocial.fyi
- Lexicon: 1
- Published by [lexicons.opensocial.fyi](https://lexicon.garden/identity/did:plc:2gqnilpksz2e7faj3bwvo6qc), the NSID's authority

## Links

- [Documentation](https://lexicon.garden/lexicon/did:plc:2gqnilpksz2e7faj3bwvo6qc/fyi.opensocial.getNotificationPreferences)
- [Schema JSON](https://lexicon.garden/lexicon/did:plc:2gqnilpksz2e7faj3bwvo6qc/fyi.opensocial.getNotificationPreferences/schema.json)
- [Analytics](https://lexicon.garden/lexicon/did:plc:2gqnilpksz2e7faj3bwvo6qc/fyi.opensocial.getNotificationPreferences/analytics)

## Query (`fyi.opensocial.getNotificationPreferences`)

Type: query · GET

### Parameters (query string)

- `group` (string · did, required)

### Output (application/json)

- `schema` (ref)
  - Reference: `#preferences`

## #channelLevel (`fyi.opensocial.getNotificationPreferences#channelLevel`)

Type: object

### Properties

- `channel` (string, required)
  - Constraints: maxLength: 100
- `level` (string, required)
  - Constraints: knownValues: everything | you | nothing

## #preferences (`fyi.opensocial.getNotificationPreferences#preferences`)

Type: object

### Properties

- `channels` (array): Channels whose level is their own, not the group's.
  - Constraints: maxLength: 200
  - `items` (ref)
    - Reference: `#channelLevel`
- `level` (string, required): Everything new, only what's for them, or nothing.
  - Constraints: knownValues: everything | you | nothing
- `muted` (array): Tabs they hear nothing from, as channel/tab.
  - Constraints: maxLength: 200
  - `items` (string)
    - Constraints: maxLength: 200

## Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "channelLevel": {
      "properties": {
        "channel": {
          "maxLength": 100,
          "type": "string"
        },
        "level": {
          "knownValues": [
            "everything",
            "you",
            "nothing"
          ],
          "type": "string"
        }
      },
      "required": [
        "channel",
        "level"
      ],
      "type": "object"
    },
    "main": {
      "description": "How much of a group reaches the caller's Activity: theirs alone.",
      "output": {
        "encoding": "application/json",
        "schema": {
          "ref": "#preferences",
          "type": "ref"
        }
      },
      "parameters": {
        "properties": {
          "group": {
            "format": "did",
            "type": "string"
          }
        },
        "required": [
          "group"
        ],
        "type": "params"
      },
      "type": "query"
    },
    "preferences": {
      "properties": {
        "channels": {
          "description": "Channels whose level is their own, not the group's.",
          "items": {
            "ref": "#channelLevel",
            "type": "ref"
          },
          "maxLength": 200,
          "type": "array"
        },
        "level": {
          "description": "Everything new, only what's for them, or nothing.",
          "knownValues": [
            "everything",
            "you",
            "nothing"
          ],
          "type": "string"
        },
        "muted": {
          "description": "Tabs they hear nothing from, as channel/tab.",
          "items": {
            "maxLength": 200,
            "type": "string"
          },
          "maxLength": 200,
          "type": "array"
        }
      },
      "required": [
        "level"
      ],
      "type": "object"
    }
  },
  "id": "fyi.opensocial.getNotificationPreferences",
  "lexicon": 1
}
```
