# app.bivri.feed.artworkV2

> Published by [lexicons.bivri.app](https://lexicon.garden/identity/did:plc:uqat5a7hrbww3snbbinxgwah)

✓ This is the authoritative definition for this NSID.

## Description

Artwork record supporting JPEG, PNG, GIF and WebP originals. Earlier app.bivri.feed.artwork records retain their original schema and identity.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:uqat5a7hrbww3snbbinxgwah/app.bivri.feed.artworkV2)
- [Documentation](https://lexicon.garden/lexicon/did:plc:uqat5a7hrbww3snbbinxgwah/app.bivri.feed.artworkV2/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:uqat5a7hrbww3snbbinxgwah/app.bivri.feed.artworkV2/examples)

## Definitions

### `app.bivri.feed.artworkV2`

**Type**: `record`

**Key**: `tid`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `aiDetection` | `ref` → `app.bivri.feed.defs#aiDetection` | No | Inspection of the original images, included only with explicit public consent. Public copies cannot be recalled. This record field alone is not proof of a Bivri-issued inspection. |
| `aiProtection` | `ref` → `app.bivri.feed.defs#aiProtection` | No | Public metadata stating that the published images were processed by the named protection provider. |
| `createdAt` | `string` (datetime) | Yes | Client-declared timestamp of when the artwork was published. |
| `description` | `string` | No | Free-form description of the artwork. |
| `labels` | `union` | No | Self-label values the author declared on this artwork, such as a spoiler warning. These are author metadata, not platform moderation decisions. |
| `langs` | `array` | No | Human languages of the artwork's title and description. |
| `media` | `array` | Yes | Images making up the artwork, in display order. At least one is required. |
| `tags` | `array` | No | Author-chosen tags used for discovery and search. |
| `title` | `string` | Yes | Title of the artwork. |
| `updatedAt` | `string` (datetime) | No | Client-declared timestamp of the last edit to this record. |

### `app.bivri.feed.artworkV2#mediaItem`

**Type**: `object`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `alt` | `string` | Yes | Alternative text describing the image for members who cannot see it. |
| `aspectRatio` | `ref` → `app.bivri.feed.defs#aspectRatio` | No |  |
| `blob` | `blob` | Yes | Image blob for this item. The write methods accept JPEG, PNG, GIF and WebP. |

## Raw Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "key": "tid",
      "record": {
        "properties": {
          "aiDetection": {
            "description": "Inspection of the original images, included only with explicit public consent. Public copies cannot be recalled. This record field alone is not proof of a Bivri-issued inspection.",
            "ref": "app.bivri.feed.defs#aiDetection",
            "type": "ref"
          },
          "aiProtection": {
            "description": "Public metadata stating that the published images were processed by the named protection provider.",
            "ref": "app.bivri.feed.defs#aiProtection",
            "type": "ref"
          },
          "createdAt": {
            "description": "Client-declared timestamp of when the artwork was published.",
            "format": "datetime",
            "type": "string"
          },
          "description": {
            "description": "Free-form description of the artwork.",
            "maxGraphemes": 300,
            "maxLength": 3000,
            "type": "string"
          },
          "labels": {
            "description": "Self-label values the author declared on this artwork, such as a spoiler warning. These are author metadata, not platform moderation decisions.",
            "refs": [
              "com.atproto.label.defs#selfLabels"
            ],
            "type": "union"
          },
          "langs": {
            "description": "Human languages of the artwork's title and description.",
            "items": {
              "format": "language",
              "type": "string"
            },
            "maxLength": 3,
            "type": "array"
          },
          "media": {
            "description": "Images making up the artwork, in display order. At least one is required.",
            "items": {
              "ref": "#mediaItem",
              "type": "ref"
            },
            "maxLength": 50,
            "minLength": 1,
            "type": "array"
          },
          "tags": {
            "description": "Author-chosen tags used for discovery and search.",
            "items": {
              "maxGraphemes": 64,
              "maxLength": 640,
              "minLength": 1,
              "type": "string"
            },
            "maxLength": 8,
            "type": "array"
          },
          "title": {
            "description": "Title of the artwork.",
            "maxGraphemes": 50,
            "maxLength": 500,
            "minLength": 1,
            "type": "string"
          },
          "updatedAt": {
            "description": "Client-declared timestamp of the last edit to this record.",
            "format": "datetime",
            "type": "string"
          }
        },
        "required": [
          "title",
          "media",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    },
    "mediaItem": {
      "properties": {
        "alt": {
          "description": "Alternative text describing the image for members who cannot see it.",
          "type": "string"
        },
        "aspectRatio": {
          "ref": "app.bivri.feed.defs#aspectRatio",
          "type": "ref"
        },
        "blob": {
          "accept": [
            "image/jpeg",
            "image/png",
            "image/gif",
            "image/webp"
          ],
          "description": "Image blob for this item. The write methods accept JPEG, PNG, GIF and WebP.",
          "maxSize": 50000000,
          "type": "blob"
        }
      },
      "required": [
        "blob",
        "alt"
      ],
      "type": "object"
    }
  },
  "description": "Artwork record supporting JPEG, PNG, GIF and WebP originals. Earlier app.bivri.feed.artwork records retain their original schema and identity.",
  "id": "app.bivri.feed.artworkV2",
  "lexicon": 1
}
```
