Sends a reminder
The card shows what is missing, for which client and for which month. People who have not installed the bot are not sent a card.
A Teams bot sends a reminder or request with buttons to an employee's Teams chat, takes in the file they send back and files it in the right SharePoint folder, running in your Azure subscription with a managed identity.
An approval in Teams · illustrative example
Approval request
What happens next
01
Email reminders get lost easily, and requests and approvals end up scattered across emails, chats and spreadsheets. If your team works in Teams, that is the place to send a question that can be answered with one click or one file.
The bot works in a one-to-one chat with each employee. It does not read other chats or channels: it receives only what a person writes or sends to it.
02
We tested all of this in Teams on the web, in our own test environment with invented data.
The card shows what is missing, for which client and for which month. People who have not installed the bot are not sent a card.
The bot reads the file it receives, works out the client, the document type and the month, files it in the right folder under the standard name and says where it put it.
If the file shows only the document type, the bot takes the client and the month from the reminder the person is replying to.
If a file cannot be read or its type is unclear, the bot asks with buttons: the person picks one of the suggested options or says that none of them fits.
The bot does not file a document for another person's client, and does not overwrite a file sent twice: it replies that the file is already there.
03
These are possibilities, not delivered projects. For a pilot we pick one process.
An access, purchase or equipment request on a Teams card with required fields, routed to the person responsible.
Approve or reject with one click; the decision is recorded where it can be found later.
Regular reminders with a link to what needs doing, and a way to reply in the chat.
04
The bot runs in an Azure Functions app in your Azure subscription and signs in with a managed identity, so there is no bot password.
| Part | Permission or setting | Why it is needed | Access |
|---|---|---|---|
| Azure Bot | A bot registered in your tenant only, with a managed identity | Receive and send Teams messages without a bot password | Chat with the bot only |
| Filing | Sites.Selected with write on one documents site | Put files on that site only | Write, one site |
| Reminder content | Files.Read.All, Sites.Read.All, User.Read.All, or Sites.Selected (read) | Find out what is missing and whom to remind | Read |
| Teams app | Uploaded to your organisation's app catalogue and installed for the people you choose | Let the bot write in a one-to-one chat | One-to-one chat only |
Teams has to reach the bot's address over the internet, so this is the only public part of the solution. Every request is checked against a token signed by Microsoft: in our test, an unsigned or forged request got HTTP 401.
05
Tested on 2026-10-09 in Teams on the web, in our own Microsoft 365 test environment with invented data. We have not yet tested the Teams mobile app. These are test results, not a client project.
06
Something else on your mind?
Power Automate approvals suit a simple yes or no. A bot is needed when you have to take in a file, read it, decide where it goes or ask a follow-up question. On the call we tell you which route is simpler for you.
No. The bot works only in a one-to-one chat with it, and receives only what a person writes or sends to it.
No. The bot signs in with a managed identity in your Azure subscription, so there is no bot password or key, and nothing to rotate.
We tested it in Teams on the web. We have not yet tested the Teams mobile app, so we check that at the start of the pilot.
Files go into your SharePoint. The bot's state, such as who was sent a card and which file it is waiting for, is kept in Azure storage in your subscription.
Then it does not file it and asks the person with buttons. A file is filed only when it is clear which client it belongs to, what type of document it is and which month it covers.