Microsoft 365
Connect Microsoft 365 to the rest of your business: accounts, files, mail and calendars kept in step.
56 ways to read, 25 ways to write, each write switched on by you.
Quality checks
Built and tested with example responses.
- Ready to connect: doneEvery listed action is built in.
- Built and tested with example responses: doneEach action is built from the provider’s published API and tested against example responses, errors, rate limits and paging.
Connected, approved, proven.
The things teams do most with Microsoft 365, an example flow with a person in the loop, and what Nexra keeps as proof.
Top actions
- Reply to channel messageApproval by rule
- Post channel messageApproval by rule
- List calendarsRead
Example flow
- SeamlessHR · Read jobsDone
- Microsoft 365 · Create mail draftNeeds approval
- Nexra · Record the decision and result in the evidence chainProven
Example workflow. Routine runs go through on their own. Only a change your rules flag, such as one over a limit you set, waits for the right person, who sees the exact change and the rule before it reaches Microsoft 365.
What gets logged
- Whether it ran on its own or who approved it, and under which rule
- A fingerprint of the exact request sent to Microsoft 365
- Microsoft 365's reply: what it created or changed
- One entry in the evidence chain, linked to the one before
Try this in the sandbox
Run the whole flow with test data in your sandbox, then connect a Microsoft test account before you go live.
For developers
Technical detail
Microsoft Graph for Teams, Outlook mail and calendar, Planner, To Do, OneDrive, SharePoint sites and lists, contacts, users and groups, with delta sync.
Microsoft API docs- Source actions
- 56
- Destination actions
- 25
- Data types
- 47
What you can map
Reads are always available. Writes are off until you switch them on for a connection, and governed writes follow your policies.
Calendars1
- List calendarsSource
Calendars of the user.
Channel message changes1
- Sync channel messages (delta)SourceIncremental
Root channel messages created or changed since the last sync (messages/delta); replies are not included.
Channel message replies2
- List message repliesSource
Replies to a channel message.
- Reply to channel messageDestinationNot retried automaticallyApproval before production
Posts a reply in a channel message thread.
Channel messages3
- Get channel messageSource
One root message of a channel.
- List channel messagesSource
Root messages of a channel (without replies).
- Post channel messageDestinationNot retried automaticallyApproval before production
Posts a new message to a Teams channel as the user.
Channels2
- Get channelSource
One channel of a team.
- List channelsSource
Channels of a team.
Chat messages2
- List chat messagesSource
Messages in a chat, newest first.
- Send chat messageDestinationNot retried automaticallyApproval before production
Sends a message in an existing chat as the user.
Chats1
- List chatsSource
One-on-one, group and meeting chats of the user.
Contacts3
- Create Outlook contactDestinationNot retried automaticallyApproval before production
Creates a personal contact.
- List Outlook contactsSource
Personal contacts of the user.
- Update Outlook contactDestinationProvider duplicate protectionApproval before production
Updates a personal contact.
Drive item changes1
- Sync drive items (delta)SourceIncremental
Files and folders added, changed or removed anywhere in a drive since the last sync (root/delta); metadata only.
Drive item content1
- Download a fileSource
Copies a OneDrive or SharePoint file into Nexra (for example to read its text and tables). Returns a Nexra file reference, never the bytes or a download link.
Drive item large uploads1
- Save a large file (upload session)DestinationNot retried automaticallyApproval before production
Saves a file Nexra holds into a OneDrive or SharePoint folder with a resumable upload session, for files of any size up to 2 GiB. If a file with that name exists, the save is refused unless you choose to rename or replace.
Drive item uploads1
- Save a file (up to 4 MiB)DestinationProvider duplicate protectionApproval before production
Saves a file Nexra holds (for example a workbook a flow made) into a OneDrive or SharePoint folder. If a file with that name exists, the save is refused unless you choose to replace it.
Drive items3
- Get file or folder metadataSource
Metadata of one drive item.
- List folder contentsSource
Children of a folder (root by default) in a drive; metadata only.
- Search filesSource
Files and folders in a drive matching text in name, metadata or content.
Drives2
- Get driveSource
One drive (OneDrive or document library) with owner and quota.
- List drivesSource
The user's OneDrive drives, or document libraries of a SharePoint site.
Event changes1
- Sync events in range (delta)SourceIncremental
Calendar-view events added, changed or removed in a time window since the last sync (calendarView/delta).
Events4
- Create eventDestinationProvider duplicate protectionApproval before production
Creates an event; attendees receive invitations.
- Get eventSource
One event.
- List events in rangeSource
Calendar view between two times, with recurring occurrences expanded.
- Update eventDestinationProvider duplicate protectionApproval before production
Updates an event; attendee changes send updates.
Excel table rows1
- Add rows to an Excel tableDestinationNot retried automaticallyApproval before production
Adds rows to the end of a table in an Excel workbook in OneDrive or SharePoint, in one call. Text that Excel would run as a formula is saved as text.
Group changes1
- Sync groups (delta)SourceIncremental
Groups changed since the last sync (groups/delta).
Group members1
- List group membersSource
Users that are direct members of a group.
Groups2
- Get groupSource
One Microsoft 365 or security group by ID.
- List Microsoft 365 groupsSource
Unified groups, which own Planner plans, Teams and SharePoint sites.
List columns1
- List SharePoint list columnsSource
Column definitions of a list (internal name, type, required).
List item changes1
- Sync SharePoint list items (delta)SourceIncremental
List items added, changed or removed since the last sync (items/delta).
List items4
- Create SharePoint list itemDestinationNot retried automaticallyApproval before production
Creates an item with column values keyed by internal column name.
- Get SharePoint list itemSource
One list item with its column values.
- List SharePoint list itemsSource
Items of a list with their column values.
- Update SharePoint list itemDestinationProvider duplicate protectionApproval before production
Updates column values of an item.
Mail attachment content1
- Download a message attachmentSource
Copies the contents of one email attachment into Nexra (for example a PDF letter to read). Returns a Nexra file reference, never the bytes.
Mail attachments1
- List message attachmentsSource
Attachment metadata of a message (name, type, size); contents are not read.
Mail child folders1
- List mail subfoldersSource
Child folders of a mail folder.
Mail folders1
- List mail foldersSource
Top-level mail folders with item counts.
Mail message changes1
- Sync folder messages (delta)SourceIncremental
Messages added, changed or removed in one mail folder since the last sync (messages/delta).
Mail messages5
- Create mail draftDestinationNot retried automaticallyApproval before production
Creates a draft in Drafts; send it with Send mail draft.
- Get mail messageSource
One message including its body.
- List mail messagesSourceIncremental
Messages in the mailbox or a folder, newest first, optionally received since a time.
- Send mail draftDestinationNot retried automaticallyApproval before production
Sends an existing draft message.
- Update mail messageDestinationProvider duplicate protectionApproval before production
Marks a message read or unread, sets categories or the follow-up flag.
Mail replies1
- Reply to mail messageDestinationNot retried automaticallyApproval before production
Replies to the sender (or all recipients) with a comment.
Mail reply drafts1
- Create reply draftDestinationNot retried automaticallyApproval before production
Creates a draft reply (or reply-all) to a message in Drafts without sending it (createReply / createReplyAll).
Me1
- Get signed-in userSource
Profile of the user the connection acts as.
My planner tasks1
- List my Planner tasksSource
Planner tasks assigned to the signed-in user across plans.
Planner bucket tasks1
- List bucket tasksSource
Tasks in one Planner bucket.
Planner buckets2
- Create Planner bucketDestinationNot retried automaticallyApproval before production
Adds a bucket to a plan.
- List Planner bucketsSource
Buckets (columns) of a plan.
Planner plans3
- Create Planner planDestinationNot retried automaticallyApproval before production
Creates a plan in a Microsoft 365 group.
- Get Planner planSource
One plan by ID.
- List Planner plansSource
Plans owned by a Microsoft 365 group.
Planner task details2
- Get Planner task detailsSource
Description, checklist and references of a task.
- Update Planner task detailsDestinationProvider duplicate protectionApproval before production
Sets the description and adds or ticks checklist items; requires the details ETag.
Planner tasks4
- Create Planner taskDestinationNot retried automaticallyApproval before production
Creates a task in a plan, optionally in a bucket and assigned to users.
- Get Planner taskSource
One task with its current ETag.
- List Planner tasksSource
Tasks in a plan with assignments, progress and dates.
- Update Planner taskDestinationProvider duplicate protectionApproval before production
Updates a task; requires the ETag from the last read (If-Match).
Sign ins1
- List sign-in activitySource
Successful interactive sign-ins to Microsoft 365 for one day (today by default) or a time range, optionally for one person. Needs AuditLog.Read.All and Microsoft Entra ID P1 or P2.
Site lists1
- List SharePoint listsSource
Lists and libraries of a site.
Sites2
- Get SharePoint siteSource
One site by its composite ID (hostname,siteCollectionId,webId).
- Search SharePoint sitesSource
Sites matching a keyword.
Team members1
- List team membersSource
Members and owners of a team with their roles.
Teams2
- Get teamSource
One team's settings, visibility and archive state.
- List joined teamsSource
Teams the user is a member of.
Todo lists1
- List To Do listsSource
Microsoft To Do task lists of the user.
Todo tasks3
- Create To Do taskDestinationNot retried automaticallyApproval before production
Creates a task in a To Do list.
- List To Do tasksSource
Tasks in a To Do list.
- Update To Do taskDestinationProvider duplicate protectionApproval before production
Updates a To Do task, for example to complete it.
User changes1
- Sync users (delta)SourceIncremental
Directory users changed since the last sync (users/delta). The first run returns every user; later runs pass the saved deltaLink.
Users3
- Create Microsoft 365 user (Entra ID)DestinationProvider duplicate protectionApproval before production
Creates a Microsoft Entra ID user account for a new starter with their work identity: name, user principal name, job title and department. The account gets a random temporary password nobody sees; IT issues a Temporary Access Pass or resets it on their first day.
- Get userSource
One user by ID or user principal name.
- List usersSource
Directory users.
Access and limits
- Authentication
- Microsoft Entra app (client ID, client secret) with a delegated refresh token
- Plans and access
- Microsoft 365 business, enterprise or education plans with Exchange Online, Teams, Planner and SharePoint licences. Delegated permissions act as the signed-in user; admin consent is required for scopes such as ChannelMessage.Read.All, Group.Read.All and Sites.ReadWrite.All.
- Test environment
- A Microsoft 365 Developer Program sandbox tenant (where eligible) or a trial tenant.
- Rate limits
- Service-specific throttling (for example Outlook 10,000 requests per 10 minutes per mailbox; Teams per-app and per-tenant limits). HTTP 429 with Retry-After.
- Pagination
- @odata.nextLink URLs on graph.microsoft.com with $top page sizes where supported.
- Provider events
- Microsoft Graph change notifications (subscriptions) for messages, events, chats and drive items. Flows run on demand, on a schedule, or when a scheduled check finds new or changed records.
Before you build a flow
- Uses delegated permissions: mail, calendar, To Do, contacts, joined teams and chats are those of the user who issued the refresh token.
- Sending mail is two steps: create a draft (mail_messages.create), then send it (mail_messages.send). Microsoft has no idempotency key for sends; a repeated send of the same draft fails because the draft has moved to Sent Items.
- Event creation sets transactionId from the Nexra idempotency key, so Microsoft discards duplicate creates on retry.
- Planner updates require the task's current ETag (If-Match); a stale ETag returns HTTP 412.
- Drive files are downloaded into Nexra (drive_item_content.get, up to 250 MiB) and saved from Nexra (drive_item_uploads.create up to 4 MiB, drive_item_large_uploads.create with an upload session up to 2 GiB). Uploads never overwrite unless asked.
- Outlook item IDs that contain '/' are not accepted; request immutable IDs or URL-safe IDs.
- Deletes, moves, mailbox rules, and Teams/channel creation are not implemented.
- Delta operations (users, groups, mail folder messages, calendar view, drive items, SharePoint list items, channel messages) return a deltaLink on their last page; save it and pass it back as deltaLink to read only later changes. Removed items come back with removed = true.
- Mail attachment contents are downloaded into Nexra with mail_attachment_content.get (file attachments; Outlook item attachments come as MIME; reference attachments are links and have no content).
- Excel: rows are added to existing tables (excel_table_rows.create, Graph rows/add); ranges, charts and new tables are not written.
- Planner has no delta query in Graph v1.0; Planner reads are full reads.
- Sign-in activity (sign_ins.list) needs Microsoft Entra ID P1 or P2, AuditLog.Read.All and a reporting role; without them the read says so plainly. Only interactive sign-ins within Entra's retention period are listed, and IP addresses, locations and devices are never mapped.
Developer reference
- Create the Microsoft credentials described above with the narrowest permissions your flows need.
- In Nexra, open Connect, then Connections, then New connection, choose Microsoft 365, enter its settings and credentials, and tick only the write actions you need. Connection guide
- Test the connection, then use its actions as flow sources and destinations. Flow guide
Machine-readable detail: GET /api/public/connect/connectors/microsoft-365 and the Connections API.
