# Microsoft Teams: review notifications, approvals and link previews

Source: https://versodocs.com/docs/teams

The VersoDocs app for Microsoft Teams posts review activity to the channels you connect, previews VersoDocs links with their **Current** version and approvers, and finds approved documents. Requested reviewers can approve straight from the card. Decisions are still recorded in VersoDocs, with the same rules as in the app.

Can't install apps in your Teams? Post notifications with a [Workflows webhook](#workflows) instead: no app, no admin consent.

## Plans

|   | Free | Team | Pro |
| --- | --- | --- | --- |
| Slack + Teams channel notifications | ✓ | ✓ | ✓ |
| Microsoft Teams link previews | ✓ | ✓ | ✓ |
| Search from Teams | ✓ | ✓ | ✓ |
| Every event in chat (comments, closes, AI reviews…) | — | ✓ | ✓ |
| Approve / request changes from Microsoft Teams | — | ✓ | ✓ |

On Free, channels receive the key review events (below); Team unlocks every event and the review buttons. Workflows webhooks follow the same events per plan.

## Add the app and connect a channel

1. In Teams, open **Apps**, find **VersoDocs** and choose **Add to a team**. If your organization only allows approved apps, ask your Teams admin to allow it in the Teams admin center.
2. VersoDocs posts a welcome card in the channel. An **owner or admin of your VersoDocs organization** clicks **Connect this channel**, signs in, then picks the **workspace** and the **events** to post.
3. To connect another channel of the same team, mention the app there: `@VersoDocs connect`. Each VersoDocs workspace posts to one Teams channel.

Change events or disconnect in VersoDocs **Settings → Integrations → Microsoft Teams**. Removing the app from the team stops all posts from it.

## Notification events

| Event | Posts when | Plan |
| --- | --- | --- |
| `proposal.opened` | A reviewer is asked to review proposed changes to a document. | All plans |
| `proposal.verdict_submitted` | A reviewer approves a proposal, asks for changes, or leaves a comment. | All plans |
| `version.published` | A document is published as a new version. | All plans |
| `proposal.commented` | Someone (or an agent) comments on a proposal or replies in a thread. | Team+ |
| `document.commented` | Someone (a member, an agent or a share-link guest) comments on a published version of a document or replies in a thread. | Team+ |
| `proposal.closed` | A proposal is closed by its author without publishing. | Team+ |
| `document.created` | A new document is created in a workspace. | Team+ |
| `ai_review.completed` | A hosted AI reviewer posted its (advisory) review on a proposal. | Team+ |

Each card shows the document, who acted and a summary, with an **Open in VersoDocs** button. Cards only ever link to VersoDocs.

## Approve from Teams (Team+)

`proposal.opened` cards carry **Approve** and **Request changes** buttons. Clicking one opens a small dialog only you see (an optional comment when approving, what needs to change when requesting changes), then records your verdict. (Team+)

- **Who can use them:** a Teams account **linked** to a VersoDocs member of the organization who is a **requested reviewer** on that proposal. On an unlinked account the dialog shows a **Link your VersoDocs account** button: sign in, confirm, done. Teams emails are never used to identify you. Unlink in **Settings → Personal** or send `unlink` to the app.
- **What it records:** your own human verdict, marked *via Teams*, exactly as if you had clicked it in VersoDocs. Required approvals, auto-publish and notifications behave the same.
- **E-signature workspaces:** when approving requires re-authentication, **Approve** opens the proposal in VersoDocs to sign there.

## Link previews

Paste a VersoDocs document link in a message and Teams previews it with the title, workspace, **Current version** and approvers, or *Draft* if it was never published.

Details are shown only for documents in **non-private** workspaces of an organization with a channel connected in your Microsoft tenant. Other links get a generic VersoDocs card with no content.

## Search and commands

| Message the app | Does |
| --- | --- |
| `search <words>` | Finds approved documents with their Current version. In a channel, the results open in a dialog only you see. |
| `link` / `unlink` | Links or unlinks your Teams account and your VersoDocs account. |
| `connect` | In a channel: posts a fresh **Connect this channel** card (org admins). |
| `help` | Shows the commands. |

In a channel, mention the app first: `@VersoDocs search onboarding`. You can also search from the message box: **+ (Actions and apps) → VersoDocs**, then share a result.

Search covers the same documents link previews may describe, for organizations your linked account belongs to.

## Without the app: Workflows webhook

### In Microsoft Teams

1. Open the channel → **…** → **Workflows** (or the Workflows app).
2. Pick the template **Post to a channel when a webhook request is received**, choose the team and channel, and create it.
3. Copy the **HTTP POST URL** it shows.

### In VersoDocs

1. Workspace admins: open **workspace Developer settings → Webhooks → New webhook**.
2. Paste the URL. The format is detected as **Microsoft Teams** (set it explicitly if the URL goes through a relay).
3. Tick the events and save. Click **Test** to check the card arrives.

Workflows cards carry an **Open in VersoDocs** button only: no approvals, previews or search. Office 365 connectors ("Incoming Webhook") are retired by Microsoft; use Workflows.

## Permissions and data

- The app receives only messages that mention it (or are sent to it directly), link previews for VersoDocs URLs, and its own button clicks. It never reads channel history.
- VersoDocs stores where to post (tenant, team, channel and the Bot Framework address) and your account link (your Microsoft Entra user id and display name). Removing the app or the channel deletes the posting address; unlinking deletes the account link.
- Private workspaces never appear in Teams.
