From dec8890190ff0b86f1a50044814701ef39b808e6 Mon Sep 17 00:00:00 2001 From: William Carroll Date: Thu, 30 Jul 2020 18:38:46 +0100 Subject: Verify users' email addresses when they attempt to sign-up Lots of changes here: - Add the GET /verify endpoint - Email users a secret using MailGun - Create a PendingAccounts table and record type - Prefer do-notation for FromRow instances (and in general) instead of the <*> or a liftA2 style. Using instances using `<*>` makes the instances depend on the order in which the record's fields were defined. When combined with a "SELECT *", which returns the columns in whichever order the schema defines them (or depending on the DB implementation), produces runtime parse errors at best and silent errors at worst. - Delete bill from accounts.csv to free up the wpcarro@gmail.com when testing the /verify route. --- src/API.hs | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/API.hs') diff --git a/src/API.hs b/src/API.hs index 01f7b7b750ce..0ae3112ae84c 100644 --- a/src/API.hs +++ b/src/API.hs @@ -18,6 +18,10 @@ type API = "accounts" :> ReqBody '[JSON] T.CreateAccountRequest :> Post '[JSON] NoContent + :<|> "verify" + :> QueryParam' '[Required] "username" Text + :> QueryParam' '[Required] "secret" Text + :> Get '[JSON] NoContent -- accounts: Read -- accounts: Update -- accounts: Delete -- cgit 1.4.1