{
"id": "com.alephcubed.starmark.review",
"defs": {
"main": {
"key": "tid",
"type": "record",
"record": {
"type": "object",
"required": [
"type",
"subject",
"ratingScale",
"rating",
"createdAt"
],
"properties": {
"body": {
"type": "string",
"description": "The optional content of the review."
},
"lang": {
"type": "string",
"format": "language"
},
"media": {
"type": "string",
"description": "The type of media that is being reviewed.",
"knownValues": [
"com.alephcubed.starmark.review.book",
"com.alephcubed.starmark.review.movie",
"com.alephcubed.starmark.review.tvshow",
"com.alephcubed.starmark.review.game"
]
},
"rating": {
"type": "integer",
"description": "The rating value of the review, usually in the form O <= rating <= ratingScale."
},
"spoiler": {
"type": "boolean",
"default": false,
"description": "Whether the body of the review contains spoilers or not."
},
"subject": {
"type": "string",
"description": "The name of the media being reviewed."
},
"createdAt": {
"type": "string",
"format": "datetime"
},
"ratingScale": {
"type": "integer",
"default": 5,
"description": "The number of values (not including zero) in the rating scale, usually in the form O <= rating <= ratingScale."
}
}
},
"description": "A review for a piece of media"
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}