Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Send Email

Description

Sends an email notification.

Package Details

Interface

IEmailNotificationManager

Syntax

Task<bool> SendEmailNotification(EmailNotificationDTO dto, bool overrideEmailRecipientsSafeguard = false)

Returns

Task<bool>

API Endpoint

POST

/api/v1/notifications

Parameters:

  • dto: [EmailNotificationDTO] - Email notification dto.

...

Parameter

Description

Parameter Type

emailNotificationDTO

An object with email notification properties.

Request body

overrideEmailRecipientsSafeguard

Allow the email "IsEmailNotificationTestModeEnabled" setting to be ignored.

Query string

Sample request body

Code Block
languagejson
{
  "NotificationTemplateName": "string",
  "ServiceRequestId": 0,
  "UserId": 0,
  "UserName": "string",
  "Language": "string",
  "From": "string",
  "To": "string",
  "IsHtml": true,
  "Attachements": [
    {
      "Name": "string",
      "Type": "string",
      "Sream": {
        "__identity": {}
      },
      "AttachmentBytes": "string"
    }
  ],
  "Parameters": [
    {
      "key": "string",
      "value": "string"
    }
  ]
}

...

Return

...

HTTP 200 OK if successful, 401 if unauthorized, 400 otherwise..

400 Bad Request - If it failed.

Example

Code Block
languagec#
const int serviceRequestId = 41;
const string testString = "04/01/2010 00:00,1.4314,1.4316";
var encoding = new UTF8Encoding();
var testArray = encoding.GetBytes(testString);

//Create Attachment
var attach = new EmailAttachmentDTO
{
    Name = $"366125_{serviceRequestId.ToString()}.pdf",
    Type = ".pdf",
    Sream = new MemoryStream(testArray),
    AttachmentBytes = testArray
 };
 var attachments = new List<EmailAttachmentDTO> { attach };

// add you key pair values.
 var parameters = new List<KeyValuePair<string, string>>()
 {
     new KeyValuePair<string, string>("LICENCE-NUMBER",  "366125"),
     new KeyValuePair<string, string>("REFERENCE-ID", serviceRequestId.ToString()),
     new KeyValuePair<string, string>("MONITOR-NAME", "John Smith"),
     new KeyValuePair<string, string>("MONITOR-DATE", "2018-12-31"),
     new KeyValuePair<string, string>("REGION-EMAIL-ADDRESS", "AFCEMTOASystem-SystemeMTOAAFCE@tc.gc.ca"),
     new KeyValuePair<string, string>("COMMENT", "This is my comment")
 };
 var emailNotification = new EmailNotificationDTO
 {
     ServiceRequestId = serviceRequestId,
     To = "noreply@tc.gc.ca",
     From = "noreply@tc.gc.ca",
     UserId = 2757,
     UserName = "MTOA_USER",
     Language = "english",
     Attachements = attachments,
     NotificationTemplateName = "your template name",
     Parameters = parameters,
     IsHtml = true
};

var notification = await emailNotificationManager.SendEmailNotification(emailNotification);