Send An Email Notification Using Office 365 Outlook Connector In PowerApps

Introduction

 
This article is a follow-up to my previous articles listed below. If you wish to first understand the basic connectors (Mail and Outlook.com) used in PowerApps you can refer to the below articles first and come back here for the Office365Outlook connector and its relevant out-of-the-box actions.

Office365Outlook connector is a cloud-based service that is designed to help build reliable applications according to your business requirements.
 
In this article, you will see Office365Outlook connector actions available out of the box in Power Apps as well the deprecated actions which will be eventually removed. 
The throttling limit remains the same as the Outlook.com connector that is 300 API calls per connection and renewed after 60seconds.
 
List of available actions (excluding deprecated actions) Table 1,
 
Action in Power Apps Operation ID
 Create contact (V2)  ContactPostItem_V2
 Create event (V4)  V4CalendarPostItem
 Delete contact (V2)  ContactDeleteItem_V2
 Delete email (V2)  DeleteEmail_V2
 Delete event (V2)  CalendarDeleteItem_V2
 Export email (V2)  ExportEmailV2
 Find meeting times (V2)  FindMeetingTimesV2
 Flag email (V2)  FlagV2
 Forward an email (V2)  ForwardEmail_V2
 Get Attachment (V2)  GetAttachmentV2
 Get calendar view of events (V3)  GetEventsCalendarViewV3
 Get calendars (V2)  CalendarGetTablesV2
 Get contact (V2)  ContactGetItemV2
 Get contact folders (V2)  ContactGetTablesV2
 Get contacts (V2)  ContactGetItemsV2
 Get email (V2)  GetEmailV2
 Get emails (V3)  GetEmailsV3
 Get event (V3)  V3CalendarGetItem
 Get events (V4)  V4CalendarGetItems
 Get mail tips for a mailbox (V2)  GetMailTipsV2
 Get room lists (V2)  GetRoomLists_V2
 Get rooms (V2)  GetRooms_V2
 Get rooms in room list (V2)  GetRoomsInRoomList_V2
 Mark as read or unread (V3)  MarkAsRead_V3
 Move email (V2)  MoveV2
 Reply to email (V3)  ReplyToV3
 Respond to an event invite (V2)  RespondToEvent_V2
 Send an email (V2)  SendEmailV2
 Send an email from a shared mailbox (V2)  SharedMailboxSendEmailV2
 Send approval email  SendApprovalMail
 Send email with options  SendMailWithOptions
 Set up automatic replies (V2)  SetAutomaticRepliesSetting_V2
 Update contact (V2)  ContactPatchItem_V2
 Update event (V4)  V4CalendarPatchItem
 Update my contact's photo  UpdateMyContactPhoto
 
Syntax of each action listed in Table 1 
 
ContactPostItem_V2 
  1. ContactPostItem_V2(  
  2.  folder,  
  3.  givenName,  
  4.  headPhones,  
  5.     {  
  6.     id:Text,  
  7.     parentFolderId:Text,  
  8.     birthday:DateTime,  
  9.     fileAs:Text,  
  10.     displayName:Text,  
  11.     initials:Text,  
  12.     middleName:Text,  
  13.     nickName:Text,  
  14.     surname:Text,  
  15.     title:Text,  
  16.     generation:Text,  
  17.     emailAddresses:Table,  
  18.     imAddresses:Table,  
  19.     jobTitle:Text,  
  20.     companyName:Text,  
  21.     department:Text,  
  22.     officeLocation:Text,  
  23.     profession:Text,  
  24.     businessHomePage:Text,  
  25.     assistantName:Text,  
  26.     manager:Text,  
  27.     businessPhones:Table,  
  28.     mobilePhone:Text,  
  29.     homeAddress:Record,  
  30.     businessAddress:Record,  
  31.     otherAddress:Record,  
  32.     yomiComanyName:Text,  
  33.     yomiGivenName:Text,  
  34.     yomiSurname:Text,  
  35.     categories:Table,  
  36.     cangeKey:Text,  
  37.     createdDateTime:DateTime,  
  38.     lastModifiedDateTime:DateTime  
  39.     }  
  40. )  
V4CalendarPostItem
  1. V4CalendarPostItem(  
  2.  table,  
  3.  subject,  
  4.  start,  
  5.  end,  
  6.  timeZone,     
  7.     {  
  8.     requiredAttendees:Text,  
  9.     optionalAttendees:Text,  
  10.     resourceAttendees:Text,  
  11.     body:Text,  
  12.     location:Text,  
  13.     importance:Text,  
  14.     isAllDay:Boolean,  
  15.     recurrence:Text,  
  16.     recurrenceEnd:Text,  
  17.     numberOfOccurences:Number,  
  18.     reminderMinutesBeforeStart:Number,  
  19.     isReminderOn:Boolean,  
  20.     showAs:Text,  
  21.     responseRequested:Boolean,  
  22.     sensitivity:Text  
  23.     }  
  24. )  
ContactDeleteItem_V2
  1. ContactDeleteItem_V2(  
  2.  folder,  
  3.  id  
  4. )  
DeleteEmail_V2
  1. DeleteEmail_V2(  
  2.  messageId,  
  3.     {  
  4.     mailboxAddress:Text  
  5.     }  
  6. )  
CalendarDeleteItem_V2
  1. CalendarDeleteItem_V2(  
  2.  calendar,  
  3.  event  
  4. )  
ExportEmailV2
  1. ExportEmail_V2(  
  2.  messageId,  
  3.     {  
  4.     mailboxAddress:Text  
  5.     }  
  6. )  
FindMeetingTimesV2
  1. FindMeetingTimesV2(  
  2.     {  
  3.     RequiredAttendees:Text,  
  4.     OptionalAttendees:Text,  
  5.     ResourceAttendees:Text,  
  6.     MeetingDuration:Number,  
  7.     Start:DateTime,  
  8.     End:DateTime,  
  9.     MaxCandidates:Number,  
  10.     MinimumAttendeePercentage:Text,  
  11.     isOrganizerOptional:Boolean,  
  12.     ActivityDomain:Text       
  13.     }  
  14. )  
FlagV2
  1. FlagV2(  
  2.  messageId,  
  3.     {  
  4.     mailboxAddress:Text,  
  5.     flag:Record  
  6.     }  
  7. )  
ForwardEmailV2
  1. ForwardEmailV2(  
  2.  message_id,  
  3.  ToRecipients,  
  4.     {  
  5.     mailboxAddress:Text,  
  6.     Comment:Text  
  7.     }  
  8. )  
GetAttachmentV2
  1. GetAttachmentV2(  
  2.  messageId,  
  3.  attachmentId,  
  4.     {  
  5.     mailboxAddress:Text  
  6.     }  
  7. )  
GetEventsCalendarViewV3
  1. GetEventsCalendarViewV3(  
  2.  calendarId,  
  3.  startDateTimeUtc,  
  4.  endDateTimeUtc,  
  5.     {  
  6.     '$filter':Text,  
  7.     '$orderby':Text,  
  8.     '$top':Number,  
  9.     '$skip':Number,  
  10.     search:Text  
  11.     }  
  12. )  
CalendarGetTablesV2
  1. CalendarGetTablesV2(  
  2.     {  
  3.     skip:Number,  
  4.     top:Number,  
  5.     orderBy:Text  
  6.     }  
  7. )  
ContactGetItemV2
  1. ContactGetItemV2(  
  2.  folder,  
  3.  id  
  4. )  
ContactGetTablesV2
  1. ContactGetTablesV2()  
ContactGetItemV2
  1. ContactGetItemV2(  
  2.  folder,  
  3.  id  
  4. )  
ContactGetTablesV2
  1. ContactGetTablesV2()  
ContactGetItemsV2
  1. ContactGetItemsV2(  
  2.  folder,  
  3.     {  
  4.     '$filter':Text,  
  5.     '$orderby':Text,  
  6.     '$top':Number,  
  7.     '$skip':Number,  
  8.     }  
  9. )  
 GetEmailV2
  1. GetEmailV2(  
  2.  messageId,  
  3.     {  
  4.     mailboxAddress:Text,  
  5.     includeAttachments:Boolean  
  6.     }  
  7. )  
 GetEmailsV3
  1. GetEmailsV3(  
  2.     {  
  3.     folderPath:Text,  
  4.     to:Text,  
  5.     cc:Text,  
  6.     toOrCc:Text,  
  7.     from:Text,  
  8.     importance:Text,  
  9.     fetchOnlyWithAttachments:Boolean,  
  10.     subjectFilter:Text,  
  11.     fetchOnlyUnread:Boolean,  
  12.     fetchOnlyFlagged:Boolean,  
  13.     mailboxAddress:Text,  
  14.     includeAttachments:Boolean,  
  15.     searchQuery:Text,  
  16.     top:Number  
  17.     }  
  18. )  
V3CalendarGetItem
  1. V3CalendarGetItem(  
  2.  table,  
  3.  id  
  4. )  
V4CalendarGetItems
  1. V4CalendarGetItems(  
  2.  table,  
  3.     {  
  4.     '$filter':Text,  
  5.     '$orderby':Text,  
  6.     '$top':Number,  
  7.     '$skip':Number,  
  8.     }  
  9. )  
GetMailTipsV2
  1. GetMailTipsV2(  
  2.  MailTipsOptions,  
  3.  EmailAddresses  
  4. )  
GetRoomListsV2 
  1. GetRoomListsV2()  
GetRoomsV2 
  1. GetRoomsV2  
GetRoomsInRoomListV2
  1. GetRoomsInRoomListV2(  
  2.  room_list  
  3. )  
MarkAsReadV3
  1. MarkAsReadV3(  
  2.  messageId,  
  3.  isRead,  
  4.     {  
  5.     mailboxAddress:Text  
  6.     }  
  7. )  
MoveV2
  1. MoveV2(  
  2.  messageId,  
  3.  folderPath,  
  4.     {  
  5.     mailboxAddress:Text  
  6.     }  
  7. )  
ReplyToV3
  1. ReplyToV3(  
  2.  messageId,  
  3.     {  
  4.     mailboxAddress:Text,  
  5.     To:Text,  
  6.     Cc:Text,  
  7.     Bcc:Text,  
  8.     Subject:Text,  
  9.     Body:Text,  
  10.     ReplyAll:Boolean,  
  11.     Importance:Text,  
  12.     Attachments:Table  
  13.     }  
  14. )  
RespondToEventV2
  1. RespondToEventV2(  
  2.  event_id,  
  3.  response,  
  4.     {  
  5.     Comment:Text,  
  6.     SendResponse:Boolean  
  7.     }  
  8. )  
SendEmailV2 
  1. SendEmailV2(    
  2.  To,    
  3.  Subject,    
  4.  Body,    
  5.     {    
  6.     From:Text,    
  7.     Cc:Text,    
  8.     Bcc:Text,    
  9.     Attachments:Table,    
  10.     ReplyTo:Text,    
  11.     Importance:Text    
  12.     }    
  13. )   
SharedMailboxSendEmailV2
  1. SharedMailboxSendEmailV2(  
  2.  MailboxAddress,  
  3.  To,    
  4.  Subject,    
  5.  Body,    
  6.     {    
  7.     Cc:Text,    
  8.     Bcc:Text,    
  9.     Attachments:Table,    
  10.     ReplyTo:Text,    
  11.     Importance:Text    
  12.     }    
  13. )  
SendApprovalMail
  1. SendApprovalMail(    
  2.  NotificationUrl,    
  3.  Message    
  4. )   
SendMailWithOptions
  1. SendMailWithOptions(    
  2.  NotificationUrl,    
  3.  Message    
  4. )    
SetAutomaticRepliesSettingV2
  1. SetAutomaticRepliesSettingV2(  
  2.     {  
  3.     automaticRepliesSetting:Record  
  4.     }  
  5. )  
ContactPatchItemV2
  1. ContactPatchItemV2(  
  2.  folder,  
  3.  id,  
  4.  givenName,  
  5.  headPhones,  
  6.     {  
  7.     id:Text,  
  8.     parentFolderId:Text,  
  9.     birthday:DateTime,  
  10.     fileAs:Text,  
  11.     displayName:Text,  
  12.     initials:Text,  
  13.     middleName:Text,  
  14.     nickName:Text,  
  15.     surname:Text,  
  16.     title:Text,  
  17.     generation:Text,  
  18.     emailAddresses:Table,  
  19.     imAddresses:Table,  
  20.     jobTitle:Text,  
  21.     companyName:Text,  
  22.     department:Text,  
  23.     officeLocation:Text,  
  24.     profession:Text,  
  25.     businessHomePage:Text,  
  26.     assistantName:Text,  
  27.     manager:Text,  
  28.     businessPhones:Table,  
  29.     mobilePhone:Text,  
  30.     homeAddress:Record,  
  31.     businessAddress:Record,  
  32.     otherAddress:Record,  
  33.     yomiComanyName:Text,  
  34.     yomiGivenName:Text,  
  35.     yomiSurname:Text,  
  36.     categories:Table,  
  37.     cangeKey:Text,  
  38.     createdDateTime:DateTime,  
  39.     lastModifiedDateTime:DateTime  
  40.     }  
  41. )  
V4CalendarPatchItem
  1. V4CalendarPatchItem(    
  2.  table,    
  3.  id,    
  4.  subject,    
  5.  start,    
  6.  end,    
  7.  timeZone,       
  8.     {    
  9.     requiredAttendees:Text,    
  10.     optionalAttendees:Text,    
  11.     resourceAttendees:Text,    
  12.     body:Text,    
  13.     location:Text,    
  14.     importance:Text,    
  15.     isAllDay:Boolean,    
  16.     recurrence:Text,    
  17.     recurrenceEnd:Text,    
  18.     numberOfOccurences:Number,    
  19.     reminderMinutesBeforeStart:Number,    
  20.     isReminderOn:Boolean,    
  21.     showAs:Text,    
  22.     responseRequested:Boolean,    
  23.     sensitivity:Text    
  24.     }    
  25. )    
UpdateMyContactPhoto
  1. UpdateMyContactPhoto(  
  2.  folder,  
  3.  id,  
  4.  file  
  5.     {  
  6.     'Content-Type':Text  
  7.     }  
  8. )  
List of deprecated actions
 
Action in Power Apps Operation ID
 Create contact  ContactPostItem
 Create event (V1)  CalendarPostItem
 Create event (V2)  V2CalendarPostItem
 Create event (V3)  V3CalendarPostItem
 Delete contact  ContactDeleteItem
 Delete email  DeleteEmail
 Delete event  CalendarDeleteItem
 Export email  ExportEmail
 Find meeting times  FindMeetingTimes
 Flag email  Flag
 Forward an email  ForwardEmail
 Get attachment  GetAttachment
 Get calendar view of events (V2)  GetEventsCalendarViewV2
 Get calendar view of events  GetEventsCalendarView
 Get calendars  CalendarGetTables
 Get contact  ContactGetItem
 Get contact folders  ContactGetTables
 Get contacts  ContactGetItems
 Get email  GetEmail
 Get emails (V2)  GetEmailsV2
 Get emails  GetEmails
 Get event (V1)  CalendarGetItem
 Get event (V2)  V2CalendarGetItem
 Get events (V1)  CalendarGetItems
 Get events (V2)  V2CalendarGetItems
 Get events (V3)  V3CalendarGetItems
 Get mail tips for a mailbox  GetMailTips
 Get room lists  GetRoomLists
 Get rooms  GetRooms
 Get rooms in room list  GetRoomsInRoomList
 Mark as read  MarkAsRead
 Mark as read or unread (V2)  MarkAsRead_V2
 Move email  Move
 Reply to email (V2)  ReplyToV2
 Reply to email  ReplyTo
 Respond to an event invite  RespondToEvent
 Send an email  SendEmail
 Send an email from a shared mailbox  SharedMailboxSendEmail
 Set up automatic replies  SetAutomaticRepliesSetting
 Update contact  ContactPatchItem
 Update event (V1)  CalendarPatchItem
 Update event (V2)  V2CalendarPatchItem
 Update event (V3)  V3CalendarPatchItem
 

Summary

 
In this article, we have seen the Office365Outlook connector in PowerApps, the actions used to perform various activities in Office 365 Outlook calendar events and emails. We have also seen the list of available actions and a list of deprecated actions. This article mainly provides you with a quick look at the syntax of each available action and gives you a clear understanding of what you can do with that action.
 
Reference
  • https://docs.microsoft.com/en-us/connectors/office365/
  • https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/connections/connection-office365-outlook