# social.colibri.beta.message

> 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.message)
- [Documentation](https://lexicon.garden/lexicon/did:plc:mprdjqjluoswa7awzggaggj3/social.colibri.beta.message/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:mprdjqjluoswa7awzggaggj3/social.colibri.beta.message/examples)

## Definitions

### `social.colibri.beta.message`

**Type**: `record`

A message in a channel. Lives in the author's own permissioned repo for the channel's space.

**Key**: `tid`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `text` | `string` | Yes | The message body. |
| `facets` | `array` | No | Annotations over ranges of the text. |
| `parent` | `ref` → `social.colibri.beta.defs#recordRef` | No | The message this one replies to. |
| `createdAt` | `string` (datetime) | Yes | When the message was sent. |
| `updatedAt` | `string` (datetime) | No | When the message was last edited. Absent means never edited. |
| `attachments` | `array` | No | Files attached to this message. |
| `suppressedEmbeds` | `array` | No | URLs from this message's link facets whose preview the author chose not to show. Moderator suppression is a label instead. |

### `social.colibri.beta.message#attachment`

**Type**: `object`

A file attached to a message.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `blob` | `blob` | Yes | The attached file. |
| `name` | `string` | No | The original filename. |

## Raw Schema

```json
{
  "id": "social.colibri.beta.message",
  "defs": {
    "main": {
      "key": "tid",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "text",
          "createdAt"
        ],
        "properties": {
          "text": {
            "type": "string",
            "maxLength": 2048,
            "description": "The message body."
          },
          "facets": {
            "type": "array",
            "items": {
              "ref": "social.colibri.beta.richtext.facet",
              "type": "ref"
            },
            "description": "Annotations over ranges of the text."
          },
          "parent": {
            "ref": "social.colibri.beta.defs#recordRef",
            "type": "ref",
            "description": "The message this one replies to."
          },
          "createdAt": {
            "type": "string",
            "format": "datetime",
            "description": "When the message was sent."
          },
          "updatedAt": {
            "type": "string",
            "format": "datetime",
            "description": "When the message was last edited. Absent means never edited."
          },
          "attachments": {
            "type": "array",
            "items": {
              "ref": "#attachment",
              "type": "ref"
            },
            "description": "Files attached to this message."
          },
          "suppressedEmbeds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uri"
            },
            "description": "URLs from this message's link facets whose preview the author chose not to show. Moderator suppression is a label instead."
          }
        }
      },
      "description": "A message in a channel. Lives in the author's own permissioned repo for the channel's space."
    },
    "attachment": {
      "type": "object",
      "required": [
        "blob"
      ],
      "properties": {
        "blob": {
          "type": "blob",
          "description": "The attached file."
        },
        "name": {
          "type": "string",
          "maxLength": 256,
          "description": "The original filename."
        }
      },
      "description": "A file attached to a message."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}
```
