# Microsoft: what the assistant can do

> Everything the assistant can do in Microsoft by text: 7 actions, with example texts, the Microsoft API call behind each one, and which ones ask first or can be undone.

Source: https://asktack.com/docs/actions/microsoft/

In Microsoft, the assistant can send an email (Outlook), add an event (Outlook calendar), send a meeting invite (Outlook calendar), move an event (Outlook calendar), cancel an event (Outlook calendar), check your calendar (Outlook calendar) and find free time (Outlook calendar). You ask by text, in your own words.

**Status:** Built, not open yet. How to connect, permissions and limits: [Outlook](https://asktack.com/docs/integrations/outlook/).

| What it does | Asks first? | Undo |
|---|---|---|
| Send an email (Outlook) | Always | No |
| Add an event (Outlook calendar) | If unsure | 10 minutes |
| Send a meeting invite (Outlook calendar) | Always | No |
| Move an event (Outlook calendar) | If unsure | 10 minutes |
| Cancel an event (Outlook calendar) | Always | 10 minutes |
| Check your calendar (Outlook calendar) | No | – |
| Find free time (Outlook calendar) | No | – |

Asking first and undo follow the same rules for every tool: see [Confirmations and undo](https://asktack.com/docs/confirmations-and-undo/).

## Send an email (Outlook)

Sends a short email from your own Outlook or Microsoft 365 mailbox, optionally with a link.

- **Asks before doing it?** Yes, always. You see exactly what will happen and say yes before it does it.
- **Can be undone?** No. Sent items can't be unsent, which is why it always asks first.
- **Microsoft API call:** `POST /v1.0/me/sendMail`
- **Action name:** `microsoft.send_email`

**Example texts:**

- "email sarah@example.com that we're running 20 minutes late"
- "send an email from Outlook to dave@patelhomes.com saying the part came in"
- "email mike@acme.com the link https://example.com/warranty"

## Add an event (Outlook calendar)

Puts an event on your own Outlook calendar at the time you say, with a length or end time and an optional place. Nobody else is invited.

- **Asks before doing it?** Usually not. It asks first if it isn't sure what you meant, a name only roughly matches, or the request covers more than 5 records.
- **Can be undone?** Yes. Text "undo" within 10 minutes.
- **Microsoft API call:** `POST /v1.0/me/events`
- **Action name:** `microsoft.create_event`

**Example texts:**

- "put the Henderson AC tune-up on my calendar tomorrow at 2"
- "block 9 to 11 Friday for the Patel estimate at 12 Oak St"
- "add dentist Tuesday 3:30 to my outlook calendar"

## Send a meeting invite (Outlook calendar)

Adds an event to your Outlook calendar and emails an invite to the people you name. Always asks you first.

- **Asks before doing it?** Yes, always. You see exactly what will happen and say yes before it does it.
- **Can be undone?** No. Sent items can't be unsent, which is why it always asks first.
- **Microsoft API call:** `POST /v1.0/me/events (with attendees)`
- **Action name:** `microsoft.send_invite`

**Example texts:**

- "send sarah@example.com an invite for a site walk Monday at 9"
- "invite dave@patelhomes.com and mike@acme.com to a kickoff Thursday 1-2pm at the shop"
- "set up a meeting with ana@correo.com tomorrow at 4 and invite her"

## Move an event (Outlook calendar)

Moves one of your events to a new day or time and keeps its length. Events with guests are left for you to move.

- **Asks before doing it?** Usually not. It asks first if it isn't sure what you meant, a name only roughly matches, or the request covers more than 5 records.
- **Can be undone?** Yes. Text "undo" within 10 minutes.
- **Microsoft API call:** `PATCH /v1.0/me/events/{id}`
- **Action name:** `microsoft.move_event`

**Example texts:**

- "move the Henderson appointment to Thursday at 3"
- "push my 2pm tomorrow to 4"
- "reschedule the dentist to next Monday"

## Cancel an event (Outlook calendar)

Deletes an event from your Outlook calendar; guests get a cancellation email, and then it can't be undone. Always asks you first.

- **Asks before doing it?** Yes, always. You see exactly what will happen and say yes before it does it.
- **Can be undone?** Yes. Text "undo" within 10 minutes.
- **Microsoft API call:** `DELETE /v1.0/me/events/{id}`
- **Action name:** `microsoft.cancel_event`

**Example texts:**

- "cancel the Henderson appointment tomorrow"
- "delete my 4pm today from the calendar"
- "cancela la cita del dentista"

## Check your calendar (Outlook calendar)

Tells you what's on your Outlook calendar today, tomorrow, another day or for the week.

- **Asks before doing it?** No. It only looks things up.
- **Can be undone?** Nothing to undo: it doesn't change anything.
- **Microsoft API call:** `GET /v1.0/me/calendarView`
- **Action name:** `microsoft.list_events`

**Example texts:**

- "what's on my calendar today"
- "what do I have tomorrow"
- "what's my week look like"

## Find free time (Outlook calendar)

Finds open time on your Outlook calendar on a day, between 8am and 6pm unless you say otherwise.

- **Asks before doing it?** No. It only looks things up.
- **Can be undone?** Nothing to undo: it doesn't change anything.
- **Microsoft API call:** `GET /v1.0/me/calendarView`
- **Action name:** `microsoft.find_free_slot`

**Example texts:**

- "when am I free Thursday"
- "do I have an hour open tomorrow afternoon"
- "find me a 2 hour slot Monday"

---

*This list is generated from the code that runs each action, so it's always current.*
