{
"id": "directory.evnt.event",
"defs": {
"main": {
"type": "object",
"required": [
"v",
"name"
],
"properties": {
"v": {
"type": "integer",
"const": 0
},
"name": {
"type": "unknown"
},
"label": {
"type": "unknown"
},
"status": {
"ref": "#eventStatus",
"type": "ref"
},
"venues": {
"type": "array",
"items": {
"refs": [
"#physicalVenue",
"#onlineVenue",
"#unknownVenue"
],
"type": "union"
}
},
"instances": {
"type": "array",
"items": {
"ref": "#eventInstance",
"type": "ref"
}
},
"components": {
"type": "array",
"items": {
"ref": "#eventComponent",
"type": "ref"
}
}
}
},
"Address": {
"type": "object",
"properties": {
"addr": {
"type": "string"
},
"postalCode": {
"type": "string"
},
"countryCode": {
"type": "string"
}
}
},
"Coordinates": {
"type": "object",
"required": [
"lat",
"lng"
],
"properties": {
"lat": {
"type": "integer"
},
"lng": {
"type": "integer"
}
}
},
"EventStatus": {
"type": "string",
"knownValues": [
"planned",
"uncertain",
"postponed",
"cancelled",
"suspended"
]
},
"OnlineVenue": {
"type": "object",
"required": [
"id",
"type",
"name"
],
"properties": {
"id": {
"type": "string"
},
"url": {
"type": "string"
},
"name": {
"type": "unknown"
},
"type": {
"type": "string",
"const": "online"
}
}
},
"UnknownVenue": {
"type": "object",
"required": [
"id",
"type",
"name"
],
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "unknown"
},
"type": {
"type": "string",
"const": "unknown"
}
}
},
"EventInstance": {
"type": "object",
"properties": {
"end": {
"type": "string"
},
"start": {
"type": "string"
},
"status": {
"ref": "#eventStatus",
"type": "ref"
},
"venueIds": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"PhysicalVenue": {
"type": "object",
"required": [
"id",
"type",
"name"
],
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "unknown"
},
"type": {
"type": "string",
"const": "physical"
},
"address": {
"ref": "#address",
"type": "ref"
},
"coordinates": {
"ref": "#coordinates",
"type": "ref"
}
}
},
"EventComponent": {
"type": "object",
"required": [
"type",
"data"
],
"properties": {
"data": {
"type": "unknown"
},
"type": {
"type": "string"
}
}
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}