# social.coves.embed.external

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

✓ This is the authoritative definition for this NSID.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:web:coves.social/social.coves.embed.external)
- [Documentation](https://lexicon.garden/lexicon/did:web:coves.social/social.coves.embed.external/docs)
- [Examples](https://lexicon.garden/lexicon/did:web:coves.social/social.coves.embed.external/examples)

## Definitions

### `social.coves.embed.external`

**Type**: `object`

External link embed with optional aggregated sources for megathreads

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `external` | `ref` → `#external` | Yes |  |

### `social.coves.embed.external#view`

**Type**: `object`

View of an external link embed as served by the AppView

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `external` | `ref` → `#viewExternal` | Yes |  |

### `social.coves.embed.external#source`

**Type**: `object`

A source link aggregated into a megathread

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `uri` | `string` (uri) | Yes | URI of the source article |
| `title` | `string` | No | Title of the source article |
| `domain` | `string` | No | Domain of the source (e.g., nytimes.com) |
| `sourcePost` | `ref` → `com.atproto.repo.strongRef` | No | Reference to the Coves post that originally shared this link. Used for feed deprioritization of rolled-up posts |

### `social.coves.embed.external#external`

**Type**: `object`

Primary external link metadata

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `uri` | `string` (uri) | Yes | URI of the primary external content |
| `thumb` | `blob` | No | Thumbnail image for the post (applies to primary link) |
| `title` | `string` | No | Title of the linked content |
| `domain` | `string` | No | Domain of the linked content (e.g., nytimes.com) |
| `images` | `array` | No | Preview images for image gallery providers |
| `sources` | `array` | No | Aggregated source links for megathreads. Each source references an original article and optionally the Coves post that shared it |
| `provider` | `string` | No | Service provider name (e.g., imgur, streamable) |
| `embedType` | `string` | No | Type hint for content rendering and filtering |
| `totalCount` | `integer` | No | Total number of items if more than displayed (for galleries) |
| `description` | `string` | No | Description or excerpt of the linked content |

### `social.coves.embed.external#viewExternal`

**Type**: `object`

External link metadata as served by the AppView; thumb is a fetchable URL instead of a blob reference

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `uri` | `string` (uri) | Yes | URI of the primary external content |
| `thumb` | `string` (uri) | No | URL of the thumbnail image, served via the hosting PDS blob endpoint |
| `title` | `string` | No | Title of the linked content |
| `domain` | `string` | No | Domain of the linked content (e.g., nytimes.com) |
| `images` | `array` | No | Preview images for image gallery providers |
| `sources` | `array` | No | Aggregated source links for megathreads. Each source references an original article and optionally the Coves post that shared it |
| `provider` | `string` | No | Service provider name (e.g., imgur, streamable) |
| `embedType` | `string` | No | Type hint for content rendering and filtering |
| `totalCount` | `integer` | No | Total number of items if more than displayed (for galleries) |
| `description` | `string` | No | Description or excerpt of the linked content |

## Raw Schema

```json
{
  "id": "social.coves.embed.external",
  "defs": {
    "main": {
      "type": "object",
      "required": [
        "external"
      ],
      "properties": {
        "external": {
          "ref": "#external",
          "type": "ref"
        }
      },
      "description": "External link embed with optional aggregated sources for megathreads"
    },
    "view": {
      "type": "object",
      "required": [
        "external"
      ],
      "properties": {
        "external": {
          "ref": "#viewExternal",
          "type": "ref"
        }
      },
      "description": "View of an external link embed as served by the AppView"
    },
    "source": {
      "type": "object",
      "required": [
        "uri"
      ],
      "properties": {
        "uri": {
          "type": "string",
          "format": "uri",
          "description": "URI of the source article"
        },
        "title": {
          "type": "string",
          "maxLength": 5000,
          "description": "Title of the source article",
          "maxGraphemes": 500
        },
        "domain": {
          "type": "string",
          "maxLength": 253,
          "description": "Domain of the source (e.g., nytimes.com)"
        },
        "sourcePost": {
          "ref": "com.atproto.repo.strongRef",
          "type": "ref",
          "description": "Reference to the Coves post that originally shared this link. Used for feed deprioritization of rolled-up posts"
        }
      },
      "description": "A source link aggregated into a megathread"
    },
    "external": {
      "type": "object",
      "required": [
        "uri"
      ],
      "properties": {
        "uri": {
          "type": "string",
          "format": "uri",
          "description": "URI of the primary external content"
        },
        "thumb": {
          "type": "blob",
          "accept": [
            "image/png",
            "image/jpeg",
            "image/webp"
          ],
          "maxSize": 6000000,
          "description": "Thumbnail image for the post (applies to primary link)"
        },
        "title": {
          "type": "string",
          "maxLength": 5000,
          "description": "Title of the linked content",
          "maxGraphemes": 500
        },
        "domain": {
          "type": "string",
          "maxLength": 253,
          "description": "Domain of the linked content (e.g., nytimes.com)"
        },
        "images": {
          "type": "array",
          "items": {
            "ref": "social.coves.embed.images#image",
            "type": "ref"
          },
          "maxLength": 8,
          "description": "Preview images for image gallery providers"
        },
        "sources": {
          "type": "array",
          "items": {
            "ref": "#source",
            "type": "ref"
          },
          "maxLength": 50,
          "description": "Aggregated source links for megathreads. Each source references an original article and optionally the Coves post that shared it"
        },
        "provider": {
          "type": "string",
          "maxLength": 100,
          "description": "Service provider name (e.g., imgur, streamable)"
        },
        "embedType": {
          "type": "string",
          "maxLength": 64,
          "description": "Type hint for content rendering and filtering",
          "knownValues": [
            "article",
            "image",
            "video",
            "website"
          ]
        },
        "totalCount": {
          "type": "integer",
          "minimum": 0,
          "description": "Total number of items if more than displayed (for galleries)"
        },
        "description": {
          "type": "string",
          "maxLength": 10000,
          "description": "Description or excerpt of the linked content",
          "maxGraphemes": 1000
        }
      },
      "description": "Primary external link metadata"
    },
    "viewExternal": {
      "type": "object",
      "required": [
        "uri"
      ],
      "properties": {
        "uri": {
          "type": "string",
          "format": "uri",
          "description": "URI of the primary external content"
        },
        "thumb": {
          "type": "string",
          "format": "uri",
          "description": "URL of the thumbnail image, served via the hosting PDS blob endpoint"
        },
        "title": {
          "type": "string",
          "maxLength": 5000,
          "description": "Title of the linked content",
          "maxGraphemes": 500
        },
        "domain": {
          "type": "string",
          "maxLength": 253,
          "description": "Domain of the linked content (e.g., nytimes.com)"
        },
        "images": {
          "type": "array",
          "items": {
            "ref": "social.coves.embed.images#image",
            "type": "ref"
          },
          "maxLength": 8,
          "description": "Preview images for image gallery providers"
        },
        "sources": {
          "type": "array",
          "items": {
            "ref": "#source",
            "type": "ref"
          },
          "maxLength": 50,
          "description": "Aggregated source links for megathreads. Each source references an original article and optionally the Coves post that shared it"
        },
        "provider": {
          "type": "string",
          "maxLength": 100,
          "description": "Service provider name (e.g., imgur, streamable)"
        },
        "embedType": {
          "type": "string",
          "maxLength": 64,
          "description": "Type hint for content rendering and filtering",
          "knownValues": [
            "article",
            "image",
            "video",
            "website"
          ]
        },
        "totalCount": {
          "type": "integer",
          "minimum": 0,
          "description": "Total number of items if more than displayed (for galleries)"
        },
        "description": {
          "type": "string",
          "maxLength": 10000,
          "description": "Description or excerpt of the linked content",
          "maxGraphemes": 1000
        }
      },
      "description": "External link metadata as served by the AppView; thumb is a fetchable URL instead of a blob reference"
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}
```
