# garden.lexicon.nourishing-earthworm.crepeWatch

> Published by [tyler.fun](https://lexicon.garden/identity/did:plc:4gt3dbmp4pydjiemob4konzm)

✓ This is the authoritative definition for this NSID.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:4gt3dbmp4pydjiemob4konzm/garden.lexicon.nourishing-earthworm.crepeWatch)
- [Documentation](https://lexicon.garden/lexicon/did:plc:4gt3dbmp4pydjiemob4konzm/garden.lexicon.nourishing-earthworm.crepeWatch/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:4gt3dbmp4pydjiemob4konzm/garden.lexicon.nourishing-earthworm.crepeWatch/examples)

## Definitions

### `garden.lexicon.nourishing-earthworm.crepeWatch`

**Type**: `record`

One viewing of a movie, or of a TV show, season or episode, in crepe's private diary. A watch with no rating and no review text is a plain play (for example an episode Plex reported) and stays out of the diary log.

**Key**: `tid`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `containsSpoilers` | `boolean` | No |  |
| `createdAt` | `string` (datetime) | Yes | When this record was created (not the watch time). |
| `episodeNumber` | `integer` | No | Required for episode watches. |
| `episodeTitle` | `string` | No |  |
| `episodeTmdbId` | `string` | No | The episode's own TMDB id, when known. |
| `genres` | `array` | No |  |
| `imdbId` | `string` | No |  |
| `kind` | `string` | Yes | What was watched. |
| `mainCredit` | `string` | No |  |
| `mainCreditRole` | `string` | No |  |
| `place` | `ref` → `#place` | No | Where it was watched: a movie theater from the Foursquare places catalog, or any place of the user's own ("Steve's house"). |
| `rating` | `integer` | No | Half stars out of five, times two. Absent means unrated. |
| `releaseDate` | `string` | No | Snapshot, YYYY-MM-DD. |
| `rewatch` | `boolean` | No | deprecated 2026-09-29: derived by readers, no longer written |
| `seasonNumber` | `integer` | No | Required for season and episode watches. |
| `source` | `string` | No | Where this watch was first recorded. |
| `stamps` | `unknown` | No | Map of field group name to hybrid logical clock stamp, for field-level last-write-wins merge between devices and the sync server. |
| `tags` | `array` | No |  |
| `text` | `string` | No | Review text, plain. |
| `title` | `string` | No | Snapshot of the movie or show title, for offline display. |
| `tmdbId` | `string` | Yes | TMDB id of the movie, or of the show for show, season and episode watches. Never an episode's own id. |
| `updatedAt` | `string` (datetime) | Yes |  |
| `watchedAt` | `string` (datetime) | No | When it was watched. Absent for a watch logged without a date. |

### `garden.lexicon.nourishing-earthworm.crepeWatch#place`

**Type**: `object`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `address` | `string` | No | One-line address snapshot, for display. |
| `fsqPlaceId` | `string` | No | Foursquare OS Places id when the place came from the catalog. Absent for a place of the user's own. |
| `latitude` | `string` | No | Decimal degrees as a string, like community.lexicon.location.geo. |
| `longitude` | `string` | No |  |
| `name` | `string` | Yes | Display name. A theater's catalog name, or whatever the user typed. |

## Raw Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "One viewing of a movie, or of a TV show, season or episode, in crepe's private diary. A watch with no rating and no review text is a plain play (for example an episode Plex reported) and stays out of the diary log.",
      "key": "tid",
      "record": {
        "properties": {
          "containsSpoilers": {
            "type": "boolean"
          },
          "createdAt": {
            "description": "When this record was created (not the watch time).",
            "format": "datetime",
            "type": "string"
          },
          "episodeNumber": {
            "description": "Required for episode watches.",
            "minimum": 0,
            "type": "integer"
          },
          "episodeTitle": {
            "maxLength": 1000,
            "type": "string"
          },
          "episodeTmdbId": {
            "description": "The episode's own TMDB id, when known.",
            "maxLength": 32,
            "type": "string"
          },
          "genres": {
            "items": {
              "maxLength": 100,
              "type": "string"
            },
            "maxLength": 20,
            "type": "array"
          },
          "imdbId": {
            "maxLength": 32,
            "type": "string"
          },
          "kind": {
            "description": "What was watched.",
            "knownValues": [
              "movie",
              "show",
              "season",
              "episode"
            ],
            "type": "string"
          },
          "mainCredit": {
            "maxLength": 300,
            "type": "string"
          },
          "mainCreditRole": {
            "knownValues": [
              "director",
              "creator"
            ],
            "type": "string"
          },
          "place": {
            "description": "Where it was watched: a movie theater from the Foursquare places catalog, or any place of the user's own (\"Steve's house\").",
            "ref": "#place",
            "type": "ref"
          },
          "rating": {
            "description": "Half stars out of five, times two. Absent means unrated.",
            "maximum": 10,
            "minimum": 1,
            "type": "integer"
          },
          "releaseDate": {
            "description": "Snapshot, YYYY-MM-DD.",
            "maxLength": 32,
            "type": "string"
          },
          "rewatch": {
            "description": "deprecated 2026-09-29: derived by readers, no longer written",
            "type": "boolean"
          },
          "seasonNumber": {
            "description": "Required for season and episode watches.",
            "minimum": 0,
            "type": "integer"
          },
          "source": {
            "description": "Where this watch was first recorded.",
            "knownValues": [
              "crepe",
              "plex",
              "popfeed",
              "letterboxd"
            ],
            "type": "string"
          },
          "stamps": {
            "description": "Map of field group name to hybrid logical clock stamp, for field-level last-write-wins merge between devices and the sync server.",
            "type": "unknown"
          },
          "tags": {
            "items": {
              "maxGraphemes": 64,
              "maxLength": 640,
              "type": "string"
            },
            "maxLength": 50,
            "type": "array"
          },
          "text": {
            "description": "Review text, plain.",
            "maxGraphemes": 10000,
            "maxLength": 100000,
            "type": "string"
          },
          "title": {
            "description": "Snapshot of the movie or show title, for offline display.",
            "maxLength": 1000,
            "type": "string"
          },
          "tmdbId": {
            "description": "TMDB id of the movie, or of the show for show, season and episode watches. Never an episode's own id.",
            "maxLength": 32,
            "type": "string"
          },
          "updatedAt": {
            "format": "datetime",
            "type": "string"
          },
          "watchedAt": {
            "description": "When it was watched. Absent for a watch logged without a date.",
            "format": "datetime",
            "type": "string"
          }
        },
        "required": [
          "kind",
          "tmdbId",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "type": "record"
    },
    "place": {
      "properties": {
        "address": {
          "description": "One-line address snapshot, for display.",
          "maxGraphemes": 500,
          "maxLength": 5000,
          "type": "string"
        },
        "fsqPlaceId": {
          "description": "Foursquare OS Places id when the place came from the catalog. Absent for a place of the user's own.",
          "maxLength": 64,
          "type": "string"
        },
        "latitude": {
          "description": "Decimal degrees as a string, like community.lexicon.location.geo.",
          "maxLength": 32,
          "type": "string"
        },
        "longitude": {
          "maxLength": 32,
          "type": "string"
        },
        "name": {
          "description": "Display name. A theater's catalog name, or whatever the user typed.",
          "maxGraphemes": 300,
          "maxLength": 3000,
          "type": "string"
        }
      },
      "required": [
        "name"
      ],
      "type": "object"
    }
  },
  "id": "garden.lexicon.nourishing-earthworm.crepeWatch",
  "lexicon": 1
}
```
