# social.colibri.beta.actor.clientPreferences

> Published by [colibri.social](https://lexicon.garden/identity/did:plc:mprdjqjluoswa7awzggaggj3)

✓ This is the authoritative definition for this NSID.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:mprdjqjluoswa7awzggaggj3/social.colibri.beta.actor.clientPreferences)
- [Documentation](https://lexicon.garden/lexicon/did:plc:mprdjqjluoswa7awzggaggj3/social.colibri.beta.actor.clientPreferences/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:mprdjqjluoswa7awzggaggj3/social.colibri.beta.actor.clientPreferences/examples)

## Definitions

### `social.colibri.beta.actor.clientPreferences`

**Type**: `record`

Client settings that follow the user across devices. Every field is optional and a client applies its own default for an absent one.

**Key**: `literal:self`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `blueskyClient` | `string` | No | The client that Bluesky posts and profiles open in. |
| `controls` | `ref` → `social.colibri.beta.actor.defs#controls` | No | Touch gestures in a channel. |
| `customBlueskyClientBase` | `string` | No | The domain of the client used when blueskyClient is custom. |
| `developerMode` | `boolean` | No | Whether the client shows identifiers and links to inspect records. |
| `experiments` | `array` | No | The experiments the user turned on. |
| `linkEmbedsByDefault` | `boolean` | No | Whether a link in a new message gets a preview by default. |
| `messagePreviews` | `boolean` | No | Whether the channel list shows the latest message under each channel name. |
| `theme` | `string` | No | The color theme. system follows the operating system. |
| `voiceView` | `ref` → `social.colibri.beta.actor.defs#voiceView` | No | Options for voice channels. |
| `warnOnExternalLinks` | `boolean` | No | Whether opening a link to another site asks for confirmation first. |

## Raw Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Client settings that follow the user across devices. Every field is optional and a client applies its own default for an absent one.",
      "key": "literal:self",
      "record": {
        "properties": {
          "blueskyClient": {
            "description": "The client that Bluesky posts and profiles open in.",
            "knownValues": [
              "anisota",
              "blacksky",
              "bluesky",
              "deer",
              "mu",
              "northsky",
              "witchsky",
              "custom"
            ],
            "maxLength": 64,
            "type": "string"
          },
          "controls": {
            "description": "Touch gestures in a channel.",
            "ref": "social.colibri.beta.actor.defs#controls",
            "type": "ref"
          },
          "customBlueskyClientBase": {
            "description": "The domain of the client used when blueskyClient is custom.",
            "maxLength": 253,
            "type": "string"
          },
          "developerMode": {
            "description": "Whether the client shows identifiers and links to inspect records.",
            "type": "boolean"
          },
          "experiments": {
            "description": "The experiments the user turned on.",
            "items": {
              "description": "An experiment id.",
              "maxLength": 64,
              "type": "string"
            },
            "maxLength": 64,
            "type": "array"
          },
          "linkEmbedsByDefault": {
            "description": "Whether a link in a new message gets a preview by default.",
            "type": "boolean"
          },
          "messagePreviews": {
            "description": "Whether the channel list shows the latest message under each channel name.",
            "type": "boolean"
          },
          "theme": {
            "description": "The color theme. system follows the operating system.",
            "knownValues": [
              "system",
              "dark",
              "light"
            ],
            "type": "string"
          },
          "voiceView": {
            "description": "Options for voice channels.",
            "ref": "social.colibri.beta.actor.defs#voiceView",
            "type": "ref"
          },
          "warnOnExternalLinks": {
            "description": "Whether opening a link to another site asks for confirmation first.",
            "type": "boolean"
          }
        },
        "required": [],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "social.colibri.beta.actor.clientPreferences",
  "lexicon": 1
}
```
