diff --git a/api/src/schema/Message.ts b/api/src/schema/Message.ts
index 742542df..d39f685a 100644
--- a/api/src/schema/Message.ts
+++ b/api/src/schema/Message.ts
@@ -7,48 +7,52 @@ export const EmbedImage = {
$height: Number
};
+const embed = {
+ $title: new Length(String, 0, 256), //title of embed
+ $type: String, // type of embed (always "rich" for webhook embeds)
+ $description: new Length(String, 0, 2048), // description of embed
+ $url: String, // url of embed
+ $timestamp: String, // ISO8601 timestamp
+ $color: Number, // color code of the embed
+ $footer: {
+ text: new Length(String, 0, 2048),
+ icon_url: String,
+ proxy_icon_url: String
+ }, // footer object footer information
+ $image: EmbedImage, // image object image information
+ $thumbnail: EmbedImage, // thumbnail object thumbnail information
+ $video: EmbedImage, // video object video information
+ $provider: {
+ name: String,
+ url: String
+ }, // provider object provider information
+ $author: {
+ name: new Length(String, 0, 256),
+ url: String,
+ icon_url: String,
+ proxy_icon_url: String
+ }, // author object author information
+ $fields: new Length(
+ [
+ {
+ name: new Length(String, 0, 256),
+ value: new Length(String, 0, 1024),
+ $inline: Boolean
+ }
+ ],
+ 0,
+ 25
+ )
+};
+
export const MessageCreateSchema = {
$content: new Length(String, 0, 2000),
$nonce: String,
$tts: Boolean,
$flags: String,
- $embed: {
- $title: new Length(String, 0, 256), //title of embed
- $type: String, // type of embed (always "rich" for webhook embeds)
- $description: new Length(String, 0, 2048), // description of embed
- $url: String, // url of embed
- $timestamp: String, // ISO8601 timestamp
- $color: Number, // color code of the embed
- $footer: {
- text: new Length(String, 0, 2048),
- icon_url: String,
- proxy_icon_url: String
- }, // footer object footer information
- $image: EmbedImage, // image object image information
- $thumbnail: EmbedImage, // thumbnail object thumbnail information
- $video: EmbedImage, // video object video information
- $provider: {
- name: String,
- url: String
- }, // provider object provider information
- $author: {
- name: new Length(String, 0, 256),
- url: String,
- icon_url: String,
- proxy_icon_url: String
- }, // author object author information
- $fields: new Length(
- [
- {
- name: new Length(String, 0, 256),
- value: new Length(String, 0, 1024),
- $inline: Boolean
- }
- ],
- 0,
- 25
- )
- },
+ $embed: embed,
+ // TODO: ^ embed is deprecated in favor of embeds (https://discord.com/developers/docs/resources/channel#message-object)
+ // $embeds: [embed],
$allowed_mentions: {
$parse: [String],
$roles: [String],
|