Endpoint Get Messages
Name
get_messages
Description
Get the mail messages for the specified user ID or email address. [API reference]
Parameters
| Parameter | Required | Options | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Name:
Label: User ID or Email The Microsoft Mail user ID GUID or email address for the account to read messages from. (Examples: '4ff54a77-9c09-4274-958f-83bdc0a53900' or 'first.last@domain.com') |
YES | |||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Name:
Label: Email Body Format |
YES |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Name:
Label: Search Criteria Data filter (e.g. somecolumn -eq 'somevalue'), you can use Date time functions for dynamic date. You can use keywords like now,today,yesterday,monthstart,monthend,yearstart,yearend,weekstart,weekend along with operator + / - [hour,minute,second,day,month,year] |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Name:
Label: MailFolderId |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Name:
Label: Order By Order the specified column by ascending or descending order |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Name:
Label: Page Size The number of records to include in each page of results |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Name:
Label: Selected Columns Select the individual columns to be included in the response, to reduce the response size and increase performance |
Output Columns
| Label | Data Type (SSIS) | Data Type (SQL) | Length | Description |
|---|---|---|---|---|
| Id |
DT_WSTR
|
nvarchar(1000)
|
1000 | |
| ReceivedDateTime |
DT_DBTIMESTAMP
|
datetime
|
||
| HasAttachments |
DT_BOOL
|
bit
|
||
| Subject |
DT_WSTR
|
nvarchar(800)
|
800 | |
| BodyPreview |
DT_WSTR
|
nvarchar(4000)
|
4000 | |
| SenderEmailAddressName |
DT_WSTR
|
nvarchar(800)
|
800 | |
| SenderEmailAddress |
DT_WSTR
|
nvarchar(800)
|
800 | |
| Importance |
DT_WSTR
|
nvarchar(500)
|
500 | |
| SentDateTime |
DT_DBTIMESTAMP
|
datetime
|
||
| CreatedDateTime |
DT_DBTIMESTAMP
|
datetime
|
||
| LastModifiedDateTime |
DT_DBTIMESTAMP
|
datetime
|
||
| ChangeKey |
DT_WSTR
|
nvarchar(1000)
|
1000 | |
| ToRecipients |
DT_WSTR
|
nvarchar(1190)
|
1190 | |
| CcRecipients |
DT_WSTR
|
nvarchar(1190)
|
1190 | |
| BccRecipients |
DT_WSTR
|
nvarchar(1190)
|
1190 | |
| ToRecipient1 |
DT_WSTR
|
nvarchar(200)
|
200 | |
| ToRecipient2 |
DT_WSTR
|
nvarchar(200)
|
200 | |
| ToRecipient3 |
DT_WSTR
|
nvarchar(200)
|
200 | |
| ToRecipient4 |
DT_WSTR
|
nvarchar(200)
|
200 | |
| ToRecipient5 |
DT_WSTR
|
nvarchar(200)
|
200 | |
| CcRecipient1 |
DT_WSTR
|
nvarchar(200)
|
200 | |
| CcRecipient2 |
DT_WSTR
|
nvarchar(200)
|
200 | |
| CcRecipient3 |
DT_WSTR
|
nvarchar(200)
|
200 | |
| CcRecipient4 |
DT_WSTR
|
nvarchar(200)
|
200 | |
| CcRecipient5 |
DT_WSTR
|
nvarchar(200)
|
200 | |
| BccRecipient1 |
DT_WSTR
|
nvarchar(200)
|
200 | |
| BccRecipient2 |
DT_WSTR
|
nvarchar(200)
|
200 | |
| BccRecipient3 |
DT_WSTR
|
nvarchar(200)
|
200 | |
| BccRecipient4 |
DT_WSTR
|
nvarchar(200)
|
200 | |
| BccRecipient5 |
DT_WSTR
|
nvarchar(200)
|
200 | |
| Categories |
DT_WSTR
|
nvarchar(1000)
|
1000 | |
| ParentFolderId |
DT_WSTR
|
nvarchar(1200)
|
1200 | |
| ConversationId |
DT_WSTR
|
nvarchar(1200)
|
1200 | |
| ConversationIndex |
DT_WSTR
|
nvarchar(1200)
|
1200 | |
| IsDeliveryReceiptRequested |
DT_BOOL
|
bit
|
||
| IsReadReceiptRequested |
DT_BOOL
|
bit
|
||
| IsRead |
DT_BOOL
|
bit
|
||
| IsDraft |
DT_BOOL
|
bit
|
||
| WebLink |
DT_WSTR
|
nvarchar(4000)
|
4000 | |
| InferenceClassification |
DT_WSTR
|
nvarchar(800)
|
800 | |
| InternetMessageHeaders |
DT_NTEXT
|
nvarchar(MAX)
|
||
| BodyContentType |
DT_WSTR
|
nvarchar(500)
|
500 | |
| BodyContent |
DT_NTEXT
|
nvarchar(MAX)
|
||
| FromEmailAddressName |
DT_WSTR
|
nvarchar(800)
|
800 | |
| FromEmailAddress |
DT_WSTR
|
nvarchar(800)
|
800 | |
| ReplyTo |
DT_WSTR
|
nvarchar(1190)
|
1190 | |
| UniqueBodyContentType |
DT_WSTR
|
nvarchar(500)
|
500 | |
| UniqueBodyContent |
DT_NTEXT
|
nvarchar(MAX)
|
||
| FlagFlagStatus |
DT_WSTR
|
nvarchar(800)
|
800 | |
| ODataETag |
DT_WSTR
|
nvarchar(1000)
|
1000 | |
| InternetMessageId |
DT_WSTR
|
nvarchar(1800)
|
1800 |
Input Columns
| Label | Data Type (SSIS) | Data Type (SQL) | Length | Description | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| There are no Static columns defined for this endpoint. This endpoint detects columns dynamically at runtime. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Examples
SSIS
Use Outlook Mail (Office 365) Connector in API Source or in API Destination SSIS Data Flow components to read or write data.
API Source
| Required Parameters | |
|---|---|
| User ID or Email | Fill-in the parameter... |
API Destination
| Required Parameters | |
|---|---|
| User ID or Email | Fill-in the parameter... |
ODBC application
Use these SQL queries in your ODBC application data source:
Get messages for a specified user
SELECT * FROM get_messages
WITH (UserID='firstname.lastname@domainname.com')
Get first 5 messages for a specified user
SELECT * FROM get_messages
WITH (UserID='firstname.lastname@domainname.com', PageSize='5')
Get all messages in a specific Mail Folder
SELECT * FROM get_messages
WITH (
MailFolderID='INBOX' --or use mai folder id
)
Get messages with a subject line that starts with 'Announcements for'
SELECT * FROM get_messages
WITH (UserID='firstname.lastname@domainname.com', SearchCriteria='startsWith(Subject,''Announcements for'')')
--Check this link to learn more about search conditions: https://learn.microsoft.com/en-us/graph/filter-query-parameter?tabs=http
Get messages that have at least one attachment associated with them
SELECT * FROM get_messages
WITH (UserID='firstname.lastname@domainname.com', SearchCriteria='hasAttachments eq true')
--Check this link to learn more about search conditions: https://learn.microsoft.com/en-us/graph/filter-query-parameter?tabs=http
Get messages that are unread
SELECT * FROM get_messages
WITH (UserID='firstname.lastname@domainname.com', SearchCriteria='IsRead eq false')
--Check this link to learn more about search conditions: https://learn.microsoft.com/en-us/graph/filter-query-parameter?tabs=http
SQL Server
Use these SQL queries in SQL Server after you create a data source in Data Gateway:
Get messages for a specified user
DECLARE @MyQuery NVARCHAR(MAX) = 'SELECT * FROM get_messages
WITH (UserID=''firstname.lastname@domainname.com'')';
EXEC (@MyQuery) AT [LS_TO_OUTLOOK_MAIL_OFFICE_365_IN_GATEWAY];
Get first 5 messages for a specified user
DECLARE @MyQuery NVARCHAR(MAX) = 'SELECT * FROM get_messages
WITH (UserID=''firstname.lastname@domainname.com'', PageSize=''5'')';
EXEC (@MyQuery) AT [LS_TO_OUTLOOK_MAIL_OFFICE_365_IN_GATEWAY];
Get all messages in a specific Mail Folder
DECLARE @MyQuery NVARCHAR(MAX) = 'SELECT * FROM get_messages
WITH (
MailFolderID=''INBOX'' --or use mai folder id
)';
EXEC (@MyQuery) AT [LS_TO_OUTLOOK_MAIL_OFFICE_365_IN_GATEWAY];
Get messages with a subject line that starts with 'Announcements for'
DECLARE @MyQuery NVARCHAR(MAX) = 'SELECT * FROM get_messages
WITH (UserID=''firstname.lastname@domainname.com'', SearchCriteria=''startsWith(Subject,''''Announcements for'''')'')
--Check this link to learn more about search conditions: https://learn.microsoft.com/en-us/graph/filter-query-parameter?tabs=http';
EXEC (@MyQuery) AT [LS_TO_OUTLOOK_MAIL_OFFICE_365_IN_GATEWAY];
Get messages that have at least one attachment associated with them
DECLARE @MyQuery NVARCHAR(MAX) = 'SELECT * FROM get_messages
WITH (UserID=''firstname.lastname@domainname.com'', SearchCriteria=''hasAttachments eq true'')
--Check this link to learn more about search conditions: https://learn.microsoft.com/en-us/graph/filter-query-parameter?tabs=http';
EXEC (@MyQuery) AT [LS_TO_OUTLOOK_MAIL_OFFICE_365_IN_GATEWAY];
Get messages that are unread
DECLARE @MyQuery NVARCHAR(MAX) = 'SELECT * FROM get_messages
WITH (UserID=''firstname.lastname@domainname.com'', SearchCriteria=''IsRead eq false'')
--Check this link to learn more about search conditions: https://learn.microsoft.com/en-us/graph/filter-query-parameter?tabs=http';
EXEC (@MyQuery) AT [LS_TO_OUTLOOK_MAIL_OFFICE_365_IN_GATEWAY];