# com.sidefield.event

> Published by [sidefield-app.bsky.social](https://lexicon.garden/identity/did:plc:gmvwumglpc4sn5s77uzb2bth)

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:gmvwumglpc4sn5s77uzb2bth/com.sidefield.event)
- [Documentation](https://lexicon.garden/lexicon/did:plc:gmvwumglpc4sn5s77uzb2bth/com.sidefield.event/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:gmvwumglpc4sn5s77uzb2bth/com.sidefield.event/examples)

## Definitions

### `com.sidefield.event`

**Type**: `record`

A generic event record for any community gathering

**Key**: `tid`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `title` | `string` | Yes | Event title |
| `status` | `string` | No | Event status |
| `endTime` | `string` (datetime) | No | When the event ends |
| `location` | `string` | No | Where the event takes place |
| `community` | `ref` → `com.atproto.repo.strongRef` | No | Reference to the community this event belongs to |
| `createdAt` | `string` (datetime) | No |  |
| `startTime` | `string` (datetime) | Yes | When the event begins |
| `updatedAt` | `string` (datetime) | No |  |
| `description` | `string` | No | Event description |

### `com.sidefield.event#cancelled`

**Type**: `token`

Specifies that the event is cancelled

Specifies that the event is cancelled

### `com.sidefield.event#completed`

**Type**: `token`

Specifies that the event is completed

Specifies that the event is completed

### `com.sidefield.event#postponed`

**Type**: `token`

Specifies that the event is postponed

Specifies that the event is postponed

### `com.sidefield.event#scheduled`

**Type**: `token`

Specifies that the event is scheduled

Specifies that the event is scheduled

## Raw Schema

```json
{
  "id": "com.sidefield.event",
  "defs": {
    "main": {
      "key": "tid",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "title",
          "startTime"
        ],
        "properties": {
          "title": {
            "type": "string",
            "maxLength": 100,
            "description": "Event title"
          },
          "status": {
            "type": "string",
            "description": "Event status",
            "knownValues": [
              "com.sidefield.event#scheduled",
              "com.sidefield.event#cancelled",
              "com.sidefield.event#postponed",
              "com.sidefield.event#completed"
            ]
          },
          "endTime": {
            "type": "string",
            "format": "datetime",
            "description": "When the event ends"
          },
          "location": {
            "type": "string",
            "maxLength": 500,
            "description": "Where the event takes place"
          },
          "community": {
            "ref": "com.atproto.repo.strongRef",
            "type": "ref",
            "description": "Reference to the community this event belongs to"
          },
          "createdAt": {
            "type": "string",
            "format": "datetime"
          },
          "startTime": {
            "type": "string",
            "format": "datetime",
            "description": "When the event begins"
          },
          "updatedAt": {
            "type": "string",
            "format": "datetime"
          },
          "description": {
            "type": "string",
            "maxLength": 1000,
            "description": "Event description"
          }
        }
      },
      "description": "A generic event record for any community gathering"
    },
    "cancelled": {
      "type": "token",
      "description": "Specifies that the event is cancelled"
    },
    "completed": {
      "type": "token",
      "description": "Specifies that the event is completed"
    },
    "postponed": {
      "type": "token",
      "description": "Specifies that the event is postponed"
    },
    "scheduled": {
      "type": "token",
      "description": "Specifies that the event is scheduled"
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}
```
