# site.mochott.adventCalendar

> Record describing an advent calendar owned by the account. Participants claim days with site.mochott.adventEntry records in their own repos.

- Kind: record
- Record key: tid
- Authority: mochott.site
- Lexicon: 1
- Published by [tokimeki.blue](https://lexicon.garden/identity/did:plc:4tr5dqti7nmu6g2czpthntak), the NSID's authority

## Links

- [Documentation](https://lexicon.garden/lexicon/did:plc:4tr5dqti7nmu6g2czpthntak/site.mochott.adventCalendar)
- [Schema JSON](https://lexicon.garden/lexicon/did:plc:4tr5dqti7nmu6g2czpthntak/site.mochott.adventCalendar/schema.json)
- [Analytics](https://lexicon.garden/lexicon/did:plc:4tr5dqti7nmu6g2czpthntak/site.mochott.adventCalendar/analytics)

## Record (`site.mochott.adventCalendar`)

Type: record · key tid

### Properties

- `allowExternal` (boolean): Whether entries may point to posts outside site.mochott.article (site.standard.document records or plain URLs).
- `createdAt` (string · datetime, required): Timestamp when the calendar was created.
- `dayCount` (integer, required): Number of days. Day N falls on startDate + (N - 1) days.
  - Constraints: minimum: 1, maximum: 31
- `description` (string): Optional description of the calendar.
  - Constraints: maxLength: 10000, maxGraphemes: 1000
- `excludedEntries` (array): site.mochott.adventEntry record URIs the owner removed from the calendar. The entries stay in their authors' repos but are not shown and do not hold a day.
  - Constraints: maxLength: 500
  - `items` (string · at-uri)
- `maxDaysPerPerson` (integer): How many days one participant other than the owner can take. Absent means no limit.
  - Constraints: minimum: 1, maximum: 31
- `slotsPerDay` (integer): How many participants can take the same day. Defaults to 1.
  - Constraints: minimum: 1, maximum: 5
- `slug` (string, required): URL slug of the calendar, unique per owner. Lowercase letters, numbers, hyphens, and underscores.
  - Constraints: maxLength: 100
- `startDate` (string, required): Calendar date of day 1 in the calendar's time zone, formatted YYYY-MM-DD.
  - Constraints: maxLength: 10
- `timeZone` (string): IANA time zone that day boundaries follow. Defaults to Asia/Tokyo.
  - Constraints: maxLength: 64
- `title` (string, required): Display title of the calendar.
  - Constraints: maxLength: 1000, maxGraphemes: 100
- `updatedAt` (string · datetime): Timestamp when the calendar was last updated.

## Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Record describing an advent calendar owned by the account. Participants claim days with site.mochott.adventEntry records in their own repos.",
      "key": "tid",
      "record": {
        "properties": {
          "allowExternal": {
            "description": "Whether entries may point to posts outside site.mochott.article (site.standard.document records or plain URLs).",
            "type": "boolean"
          },
          "createdAt": {
            "description": "Timestamp when the calendar was created.",
            "format": "datetime",
            "type": "string"
          },
          "dayCount": {
            "description": "Number of days. Day N falls on startDate + (N - 1) days.",
            "maximum": 31,
            "minimum": 1,
            "type": "integer"
          },
          "description": {
            "description": "Optional description of the calendar.",
            "maxGraphemes": 1000,
            "maxLength": 10000,
            "type": "string"
          },
          "excludedEntries": {
            "description": "site.mochott.adventEntry record URIs the owner removed from the calendar. The entries stay in their authors' repos but are not shown and do not hold a day.",
            "items": {
              "format": "at-uri",
              "type": "string"
            },
            "maxLength": 500,
            "type": "array"
          },
          "maxDaysPerPerson": {
            "description": "How many days one participant other than the owner can take. Absent means no limit.",
            "maximum": 31,
            "minimum": 1,
            "type": "integer"
          },
          "slotsPerDay": {
            "description": "How many participants can take the same day. Defaults to 1.",
            "maximum": 5,
            "minimum": 1,
            "type": "integer"
          },
          "slug": {
            "description": "URL slug of the calendar, unique per owner. Lowercase letters, numbers, hyphens, and underscores.",
            "maxLength": 100,
            "type": "string"
          },
          "startDate": {
            "description": "Calendar date of day 1 in the calendar's time zone, formatted YYYY-MM-DD.",
            "maxLength": 10,
            "type": "string"
          },
          "timeZone": {
            "description": "IANA time zone that day boundaries follow. Defaults to Asia/Tokyo.",
            "maxLength": 64,
            "type": "string"
          },
          "title": {
            "description": "Display title of the calendar.",
            "maxGraphemes": 100,
            "maxLength": 1000,
            "type": "string"
          },
          "updatedAt": {
            "description": "Timestamp when the calendar was last updated.",
            "format": "datetime",
            "type": "string"
          }
        },
        "required": [
          "title",
          "slug",
          "startDate",
          "dayCount",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "description": "An advent calendar: a run of consecutive days on which participants each publish one post.",
  "id": "site.mochott.adventCalendar",
  "lexicon": 1,
  "revision": 2
}
```
