# family.pardy.familytime.event

> Published by [pardy.at](https://lexicon.garden/identity/did:plc:dp7v5b5kejmmzzpwmqyf5wj6)

✓ This is the authoritative definition for this NSID.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:dp7v5b5kejmmzzpwmqyf5wj6/family.pardy.familytime.event)
- [Documentation](https://lexicon.garden/lexicon/did:plc:dp7v5b5kejmmzzpwmqyf5wj6/family.pardy.familytime.event/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:dp7v5b5kejmmzzpwmqyf5wj6/family.pardy.familytime.event/examples)

## Definitions

### `family.pardy.familytime.event#countdown`

**Type**: `object`

A big day: the wall counts down to it, starting this many days before.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `days` | `integer` | Yes |  |

### `family.pardy.familytime.event`

**Type**: `record`

Something on the schedule, in the family space. Shows only once a parent approves this exact version in the approvals space (the app approves a parent's own events as they add them). Board configuration: board space (parents only); each parent saves their own copy with rkey = id, and the newest updatedAt wins (a deleted copy removes it).

**Key**: `any`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `anchor` | `string` | No | Marks the start or end of the day for the people it's for; free time is planned between these. |
| `countdown` | `ref` → `#countdown` | No |  |
| `createdAt` | `string` (datetime) | Yes |  |
| `date` | `string` | Yes | YYYY-MM-DD in the household time zone. |
| `deleted` | `boolean` | No | Removed, when this is the newest copy. |
| `emoji` | `string` | Yes |  |
| `endDate` | `string` | No | YYYY-MM-DD: the last day of something that spans days (a trip). Shown all day on each day. |
| `endTime` | `string` | No | HH:MM, 24-hour, household wall-clock. |
| `id` | `string` | Yes | Stable across edits and parents; the record key. |
| `image` | `blob` | No | A photo shown instead of the emoji, e.g. the people you're visiting. Referenced from the private space. |
| `note` | `string` | No |  |
| `repeat` | `ref` → `#repeat` | No |  |
| `startTime` | `string` | No | HH:MM, 24-hour, household wall-clock. |
| `title` | `string` | Yes |  |
| `updatedAt` | `string` (datetime) | Yes | Last write wins across parents. |
| `who` | `array` | No | Members it's for; empty means everyone. |

### `family.pardy.familytime.event#repeat`

**Type**: `object`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `until` | `string` | No | YYYY-MM-DD in the household time zone. |
| `weekdays` | `array` | Yes | 0 = Sunday. |

## Raw Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "countdown": {
      "description": "A big day: the wall counts down to it, starting this many days before.",
      "properties": {
        "days": {
          "maximum": 90,
          "minimum": 1,
          "type": "integer"
        }
      },
      "required": [
        "days"
      ],
      "type": "object"
    },
    "main": {
      "description": "Something on the schedule, in the family space. Shows only once a parent approves this exact version in the approvals space (the app approves a parent's own events as they add them). Board configuration: board space (parents only); each parent saves their own copy with rkey = id, and the newest updatedAt wins (a deleted copy removes it).",
      "key": "any",
      "record": {
        "properties": {
          "anchor": {
            "description": "Marks the start or end of the day for the people it's for; free time is planned between these.",
            "knownValues": [
              "wake",
              "bedtime"
            ],
            "type": "string"
          },
          "countdown": {
            "ref": "#countdown",
            "type": "ref"
          },
          "createdAt": {
            "format": "datetime",
            "type": "string"
          },
          "date": {
            "description": "YYYY-MM-DD in the household time zone.",
            "maxLength": 10,
            "type": "string"
          },
          "deleted": {
            "description": "Removed, when this is the newest copy.",
            "type": "boolean"
          },
          "emoji": {
            "maxGraphemes": 2,
            "maxLength": 32,
            "type": "string"
          },
          "endDate": {
            "description": "YYYY-MM-DD: the last day of something that spans days (a trip). Shown all day on each day.",
            "maxLength": 10,
            "type": "string"
          },
          "endTime": {
            "description": "HH:MM, 24-hour, household wall-clock.",
            "maxLength": 5,
            "type": "string"
          },
          "id": {
            "description": "Stable across edits and parents; the record key.",
            "maxLength": 64,
            "type": "string"
          },
          "image": {
            "accept": [
              "image/png",
              "image/jpeg",
              "image/webp"
            ],
            "description": "A photo shown instead of the emoji, e.g. the people you're visiting. Referenced from the private space.",
            "maxSize": 1000000,
            "type": "blob"
          },
          "note": {
            "maxLength": 1000,
            "type": "string"
          },
          "repeat": {
            "ref": "#repeat",
            "type": "ref"
          },
          "startTime": {
            "description": "HH:MM, 24-hour, household wall-clock.",
            "maxLength": 5,
            "type": "string"
          },
          "title": {
            "maxLength": 200,
            "type": "string"
          },
          "updatedAt": {
            "description": "Last write wins across parents.",
            "format": "datetime",
            "type": "string"
          },
          "who": {
            "description": "Members it's for; empty means everyone.",
            "items": {
              "format": "did",
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "createdAt",
          "date",
          "emoji",
          "id",
          "title",
          "updatedAt"
        ],
        "type": "object"
      },
      "type": "record"
    },
    "repeat": {
      "properties": {
        "until": {
          "description": "YYYY-MM-DD in the household time zone.",
          "maxLength": 10,
          "type": "string"
        },
        "weekdays": {
          "description": "0 = Sunday.",
          "items": {
            "maximum": 6,
            "minimum": 0,
            "type": "integer"
          },
          "type": "array"
        }
      },
      "required": [
        "weekdays"
      ],
      "type": "object"
    }
  },
  "id": "family.pardy.familytime.event",
  "lexicon": 1
}
```
