This site is obsolete and should be used for reference only. The information in this documentation is not guaranteed to work for Bot Framework SDK versions past 4.9.1.

Email Skill

Add email capabilities to your Assistant. Powered by Microsoft Graph and Google.

Supported scenarios

The following scenarios are currently supported by the Skill:

  • Send an Email
    • Send an email to John Smith
    • Send an email to Harold about the team lunch this Tuesday
  • Find Email
    • Find email from John Smith
    • What email do I have
  • Check Messages
    • Do I have any new mail
    • Check my email
  • Delete
    • Delete an email
    • put the email in the recycle bin
  • Forward
    • Forward email from megan to alex
    • Could you forward this message
  • Read Aloud
    • Read email from Philippe
    • Read unread email
  • Reply to an Email
    • Reply with I will call you back
    • Respond to my email
  • Select an Email
    • The third search result please
    • Open this one

Language Understanding

LUIS models for the Skill are provided in .lu file format as part of the Skill. Further languages are being prioritized.

Supported Languages
Chinese (simplified)


Name Description
AddFlag Matches queries to flag an email as important
CheckMessages Matches queries to check for new messages
Delete Matches queries to delete an email
Forward Matches queries to forward an email
QueryLastText Matches queries to find the most recent emails
ReadAloud Matches queries to read an email aloud
Reply Matches queries to reply to an email
SearchMessages Matches queries to search for specific emails
SelectItem Matches queries to select an email
SendEmail Matches queries to send an email


Name Description
Attachment Simple entity matching attachments
Category Simple entity matching categories
ContactName Simple entity matching contact names
Date Simple entity matching the date
EmailAddress Simple entity matching email addresses
EmailPlatform Simple entity matching email platforms
EmailSubject Simple entity matching email subjects
FromRelationshipName Simple entity
Line Simple entity matching message message lines
Message Simple entity matching messages
OrderReference Simple entity
PositionReference Simple entity
RelationshipName Simple entity matching contact relationships
SearchTexts Simple entity matching messages to search through
SenderName Simple entity matching a sender’s name
Time Simple entity matching the time
datetimeV2 Prebuilt entity
number Prebuilt entity
ordinal Prebuilt entity



Learn how to provision your Azure resources in the Create a Skill tutorial.

Supported content providers

Office 365 and through the Microsoft Graph is supported along with support for Google accounts.

Authentication connection Settings

Office 365

This skill uses the following authentication scopes:

  • User.ReadBasic.All
  • Mail.ReadWrite
  • Mail.Send
  • People.Read
  • Contacts.Read

You must use these steps to manually configure Authentication for the Email Skill. Due to a change in the Skill architecture this is not currently automated.

Ensure you configure all of the scopes detailed above.

Google Account

To use Google account skill you need follow these steps:

  1. Enable Gmail API in Google API library
  2. Create your Gmail API credential in Google developers console.
    1. Choose “Create credential” - “OAuth Client ID”
    2. Choose “Web Application”
    3. Set Redirect URL as
  3. Create an OAuth connection setting in your Web App Bot.
    • Connection name: googleapi
    • Service Provider: Google
    • Client id and secret are generated in step 2
    • Scopes:
  4. Add the connection name, client id, secret and scopes in the appsetting.json file.


Learn how to use events to send backend data to a Skill, like a user’s location or time zone.

Download a transcript