public async Task SendAccountActivationEmailAsync(User user, string token)
        {
            var client = new MailjetClient(_apiKey, _apiSecret)
            {
                Version = ApiVersion.V3_1,
            };
            var request = new MailjetRequest
            {
                Resource = Send.Resource,
            }
            .Property(Send.Messages, new JArray {
                new JObject {
                    { "From", new JObject {
                          { "Email", _senderEmailAddress },
                          { "Name", "Asi9 Solutions Support" }
                      } },
                    { "To", new JArray {
                          new JObject {
                              { "Email", user.UserName },
                              { "Name", "You" }
                          }
                      } },
                    { "Subject", "Welcome to Asi9 Solutions" },
                    { "TextPart", "Greetings from Asi9 Solutions!" },
                    { "HTMLPart", $"<div>Hi {user.FirstName} {user.LastName},</div><br /><div>Thank you for joining Asi9 Solutions. Please verify your email address.  " +
                      $"<div><a href=\"{_clientBaseUrl}/activation/{token}\"> Activate Account </a></div>" +
                      "<br /><br /><div><br />Asi9 Solutions Support</div>" }
                }
            });

            await client.PostAsync(request);
        }
        public async Task SendConfirmationEmailAsync(User user)
        {
            var client = new MailjetClient(_apiKey, _apiSecret)
            {
                Version = ApiVersion.V3_1,
            };
            var request = new MailjetRequest
            {
                Resource = Send.Resource,
            }
            .Property(Send.Messages, new JArray {
                new JObject {
                    { "From", new JObject {
                          { "Email", _senderEmailAddress },
                          { "Name", "Asi9 Solutions Support" }
                      } },
                    { "To", new JArray {
                          new JObject {
                              { "Email", user.UserName },
                              { "Name", "You" }
                          }
                      } },
                    { "Subject", "Welcome to Asi9 Solutions!" },
                    { "TextPart", "Greetings from Asi9 Solutions!" },
                    { "HTMLPart", $"<div>Dear {user.FirstName} {user.LastName},</div><br /><div>Thank you for signing up for Asi9 Solutions Dashboard!" +
                      " You can now monitor your devices remotely and view experiment data as well as incident reports all from Asi9 Solutions Dashboard. " +
                      " Click the following link to start your experience with Asi9 Solutions! </div>" +
                      $"<div><a href=\"{_clientBaseUrl}\"> Asi9 Solutions </a></div>" +
                      "<br /><br /><div><br />Asi9 Solutions Support</div>" }
                }
            });

            await client.PostAsync(request);
        }
        public async Task SendPasswordResetEmailAsync(User user, string token)
        {
            var client = new MailjetClient(_apiKey, _apiSecret)
            {
                Version = ApiVersion.V3_1,
            };
            var request = new MailjetRequest
            {
                Resource = Send.Resource,
            }
            .Property(Send.Messages, new JArray {
                new JObject {
                    { "From", new JObject {
                          { "Email", _senderEmailAddress },
                          { "Name", "Asi9 Solutions Support" }
                      } },
                    { "To", new JArray {
                          new JObject {
                              { "Email", user.UserName },
                              { "Name", "You" }
                          }
                      } },
                    { "Subject", "Password Reset" },
                    { "TextPart", "Greetings from Asi9 Solutions!" },
                    { "HTMLPart", $"<div>Hi {user.FirstName} {user.LastName},</div><br /><div>To reset your password, click the link below. " +
                      " If you did not request your password to be reset, just ignore this email and your password will continue to stay the same. </div>" +
                      $"<div><a href=\"{_clientBaseUrl}/passwordreset/{token}\"> Password Reset </a></div>" +
                      "<br /><br /><div><br />Asi9 Solutions Support</div>" }
                }
            });

            await client.PostAsync(request);
        }