summary refs log tree commit diff
diff options
context:
space:
mode:
authorMadeline <46743919+MaddyUnderStars@users.noreply.github.com>2023-02-26 14:20:01 +1100
committerMadeline <46743919+MaddyUnderStars@users.noreply.github.com>2023-02-26 14:20:01 +1100
commit358494b84404fb08c6ae1f0f5a9036a9af341259 (patch)
tree450a857cdf106a1ca1d200bc023ead7d9613668d
parentRename password_reset config to passwordReset as it messes with config key ge... (diff)
downloadserver-358494b84404fb08c6ae1f0f5a9036a9af341259.tar.xz
Generate openapi
-rw-r--r--assets/openapi.json259
1 files changed, 254 insertions, 5 deletions
diff --git a/assets/openapi.json b/assets/openapi.json
index 7cb270b1..92847d12 100644
--- a/assets/openapi.json
+++ b/assets/openapi.json
@@ -1402,7 +1402,9 @@
                     },
                     "members": {
                         "type": "array",
-                        "items": {}
+                        "items": {
+                            "type": "string"
+                        }
                     },
                     "thread_member_lists": {
                         "type": "array",
@@ -1562,6 +1564,8 @@
                         "type": "string"
                     },
                     "discriminator": {
+                        "minLength": 4,
+                        "maxLength": 4,
                         "type": "string"
                     }
                 }
@@ -1739,9 +1743,6 @@
             "UserSettingsSchema": {
                 "type": "object",
                 "properties": {
-                    "index": {
-                        "type": "string"
-                    },
                     "afk_timeout": {
                         "type": "integer"
                     },
@@ -2473,6 +2474,195 @@
                     "code",
                     "ticket"
                 ]
+            },
+            "SMTPConnection.CustomAuthenticationResponse": {
+                "type": "object",
+                "properties": {
+                    "command": {
+                        "type": "string"
+                    },
+                    "response": {
+                        "type": "string"
+                    },
+                    "status": {
+                        "type": "integer"
+                    },
+                    "text": {
+                        "type": "string"
+                    },
+                    "code": {
+                        "type": "integer"
+                    }
+                },
+                "required": [
+                    "command",
+                    "response",
+                    "status",
+                    "text"
+                ]
+            },
+            "ForgotPasswordSchema": {
+                "type": "object",
+                "properties": {
+                    "login": {
+                        "type": "string"
+                    },
+                    "captcha_key": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "login"
+                ]
+            },
+            "MessageEditSchema": {
+                "type": "object",
+                "properties": {
+                    "file": {
+                        "type": "object",
+                        "properties": {
+                            "filename": {
+                                "type": "string"
+                            }
+                        },
+                        "additionalProperties": false,
+                        "required": [
+                            "filename"
+                        ]
+                    },
+                    "embed": {
+                        "$ref": "#/components/schemas/Embed"
+                    },
+                    "flags": {
+                        "type": "string"
+                    },
+                    "content": {
+                        "type": "string"
+                    },
+                    "nonce": {
+                        "type": "string"
+                    },
+                    "channel_id": {
+                        "type": "string"
+                    },
+                    "tts": {
+                        "type": "boolean"
+                    },
+                    "embeds": {
+                        "type": "array",
+                        "items": {
+                            "$ref": "#/components/schemas/Embed"
+                        }
+                    },
+                    "allowed_mentions": {
+                        "type": "object",
+                        "properties": {
+                            "parse": {
+                                "type": "array",
+                                "items": {
+                                    "type": "string"
+                                }
+                            },
+                            "roles": {
+                                "type": "array",
+                                "items": {
+                                    "type": "string"
+                                }
+                            },
+                            "users": {
+                                "type": "array",
+                                "items": {
+                                    "type": "string"
+                                }
+                            },
+                            "replied_user": {
+                                "type": "boolean"
+                            }
+                        },
+                        "additionalProperties": false
+                    },
+                    "message_reference": {
+                        "type": "object",
+                        "properties": {
+                            "message_id": {
+                                "type": "string"
+                            },
+                            "channel_id": {
+                                "type": "string"
+                            },
+                            "guild_id": {
+                                "type": "string"
+                            },
+                            "fail_if_not_exists": {
+                                "type": "boolean"
+                            }
+                        },
+                        "additionalProperties": false,
+                        "required": [
+                            "channel_id",
+                            "message_id"
+                        ]
+                    },
+                    "payload_json": {
+                        "type": "string"
+                    },
+                    "attachments": {
+                        "description": "TODO: we should create an interface for attachments\nTODO: OpenWAAO<-->attachment-style metadata conversion",
+                        "type": "array",
+                        "items": {
+                            "type": "object",
+                            "properties": {
+                                "id": {
+                                    "type": "string"
+                                },
+                                "filename": {
+                                    "type": "string"
+                                }
+                            },
+                            "additionalProperties": false,
+                            "required": [
+                                "filename",
+                                "id"
+                            ]
+                        }
+                    },
+                    "sticker_ids": {
+                        "type": "array",
+                        "items": {
+                            "type": "string"
+                        }
+                    }
+                }
+            },
+            "PasswordResetSchema": {
+                "type": "object",
+                "properties": {
+                    "password": {
+                        "type": "string"
+                    },
+                    "token": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "password",
+                    "token"
+                ]
+            },
+            "VerifyEmailSchema": {
+                "type": "object",
+                "properties": {
+                    "captcha_key": {
+                        "type": "string",
+                        "nullable": true
+                    },
+                    "token": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "token"
+                ]
             }
         }
     },
@@ -6301,7 +6491,7 @@
                     "content": {
                         "application/json": {
                             "schema": {
-                                "$ref": "#/components/schemas/MessageCreateSchema"
+                                "$ref": "#/components/schemas/MessageEditSchema"
                             }
                         }
                     }
@@ -7137,6 +7327,65 @@
                     "auth"
                 ]
             }
+        },
+        "/auth/verify/resend/": {
+            "post": {
+                "x-right-required": "RESEND_VERIFICATION_EMAIL",
+                "tags": [
+                    "auth"
+                ]
+            }
+        },
+        "/auth/verify/": {
+            "post": {
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/VerifyEmailSchema"
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "auth"
+                ]
+            }
+        },
+        "/auth/reset/": {
+            "post": {
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/PasswordResetSchema"
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "auth"
+                ]
+            }
+        },
+        "/auth/forgot/": {
+            "post": {
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/ForgotPasswordSchema"
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "auth"
+                ]
+            }
         }
     }
 }
\ No newline at end of file