# place.stream.chat.profile

> Published by [did:web:stream.place](https://lexicon.garden/identity/did:web:stream.place)

✓ This is the authoritative definition for this NSID.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:web:stream.place/place.stream.chat.profile)
- [Documentation](https://lexicon.garden/lexicon/did:web:stream.place/place.stream.chat.profile/docs)
- [Examples](https://lexicon.garden/lexicon/did:web:stream.place/place.stream.chat.profile/examples)

## Definitions

### `place.stream.chat.profile`

**Type**: `record`

Record containing customizations for a user's chat profile.

**Key**: `literal:self`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `color` | `ref` → `#color` | No |  |
| `badges` | `ref` → `#badgeSelections` | No | Badge selections for display in chat. |
| `selfLabels` | `array` | No | Self-applied labels for this profile, e.g. 'bot'. |

### `place.stream.chat.profile#color`

**Type**: `object`

Customizations for the color of a user's name in chat

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `red` | `integer` | Yes |  |
| `blue` | `integer` | Yes |  |
| `green` | `integer` | Yes |  |

### `place.stream.chat.profile#selfLabel`

**Type**: `string`

Label that a user can apply to their own profile.

**Known Values**:
- `bot`

### `place.stream.chat.profile#badgeSelections`

**Type**: `object`

Selected badges for display in chat, organized by slot.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `global` | `ref` → `com.atproto.repo.strongRef` | No | Selected globally-issued badge (e.g. event badge). |
| `streamer` | `array` | No | Selected streamer-issued badges, one per streamer channel. |

### `place.stream.chat.profile#streamerBadgeSelection`

**Type**: `object`

A selected badge for a specific streamer's channel.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `badge` | `ref` → `com.atproto.repo.strongRef` | Yes | Strong reference to the selected place.stream.badge.issuance record. |
| `streamer` | `string` (did) | Yes | DID of the streamer whose channel this selection applies to. |

## Raw Schema

```json
{
  "id": "place.stream.chat.profile",
  "defs": {
    "main": {
      "key": "literal:self",
      "type": "record",
      "record": {
        "type": "object",
        "properties": {
          "color": {
            "ref": "#color",
            "type": "ref"
          },
          "badges": {
            "ref": "#badgeSelections",
            "type": "ref",
            "description": "Badge selections for display in chat."
          },
          "selfLabels": {
            "type": "array",
            "items": {
              "ref": "#selfLabel",
              "type": "ref"
            },
            "maxLength": 10,
            "description": "Self-applied labels for this profile, e.g. 'bot'."
          }
        }
      },
      "description": "Record containing customizations for a user's chat profile."
    },
    "color": {
      "type": "object",
      "required": [
        "red",
        "green",
        "blue"
      ],
      "properties": {
        "red": {
          "type": "integer",
          "maximum": 255,
          "minimum": 0
        },
        "blue": {
          "type": "integer",
          "maximum": 255,
          "minimum": 0
        },
        "green": {
          "type": "integer",
          "maximum": 255,
          "minimum": 0
        }
      },
      "description": "Customizations for the color of a user's name in chat"
    },
    "selfLabel": {
      "type": "string",
      "description": "Label that a user can apply to their own profile.",
      "knownValues": [
        "bot"
      ]
    },
    "badgeSelections": {
      "type": "object",
      "properties": {
        "global": {
          "ref": "com.atproto.repo.strongRef",
          "type": "ref",
          "description": "Selected globally-issued badge (e.g. event badge)."
        },
        "streamer": {
          "type": "array",
          "items": {
            "ref": "#streamerBadgeSelection",
            "type": "ref"
          },
          "maxLength": 20,
          "description": "Selected streamer-issued badges, one per streamer channel."
        }
      },
      "description": "Selected badges for display in chat, organized by slot."
    },
    "streamerBadgeSelection": {
      "type": "object",
      "required": [
        "streamer",
        "badge"
      ],
      "properties": {
        "badge": {
          "ref": "com.atproto.repo.strongRef",
          "type": "ref",
          "description": "Strong reference to the selected place.stream.badge.issuance record."
        },
        "streamer": {
          "type": "string",
          "format": "did",
          "description": "DID of the streamer whose channel this selection applies to."
        }
      },
      "description": "A selected badge for a specific streamer's channel."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}
```
