Microsoft Teams Integration
Log time directly from Microsoft Teams using the Dime.Sheets bot. Set up outgoing webhooks and user mappings.
Microsoft Teams Integration
Dime.Sheets integrates with Microsoft Teams so your team can log time without leaving their chat. Mention the bot in any channel or group chat to create a time entry in seconds.
How it works
The integration uses a Teams outgoing webhook. When someone mentions the bot, Teams sends the message to Dime.Sheets, which parses the command and creates a time entry for the matched user.
Example usage
@Dime.Sheets 3h design reviewThis creates a 3-hour time entry with "design review" as the description, assigned to the user who sent the message.
Supported formats
The bot accepts natural language commands in the format <hours>h <description>:
| Message | Result |
|---|---|
@Dime.Sheets 2h client meeting | 2-hour entry, description "client meeting" |
@Dime.Sheets 0.5h standup | 30-minute entry, description "standup" |
@Dime.Sheets 8h development | 8-hour entry, description "development" |
Setup
Step 1: Get your webhook URL
- In Dime.Sheets, navigate to Settings > Connectors.
- Find the Microsoft Teams section.
- Copy the Webhook URL shown on the page.
Step 2: Create an outgoing webhook in Teams
- In Microsoft Teams, go to the team where you want to enable time logging.
- Click the ... menu next to the team name and select Manage team.
- Go to the Apps tab, then click Create an outgoing webhook.
- Configure the webhook:
- Name:
Dime.Sheets(this is what users will @mention) - Callback URL: Paste the webhook URL from Step 1
- Description: Log time to Dime.Sheets
- Name:
- Click Create. Teams will display an HMAC security token.
- Copy the HMAC token and enter it in the Dime.Sheets Connectors page under Teams Webhook Secret.
Step 3: Configure user mappings
Dime.Sheets matches Teams users to your team members in two ways:
- Email matching (automatic) — If the Teams user's email matches a Dime.Sheets user's email, they are linked automatically.
- Explicit mapping — For cases where emails differ, configure manual user mappings in Settings > Connectors under the Teams section.
Security
All incoming webhook payloads are verified using HMAC-SHA256 signature validation. Messages that fail verification are rejected. The webhook secret is configured during setup and never transmitted in plain text.
Troubleshooting
"User not found" error: Ensure the Teams user's email matches a Dime.Sheets account, or add an explicit user mapping in Settings > Connectors.
Messages not reaching Dime.Sheets: Verify the webhook URL is correct and that your Dime.Sheets instance is accessible from the internet. Check that the outgoing webhook is enabled in Teams.
Entries not appearing: Confirm the user mapping is correct and that the message follows the expected format (<hours>h <description>).