ODBC guide

Download multiple attachments with search condition


Downloads Office 365 email attachments that match search criteria. You can combine conditions (e.g. has attachments only, sent after a date, subject contains text, from a specific sender). Supply SaveFolder and the search parameters in the WITH clause.

SELECT * FROM download_message_attachments
WITH(
	  SaveFolder='c:\download',	
	  OverwriteFile='True',
 	  MailFolderId='INBOX', --or use mailbox ID
	  UserId='me', --or use "user-id" or use "email"
	  --search mail with attachments, sent after 2023-03-01, subject contains string "invoice" and  from email is microsoft-noreply@microsoft.com
	  SearchCriteria='hasAttachments eq true and sentDateTime gt 2023-03-01 and contains(subject, ''invoice'') and from/emailAddress/address eq ''microsoft-noreply@microsoft.com''  ',
	  EmailBodyFormat='HTML' --or text
)

--Check this link to learn more about search conditions: https://learn.microsoft.com/en-us/graph/filter-query-parameter?tabs=http