{ "$jsonSchema": { "required": [ "user", "completed", "category", "description", "photo", "video", "audio", "animation", "document", "caption", "text" ], "properties": { "user": { "bsonType": ["int", "long"], "description": "Telegram ID of user" }, "completed": { "bsonType": "bool", "description": "Whether spoiler is a completed one" }, "category": { "bsonType": ["string", "null"], "enum": ["nsfw", "deanon", "other"], "description": "Spoiler's category" }, "description": { "bsonType": ["string", "null"], "description": "Spoiler's description" }, "photo": { "bsonType": ["string", "null"], "description": "Spoilered photo" }, "video": { "bsonType": ["string", "null"], "description": "Spoilered video" }, "audio": { "bsonType": ["string", "null"], "description": "Spoilered audio" }, "animation": { "bsonType": ["string", "null"], "description": "Spoilered animation/GIF" }, "document": { "bsonType": ["string", "null"], "description": "Spoilered document/file" }, "caption": { "bsonType": ["string", "null"], "description": "Spoilered caption for media" }, "text": { "bsonType": ["string", "null"], "description": "Spoilered text" } } } }